methyl_summary generation problem

Methylframe <- generate_methylframe(

methyl_bed_list = methyl_bed,
Sample_count = 0,
Methyl_call_type = "Dorado",
filter_NAs = 1,
max_read_depth = 100,
gene_info = TRUE,
gene_coordinate_file = Geneco,
Gene_column = "gene.ID", # Pass the column name as a string
target_info = FALSE,
File_prefix = "Sample"
)
Creating the Megaframe
|--------------------------------------------------|
|==================================================|
Error in [.data.frame(Methyl_bed, , c(1, 2, 3, 4, 5, 6)) :
undefined columns selected

This is the error I am getting after submiting the DeepSignal3 output bed file as input here what should be done to resolve it

Can you submit your bed file so I can try to reproduce the error?

Actually the problem is with format of bed file which I am getting after running it through Deepsignal3 after the call mods frequency command the output bed file format is of below type -
Chr1    -1      0       .       618441  -       -1      0       0,0,0   618441  15
Chr1    1117    1118    .       1       -       1117    1118    0,0,0   1       100
Chr1    1120    1121    .       1       -       1120    1121    0,0,0   1       100
Chr1    1124    1125    .       1       -       1124    1125    0,0,0   1       100
Chr1    1128    1129    .       1       -       1128    1129    0,0,0   1       100
Chr1    1132    1133    .       1       -       1132    1133    0,0,0   1       100
Chr1    1141    1142    .       1       -       1141    1142    0,0,0   1       0
Chr1    1143    1144    .       1       -       1143    1144    0,0,0   1       100
now how do I make this file ready to use in sounDMR.

I have solved the problem of methyl_frame geneartion but now other problem I am facing is this
methyl_summary <- create_methyl_summary(dmr_obj,

                                    control = 'C',

                                    treated = 'T',

                                    additional_summary_cols = list(

                                      c('sd', 'Group')

                                      ))

[1] "Output is in a different order. Try running again."
Error in [<-.data.frame(*tmp*, , ncol(Output_Frame) + 1, value = c(-50,  :
replacement has 2887333 rows, data has 3076303
In addition: Warning messages:
1: In GenePercentPlant$Zeroth_pos == dmr_obj$ZoomFrame_filtered$Zeroth_pos :
longer object length is not a multiple of shorter object length
2: In GenePercentPlant$Gene == dmr_obj$ZoomFrame_filtered$Gene :
longer object length is not a multiple of shorter object length

head(dmr_obj$ZoomFrame_filtered$Zeroth_pos)
[1] 15 16 22 23 36 42
head(dmr_obj$ZoomFrame_filtered$Gene)
[1] "Chr2" "Chr2" "Chr2" "Chr2" "Chr2" "Chr2"
head(dmr_obj$LongPercent)

A tibble: 6 × 9
Groups:   Gene, Zeroth_pos, Plant, Position, CX, Strand, Group [6]
Gene  Zeroth_pos Plant Position CX    Strand Group Chromosome Percent

1 Chr2          15 S1          15 CHH   +      C     Chr2            50
2 Chr2          15 S2          15 CHH   +      T     Chr2             0
3 Chr2          16 S1          16 CHH   +      C     Chr2            17
4 Chr2          16 S2          16 CHH   +      T     Chr2             0
5 Chr2          22 S1          22 CHH   +      C     Chr2            33
6 Chr2          22 S2          22 CHH   +      T     Chr2             0
can you tell me how should I resolve this and what might be the issue.

can anyone help me solve this issue

Can you share either your R environment or attach your dmr_object here?

This is the structure of my dmr_obj hope this helps solve the issue to get this structure I used following commands

first_10_entries <- head(dmr_obj, 10)
str(first_10_entries)

I think it's going to be difficult for me to import this representation of your dmr_obj into my code to try to reproduce the error. Can you save your r environment and attach it here as a .Rdata file?

sorry that is confidential can you suggest me a solution by the above data or if you need any other data to get to solution I can provide you

I think it's going to be difficult for me to import this representation of your dmr_obj into my code to try to reproduce the error. Can you save your r environment and attach it here as a .Rdata file?

Actually I tried attaching the file but my R environment size is too big to upload it is of 367mb So I am uable to attach it here.

I appreciate the additional information! So I'm curious what your fix was to the very first issue you raised? Our pipeline was set up for an older version of deepsignal and I'm curious if the output file is drastically different from what the code expects. Our latest improvements have been geared toward the use of Dorado since we have found that works better for us. It does appear like in your input data you have multiple rows for each position?

I am attaching the workspace below please if you could look into it and
suggest me what should I do to  proceed further with analysis
sounDMR_workspace.zip
https://drive.google.com/file/d/1zRo2GzmyugnbB0iSLDi-OF94xVaY1cjj/view?usp=drive_web
On Mon, 22 Jul 2024 at 20:20, Tom Cairns @.***> wrote:

I appreciate the additional information! So I'm curious what your fix was
to the very first issue you raised? Our pipeline was set up for an older
version of deepsignal and I'm curious if the output file is drastically
different from what the code expects. Our latest improvements have been
geared toward the use of Dorado https://github.com/nanoporetech/dorado
since we have found that works better for us. It does appear like in your
input data you have multiple rows for each position?
—
Reply to this email directly, view it on GitHub
https://github.com/SoundAg/sounDMR/issues/65#issuecomment-2243152605,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BEEDUDMYYJZ37I35RNFJUQDZNUL2BAVCNFSM6AAAAABKSITWZ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBTGE2TENRQGU
.
You are receiving this because you authored the thread.Message ID:
@.***>

I am attaching the R environment below as a workspace. I have removed
multiple rows for each position from the input bed file but I am getting
the same error. Please look through it and suggest how to solve the problem.
new_workspace.zip
https://drive.google.com/file/d/1ZcB5i16qlHO9xCCQTYnh1Vz3TJdHsvXN/view?usp=drive_web
On Mon, 22 Jul 2024 at 20:20, Tom Cairns @.***> wrote:

I appreciate the additional information! So I'm curious what your fix was
to the very first issue you raised? Our pipeline was set up for an older
version of deepsignal and I'm curious if the output file is drastically
different from what the code expects. Our latest improvements have been
geared toward the use of Dorado https://github.com/nanoporetech/dorado
since we have found that works better for us. It does appear like in your
input data you have multiple rows for each position?
—
Reply to this email directly, view it on GitHub
https://github.com/SoundAg/sounDMR/issues/65#issuecomment-2243152605,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BEEDUDMYYJZ37I35RNFJUQDZNUL2BAVCNFSM6AAAAABKSITWZ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBTGE2TENRQGU
.
You are receiving this because you authored the thread.Message ID:
@.***>

As for the earlier issue I raised about methylframe generation it was because I got the output from deepsignal3 had that format which I later adjusted as per the example files you provided after doing that the issue was resolved.

Hello!
Sorry you are having trouble.  I noticed a few issues with the data that suggest there were issues in the earlier steps that are hard for us to troubleshoot without the methylbed files.  When you ran generate_methylframe that should have used the gene.ids you provided and placed them in the gene column.  I am not sure why this did not work.
The main issue though is that you have some positions/rows where there is no data, aka no read depth.  This is leading to those positions not being created in the LongMeth and LongPercent portions of the dmr object, which then throws an error in this line of code while trying to make the methyl summary:
Output_Frame[,ncol(Output_Frame) + 1] <- GenePercentPlant[,id] - GenePercentGroup[[control]]

To fix this the easiest thing to do would
Another thing to note, this software is primarily geared towards situations where you are comparing groups of multiple individuals with one another, while here is appears there is just one individual per group.  This will not really allow you to run any statistics.
Still, we definitely appreciate you are using it, and it should still work for calcualting basic summary statistics.
Jack

The issue is indeed because there are multiple rows for the same position.  This leads to "LongMeth" and "LongPercent" not being the appropriate lengths since they get created by using a grouping function.  If you remove duplicate positions from your methylframe it should work.
Best,
Jack

I have removed multiple rows for same position but it is still not working I am doing this trial run for two samples to see if it works then do it for rest of the files so I made subset of file for chromosome 2 & 3 and tried to run them through and facing the error now  I am attaching two bed files for you to run through which have few entries from my trial file try to find the error if you can and please help me sort it out. Thankyou.
subset_bedfile1.txt
subset_bedfile2.txt

I have removed multiple rows for same position but it is still not working
I am doing this trial run for two samples to see if it works then do it for
rest of the files so I made subset of file for chromosome 2 & 3 and tried
to run them through and facing the error now I am attaching two bed files
for you to run through which have entries from one chromosome of my trial
file try to find the error if you can and please help me sort it out. Thank
you.
Bed_files.zip
https://drive.google.com/file/d/1wV8WAnQntVWKV_kfV6Ltpgl7SyzkGyla/view?usp=drive_web
On Fri, 26 Jul 2024 at 06:10, jcolicchio-soundag @.***>
wrote:

The issue is indeed because there are multiple rows for the same position.
This leads to "LongMeth" and "LongPercent" not being the appropriate
lengths since they get created by using a grouping function. If you remove
duplicate positions from your methylframe it should work.
Best,
Jack
—
Reply to this email directly, view it on GitHub
https://github.com/SoundAg/sounDMR/issues/65#issuecomment-2251712125,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BEEDUDIQMKGXELMJUNSVUEDZOGLI5AVCNFSM6AAAAABKSITWZ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENJRG4YTEMJSGU
.
You are receiving this because you authored the thread.Message ID:
@.***>

Just confirmed, there are still rows with the same chromosome and positions:

nrow(ZoomFrame_filtered)
[1] 3076303
distinct(ZoomFrame_filtered, Chromosome, Position, .keep_all = FALSE)->Zoom_RemoveDuplicates
nrow(Zoom_RemoveDuplicates)
[1] 2887333

If you run this distinct command first to remove duplicates (on the megaframe) your commands should work.

Can you write the whole script which you used to do this because I am still getting errors. And if you were able to do complete analysis please provide the complete script on my email ID<EMAIL_ADDRESS>

Hey Jack, can you share with me the R commands you used for running those bed files I gave you and how you removed duplicates from it. you can write those here or can mail me on above given mail ID, Thankyou.

After removing multiple entries for chromosome and positions this is what I am getting can you help me solve this

methyl_summary <- create_methyl_summary(dmr_obj,

                                    control = 'C',

                                    treated = 'T',

                                    additional_summary_cols = list(

                                      c('sd', 'Group')

                                      ))

[1] "Number of columns in methyl_summary is correct"

methyl_summary <- find_DMR(methyl_summary, dmr_obj, fixed = c('Group'),

                       random = c('Individual'), reads_threshold = 5,

                       control = 'C', model = 'beta-binomial',

                       analysis_type = 'individual')

cbind(Meth, UnMeth) ~ (1 | Individual) + Group
<environment: 0x55d7b284a510>
|======================================================================| 100%
There were 50 or more warnings (use warnings() to see the first 50)

warnings()
Warning messages:
1: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'), help('diagnose')
2: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'), help('diagnose')
3: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'), help('diagnose')
4: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'), help('diagnose')
5: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'), help('diagnose')

changepoint_cols = find_changepoint_col_options(methyl_summary)
character(0)
methyl_summary <- find_DMR(methyl_summary, dmr_obj, fixed = c('Group'),

                       random = c('Individual'), reads_threshold = 3,

                       control = 'C', model = 'binomial',

                       analysis_type = 'group')

cbind(Meth, UnMeth) ~ (1 | Individual) + Group
<environment: 0x55d745b5b8d8>
boundary (singular) fit: see help('isSingular')
[1] "37 No bobyqa Converge, trying Nelder"
[1] "37 No Converge"
[1] "78 No bobyqa Converge, trying Nelder"
[1] "78 No Converge"
[1] "80 No bobyqa Converge, trying Nelder"
[1] "80 No Converge"
[1] "95 No bobyqa Converge, trying Nelder"
[1] "95 No Converge"
[1] "172 No bobyqa Converge, trying Nelder"
[1] "172 No Converge"
[1] "174 No bobyqa Converge, trying Nelder"
[1] "174 No Converge"

Nice work! That means it is working, but the nice model cannot converge,
which is expected if there is only one individual per treatment group.
You made it as far as is possible with just a single sample in each group.
If you have two or more individuals per group this next step would work.
Jacm
On Fri, Aug 2, 2024 at 3:26 AM PraddyumnaR @.***> wrote:

After removing multiple entries for chromosome and positions this is what
I am getting can you help me solve this
methyl_summary <- create_methyl_summary(dmr_obj,

                                   control = 'C',

                                   treated = 'T',

                                   additional_summary_cols = list(

                                     c('sd', 'Group')

                                     ))

[1] "Number of columns in methyl_summary is correct"
methyl_summary <- find_DMR(methyl_summary, dmr_obj, fixed = c('Group'),

                      random = c('Individual'), reads_threshold = 5,

                      control = 'C', model = 'beta-binomial',

                      analysis_type = 'individual')

cbind(Meth, UnMeth) ~ (1 | Individual) + Group
<environment: 0x55d7b284a510>
|======================================================================|
100%
There were 50 or more warnings (use warnings() to see the first 50)
warnings()
Warning messages:
1: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
2: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
3: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
4: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
5: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
changepoint_cols = find_changepoint_col_options(methyl_summary)
character(0)
methyl_summary <- find_DMR(methyl_summary, dmr_obj, fixed = c('Group'),

                      random = c('Individual'), reads_threshold = 3,

                      control = 'C', model = 'binomial',

                      analysis_type = 'group')

cbind(Meth, UnMeth) ~ (1 | Individual) + Group
<environment: 0x55d745b5b8d8>
boundary (singular) fit: see help('isSingular')
[1] "37 No bobyqa Converge, trying Nelder"
[1] "37 No Converge"
[1] "78 No bobyqa Converge, trying Nelder"
[1] "78 No Converge"
[1] "80 No bobyqa Converge, trying Nelder"
[1] "80 No Converge"
[1] "95 No bobyqa Converge, trying Nelder"
[1] "95 No Converge"
[1] "172 No bobyqa Converge, trying Nelder"
[1] "172 No Converge"
[1] "174 No bobyqa Converge, trying Nelder"
[1] "174 No Converge"
—
Reply to this email directly, view it on GitHub
https://github.com/SoundAg/sounDMR/issues/65#issuecomment-2265064449,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATXTYGJICQIKYOYXLHSJ7LDZPNNDRAVCNFSM6AAAAABKSITWZ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRVGA3DINBUHE
.
You are receiving this because you commented.Message ID:
@.***>

--
Jack Colicchio
Research Scientist
Sound Agriculture
908 451 4985 | @.***
sound.ag | Twitter  https://twitter.com/sound_ag| LinkedIn
https://www.linkedin.com/company/sound-agriculture/

Thankyou for the insight Jack I am in process of generating rest of my files hope it works without any problem since methyl summary generation was successful.

Now that I have 3 samples in each Control and treated group still I am getting this error what could be the reason. Methyl summary was generated successfully but now this problem is there.

methyl_summary <- create_methyl_summary(dmr_obj,

                                    control = 'C',

                                    treated = 'T',

                                    additional_summary_cols = list(

                                      c('sd', 'Group')

                                      ))

[1] "Number of columns in methyl_summary is correct"

methyl_summary <- find_DMR(methyl_summary, dmr_obj, fixed = c('Group'),

                       random = c('Individual'), reads_threshold = 3,

                       control = 'C', model = 'binomial',

                       analysis_type = 'group')

cbind(Meth, UnMeth) ~ (1 | Individual) + Group
<environment: 0x560204c00df8>
boundary (singular) fit: see help('isSingular')
boundary (singular) fit: see help('isSingular')
boundary (singular) fit: see help('isSingular')
boundary (singular) fit: see help('isSingular')

I am facing problem in doing group or individual DMR analysis that is why I
am attaching link for my bed files below please check them once and help me
resolve the issue.
https://drive.google.com/file/d/1G6iGbVv-GngvTxoMOFEHi43mWOL2Hqqw/view?usp=drive_link
,
https://drive.google.com/file/d/19uAc-zTp2oBot7c0Zibc8uaXY5wsFGg1/view?usp=drive_link
,
https://drive.google.com/file/d/1LNwmVZwFnsa6aSHWs0c4Ii-mRBBILZhh/view?usp=drive_link
,
https://drive.google.com/file/d/1RM2xPELraePGzvhSLTAhs7cgokxoh961/view?usp=drive_link
On Fri, 2 Aug 2024 at 20:33, jcolicchio-soundag @.***>
wrote:

Nice work! That means it is working, but the nice model cannot converge,
which is expected if there is only one individual per treatment group.
You made it as far as is possible with just a single sample in each group.
If you have two or more individuals per group this next step would work.
Jacm
On Fri, Aug 2, 2024 at 3:26 AM PraddyumnaR @.***> wrote:

After removing multiple entries for chromosome and positions this is
what
I am getting can you help me solve this
methyl_summary <- create_methyl_summary(dmr_obj,

control = 'C',

treated = 'T',

additional_summary_cols = list(

c('sd', 'Group')

))
[1] "Number of columns in methyl_summary is correct"
methyl_summary <- find_DMR(methyl_summary, dmr_obj, fixed = c('Group'),

random = c('Individual'), reads_threshold = 5,

control = 'C', model = 'beta-binomial',

analysis_type = 'individual')
cbind(Meth, UnMeth) ~ (1 | Individual) + Group
<environment: 0x55d7b284a510>
|======================================================================|
100%
There were 50 or more warnings (use warnings() to see the first 50)
warnings()
Warning messages:
1: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
2: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
3: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
4: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
5: In finalizeTMB(TMBStruc, obj, fit, h, data.tmb.old) :
Model convergence problem; . See vignette('troubleshooting'),
help('diagnose')
changepoint_cols = find_changepoint_col_options(methyl_summary)
character(0)
methyl_summary <- find_DMR(methyl_summary, dmr_obj, fixed = c('Group'),

random = c('Individual'), reads_threshold = 3,

control = 'C', model = 'binomial',

analysis_type = 'group')
cbind(Meth, UnMeth) ~ (1 | Individual) + Group
<environment: 0x55d745b5b8d8>
boundary (singular) fit: see help('isSingular')
[1] "37 No bobyqa Converge, trying Nelder"
[1] "37 No Converge"
[1] "78 No bobyqa Converge, trying Nelder"
[1] "78 No Converge"
[1] "80 No bobyqa Converge, trying Nelder"
[1] "80 No Converge"
[1] "95 No bobyqa Converge, trying Nelder"
[1] "95 No Converge"
[1] "172 No bobyqa Converge, trying Nelder"
[1] "172 No Converge"
[1] "174 No bobyqa Converge, trying Nelder"
[1] "174 No Converge"
—
Reply to this email directly, view it on GitHub
https://github.com/SoundAg/sounDMR/issues/65#issuecomment-2265064449,
or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/ATXTYGJICQIKYOYXLHSJ7LDZPNNDRAVCNFSM6AAAAABKSITWZ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRVGA3DINBUHE>

.
You are receiving this because you commented.Message ID:
@.***>

--
Jack Colicchio
Research Scientist
Sound Agriculture
908 451 4985 | @.***
sound.ag | Twitter https://twitter.com/sound_ag| LinkedIn
https://www.linkedin.com/company/sound-agriculture/
—
Reply to this email directly, view it on GitHub
https://github.com/SoundAg/sounDMR/issues/65#issuecomment-2265600954,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BEEDUDN5SVZBPBXVTXUG7MTZPONTFAVCNFSM6AAAAABKSITWZ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRVGYYDAOJVGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

What is the error you're facing here? The output looks correct to me

boundary (singular) fit: see help('isSingular')
boundary (singular) fit: see help('isSingular')
boundary (singular) fit: see help('isSingular')
boundary (singular) fit: see help('isSingular') is this supposed to happen while generating the output ?

It is running for more than a day now is there any way that we can speed up this process ? I have provided you with the bed files if you can try running it on your end and figure out something it would be great.

I am running two analysis from yesterday one on the bed file with entries on chromosome 1 and and another on only chromosome 1 now the line count in the megaframe generated for those two sets are 3649274 for chr 1&2 and 1936024 for Chr1 how much time will it take I have to do the analysis for 12 chromosomes so with this speed it will take 24 days to complete the analysis. Is it possible to speed up the process of this Group DMR analysis. Hope you reply soon.

For larger analysis we definitely recommend splitting the data into smaller chunks and running on that. For example with whole genome analysis we recommend splitting the data by chromosome or more across multiple machines to run in parallel. Unfortunately we don't have immediate plans to speed up the code on the back end as that would require a major overhaul of the code, but it is something we hope to get to in the next year

Okay if that's the case then i think I will have to wait for it be done chromosome by chromosome. Also I completed analysis on one chromosome file but while doing that I faced yet another issue with following command:

changepoint_cols = find_changepoint_col_options(methyl_summary)
[1] "Z_GroupT_small"
target_genes <- unique(dmr_obj$ZoomFrame_filtered$Gene)
methyl_summary <- changepoint_analysis(methyl_summary,
CG_penalty = 5,
CHG_penalty = 7,
CHH_penalty = 6,
target_genes = c(),
save_plots = TRUE,
z_col = "Z_GroupT_small",
whole_genome = TRUE)
Running whole genome changepoint analysis on chromosomes: Chr1
|======================================================================| 100%
Warning message:
The x argument of as_tibble.matrix() must have unique column names if .name_repair is omitted as of tibble 2.0.0.
ℹ Using compatibility .name_repair.
ℹ The deprecated feature was likely used in the sounDMR package.
Please report the issue to the authors.
This warning is displayed once every 8 hours.
Call lifecycle::last_lifecycle_warnings() to see where this warning was generated.

So here what happened is it did changepoint analysis successfully but the volcano and line plots it was supossed to save were not saved. whereas when a month before I ran analysis on demo data it worked perfectly fine. what can be the issue here?

Do you have any target genes that you're working with? The issue with the plots is that we found the line plots took too much RAM to produce for the entire genome, crashing a lot of our machines. So any data with > 100,000 rows the plots will not be displayed. Are you running this on the data split by chromosome? If that's the case I would recommend setting whole_genome = FALSE (even if your analysis is for whole genome) as the data will then be split gene by gene with a new plot being created and saved for each gene. If you do want to save the volcano plot for the whole genome I would recommend saving the plots on the R Graphics device. This is something that can be changed in a future version of sounDMR, but I don't have a good timeline on when that will be.

I was not using the whole genome file instead I ran the analysis on just Chr1 data also i tried it with Whole_genome = FALSE but still it didn't save the plots line plots were not even visible on R Graphics Device only volcano plot was generated. Apart from this I
had a query regarding the output of analysis where two files are generated methyl_summary with headers:
"Chromosome"	"Gene"	"Position"	"Strand"	"CX"	"Zeroth_pos"	"S4_Z"	"S4_MethChange"	"S4_RD"	"S5_Z"	"S5_MethChange"	"S5_RD"	"S6_Z"	"S6_MethChange"	"S6_RD"	"S1"	"S2"	"S3"	"S4"	"S5"	"S6"	"Treat_V_Control"	"Control"	"Treated"	"C_sd"	"T_sd"	"Z_GroupT_small"	"Estimate_GroupT_small"	"StdErr_GroupT_small"	"MethRegion_Z_GroupT_small"	"MethRegionLength_Z_GroupT_small"	"MethCytosines_Z_GroupT_small"	"MethGroup_Z_GroupT_small"
and DMR_region_summary with headers:
"cp_group","Start","Stop","Gene","CX","Count","MethRegion_Z_GroupT_small","MethRegionLength_Z_GroupT_small","Treat_V_Control","Control","Estimate_GroupT_small","dmr_score","dmr_score2","dmr_score_Percentile","dmr_score2_Percentile"
Can I know the interpretation of these headers, it would be very helpful if I get the context of what these column entries signify.
Also I would like to Thankyou for the support throughout the issues.

Also can you tell me should we consider sample wise methylchange in our case S4_MethChange", S5_MethChange" and S6_MethChange" or should we consider Treat_V_Control as we are performing group wise analysis which one is significant.

Sample wise shifts in methylation are the "MethChange" columns, group wise shifts in methylation are Treat_V_Control.
As far as the other columns, they refer to dmr regions, or groups of regions with similar shifts in methylation.  That file refers to these different regions and includes summary stats for each one.  the "dmr_score" column refer to a scoring metric described in our publication, while the other columns reflect the control methylation, shifts in methylation, T statistic, size of the region, and its start and stop.  I will look to add better documentation for this as soon as i can.

Thank you for the reply. Hope you put out a detailed description of output in future which will be helpful for interpretation of users. also if you can update the code such that the experimental design starter is generated in the way it is supposed to be by taking input from user in R-environment itself.


Spelling mistake in 'ConfigureServices'

Added a missing i in ConfigureServices.

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@kimbell Thank you for the correction!


DC-423: Remove spy() from our service tests

This change removes the need to use spy() in our service tests. Writing tests with spy() can be confusing and it's easy to make a mistake. This change also allows us to get 100% code coverage on these classes.
The main change is to move the HTTP API client construction code into a separate class. This lets us mock directly at the API client layer when testing a service class.
WIth this change, all uses of spy() have been removed from the code.
While doing this, I also changed the service tests to no longer use ContextConfiguration to set up the spring context. Instead, MockitoExtension is used to initialize mocks. For these tests, initializing Spring wasn't necessary. This change also enables strict stubbing by default, which is also an improvement IMO. See http://blog.mockito.org/2017/01/clean-tests-produce-clean-code-strict.html.

Small comments but LGTM


Translate README.md to spanish

A new file is created with the Spanish translation of  README.md

Thank you for making this @wimel!


Use computeIfAbsent with a protected method, make reset protected

Thx @ceki for merging this quickly.
Maven should be able to switch to next 2.0.x release now !


TabMon-Postgres Service unable to start

I have installed new version of tabmon and I have installed it on D drive instead of C drive. Also currently I am using Tableau version 10.0 in HA environment.
When I am trying to run TabMon-Postgres service it throws below error:

Upon checking I found still this service is taking default path for Postgress. How can I change it to D drive?

Hi rishabh,
Interesting -- did you used to have TabMon installed on a different drive?  Typically the Postgres install path will be whatever you set it to in the Options menu of the installer.  I'm wondering if there is an unanticipated upgrade scenario which can cause this to break.
Anyways, in order to get up and running again...
Is your Postgres installed at D:\Postgres ?  If so, you can update the service properties to point to this location by opening an Administrator command prompt and issuing the following command:

sc config TabMon-Postgres binPath= ""D:\Postgres\bin\pg_ctl.exe" runservice -N "TabMon-Postgres" -D "D:\Postgres\data""

Then refresh the Services window and try to start the TabMon-Postgres service.  Let me know how it goes.

Thanks, I tried the command, it fixes the Postgres service.
However, TabMon won't run, cause the DB isn't created properly.
After some investigation I found these results.
The TabMon installation fails at initialization of the DB because of this hard coded value, it fails at this step.

Glad to hear it's working right for you now.
That value you link is actually just a default value that is supposed to be overwritten/passed in at script execution time by the directory that the Postgres install folder that the user chooses from the installer (see powershell invocation [here])(https://github.com/tableau/TabMon/blob/master/TabMonServiceInstallerDBInitializer/Product.wxs#L63).. but clearly we have a bug somewhere (possibly in the upgrade scenario) since you hit this.  I'm labelling this as a bug for us to investigate, thanks for the report.

Hi,
Do we need to enable PostgreSQL option while installing Tab Mon ?
Tableau has its own PostgreSQL right, So in this case is it mandatory  to enable that option while installing Tab Mon?

While you don't need to install postgres with TabMon it is highly recommended that you have a separate postgres environment to store the data.
Please do not attempt to store TabMon data in Tableau Server's postgres. Doing so can cause performance issues and could potential corrupt postgres if something terrible happens.
If you would like to manually setup postgres I would start with this link:
https://www.postgresql.org/download/

Thanks for that Info.
We have our Tableau PostgreSQL installed. But  as a part of Performance Testing while installing Tab Mon, do we need to click on " Install and initialize Postgres for me"  option.

I'm not sure what you mean by Tableau Postgresql. Do you mean the postgres server installed with Tableau Server?

@msc0240 If you still need help can you please open a new issue?

I looked into this.
I agree with Justin, I think the issue is that there was a previous install of TabMon-Postgres on the C drive. After uninstalling TabMon, it looks like the postgres directory was manually removed from the C drive. The failure happens because the service was never removed before installing TabMon and Postgres on the D drive, this means the existing service points at a non-existent postgres directory.
Using the manual uninstallation steps outlined on page 13 of the user guide will help avoid the issue.
I'm going to close this one out.


[pigeon] Swift errors are unhandled

When generating Swift code using Pigeon It seems that there is no way to return an error back to the Flutter/Dart layer. There is a function called wrapError being generated but it never gets used and it's impossible to throw errors from the generated methods because they are not declared as throws in the generated protocol.
@gaaclarke

Hi @tjarvstrand, thanks for filing the issue.
This issue is reproducible on the latest stable and master channels with pigeon: ^4.2.0

Sample generated Pigeon.swift
// Autogenerated from Pigeon (v4.2.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon

import Foundation
#if os(iOS)
import Flutter
#elseif os(macOS)
import FlutterMacOS
#else
#error("Unsupported platform.")
#endif

/// Generated class from Pigeon.

///Generated class from Pigeon that represents data sent in messages.
struct Message {
  var subject: String
  var body: String
  var email: String

  static func fromMap(_ map: [String: Any?]) -> Message? {
    let subject = map["subject"] as! String
    let body = map["body"] as! String
    let email = map["email"] as! String

    return Message(
      subject: subject,
      body: body,
      email: email
    )
  }
  func toMap() -> [String: Any?] {
    return [
      "subject": subject,
      "body": body,
      "email": email
    ]
  }
}
private class MessageApiCodecReader: FlutterStandardReader {
  override func readValue(ofType type: UInt8) -> Any? {
    switch type {
      case 128:
        return Message.fromMap(self.readValue() as! [String: Any])
      default:
        return super.readValue(ofType: type)

    }
  }
}
private class MessageApiCodecWriter: FlutterStandardWriter {
  override func writeValue(_ value: Any) {
    if let value = value as? Message {
      super.writeByte(128)
      super.writeValue(value.toMap())
    } else {
      super.writeValue(value)
    }
  }
}

private class MessageApiCodecReaderWriter: FlutterStandardReaderWriter {
  override func reader(with data: Data) -> FlutterStandardReader {
    return MessageApiCodecReader(data: data)
  }

  override func writer(with data: NSMutableData) -> FlutterStandardWriter {
    return MessageApiCodecWriter(data: data)
  }
}

class MessageApiCodec: FlutterStandardMessageCodec {
  static let shared = MessageApiCodec(readerWriter: MessageApiCodecReaderWriter())
}

///Generated protocol from Pigeon that represents a handler of messages from Flutter.
protocol MessageApi {
  func getMessages(email: String) -> [Message]
}

/// Generated setup class from Pigeon to handle messages through the `binaryMessenger`.
class MessageApiSetup {
  /// The codec used by MessageApi.
  static var codec: FlutterStandardMessageCodec { MessageApiCodec.shared }
  /// Sets up an instance of `MessageApi` to handle messages through the `binaryMessenger`.
  static func setUp(binaryMessenger: FlutterBinaryMessenger, api: MessageApi?) {
    let getMessagesChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.MessageApi.getMessages", binaryMessenger: binaryMessenger, codec: codec)
    if let api = api {
      getMessagesChannel.setMessageHandler { message, reply in
        let args = message as! [Any?]
        let emailArg = args[0] as! String
        let result = api.getMessages(email: emailArg)
        reply(wrapResult(result))
      }
    } else {
      getMessagesChannel.setMessageHandler(nil)
    }
  }
}

private func wrapResult(_ result: Any?) -> [String: Any?] {
  return ["result": result]
}

private func wrapError(_ error: FlutterError) -> [String: Any?] {
  return [
    "error": [
      "code": error.code,
      "message": error.message,
      "details": error.details
    ]
  ]
}

flutter doctor -v
[✓] Flutter (Channel stable, 3.3.2, on macOS 12.6 21G115 darwin-x64, locale en-VN)
    • Flutter version 3.3.2 on channel stable at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e3c29ec00c (6 days ago), 2022-09-14 08:46:55 -0500
    • Engine revision a4ff2c53d8
    • Dart version 2.18.1
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 13E113
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.71.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.48.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 12.6 21G115 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 105.0.5195.125

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

• No issues found!

[✓] Flutter (Channel master, 3.4.0-33.0.pre.32, on macOS 12.6 21G115 darwin-x64, locale en-VN)
    • Flutter version 3.4.0-33.0.pre.32 on channel master at /Users/huynq/Documents/GitHub/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 7ce121fed9 (89 minutes ago), 2022-09-27 21:40:12 -0400
    • Engine revision 46009cbe3d
    • Dart version 2.19.0 (build 2.19.0-247.0.dev)
    • DevTools version 2.17.0

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14A309
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.71.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.48.0

[✓] Connected device (3 available)
    • SM T225 (mobile) • R9JT3004VRJ • android-arm64  • Android 12 (API 31)
    • macOS (desktop)  • macos       • darwin-x64     • macOS 12.6 21G115 darwin-x64
    • Chrome (web)     • chrome      • web-javascript • Google Chrome 105.0.5195.125

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

• No issues found!

/cc @tarrinneal
/cc @hellohuanlin as well since I know you've thought about error (Dart exception) handling in Swift, so likely have thought about how it should work in Pigeon. Allowing throwing and auto-converting to an error return seems reasonable to me.

It seems this issue is only about synchronous API. If its ObjC API uses an out-param FlutterError** (i'm not too sure), then the direct Swift translation is a throwable function.
BTW,  the official doc seems to be out of date. It only covers async usage, which uses a completion callback. so for async usage, the Swift counterpart should also use completion callback.


Add English translation of tutorial documentation

Created tutorial(EN).md with complete English translation of the original Portuguese guide
Maintained all technical content, code blocks, and formatting from the source
Preserved all original command examples and configuration samples
Updated image caption to English while keeping original image reference
Original source: tutorial(PT-BR).md

Nice! I forgot about this doc, but I think it may be useful for people who just want to try it out.
ACK 7614288

Can one add a silent payment address in this config?

Is it possible to add silent Payment addresses to the config file

Also, when I'm done with this for Windows, does it take 11GB of space. @Davidson-Souza

Is it possible to add silent Payment addresses to the config file

Silent payments requires extra handling. Not only config file option #65

Also, when I'm done with this for Windows, does it take 11GB of space. @Davidson-Souza

If you're using CBS, yes. If you need to reclaim space, either disable it or use the filters-start-height option to a recent block.

I believe a video tutorial for this needs to be up and running in no time, for windows, mac and Linux.
I just had to double tap the florestad file after I unzipped the download folder, and it started downloading block headers and unprunned stuff, the heavier stuff, basically. And i'm just on block 250000-ish.
Double tapped the floresta-cli and nothing worked yet, I'm assuming it's cos my download wasn't complete


Add minification plugin?

I guess we could go on and on with plugins to recommend, but it should feature at least a way to mangle and minify the code.
Side note: What about tree shaking? Does it work OTTB in Webpack@2?

I could take a look if you want! Then it wouldn't be such a simple repo though haha.
I am trying to keep things as simple as possible so that people can integrate what they want afterwards.
I will look into minifying the code (which would have to happen in bundle.js as well)

Ok check out #6 now I got to bed!

Awesome! Thanks @selfup.
No, need to get fancy, but if the user is already dabbling with webpack, might as well use the babili or something to minify.
Looking good.

👍


[bug] Support Sepolia chainID

GIVEN I pass a chainID of 0x11155111 (Sepolia)
WHEN I query createExplorerLinkForChain() with the Sepolia chainID
THEN I expect the string https://sepolia.etherscan.io/tx/ to be returned
BUT it returns empty string.
<script lang="ts">
    import { createExplorerLinkForChain} from '@metamask/etherscan-link';
</script>

createExplorerLinkForChain('0xtxhashgoeshere', '0x11155111')

Hey @Elliott-Green, thanks for the report. It seems support for Sepolia was added in #64, but we haven't yet issued a new release with these changes. I'll leave this issue open until we've done that.

@mcmire Any chance of a new release soon?

Hey @Elliott-Green, so sorry about the delay and thanks for the reminder. This is now released under 3.0.0. Cheers.


METAMODEL-1147: Created controller models with swagger-codegen

This fixes METAMODEL-1147. Please review.

Merging based on lazy concensus.


Feature/automating GitHub process

:tada: This PR is included in version 2.2.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


The openai proxy interface is recommended

Hello, your software is very useful and has solved many problems for me.
However, in China, we can't access openai, and most people don't understand azure, so I built an openai agent for the developers around me, which is fully compatible with openai, and the backend uses azure service nodes.
Can you promote it to Chinese users? In your software, the price of this agent interface is the same as that of openai, so I don't make money.
The interface address is: https://chat.wangshuyu.top/#/ApiDoc
你好，你的软件非常好用，解决了我很多问题。
但是在中国我们是访问不了openai的，大部分人对azure也不了解，所以我对给身边的开发人员自建了一个openai的代理，是完全兼容openai的，后端使用的是azure服务节点。
你是否可以推广给中国的用户呢，在你的软件里面， 这个代理接口价格和openai是一致的，我是不赚钱的。
接口地址是： https://chat.wangshuyu.top/#/ApiDoc

Hi @wangshuyu,
let's do a little different.
On Chinese readme, there is the "认证" section: (here).
Below the Azure sub section, add a new section that promotes your agent and some explanation how the people can use it.
After that create a pull request for me can review 🙂

Hi @wangshuyu, if you still like to edit the readme, be my guest.


Fix locale for Nominatim

There was an issue with setting the locale for Nominatim, this is fixed now.

Nice - thanks!


Split responsibility between configuration file creation and associated job creation

What is the use case for this change?

It permits to have the source of the configuration file coming from the disk directly (instead of a puppet resource as it is the case now) and it just splits the responsibilities between job creation and configuration file creation. In our usecase we don't need to create a tmp file as we manage this creation by contcat fragments before using jenkins-cli

Thank you for a pull request! Please check this document for how the Jenkins project handles pull requests

@zonArt Why are you trying to use jenkins::job::present directly instead of the source  param to jenkins::job?

@jhoblitt Yes you're right, sorry I should have digged a little deeper for the possibilities offered. source param in jenkins::job works perfect. However, why is config required if you're using source or template ?
PR can be declined


How to apply scatter chart?

Hey there, I'd like to apply scatter chart to plot some regression parameters along the candles for analysis. I see the scatter.go file in Chart directory, but charts.NewScatter() is not available. Is there any way to apply the scatter chart? Thanks

Scatter chart type is supported by echarts but not this project. You are welcome to contribute


about max #connections

hi! before all, thanks for your work... i have an eye on this project since almost its first day, very well written, and having a xmpp client somehow proxied server-side is very good/clever idea. congrats for that!
i'm not a sysadmin guy and don't have networking knowledge enough to find an answer by myself, so i'd like to ask you something that maybe is pretty basic. AFAIK there's a max number of (TCP) connections per system, i'd say 64K per client per server port or something like that. so, in the following scenario:

mobile/web clients are connecting to a cowboy/phoenix server through websocket connection
once the connection is stablished, w/ hedwig we start an xmpp client to
(e.g.) an ejabberd server running in the same physical server
i understand a TCP connection is opened client<>wsServer, and another wsServer(process)<>ejabberd. do you know if those local/internal connections between hedwig and ejabberd are somehow affecting our max number of open connection? in other words, per user we would have 2 connections, then max number of possible user connections: 32K.

also, we know that BEAM also has a max of processes, and having at least 2 (erlang) processes per user is a fact, but this is more tweak-able :)

@iamyellow thank you for the kind words.
You bring up a fantastic problem! I'm not very knowledgable in this area, but I am at least familiar with it.
The websocket connections would be from a browser client to your phoenix server and then the hedwig clients would connect to ejabberd. So the limit would be in the connections between hedwig and ejabberd.
I believe it ultimately comes down to file descriptor limit. Have a look at this SO answer: http://stackoverflow.com/a/2332756
If you are running both your phoenix app and ejabberd on the same server, I suppose you'd run out of file descriptors much quicker. So separating these may give you more mileage.
This is a problem I definitely want to tackle. Thanks for starting this issue!

pleased my question helps to improve this work :)
it could be interesting to try what will happen with the limits dockerizing both ws server and ejabberd, maybe a container 'reset' the limit so we can have both services in the same machine. i'd like to push hardware to its limits hehehe

@scrogson Is anybody working on a client adapter for Websockets? I was thinking of building an interface to the Websockex lib. I want to implement Hedwig to be our new responder for our flagship app. In our case we don't actually rely on Phoenix Channel spec but just :cowboy_websocket behavior. In theory having a basic :hedwig_websockex adapter would be a starting point? I'm willing to PR but have not began the process of coding. It looks like the adapter just needs to have an interface impl like the XMPP adpater but just focus on basic Websocket send/recv because that's all we really need for both Cowboy and Phx Channels. Thoughts? Right now our product uses Websockex for functional tests w/our backend so everything is well understood at this point. We are an emerging tech company and we have chosen Hedwig to answer the door. Thanks!

Looks like I just need to clone/copy the :hedwig slack lib and remove things besides the connection inteface and then replac :websocket_client, that's what we will do to make this work for our use case regardless... Let me know if you want it PR I will share my repo when I', done w/testing.


Fix flaky not_found_permutations test.

This fixes the registry::not_found_permutations test which would randomly fail since the order of http requests was not deterministic. The resolver can issue queries in parallel which can process requests out-of-order.
Fixes #11975

@bors r+

:pushpin: Commit 6fa758e83cbf7fcab5ec528fa0a0d1aae9ef2c8e has been approved by epage
It is now in the queue for this repository.

:hourglass: Testing commit 6fa758e83cbf7fcab5ec528fa0a0d1aae9ef2c8e with merge 7fb89f011ae1e755bf9756310ac8b9fed6483b54...

:sunny: Test successful - checks-actions
Approved by: epage
Pushing 7fb89f011ae1e755bf9756310ac8b9fed6483b54 to master...


Revert "Completed Unit Testing. One of the tests, TestInvalidArgument…

…BuildConnection, is currently not passing."
This reverts commit e7952de49452e1a4e72d59e49896b97a40d35e91.

This is not the version that has disabled the failing test.


Reconfigure :  Config flow could not be loaded: 500 Internal Server Error Server got itself in trouble

After rebooting HA i get the following message:
Config flow could not be loaded: 500 Internal Server Error Server got itself in trouble
How can I fix this issue?

What version of HA core are you using?
What version of this integration are you using?
How did you install this integration?
Has it worked before and just started doing this, or have you gotten this error the first time you tried to install and use it?

What version of HA core are you using? What version of this integration are you using? How did you install this integration? Has it worked before and just started doing this, or have you gotten this error the first time you tried to install and use it?

Core Version 2024.3.1, Integration Version 1.3.0. Installed via HACS. It has worked for maybe 4-6 hours and than stopped working.

You said it worked for 4-6 hours, stopped working, then caused the error mentioned above when you rebooted HA. Is that correct?
When you said it stopped working, what were the symptoms (before rebooting HA)? Errors? Repair issue? The entity or entities just stopped updating?
After the reboot, were there any other associated errors logged besides the config flow error mentioned?
I'm trying to get more details because I've never heard of this happening (i.e., the config flow error after restarting.) I do know that for some people the integration stops working after a short time. That is a known issue with this integration, mainly because it is using an undocumented & unsupported Google API. But there is some troubleshooting help in the latest doc version you can see here: https://github.com/pnbruckner/ha-google-maps#troubleshooting

I can´t say clearly what happens first because I restarted Home Assistant a few times before i noticed that the integration stopped working.  At the Moment HomeAssistant is running on Raspberry Pi 3 for testing purposes, because I switch my SmartHome from  IOBroker to HomeAssistant
Today my new Raspberry Pi 5 arrived and I will set up fresh Installation of  HomeAssistant on Raspberry 5. I`ll try to reproduce the issue and let you know if it happens again

Hey!
I got the same issue. Not sure why it happened, probably due to the same HA OS update.
In settings it says authentication expired, but when trying to reconfigure I get the same error.
I cant even remove the integration to start fresh as the only option is the documentation link.
I guess removing it as simple as dropping its config files or such.
I'll try refreshing the cookies (rather first just dropping the cookie file), will report back.

Yep, seems auth error:
Config entry<EMAIL_ADDRESS>for google_maps integration could not authenticate: InvalidCookies: Invalid session indicated

Closing since no update for a while. Feel free to reopen if needed.

Having the same issue as well.
A few minutes after getting a new cookie I get this error.

@yakeer, please provide more detail. You get what error? The OP described getting error 500 when trying to run the config flow. Is that what you mean? And if so, how did you get into the config flow?

Never mind. I see you opened a new issu.e


Connect to SAP HANA, express edition using Python -- Py2 i/o Py3

Tutorial URL: https://developers.sap.com/tutorials/hxe-python-connection.html
This tutorial is based on Python2 which is not supported since the beginning of 2020. I recommend to rework it to Python3 (both driver and sample code in the tutorial).
Thanks!

Opened an action to update these outdated Python tutorials. Closing this comment to keep the metrics down.


#872 Take throws Exception

#872

Take throws Exception instead of IOException.

Job #986 is now in scope, role is REV

This pull request #986 is assigned to @marceloamadeu/z, here is why; the budget is 15 minutes, see §4; please, read §27 and when you decide to accept the changes, inform @paulodamaso/z (the architect) right in this ticket; if you decide that this PR should not be accepted ever, also inform the architect; this blog post will help you understand what is expected from a code reviewer; there will be no monetary reward for this job

@0crat refuse

@0crat refuse (here)

@marceloamadeu The user @marceloamadeu/z resigned from #986, please stop working. Reason for job resignation: Order was cancelled

Tasks refusal is discouraged, see §6: -15 point(s) just awarded to @marceloamadeu/z

This pull request #986 is assigned to @lucasmessias9898/z, here is why; the budget is 15 minutes, see §4; please, read §27 and when you decide to accept the changes, inform @paulodamaso/z (the architect) right in this ticket; if you decide that this PR should not be accepted ever, also inform the architect; this blog post will help you understand what is expected from a code reviewer; there will be no monetary reward for this job

@paulodamaso Can you please explain the rules here?
For long Pull Requests there is a penalty for the reviewer. But what is the maximum time we will wait until the PR is taken from the reviewer and a new reviewer is assigned?
I mean, I'm interested in having it completed. Is there a way to help you out?

@piotrkot @0crat should remove this issue from @lucasmessias, but it didn't. I'll review and merge the pull request

Are you speaking to me or about me here; you must always start your message with my name if you want to address it to me, see §1

@0crat assign me

@rultor merge

@0crat assign me (here)

@paulodamaso @paulodamaso/z not enough funds available in the project, can't set budget of job #986, see §21; @paulodamaso/z will get no money on completion; in order to fix that, add funds to the project and assign the job again

Manual assignment of issues is discouraged, see §19: -5 point(s) just awarded to @paulodamaso/z

@rultor merge

@paulodamaso OK, I'll try to merge now. You can check the progress of the merge here

@paulodamaso Great. Thank you very much. Would you be able to make a new release, too?

@rultor merge

@paulodamaso Done! FYI, the full log is here (took me 23min)

Job #986 is not in the agenda of @paulodamaso/z, can't retrieve data and time of add

Job was finished in 0 hours, bonus for fast delivery is possible (see §36)

The job #986 is now out of scope

Order was finished: +20 point(s) just awarded to @paulodamaso/z

Payment to ARC for a closed pull request, as in §28: +10 point(s) just awarded to @paulodamaso/z

@paulodamaso I will close the issue but first let me know if you can make a new release with this change?

@rultor release tag is 1.17

@rultor release tag is 1.17

@paulodamaso OK, I will release it now. Please check the progress here

@rultor release tag is 1.17

@paulodamaso @piotrkot Oops, I failed. You can see the full log here (spent 2min)
+ set -e
+ set -o pipefail
++ dirname ./run.sh
+ cd .
+ echo 21172
+ echo '1.68.4 61d95181d'
1.68.4 61d95181d
+ date
Fri Jun 21 23:03:38 CEST 2019
+ uptime
 23:03:38 up 188 days, 12:33,  0 users,  load average: 5.93, 5.97, 5.43
+ head=git@github.com:yegor256/takes.git
+ ff=default
+ image=yegor256/java8
+ rebase=false
+ squash=false
+ head_branch=master
+ author=paulodamaso
+ tag=1.17
+ vars=('--env=MAVEN_OPTS=-XX:MaxPermSize=256m -Xmx1g' '--env=JAVA_OPTS=-XX:MaxPermSize=256m -Xmx1g' '--env=head=git@github.com:yegor256/takes.git' '--env=tag=1.17' '--env=scripts=( '\''export '\''\'\'''\''MAVEN_OPTS=-XX:MaxPermSize=256m -Xmx1g'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''JAVA_OPTS=-XX:MaxPermSize=256m -Xmx1g'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head=git@github.com:yegor256/takes.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''tag=1.17'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=paulodamaso'\''\'\'''\'''\'' '\'';'\'' '\''sudo locale-gen en_US en_US.UTF-8'\'' '\'';'\'' '\''sudo dpkg-reconfigure locales'\'' '\'';'\'' '\''export LC_ALL=en_US.UTF-8'\'' '\'';'\'' '\''export LANG=en_US.UTF-8'\'' '\'';'\'' '\''export LANGUAGE=en_US.UTF-8'\'' '\'';'\'' '\''sudo gem install --no-rdoc --no-ri pdd'\'' '\'';'\'' '\''sudo gem install --no-rdoc --no-ri est'\'' '\'';'\'' '\''sudo gem install --no-rdoc --no-ri xcop'\'' '\'';'\'' '\''mvn versions:set "-DnewVersion=${tag}"'\'' '\'';'\'' '\''git commit -am "${tag}"'\'' '\'';'\'' '\''mvn clean deploy -Ptakes -Psonar -Psonatype -Pqulice -Dinvoker.skip --errors --settings ../settings.xml'\'' '\'';'\'' )' '--env=head_branch=master' '--env=author=paulodamaso')
+ scripts=('export '\''MAVEN_OPTS=-XX:MaxPermSize=256m -Xmx1g'\''' ';' 'export '\''JAVA_OPTS=-XX:MaxPermSize=256m -Xmx1g'\''' ';' 'export '\''head=git@github.com:yegor256/takes.git'\''' ';' 'export '\''tag=1.17'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=paulodamaso'\''' ';' 'sudo locale-gen en_US en_US.UTF-8' ';' 'sudo dpkg-reconfigure locales' ';' 'export LC_ALL=en_US.UTF-8' ';' 'export LANG=en_US.UTF-8' ';' 'export LANGUAGE=en_US.UTF-8' ';' 'sudo gem install --no-rdoc --no-ri pdd' ';' 'sudo gem install --no-rdoc --no-ri est' ';' 'sudo gem install --no-rdoc --no-ri xcop' ';' 'mvn versions:set "-DnewVersion=${tag}"' ';' 'git commit -am "${tag}"' ';' 'mvn clean deploy -Ptakes -Psonar -Psonatype -Pqulice -Dinvoker.skip --errors --settings ../settings.xml' ';')
+ directory=
+ container=yegor256_takes_986
+ as_root=false
+ mkdir -p /home/rultor/.ssh
+ echo -e 'Host github.com\n\tStrictHostKeyChecking no\n'
+ chmod 600 /home/rultor/.ssh/config
+ git clone git@github.com:yegor256/takes.git repo
Cloning into 'repo'...
+ cd repo
+ git config user.email<EMAIL_ADDRESS>+ git config user.name rultor
+ '[' -z 'export '\''MAVEN_OPTS=-XX:MaxPermSize=256m -Xmx1g'\''' ']'
+ cd ..
+ cat
+ '[' false = true ']'
+ cat
+ chmod a+x entry.sh
+ cat
+ echo 'export '\''MAVEN_OPTS=-XX:MaxPermSize=256m -Xmx1g'\''' ';' 'export '\''JAVA_OPTS=-XX:MaxPermSize=256m -Xmx1g'\''' ';' 'export '\''head=git@github.com:yegor256/takes.git'\''' ';' 'export '\''tag=1.17'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=paulodamaso'\''' ';' 'sudo locale-gen en_US en_US.UTF-8' ';' 'sudo dpkg-reconfigure locales' ';' 'export LC_ALL=en_US.UTF-8' ';' 'export LANG=en_US.UTF-8' ';' 'export LANGUAGE=en_US.UTF-8' ';' 'sudo gem install --no-rdoc --no-ri pdd' ';' 'sudo gem install --no-rdoc --no-ri est' ';' 'sudo gem install --no-rdoc --no-ri xcop' ';' 'mvn versions:set "-DnewVersion=${tag}"' ';' 'git commit -am "${tag}"' ';' 'mvn clean deploy -Ptakes -Psonar -Psonatype -Pqulice -Dinvoker.skip --errors --settings ../settings.xml' ';'
+ sensitive=()
+ gpgconf --reload gpg-agent
+ gpg --keyserver hkp://pool.sks-keyservers.net --verbose --recv-keys 9AF0FA4C
gpg: requesting key 9AF0FA4C from hkp server pool.sks-keyservers.net
gpgkeys: key 9AF0FA4C can't be retrieved
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
gpg: keyserver communications error: keyserver helper general error
gpg: keyserver communications error: unknown pubkey algorithm
gpg: keyserver receive failed: unknown pubkey algorithm
'cid' file is absent, container wasn't started correctly

@rultor release tag is 1.17

@rultor release tag is 1.17

@paulodamaso OK, I will release it now. Please check the progress here

@rultor release tag is 1.17

@paulodamaso Done! FYI, the full log is here (took me 16min)

@paulodamaso Thanks


Navicat Premium (Windows) version 17.0.13 there is no any response

Navicat Premium (Windows) version 17.0.13 there is no any response

Navicat Premium (Windows) version 17.0.13 there is no any response

can you upload screenshoot? and you run with admin privileges?


Capitalize struct name in CamelCase

struct 이름을 Rust API Guidelines를 따르도록 고쳤습니다.
giganto와 PcapFilter를 공유하는 piglet/reconverge도 수정이 필요하며,개별적으로 pcapfilter구조체를 정의하여 사용하는 hog 또한 이 구조체를 사용하도록 수정이 필요합니다.

Codecov Report
Patch and project coverage have no change.

Comparison is base (b8be338) 78.18% compared to head (612e4f5) 78.18%.

:exclamation: Current head 612e4f5 differs from pull request most recent head 25c3af8. Consider uploading reports for the commit 25c3af8 to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #297   +/-   ##
=======================================
  Coverage   78.18%   78.18%
=======================================
  Files          27       27
  Lines        4029     4029
=======================================
  Hits         3150     3150
  Misses        879      879

Impacted Files
Coverage Δ

giganto-client/src/publish.rs
71.66% <ø> (ø)

src/publish.rs
71.16% <0.00%> (ø)

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

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


Update HIP12: Remove references to GPS fix

Removes reference to GPS fix, which no longer exists in the system. This feature remains useful without GPS fix requirement.

LGTM. Thanks, @rawrmaan. Definitely would love to see the community come to a consensus on the demand for this update.


Unclear explanation of shuffle query correctness

The reason of shuffle query may be producing incorrect result is not clearly explained. Examples that may lead to such incorrect shuffle query is verbose.
Kusto's behavior on incorrect usage of shuffle query is not documented. Kusto seems to ignore inappropriate shufflekeys when hint.strategy=shuffle is specified, and fail if these keys were explicitly specified with hint.shufflekey=<joinkey_n>.
As mentioned in doc, shuffle query may return incorrect results due to below reason. It still does not explain why. If similar values are not in the same partition, how would the query go wrong?

The summarize operator on the left side of the join expects similar values of the column ActivityId to be in the same partition.

It is my understanding that,

A shuffle join hashes the data from the left table, then sends it to nodes that have data from the right data with a matching hash, where data is joined. Each node processes the data independently.

The given example will result in 1 row of data from the right table (each has hash 56 & 65) to be joined with the summarized (using any) result of 1 row of data from the left table, on each of the 2 nodes.

This means the summarization is performed on partial not full results having the same ActivityId.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 563768b5-021b-9d7a-98cd-a630f67b02fd
Version Independent ID: 2c0fe763-005d-5532-a7b4-9697e29dd380
Content: Shuffle query - Azure Data Explorer
Content Source: data-explorer/kusto/query/shufflequery.md
Service: data-explorer
GitHub Login: @orspod
Microsoft Alias: orspodek

@Cutuy  Thanks for the feedback! I have assigned the issue to the content author to evaluate and update as appropriate.

Hi Cutuy,
We've updated our docs and made it more clear.
Kusto will not return wrong results in that case, it will ignore the parameter hint.strategy=shuffle / hint.shufflekey =  when it is not valid.
I believe the docs is confusing and was not clear that the hint will be ignored so Thanks again for reporting this.
Now regarding why the hint is ignored in that case, it is because for each operator that runs in shuffle strategy, e.g: join by key = K1, we expect that both sides of the joins are shuffled by the same hash function H, key and N (partitions number) H(key,N) since the assumption in shuffle query that each join which runs in the context of partition X in some cluster node will get the same values of K1 from both join sides. otherwise, we may get wrong results if we use different hash function, different key or different N.

@Cutuy since it looks like you got an answer above, I'm going to go ahead and close this issue. If you have any followup questions, please feel free to @mention myself or Ziad (@ziham1531991). Thanks!
#please-close

Thanks for the quick updates. Appreciated!


[pgadmin] broken config_local.py example (oauth)

Describe the bug
There is typo in add-oauth2-config.yaml file
Version of Helm and Kubernetes:
Which chart:
pgadmin
What happened:
when i am trying to apply file from example, pgadmin drops an error.
What you expected to happen:
use example file that will not cause any errors with new setup.
How to reproduce it (as minimally and precisely as possible):
copy file from example and install helm chart
Anything else we need to know:

Fixed by https://github.com/rowanruseler/helm-charts/pull/176


Using mapscan, i get []byte when the column type is number(14,3) with Postgresql 9.3

Using mapscan, i get []byte when the column type is number(14,3) with Postgresql 9.3

@zbird can you share a code snippet to look at?


interaction between two apps based on CppMicroServices

Is there any plan for interaction between two apps based on CppMicroServices， such as RPC built-in framework. So, the framework could be used in some distributed scenarios.

There are no concrete plans to provide an RPC built-in framework currently. We had occasional discussions about this in the past, but it is not a priority for the main contributors at this point.
However, if an external solution requires changes to the main framework, we are certainly open to accept pull requests to enable such use cases (if the changes are compatible with the current design).

I created a thread in discussion concerning this.

closing as we should move further discussions to #636 or a new thread in the Discussion section


(BKR-443) Hack /etc/hosts when using openstack

Can one of the admins verify this patch?

ok to test

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/1343/
Test FAILed.

retest this please

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/1347/
Test FAILed.

Test failure unrelated to patch.


RLMArray -indexOfObjectWhere: queries not reliable

1. Goals: an RLMArray property contains references to other RLMObjects. This property is mutated (objects added/removed), after which it should be possible to searching an object by ID in this array.
2. Expected results: if the RLMArray property contains at least an object corresponding to the query passed in -indexOfObjectWhere: then the method should return the first index of such object. Otherwise the method should return NSNotFound.
3. Actual results: NSNotFound is returned even in cases when printing that RLMArray property in the console definitely shows at least one corresponding object is present. The search returns the correct index IF the process is closed and re-started (the NSLog on line 96 of ViewController.m isn't triggered after restarting).
4. Steps to reproduce: I'll send an example project helpATrealm.io. Please notice the NSLog in the ViewController.m on line 96 as this should indicate exactly when such contradiction occurs.
5. Code sample that highlights the issue: Notice that in RealmCacheModel.m file I've commented out an alternative implementation that doesn't cause NSNotFounds by avoiding deleting objects from the RLMArray property artistsInCache.
In other words this works, probably because it's avoiding deletions:
    NSInteger existingIndex = [self.artistsInCache
        indexOfObjectWhere:@"artistId == %@", artist.artistId];
    if (existingIndex == NSNotFound) {
      [self safeAddObject:artist toArray:self.artistsInCache];
    }

While this doesn't:
  NSInteger existingIndex = [self.artistsInCache
      indexOfObjectWhere:@"artistId == %@", artist.artistId];
  if (existingIndex != NSNotFound) {
    [self.artistsInCache removeObjectAtIndex:existingIndex];
  }
  [self safeAddObject:artist toArray:self.artistsInCache];

Here's the safeAddObject:toArray method, in case anyone is interested:
- (void)safeAddObject:(RLMObject *)object toArray:(RLMArray *)array {
  if (object.realm != array.realm && array.realm != nil) {
    // If the object isn't in this Realm - bring it in
    RLMObject *newlyCreatedObject =
        [[object class] createOrUpdateInRealm:array.realm withObject:object];
    [array addObject:newlyCreatedObject];
  } else {
    // If the object is already in this Realm, it's safe to just add a link to it
    [array addObject:object];
  }
}

Also note that in ViewController.m I'm always requesting a new instance of realmWithPath during Realm operations, but some NSLog statements I've added shows that I'm correctly getting the exact same in-memory instance of RLMRealm every time.
@interface ViewController ()

@property(nonatomic, readonly) RLMRealm *realm;
@property(nonatomic, readonly) RealmCacheModel *cacheModel;
[...]
@end
@implementation ViewController
- (RLMRealm *)realm {
  return [RLMRealm realmWithPath:self.realmPath];
}
- (RealmCacheModel *)cacheModel {
  RLMRealm *realm = self.realm;
  RLMResults *array = [RealmCacheModel allObjectsInRealm:realm];
  RealmCacheModel *_trackCacheModel = nil;

  if ([array count] != 0) {
    _trackCacheModel = [array objectAtIndex:0];
  } else {
    _trackCacheModel = [RealmCacheModel new];
    [realm addObject:_trackCacheModel];
  }

  return _trackCacheModel;
}
[...]

Same holds for the self.cacheModel property.
6. Version of Realm/Xcode/OSX: Realm 0.90.5, Xcode 6.1.1 (6A2008a), OSX 10.10.2 (14C109)

@rciobanu-omnifone I was able to boil this down to a test case -- thanks so much for helping us investigate!

I have a feeling this was fixed recently. @segiddins do you still have this test case so we can check?

Re-tested on Realm 0.93.1 and can confirm this problem can't be observed anymore. Looks fixed. Thank you.

Great to hear, and thanks for confirming!


VSCode pre-open files not updating when reopening VSCode

VSCode Version: Code 1.13.1 (379d2efb5539b09112c793d3d9a413017d736f89, 2017-06-14T18:21:47.485Z)
OS Version: Windows_NT ia32 10.0.14393
Extensions:

Extension
Author
Version

theme-seti
bialikover
0.0.1

vscode-babel-coloring
dzannotti
0.0.4

vsc-material-theme
Equinusocio
1.0.0

file-icons
file-icons
1.0.3

auto-close-tag
formulahendry
0.4.2

Theme-Blackboard
gerane
0.0.2

Theme-Github
gerane
0.0.3

Theme-IDLE
gerane
0.0.2

Theme-peacocks-in-space
gerane
0.0.2

spacegray-vscode
ionutvmi
1.2.3

theme-material-theme
jprestidge
1.0.1

vetur
octref
0.7.0

vuehelper
oysun
0.1.0

material-icon-theme
PKief
2.0.9

ejs-language-support
QassimFarid
0.0.1

vue
seanwash
0.4.2

Steps to Reproduce:

Open files
Close VSCode
Re open VSCode
change files that are open
repeat, old files will still appear from before

@Flame2057 can you share a video cast of what you mean?


New Mediaelement plugin suggestion

Hello @rafa8626, I've built a new mediaelement plugin named mediaelement snapshot, can you please take a look and try it if it's okay I will send merge request to the mediaelement-plugins.

Hi @Qoraiche currently I’m not the maintainer of this project you better reach John Dyer for this. My apologies

Hi @johndyer can you please take a look

@Qoraiche: Looks very cool. Your plugin has been selected for inclusion in next release of mediaElement-plugins :) Please submit a pull request to mediaelement-plugins.

@berryamin I submit a PR, but I'm not sure to add the plugins files to the dist and docs or just my plugin repo link to the readme file.

Ok I will include the snapshot plugin to me-plugins, as soon as I get the rights to maintain me-plugins


Feature/update dependencies

Update dependencies
Resolve deprecation warnings
Run swiftformat

@roanutil Just want to make sure, did you mean for the STASH & WIP commits to be in this PR?

@roanutil Just want to make sure, did you mean for the STASH & WIP commits to be in this PR?

Nope. Fixed.


Communicate MeiliSearch error to instantSearch

In case of error, MeiliSearch sends it usual body to instantSearch. Resulting to this:
instantsearch.js@4:2 Uncaught (in promise) Error: Uncaught, unspecified "error" event. ([object Object])

We should either stop the return process to instant search or find how to communicate it properly to instantsearch

Seconded. The lack of info this message is providing me while trying to get this set up is costing me a significant amount of time.

Fixed by #216


Large clipboard pastes fail

When copying a large amount of text containing non-ascii characters locally, and then trying to paste it on the remote linux session, the paste operation will output a single character instead of the clipboard content. Since reproducing this issue requires a large amount of text, I won't include it here, but essentially copying the beginning section of Mary Shelley's Frankenstein  (beginning of Letter 1 until the end of Letter 4) reproduces it consistently for me.
I found a commit from 2012 (60322a3) that introduced code meant to split clipboard data passing between client and server in small chunks when data size was larger than 32KB. This caused some long clipboard data text blocks to be interpreted as "COMPOUND_TEXT" instead of "UTF8_STRING" by the X server. I tried handling "COMPOUNT_TEXT" correctly, but some multi-byte Unicode characters were being mangled.
I eventually just disabled the splitting code in clipboard_data_in() (the g_clip_c2s.doing_response_ss and g_clip_c2s.in_request ifs) and it worked. I don't know if there's been any change to the RDP protocol since 2012, but every client I tried (native Microsoft RDP client and FreeRDP client) already seems to split large bodies of text into chunks, so handling it on the server-side no longer seems necessary.
Let me know if you want me to provide more information or run some more tests.

Hi @vscfreire
This is really great detective work - thanks.
I'll add for the casual reader that the 'letters' referred to above are distinct blocks of text rather than letters in the sense of characters. That confused me on my first reading.
In order to prevent any variations caused by browser, I've extracted the section you suggest above as frankenstein.txt which is 31357 characters long and according to the file command is "UTF-8 Unicode text, with very long lines, with CRLF line terminators".

If I open that in Windows 10 notepad, hit CTRL-A, CTRL-C and paste it across the link, I get a single upper-case 'L', as far as I can tell. This is independent of the back-end I use.
If I restrict myself to letters 1-3 which is roughly half the length, all seems to work OK.

I've not gone into the rest of the information you provide, but it seems pretty comprehensive.

Hi @matt335672, sorry for the confusion, and thanks for providing the section so that it's easier to reproduce.
So far, since disabling that code, I haven't noticed any problems. Let me know if you need any further clarification.

@vscfreire - sorry about the delay.
After some investigation I've proposed that this code is removed. There might be a good reason why the code is present, so a confirmation that the removal is a goos idea would be good.
Are you still running without this code? If so have you noticed any issues?

Hi @matt335672, thanks for getting back to me.
Yes, I've been running without this code in the latest versions of xrdp, since this ticket was submitted. No issues so far.
I took a look at the pull request, and it's essentially the same change I did.


Intended outcome:
No flow errors
Actual outcome:
53 errors, like that:
Error: node_modules/apollo-client/node_modules/graphql/validation/rules/OverlappingFieldsCanBeMerged.js.flow:637
637:     return type1 instanceof GraphQLList ?
                                 ^^^^^^^^^^^ GraphQLList. This type is incompatible with
628:   type1: GraphQLOutputType,
              ^^^^^^^^^^^^^^^^^ union: GraphQLScalarType | GraphQLObjectType | GraphQLInterfaceType | GraphQLUnionType | GraphQLEnumType | type application of class `GraphQLList` | type application of class `GraphQLNonNull`**How to reproduce the issue:**

New project with flow, react-apollo, apollo-client.
.flowconfig
[ignore]

[include]

[libs]

[lints]

[options]
esproposal.decorators=ignore

Version

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>

➤ Michael commented:
Same here.
https://github.com/apollographql/react-apollo/issues/1105 was closed but it still doesn't work


how to disable FormatOnSave permanently?

Neovim version
NVIM v0.8.1 Build type: RelWithDebInfo LuaJIT 2.1.0-beta3
Operating system/version
CentOS Linux release 7.9.2009 (Core)
Terminal name/version
mac term
$TERM environment variable
xterm-256color
Branch info
main (Default/Latest)
Fetch Preferences
SSH (use_ssh = true)
Affected language servers
clang-format
How to reproduce the issue
:w save file，code auto formatted
Actual behavior
code formatted
Expected behavior
not format
Support info
:LspInfo

:Mason

Logs
no logs find in given path

Additional information
using FormatToggle can disable this, but sometime forget to set this, can I disable this feature in config file?

here: https://github.com/ayamir/nvimdots/blob/63113e2bb2031c335ce7ab70799dc24502fd27d3/lua/core/settings.lua#L5

it works:
local settings = {}
local home = os.getenv("HOME")

settings["use_ssh"] = true
settings["format_disabled_dirs"] = {
	home .. "/format_disabled_dir_under_home",
    home .. "/code/gevent",
    "/home/ext/project/baidu/netdisk/p2p-sdk-mobile/project/src"
}

return settings

can I specify things like 'code/*' to do regular express match?

currently can't

can I disable clang-format on start?

comment this line:
https://github.com/ayamir/nvimdots/blob/63113e2bb2031c335ce7ab70799dc24502fd27d3/lua/modules/completion/lsp.lua#L273

lsp complains about this:

So what do you want to do?

anything like do a 'FormatToggle' on startup for all files, if want format, I will toggle it mannually

set true to false
https://github.com/ayamir/nvimdots/blob/5ec59914b2ef9e3e875f10ded4b199d159b2e964/lua/modules/completion/formatting.lua#L6

it works:

for business project, this should be the default option I think, many company has it's own coding standard, format on save will make lots of modification to commit, that feels bad~


Configure liveness and readiness probes.

Based on #276; thanks @mumoshu!
[Fixes #268]

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

Any update on this?


Configure clock panel to display timezone

CRITICAL PATH!
Since all of our machines use UTC (as it should be), it'd be nice to show the timezone by default.
Panel docs:
https://docs.xfce.org/xfce/xfce4-panel/clock
The configuration file for the menubar clock can be found here:
/home/vnc/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
To get the timezone showing this setting should be made:
    <property name="plugin-14" type="string" value="clock">
      <property name="digital-format" type="string" value="%T %Z"/>
    </property>

This is equivalent to this control panel setting:

and the clock looks like this:

A link to the shared storage on the desktop would probably be helpful:
ln -snf /data/ ~kali/Desktop/

Clock settings:
/etc/xdg/xfce4/panel/default.xml
Desktop settings:
/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
Desktop shortcut to /data:
/etc/xdg/autostart/cool-data-shortcut.desktop
[Desktop Entry]
Type=Application
Name=Create a shortcut to the shared data directory
Exec=/bin/bash -c 'ln -snf /data /home/$USER/Desktop/data'
NoDisplay=true
X-GNOME-Autostart-Phase=Initialization
X-KDE-autostart-phase=1


Save the model

I want to save the model,how i can edit the code?thank you.

Please refer to this tutorial: https://github.com/MorvanZhou/Tensorflow-Tutorial/blob/master/tutorial-contents/303_save_reload.py


Up and Down for Blinds

Hi, i have 21 Blinds with tasmota in my house. I have conected them as switch, but then then voice commands are Turn On and Turn off (well in spanish Encience and Apaga instead of up/down, Sube and Baja in spanish ) that is the proper way to use them.
Another thing, would be nice to have device with 2 switches. Actually i'm using an "Up kitchen and a Down Kitchen device", it is a bit unnatural say "turn on Up Kitchen" and "Turn on Down Kitchen".
Would be nice to have only a "kitchen" device for example and tell alexa to "up kitchen", "down kitchen" or "Stop kitchen"
Is this possible already?
Best regards.

node-red-contrib-virtual-smart-home does blinds, node-red-alexa-home-skill-web is in maintenance mode only and further developement is unlikely

No, none of the devices supported by the level of API the skill is built on have up/down actions.


Agda packages are incompatible with -Werror

Describe the bug
Agda packages will not work with the -Werror flag
To Reproduce
Steps to reproduce the behavior:

Create a file that imports some library module
Run that file with agda -Werror

Expected behavior
Should typecheck
Additional context
This happens because agda requires a rebuild of interface files when this option is set on/off. Upstream issue: https://github.com/agda/agda/issues/5151
Notify maintainers
@turion
Metadata

system: "x86_64-linux"
host os: Linux 5.4.91, NixOS, 21.03.20210121.f217c0e (Okapi)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.4pre20201205_a5d85d0
channels(root): "emacs, home-manager, master, nixos-21.03pre263901.68398d2dd50, nixpkgs-wayland"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

At least on the library level, a good idea would probably to collect all agda options in the nix expression, and propagate them to the dependencies. That way, changing an option will change the dependency, and cause it to rebuild cleanly as a different derivation.

At least on the library level, a good idea would probably to collect all agda options in the nix expression, and propagate them to the dependencies. That way, changing an option will change the dependency, and cause it to rebuild cleanly as a different derivation.

With this approach, one could also offer a wrapped agda executable that applies the options given in nix. Then the user only needs to remember to add all such options in the nix expression, and not on the command line.

With this approach, one could also offer a wrapped agda executable that applies the options given in nix. Then the user only needs to remember to add all such options in the nix expression, and not on the command line.

I think attempting an upstream fix first would be better. I just made the issue for some visibility

I think attempting an upstream fix first would be better. I just made the issue for some visibility

It's not usual to have to build a package for every combination of compiler flags

It's not usual to have to build a package for every combination of compiler flags

I think attempting an upstream fix first would be better. I just made the issue for some visibility

That would be better, yes. How are the chances for that happening?

It's not usual to have to build a package for every combination of compiler flags

Actually if you rebuild a Haskell package with cabal with different compiler flags, it will rebuild the package. That's sort of the same what's happening here, isn't it?

I think attempting an upstream fix first would be better. I just made the issue for some visibility

That would be better, yes. How are the chances for that happening?

It's not usual to have to build a package for every combination of compiler flags

Actually if you rebuild a Haskell package with cabal with different compiler flags, it will rebuild the package. That's sort of the same what's happening here, isn't it?

That would be better, yes. How are the chances for that happening?

I have no idea.

Actually if you rebuild a Haskell package with cabal with different compiler flags, it will rebuild the package. That's sort of the same what's happening here, isn't it?

Does this propagate into packages though? The problem here is that if I have a file not in the package that depends on the package and I try to compile my file with -Werror, then the Werror propagates to the package and causes a rebuild of the package

That would be better, yes. How are the chances for that happening?

I have no idea.

Actually if you rebuild a Haskell package with cabal with different compiler flags, it will rebuild the package. That's sort of the same what's happening here, isn't it?

Does this propagate into packages though? The problem here is that if I have a file not in the package that depends on the package and I try to compile my file with -Werror, then the Werror propagates to the package and causes a rebuild of the package

Actually if you rebuild a Haskell package with cabal with different compiler flags, it will rebuild the package. That's sort of the same what's happening here, isn't it?

Does this propagate into packages though?

I'm a bit hazy on the details, but if you do e.g. -fno-code or also profiling flags I believe all the dependencies will be rebuilt with the new flags. With other flags like -O I think not, though.

The problem here is that if I have a file not in the package that depends on the package and I try to compile my file with -Werror, then the Werror propagates to the package and causes a rebuild of the package

Yes. One should write a shell.nix that contains an agdaWithPackages where one can also specify all options like -Werror. Then that shell should give you the package built with -Werror, and also a wrapped agda with -Werror specified by default.


Dedicate port for nodes to ping for diagnostics

On a computer I can see I'm connected to Wifi...
On a smartphone I can see I have coverage...
On a node.. I get successful transmission and still don't know
What if we'd:

Dedicate a port (255? 100?) that returns diagnostics
Provide a ttn.ping() API that sends a byte to this port and decoded the diagnostics but also has client-side logic to help diagnose failures that cause the message not to make the backend
Document the format of the diagnostics for nodes we don't have a lib for

The diagnostics could simply be different success/error codes like:

All good
Cannot reach any gateway
Wrong keys
... ?

/cc @johanstokking

Unfortunately it's not possible to tell a node (from the network side) what exactly went wrong. LoRaWAN was just not built for this.
situation 1: Messages just show up in the dashboard
situation 2: LoRaWAN is a radio protocol, so if it cannot reach any gateway, there is no response.
situation 3: If wrong keys are used, we don't know how to encrypt a response and sign the MIC, so even if we would send something back, the node won't be able to read it.
network error: Apparently there's a communication issue, so we either didn't receive anything on the server (and we can't reply) or we sent a reply, but it doesn't arrive back at the node
any other situation: We might be able to publish errors to MQTT, but that's it.
For checking connectivity, there's the LinkCheck MAC command (which is supported by the v2 backend). This works, but is probably not the best way to spend your downlink quota.

Apart from confirmed uplink and link check MAC command, we can't do very much today, especially not when it comes to reporting status to the node.
In the TTN model, the the NwkSKey is known by the Network Server and the AppSKey is known by the Handler, so if there goes anything wrong in the Router, Broker, Network or Discovery Server, there's no way the Router can respond.
Instead, we'd better work on the NOC and get better insight in the data flow. Ideally, we'll be able to follow each message from component to component, or when and why a component drops it. The next step would be to make this available to the user in the Console.

Haha, I was afraid that would be the answer, so really the thing we need is:

Provide troubleshooting for every possible point of failure

Let's identify every point of failure and think of manual and technical ways to help the user determine what the point of failure is and how to fix that.
Probably more a docs issue then, so let's build a list of point of failures, ordered from first to last one to check with solutions here:
https://github.com/TheThingsNetwork/docs/wiki/Device-Troubleshooting
This will also clarify where the NOC and surfacing its info in the Console have a role.

Here's a start:
ABP

Wrong DevAddr or wrong NwkSKey: device unknown or MIC check fails, Broker drops message. Possible causes: wrong key, confused MSB/LSB. Solution: configure correctly
Wrong AppSKey: Handler produces garbage. Possible causes: wrong key, confused MSB/LSB. Solution: configure correctly
Colliding DevAddr, NwkSKey or AppSKey: you see data from other devices as well. Solution: configure unique set of address and keys (e.g. use our randomizer)
Frame counters reset: no more frames, except when frame counters comes above previous value, Broker drops the message. Possible causes: power reset and no relax frame counters on. Solution: switch to OTAA if power reset always causes frame counter reset, or disable frame counter checks (unsafe)

OTAA

Wrong AppEUI: the Handler cannot be reached for activation, all Brokers drop. Possible causes: wrong EUI, confused MSB/LSB, Handler is not registered on Broker. Solution: configure correctly, make sure Handler is registered (shouldn't be a problem in the public community network)
Wrong AppKey: the challenge by the Handler of the Broker(s) failed, the Broker(s) will drop the message. Possible causes: wrong key, confused MSB/LSB. Solution: configure correctly
Wrong DevEUI: unknown device in NS, Broker drops the message. Possible causes: wrong EUI, confused MSB/LSB, device not registered by the Handler. Solution: configure correctly, register device
Duplicate AppEUI, DevEUI and AppKey: device gets activated in two networks, it's random which join accept the device processes. Possible causes: registering the same device on two networks. Solution: don't do that, use LoRaWAN 1.1 join servers (not fully specified yet). Note: we're already avoiding this in the public community network
Activation still doesn't work: the activation event might be fired by the Handler, but the join accept may not be received by the device, see 1 in General below

General

Confirmed uplink doesn't acknowledge: there's no coverage, there's no gateway with downlink time left (or no downlink gateway at all, e.g. single channel gateway), gateway transmission collision or gateway network issue
(Un)confirmed data is not in Console: there's no coverage, gateway network issue

Thanks! I'll rewrite it to go from experienced issue to cause. It'll be important to have extensive troubleshooting in place before we ship to not get overwhelmed with support requests.


Unable to invoke function on cluster

Hi,
I followed the documentation https://github.com/hydro-project/cluster/blob/master/docs/getting-started-aws.md  to setup a cloudburst cluster in AWS. The creation of the cluster is working as described. Then I spin up an additional EC2 instance in order to start a cloudburst client from there and try to invoke a function following https://github.com/hydro-project/cloudburst/blob/master/docs/function-execution.md :
>>> from cloudburst.client.client import CloudburstConnection
>>> cloudburst = CloudburstConnection(AWS_FUNCTION_ELB, MY_IP, local=local)
>>> incr = lambda _, a: a + 1
>>> cloud_incr = cloudburst.register(incr, 'incr')
>>> cloud_incr(1).get()

The first 4 commands are working without error but the invocation of the function (command 5) does not terminate. Unfortunately I do not have much ideas how to debug it. Can you help me out or give me some guidance what I could check?
Best regards and many thanks in advance,
Michael

Hi @MichaelKreutz -- thanks for the question. Where are you running this from? Calling .get() tries to fetch the result from the KVS, which is asynchronous. To support this, ports 6460 and 6760 need to be open. If you can't open those ports, you can try running your script above from inside the k8s cluster, which should also work. Let me know if this doesn't fix things.

Thanks for your super fast help.
I am starting an EC2 instance in the same VPC by using AWS Console.
I am a bit lost. Do you want me to open the ports by doing a port-forwarding in the functions-load-balancer in https://github.com/hydro-project/cluster/blob/master/hydro/cluster/yaml/services/function.yml?
Besides I connected to the pod named function-nodes-{...} and tried to run my scripts from there by connecting via cloudburst = CloudburstConnection('DNS_OF_FUNCTIONS_SERVICE_ELB', '$PUBLIC_IP_OF_CLIENT', local=False) with the same outcome: the .get() call just does not terminate..

When you say in the same VPC, do you mean that it's in the same VPC as the Kubernetes cluster? If so, then the easiest thing to do would be the switch PUBLIC_IP_OF_CLIENT to PRIVATE_IP_OF_CLIENT.
If you are in a separate VPC from the k8s cluster, the easiest thing to would be to go to the security group of the client machine and open ports 6460 and 6760 to traffic from anywhere.
Does this make sense?

Again thanks a lot! You are right, with the same VPC I am referring to the VPC of the k8s cluster.
I tried as well to adapt my security group of the instance running in a different VPC (than the VPC of the k8s cluster :-D). It does not work if I open ports 6460 and 6760 only. However, if I open the TCP port-range 6000 - 7000, then it works.
As for running the code from an instance within the same VPC as the k8s cluster runs in, I can use the private IP of the instance (the public one works as well). In addition I have to open some ports, the same port-range as above works..
Is Anna not using static ports for the return channel or do I have to open other ports than 6460 and 6760?

Glad you were able to get it working! The ports usually use a range to avoid conflicts if multiple threads are running on the same machine (e.g., thread 0 would use 6460, thread 1 would use 6461, etc.), but that shouldn't be a problem for your client machine. I'll go back and check to see if there were other ports that are used that I missed in my original comment.
In the meantime, let me know if there are any other issues you're running into in terms of setting up and running the system!