[usvg] slow compared to librsvg, inkscape, batik for specific file

I compared the average rendering times for 141 images at https://commons.wikimedia.org/wiki/Category:Featured_pictures_on_Wikimedia_Commons_-_vector
With https://commons.wikimedia.org/wiki/Commons:Imker_(batch_download) you can download the whole category at commons.
I know resvg supports more features (e.g: textPath)  and maybe has a better precession (e.g. gausian blur), however I wondered that it was the slowest of all rendering engines, even slower than Inkscape.

svg
librsvg 2.50.3
resvg 0.14.0
Inkscape 1.0.2
batik 1.14

time
8,82min
24,58min
18,82min
19,2min

-I think all of the rendering-engines use singe-CPU?
-Since I did hardly use the PC during rendering, CPU,RAM,SSD should have almost no utilization. So I don't think it is because of CPU-prioritization .
-Since librsvg renders nearly all files almost correct, the time-difference should imho be neglibible.
-Since it contains 141 files I don't think it is related to a singe file
I know it is bad elaborated bug-report, but maybe you can comment on that where I should reinvestigate.
PS: Do you know how to check the CPU-times of commands in a bash-script?

How exactly do you build resvg?

build
I just rebuild it:
sudo dnf install qt5-qtbase-devel harfbuzz-devel qt5-qtbase qt5-qtbase-devel qt5-qtsvg qt5-qtsvg-devel npm inkscape librsvg2 batik batik-rasterizer wxsvg wxsvg-devel
sudo dnf upgrade
cd ~/Dokumente/GitDesktop/
# git clone https://github.com/RazrFalcon/resvg.git #allready done
cd resvg/
git config pull.rebase false
git pull
cargo build --release
./make-vendored.sh

one file more than 60 times slower than {librsvg,inkscape,batik}

svg
librsvg 2.50.3
resvg 0.14.0
Inkscape 1.0.2
batik 1.14

real time
0m5,691s
11m52,413s
0m6,774s
0m11,335s

user time
0m9,973s
11m42,682s
0m8,562s
0m28,025s

sys time
0m0,097s
0m0,411s
0m0,218s
0m0,842s

SVG-file

source: https://commons.wikimedia.org/wiki/File:India_roadway_map.svg
author: CC-by-sa PlaneMad/Wikimedia
license: CC BY SA 3.0
bash script
#!/bin/bash

for file in *.svg
 do

 echo #Add a empty line to split the output
 echo $file

 echo resvg
 time ~/Dokumente/GitDesktop/resvg/target/release/resvg "$file" "${file%.svg}_rendersvg.png"

 echo librsvg
 time rsvg-convert "$file" >"${file%.svg}_librsvg.png"

 echo inkscape
 time inkscape "$file" --export-type="png"
 mv "${file%.svg}.png" "${file%.svg}_Inkscape.png"

 echo batik
 time java -jar ~/prgm/batik-1.14/batik-rasterizer-1.14.jar "$file" -d "${file%.svg}_batik.png"

done

terminal output
India roadway map.svg
resvg
Warning (in usvg::svgtree::parse:66): Failed to parse d value: 'M209-152.5'.

And most of the time is spent during preprocessing and not rendering. Feels like a text shaping bug. Will investigate later.

I optimized the file with scour, svgcleaner, svgo, "ungrouped" all groups/switches with inkscape and splitted the svg in Text-svg and a Objects-svg (without text).
The path-svg is slower than the text-svg.
Text

svg
librsvg 2.50.3
resvg 0.14.0
Inkscape 1.0.2
batik 1.14

real time
0m15,682s
0m52,114s
0m5,331s
0m8,176s

user time
0m22,275s
0m50,196s
0m7,390s
0m17,128s

sys time
0m0,130s
0m0,635s
0m0,148s
0m0,637s

Objects

svg
librsvg 2.50.3
resvg 0.14.0
Inkscape 1.0.2
batik 1.14

real time
0m9,201s
6m31,513s
0m3,215s
0m8,116s

user time
0m8,892s
6m21,154s
0m3,077s
0m19,244s

sys time
0m0,047s
0m2,195s
0m0,162s
0m0,537s

I delimited one issue the useless clipPath slow down extremely:
micro-SVG (Text unmodified) with useless clipPaths
both.svg.txt
real	1m45,192s
user	1m42,838s
sys	0m0,468s
micro-SVG (Text unmodified) without clipPaths
both_(Kopie)CU.svg.txt
real	0m2,754s
user	0m2,469s
sys	0m0,230s

@JoKalliauer Should be way better now. On my hardware both.svg.txt rendering reduced from 113527ms to just 8596ms (13x faster).
Please test the latest commit if you can to make sure I haven't broke anything it the process.

You fixed imho half of the issue. (I tried to make a Minimal working example with a mikro-svg, which got fixed, but the original one https://upload.wikimedia.org/wikipedia/commons/archive/7/78/20210402095817%21India_roadway_map.svg still takes about 4minutes for rendering.)
Because of the Warnings, it might be a malformed svg.
fixed:
rendering-times of the mikro-svg both.svg.txt:

resvg
librsvg
inkscape
batik

7,100s
0,638s
3,175s
7,840s

unfixed:
wget https://upload.wikimedia.org/wikipedia/commons/archive/7/78/20210402095817%21India_roadway_map.svg -O Input.svg
time usvg Input.svg Output.svg

resulted in
Warning (in usvg::svgtree::parse:66): Failed to parse d value: 'M209-152.5'.
Warning (in usvg::svgtree::parse:66): Failed to parse d value: 'M105-323'.

real	3m53,301s
user	3m52,748s
sys	0m0,149s

Yes, preprocessing is still incredibly slow on this file.

Fixed. I was using a very dumb/slow algorithm for checking that element id is unique.

Do you know how to get the latest develomentversion from git. I tried cargo install resvg --force --git https://github.com/RazrFalcon/resvg/, but it still slow (I assume it is the released 0.15).

I think it should be
cargo install --force --git https://github.com/RazrFalcon/resvg/

I think it should be
cargo install --force --git https://github.com/RazrFalcon/resvg/ resvg

Works very fast for me.

I run
cargo install --force --git https://github.com/RazrFalcon/resvg/ resvg
cargo install --force --git https://github.com/RazrFalcon/resvg/ usvg

resvg is fast, but usvg is not ? I thought resvg always runs usvg first, does it use different options?
rm -f Input.svg
wget -q https://upload.wikimedia.org/wikipedia/commons/archive/7/78/20210402095817%21India_roadway_map.svg -O Input.svg
time resvg Input.svg PNG.png
time usvg Input.svg Output.svg

returns:
Warning (in usvg::svgtree::parse:64): Failed to parse d value: 'M209-152.5'.
Warning (in usvg::svgtree::parse:64): Failed to parse d value: 'M105-323'.

real	0m7,221s
user	0m6,853s
sys	0m0,355s

Warning (in usvg::svgtree::parse:66): Failed to parse d value: 'M209-152.5'.
Warning (in usvg::svgtree::parse:66): Failed to parse d value: 'M105-323'.

real	3m52,365s
user	3m51,813s
sys	0m0,146s

It seems that your are calling older usvg version somehow. Warning should be at line 64, not 66 in the latest build.

It seems that your are calling older usvg version somehow. Warning should be at line 64, not 66 in the latest build.

Thanks!
cargo install --force --git https://github.com/RazrFalcon/resvg/ usvg creates a binary in ~/.cargo/bin/usvg, however I had a symbolic link in ~/bin/usvg symbolically-linking to /home/jkalliau/Documents/GitHub/resvg/target/release/usvg


Add metadata to each component's documentation page

How to test

View the metadata card prototype at https://design-system-git-component-metadata-nihruk.vercel.app/component/accordion
Leave your thoughts

I think the idea is good and it's a nice way to provide key information.
I think a wider card, with a heading for context to enable clean scanning of the page visually and by screen reader, would be useful. Something like:

Lead paragraph
Key information card
Other documentation.


Simple code with belongsToMany

Hello.
Im lost a day in simple issue =(. Can somebody help me please with belongsToMany?
OfferModel has many places. But in the end relation is always empty ...
What is wrong in my code?
export default class OfferModel extends Model{
    static entity = 'offers';

    static fields () {
        return {
            id: this.number(null),
            title: this.string(''),
            places: this.belongsToMany(PlaceModel, OfferPlacePivot,"offer_id","place_id"),
        }
    }
}

export default class PlaceModel extends Model{
    static entity = 'places';

    static fields () {
        return {
            id: this.number(0),
            title_nominative: this.string(''),
        }
    }
}

export default class OfferPlacePivot extends Model{
    static entity = 'offerPlacePivot';

    static primaryKey = ['place_id', 'offer_id'];

    static $fields() {
        return {
            offer_id:this.attr(null),
            place_id:this.attr(null),
        }
    }
}

// =====================
PlaceModel.insert({data:{
		id:1,
		title_nominative:"title_nominative",
	}});

OfferModel.insert({
	data:{
		id:1,
		title:"test offer",
		places:[
			{offer_id:1,place_id:1}
		]
	}
});

console.log(OfferModel.query().withAllRecursive().where("id",1).first().places); // -> empty array =(

@mrFANRA thank you for the report!
I’ll research for the it’s cause.

Hi @mrFANRA
please modify $fields method name to fields.

Hello @kkyouhei . Thanks for reply!
I changed method and update to latest version, but still some response.

@mrFANRA Oh, I see the issue here. OK, so you are passing OfferPlacePivot to OfferModel, but OfferModel has relationship to PlaceMode. So, you should be passing PlaceModel directly to the OfferModel.
OfferModel.insert({
  data: {
    id: 1,
    title: "test offer",
    places: [
      { id: 1, title_nominative: "title_nominative" }
    ]
  }
});

The above will automatically generate OfferPlacePivot records for you.
Or, if you want to create pivot record explicitly, you could create each separately as well.
PlaceModel.insert({
  data: {
    id: 1,
    title_nominative: "title_nominative",
  }
});

OfferModel.insert({
  data: {
    id: 1,
    title: "test offer"
  }
});

OfferPlacePivot.insert({
  data: {
    offer_id: 1,
    place_id: 1
  }
})

JS make me cry sometimes. Now its works! =)

Maybe Im wrong, but its looks like belongsToMany relations is empty only in server rendering side. Im using nuxt ...

@kiaking Can you test this plaese? Im not understand it is bug or my fail. belongsToMany not working in SSR with NuxtJS
export default class OfferModel extends Model{
    static entity = 'offers';

    static fields () {
        return {
            id: this.number(null),
            title: this.string(''),
            images: this.belongsToMany(ImageModel,OfferImagePivot,"offer_id","image_id"),
        }
    }
}

export default class ImageModel extends Model {
    static entity = 'images';

    static fields () {
        return {
            id: this.number(0),
            src: this.attr(''),
        }
    }
}

export default class OfferPlacePivot extends Model{
    static entity = 'offerImagePivot';

    static primaryKey = ['image_id', 'offer_id'];

    static fields() {
        return {
            id:this.increment(),
            offer_id:this.attr(null),
            image_id:this.attr(null),
        }
    }
}

// Component:
export default {
        name: "index",
        data() {
            return{
                offer1:false,
                offer2:false,
            }
        },
        asyncData ({ store }) {
            OfferModel.insert({
                data:{
                    id:1,
                    title:"first offer",
                    images:[
                        {id:1, src:"1.jpg"},
                        {id:2, src:"2.jpg"},
                    ],
                }
            });
        },
        created() {
            OfferModel.insert({
                data:{
                    id:2,
                    title:"Second offer",
                    images:[
                        {id:3, src:"3.jpg"},
                        {id:4, src:"4.jpg"},
                    ],
                }
            });

            // Images is empty only on server render side. But if reload script on client side all is fine here =(
            this.offer1 = OfferModel.query().whereId(1).withAllRecursive().first();

            // Always has images
            this.offer2 = OfferModel.query().whereId(2).withAllRecursive().first();
        }
    }

@mrFANRA I'm not 100%  sure, but maybe this is because of asynchronous method execution. insert method is calling Vuex Action hence it is async function. So maybe you must wait for it. Could you try adding async and await in asyncData?
export default {
    ...

    async asyncData ({ store }) { // <- async.
        await OfferModel.insert({ // <- await
            data:{
                id:1,
                title:"first offer",
                images:[
                    {id:1, src:"1.jpg"},
                    {id:2, src:"2.jpg"},
                ],
            }
        });
    },

    ...
}

@kiaking unfortunately didn't help =(

@mrFANRA Damn... This is so wired because I'm doing this all the time (except I'm mostly using fetch instead of asyncData, but It doesn't matter I guess...?).
Is it possible for you to create a reproducible repo for this one? I need to dig in to find out more.

@mrFANRA Hi! Did you make it working?

Hi! I check this issue few days ago.
I think my mistake was that I did not use computed method for retrived model.
computed:{
            offer1:function () {
                return OfferModel.query().whereId(1).withAllRecursive().first();
            },
        },

@mrFANRA Oh, OK! Great. Thank you for the confirmation, and I'm happy to hear you found the solution.
I'll be closing this issue. Please feel free to open another one if there's anything!


add skip to main content in index.html

Add a skip to main content link in index.html
Another issue will be created later in styles.css so only screen reader users will see this.
For help with this issue please Google "Kevin Powell" and "skip to main content".

This sounds fun, could I get assigned to this?

There you go!


tarsquerystat and tarsqueryproperty can not start

when start the tarsquery* service , it report to me the error:

exit: [TARS]ServantHelperManager::addServant tars.tarsquerystat.NoTarsObj not find adapter.(maybe not conf in the web)

i try to find some problem, and check every config. but got nothing.  i follow the doc to install doc.

NoTarsObj   is not NoTanObj .  zoom out the config image.


Add JSONiq & XQuery scope from Atom package

I have built a XQuery and JSONiq Atom package: https://atom.io/packages/language-jsoniq
I would like the Javascript lexer to be used for XQuery and JSONiq syntax highlighting in github.
However, the highlighting is done programmatically, not by using a grammar file. Would that be a problem?
Please let me know what I can do to contribute better XQuery and JSONiq syntax highlighting to github.

Thanks for submitting this @wcandillon!

However, the highlighting is done programmatically, not by using a grammar file. Would that be a problem?

This won't work with github.com's syntax highlighter. It only understands TextMate/Sublime/Atom language grammars. It can't execute your Atom module's code. So to get these languages highlighted on github.com you'll need to write grammars for them (or find existing ones).


Mark no longer flakey tests as bringup:false

This is a result of auditing the ci.yaml tests marked as bringup true and determining which ones were still flakey.
Each commit markes one tests as non flakey along with a link of proof of the lack of flakes.

Mark new_gallery_impeller__transition_perf as not flakey, #124699 closed, not recent flakes
No failures in 500 runs for Staging_build_linux analyze https://ci.chromium.org/p/flutter/builders/staging/Staging_build_linux analyze?cursor=id%3E8782771663962116337&limit=200
No flakes in 600 builds https://ci.chromium.org/p/flutter/builders/staging/Linux flutter_packaging_test?cursor=id%3E8787892377160059793&limit=200
No flakes in 600 builds https://ci.chromium.org/p/flutter/builders/staging/Mac flutter_packaging_test?cursor=id%3E8787870631931126673&limit=200
No flakes in 600 builds https://ci.chromium.org/p/flutter/builders/staging/Mac_arm64 flutter_packaging_test?cursor=id%3E8787809799161254193&limit=200

#124699 is the only closed bug that was linked for a test that is no longer flakey. Closed status helps the case that flakes are no longer an issue.
Pre-launch Checklist

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
[x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
[x] I signed the [CLA].
[x] I listed at least one issue that this PR fixes in the description above.
[ ] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is [test-exempt].
[ ] All existing and new tests are passing.

Holding autosubmit on @keyonghan's lgtm


Add missing dependencies to react-components package

Description
Add missing dependencies to react-components project. these are directly required by files in the project but as they are already required in mobile/verifier they were missed being added to the package.json of @celo/react-components
Tested
ran the tests
Other changes
nope
Related issues

Part of the investigation to make the package publishable

opened the app in the emulator


Problem merging?

I finished the polishing and in the merging step at the end I received the following error,
Traceback (most recent call last):
File "/mnt/cris/nanopolish/scripts/nanopolish_merge.py", line 89, in
assert(prev_segment is None or prev_segment + SEGMENT_LENGTH + OVERLAP_LENGTH > segment_start)
AssertionError
Any idea?
Thanks.

One of the polishing jobs failed, so a segment is missing.
Jared

I had this assertion failure as well. I've re-run the job, but it's still not producing the missing segment.
When I run nanopolish_makerange.py, it's producing the correct range, but nanopolish produces no output:
$ python ~/install/nanopolish/scripts/nanopolish_makerange.py ../Nb_ONTCFED_alb202_65bpTrim_t1/Nb_ONTCFED_alb202_65bpTrim_t1.contigs.fasta | grep tig00022286:100000
tig00022286:100000-150200

$ python ~/install/nanopolish/scripts/nanopolish_makerange.py ../Nb_ONTCFED_alb202_65bpTrim_t1/Nb_ONTCFED_alb202_65bpTrim_t1.contigs.fasta |   grep tig00022286:100000 | parallel --results nanopolish.results -P 10 ~/install/nanopolish/nanopolish variants --ploidy=2 --consensus   polished.{1}.fa -w {1} -r fastq_called_albacore_2.0.2_all_passed -b CFED_vs_NbCanu1.6_202_t1.bam -g   ../Nb_ONTCFED_alb202_65bpTrim_t1/Nb_ONTCFED_alb202_65bpTrim_t1.contigs.fasta -t 4 --min-candidate-frequency 0.1
[no output]

Hmm... I get a segmentation fault when I run without the parallel commands:
$ ~/install/nanopolish/nanopolish variants --ploidy=2 --consensus polished.tig00022286:100000-150200.fa -w tig00022286:100000-150200 -r fastq_called_albacore_2.0.2_all_passed -b CFED_vs_NbCanu1.6_202_t1.bam -g   ../Nb_ONTCFED_alb202_65bpTrim_t1/Nb_ONTCFED_alb202_65bpTrim_t1.contigs.fasta -t 4 --min-candidate-frequency 0.1
##fileformat=VCFv4.2
##INFO=<ID=TotalReads,Number=1,Type=Integer,Description="The number of event-space reads used to call the variant">
##INFO=<ID=SupportFraction,Number=1,Type=Float,Description="The fraction of event-space reads that support the variant">
##INFO=<ID=BaseCalledReadsWithVariant,Number=1,Type=Integer,Description="The number of base-space reads that support the variant">
##INFO=<ID=BaseCalledFraction,Number=1,Type=Float,Description="The fraction of base-space reads that support the variant">
##INFO=<ID=AlleleCount,Number=1,Type=Integer,Description="The inferred number of copies of the allele">
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
#CHROM  POS     ID      REF     ALT     QUAL    FILTER  INFO    FORMAT  sample
Segmentation fault

I added a noisy pass-through to stop alignment if the indexes didn't make sense, which side-steps around the problem causing the segmentation fault, and makes a little suggestion that things might look a bit odd:
diff --git a/src/nanopolish_raw_loader.cpp b/src/nanopolish_raw_loader.cpp
index 33f772a..40425b5 100644
--- a/src/nanopolish_raw_loader.cpp
+++ b/src/nanopolish_raw_loader.cpp
@@ -220,6 +220,12 @@ std::vector<AlignedPair> banded_simple_event_align(SquiggleRead& read, const std
         int row = curr_event_idx - min_event_idx_by_kmer[curr_k_idx];
         int col = curr_k_idx + 1;

+        if((row > n_rows) || (col > n_cols)){
+          fprintf(stderr, "ERROR: row/column mismatch; (%d,%d) > (%d,%d)\n",
+                  row, col, n_rows, n_cols);
+          break; // silently stop alignment if it doesn't make sense
+        }
+
         uint8_t from = get(backtrack_matrix, row, col);
         if(from == FROM_D) {
             curr_k_idx -= 1;

$ ~/install/nanopolish/nanopolish variants --ploidy=2 --consensus polished.tig00022286:100000-150200.fa -w tig00022286:100000-150200 -r fastq_called_albacore_2.0.2_all_passed -b CFED_vs_NbCanu1.6_202_t1.bam -g   ../Nb_ONTCFED_alb202_65bpTrim_t1/Nb_ONTCFED_alb202_65bpTrim_t1.contigs.fasta -t 4 --min-candidate-frequency 0.1
##fileformat=VCFv4.2
##INFO=<ID=TotalReads,Number=1,Type=Integer,Description="The number of event-space reads used to call the variant">
##INFO=<ID=SupportFraction,Number=1,Type=Float,Description="The fraction of event-space reads that support the variant">
##INFO=<ID=BaseCalledReadsWithVariant,Number=1,Type=Integer,Description="The number of base-space reads that support the variant">
##INFO=<ID=BaseCalledFraction,Number=1,Type=Float,Description="The fraction of base-space reads that support the variant">
##INFO=<ID=AlleleCount,Number=1,Type=Integer,Description="The inferred number of copies of the allele">
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
#CHROM  POS     ID      REF     ALT     QUAL    FILTER  INFO    FORMAT  sample
ERROR: row/column mismatch; (-167643,212) > (500,213)
...

... and that negative number agrees with the "big" row index number of the segmentation fault backtrace (in a signed fashion).

Thanks for looking into this. banded_simple_event_align is no longer used
though, can you try with the latest code?
On Wed, Oct 25, 2017 at 11:00 PM, David Eccles (gringer) <
<EMAIL_ADDRESS>wrote:

I added a noisy pass-through to stop alignment if the indexes didn't make
sense, which side-steps around the problem causing the segmentation fault,
and makes a little suggestion that things might look a bit odd:
diff --git a/src/nanopolish_raw_loader.cpp b/src/nanopolish_raw_loader.cpp
index 33f772a..40425b5 100644
--- a/src/nanopolish_raw_loader.cpp
+++ b/src/nanopolish_raw_loader.cpp
@@ -220,6 +220,12 @@ std::vector banded_simple_event_align(SquiggleRead& read, const std
int row = curr_event_idx - min_event_idx_by_kmer[curr_k_idx];
int col = curr_k_idx + 1;

   if((row > n_rows) || (col > n_cols)){

     fprintf(stderr, "ERROR: row/column mismatch; (%d,%d) > (%d,%d)\n",

             row, col, n_rows, n_cols);

     break; // silently stop alignment if it doesn't make sense

   }

   uint8_t from = get(backtrack_matrix, row, col);
   if(from == FROM_D) {
       curr_k_idx -= 1;

$ ~/install/nanopolish/nanopolish variants --ploidy=2 --consensus polished.tig00022286:100000-150200.fa -w tig00022286:100000-150200 -r fastq_called_albacore_2.0.2_all_passed -b CFED_vs_NbCanu1.6_202_t1.bam -g   ../Nb_ONTCFED_alb202_65bpTrim_t1/Nb_ONTCFED_alb202_65bpTrim_t1.contigs.fasta -t 4 --min-candidate-frequency 0.1
##fileformat=VCFv4.2
##INFO=<ID=TotalReads,Number=1,Type=Integer,Description="The number of event-space reads used to call the variant">
##INFO=<ID=SupportFraction,Number=1,Type=Float,Description="The fraction of event-space reads that support the variant">
##INFO=<ID=BaseCalledReadsWithVariant,Number=1,Type=Integer,Description="The number of base-space reads that support the variant">
##INFO=<ID=BaseCalledFraction,Number=1,Type=Float,Description="The fraction of base-space reads that support the variant">
##INFO=<ID=AlleleCount,Number=1,Type=Integer,Description="The inferred number of copies of the allele">
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
#CHROM  POS     ID      REF     ALT     QUAL    FILTER  INFO    FORMAT  sample
ERROR: row/column mismatch; (-167643,212) > (500,213)
...
... and that negative number agrees with the "big" row index number of the
segmentation fault backtrace (in a signed fashion).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jts/nanopolish/issues/247#issuecomment-339536545, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAXxn2cXv1mRd8UEXQKWn30q6T9VBqcnks5sv_XqgaJpZM4P89yz
.

Hi Jared,
Ive been running a job for a some a day now it was going ok until now, but the following message appeared:
[post-run summary] total reads: 1263 unparseable: 0 qc fail: 1 could not calibrate: 0 no alignment: 15
##fileformat=VCFv4.2
##INFO=<ID=TotalReads,Number=1,Type=Integer,Description="The number of event-space reads used to call the variant">
##INFO=<ID=SupportFraction,Number=1,Type=Float,Description="The fraction of event-space reads that support the variant">
##INFO=<ID=BaseCalledReadsWithVariant,Number=1,Type=Integer,Description="The number of base-space reads that support the variant">
##INFO=<ID=BaseCalledFraction,Number=1,Type=Float,Description="The fraction of base-space reads that support the variant">
##INFO=<ID=AlleleCount,Number=1,Type=Integer,Description="The inferred number of copies of the allele">
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
#CHROM  POS     ID      REF     ALT     QUAL
        FILTER  INFO    FORMAT  sample
HDF5-DIAG: Error detected in HDF5 (1.8.14) thread<PHONE_NUMBER>29536:
  #000: H5F.c line 591 in H5Fopen(): invalid file name
    major: Invalid arguments to routine
    minor: Bad value
terminate called after throwing an instance of 'hdf5_tools::Exception'
  what():  /Raw/Reads/Read_5622/Signal: : error in H5Fopen

Any ideas? The run is still going however I donnt know if it will actually finish properly.
Thanks.

Hi @caonetto,
This issue is odd. The error message indicates that the raw signal information is not present in one of the fast5 files. Nanopolish will only try to read this information for reads that were successfully basecalled though, which requires the raw signal information. This is contradictory so I'm not sure what is going on. If you re-run the job does the error still happen? What about if you re-index the reads?
Jared

@caonetto this problem should now be fixed, nanopolish will skip fast5 files that are corrupted.


Feature request: signal extraction in subject level space rather than group MNI template

This is an request from the cneuromod team.
Currently we are using the MNI template to access overlap of grey matter with atlas, but it would be useful to extend this to subject native space

At niprep sprint we learned about the nitransform: https://demo.hedgedoc.org/s/_OvFODeP8#
This should be a simple use case covered by nitransform.
For the load confounds part we might need to access the lower level api for this part


Add a make target to test with lorax-composer

Codecov Report

Merging #215 into master will decrease coverage by 0.54%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #215      +/-   ##
==========================================
- Coverage   44.24%   43.69%   -0.55%
==========================================
  Files          71       71
  Lines        2371     2371
  Branches      320      320
==========================================
- Hits         1049     1036      -13
- Misses       1112     1124      +12
- Partials      210      211       +1

Impacted Files
Coverage Δ

core/reducers/blueprints.js
36% <0%> (-8%)
:arrow_down:

data/BlueprintApi.js
51.63% <0%> (-2.46%)
:arrow_down:

pages/blueprintEdit/index.js
50.4% <0%> (-2.46%)
:arrow_down:

Continue to review full report at Codecov.

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

@martinpitt @henrywang for the pendingCommit test I wait for the components to be shown under Selected Components and that seems to timeout in Travis. For lorax-composer depsolve takes more than 30 seconds and I've bumped the timeout there to 90 seconds. Should I do the same for the bdcs-api backend ?


yew/examples/function_memory_game/ -> Game's broken

Problem

Steps To Reproduce
Steps to reproduce the behavior:
Use examples folder & trunk serve for the path in the issue title above
Expected behavior
there is a bug where there are two missing pieces which are different pieces
Screenshots

Questionnaire

[ yes] I'm interested in fixing this myself but don't know where to start
[ ] I would like to fix and I have a solution
[ ] I don't have time to fix this right now, but maybe later

In trying to reproduce this, I found that clicking cards in a speedy manner only flips back 2 of them after, leaving the rest of the cards face up. Is this similar to how you produced the illegal state?

I was able to reproduce this. Here are steps to reproduce.

Click multiple cards very fast at the beginning in such a way that before even some cards are flipped back if they don't match a match happens ( due to subsequent clicks)
You will notice that matched card will be flipped back (even if it shouldn't) and unmatched card (which was waiting on flipping back will be incorrectly considered as matched card and it won't flip back)

The simplest way to fix this could be disabling click until all unmatched cards are flipped back. ( Since this behaviour should not be encouraged to be fair with game )


New version: ossia.score version 3.2.3-1

Pull request has been created with komac v2.3.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

/azp run


Research and write a privacy policy/opt-in document

Possible avenues to look:

https://www.mozilla.org/en-US/privacy/firefox/
http://telemetry.mozilla.org/

What would we be asking from (end) users ?

@jackiekazil

@scopatz

@scopatz wrote a draft of this on the sprint etherpad, which I guess should get moved somewhere else.

Do you think we need an end-user info document between the one-sentence question and the privacy policy? I was assuming the privacy policy was going to be fairly legalistic, but so far that looks quite readable.

Documents don't need to be legal jargon to be legally binding.  Besides, what we are trying to do here is fairly simple, so it doesn't need a lot of fancy language. I'll open a PR. I am assuming that we don't have NF standing yet....

We'll probably need to get a lawyer to look it over to be sure, but yeah,
that will have to wait until after NF agrees to take this on (assuming they
do!). Writing an email to them about that now, and IIUC their next board
meeting is this Mon.
.
To answer @takluyver's question, I think we'll also want some sort of
end-user-friendly document (a FAQ?) that explains the project more
generally (what data's being collected, examples of how it will let us do
awesome stuff, how the collection works, etc.)?
On Wed, Jul 15, 2015 at 5:22 PM, Anthony Scopatz<EMAIL_ADDRESS>wrote:

Documents don't need to be legal jargon to be legally binding. Besides,
what we are trying to do here is fairly simple, so it doesn't need a lot of
fancy language. I'll open a PR. I am assuming that we don't have NF
standing yet....
—
Reply to this email directly or view it on GitHub
https://github.com/njsmith/sempervirens/issues/1#issuecomment-121766426.

--
Nathaniel J. Smith -- http://vorpus.org


Set force_overwrite_from_cloud from environment variable?

Similar to #352, is it possible to set force_overwrite_from_cloud from an environment variable?

@indigoviolet This is released now in v0.19.0 if you want to upgrade and test your use case:
https://cloudpathlib.drivendata.org/stable/caching/#handling-conflicts


As a user I need to be able to authenticate so that I can test the listed API

Users need to authenticate before they can test the APIs in the listing service. This authentication will also enable them to access API license keys.
Created by Paul
DOD

Users that have already joined the exchange do not have to authenticate to get license keys or test APIs.
Users who want to authenticate must join the exchange.

Connect with Peter

This is handled by OpenShift


Error at launch screen when running app for Release.

Is this a bug report?
yes
Have you read the Contributing Guidelines?
yes
Environment
Environment:
OS: macOS Sierra 10.12.6
Node: 6.9.1
Yarn: Not Found
npm: 3.10.8
Watchman: 4.7.0
Xcode: Xcode 9.1 Build version 9B55
Android Studio: Not Found
Packages: (wanted => installed)
react: ^16.0.0 => 16.0.0
react-native: ^0.50.0 => 0.50.0
Steps to Reproduce

Open xcode
Product -> Edit scheme -> Build configuration "Release"
Build and run for device or simulator

Expected Behavior
App successfully runs.
Actual Behavior
Stalls at launch screen and produces the following Xcode error:
E1104 15:25:43.994065<PHONE_NUMBER> JSCHelpers.cpp:137] Got JS Exception: Can't find variable: self (/var/containers/Bundle/Application/30C12CDD-E4C1-46CB-8972-FB0FF5650DDF/hydrangea.app/main.jsbundle:389)
E1104 15:25:43.994191<PHONE_NUMBER> JSCHelpers.cpp:143] Got JS Stack: /var/containers/Bundle/Application/30C12CDD-E4C1-46CB-8972-FB0FF5650DDF/hydrangea.app/main.jsbundle:389:12193
Reverting my react native version back to 0.49.3 makes it work again. I tried removing ios/build directory, doing xcode cleans, npm installing and always end up with this same error when running the app for release.

hi @jonching ,I got same issue, how do you fix it?


Azure CDN requires TLS 1.2 - If CachedCDNRoot url uses https set this to enable TLS 1.2

Just a notice, so others don't waste there life ...
Maybe should be placed in the cache.config ...
Azure CDN(azureedge.net) requires TLS 1.2 ... maybe 1.1 is still supported ...
We had an issue when CachedCDNRoot was set to http://oursite.azureedge.net to worked but when setting this to https://oursite.azureedge.net it just redirected to the blob storage ...
To fix this, enabled TLS 1.2 ... place this
ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12;

somewhere in a startup class that is only run once ...
This fixed the issue for us else it would keep redirecting to the Blob Storage ...

I'm not sure whether implementing this directly in the library is a good idea as it might affect other services. Definitely good to note though!

This was also purely as a notice if other searched the issue list for a solution.


Cache for search query

Same features as the Swift API Client.

Disabled by default.
Simple setup: [myIndex enableSearchCache];
Auto-remove expired cache (Garbage Collection like)
Configurable expiring time interval (default to 2 min)
Cache search query only

cc @redox @speedblue

Ping

maybe @Nagriar can have a look (good commiter on the project).

Looks cool for me :+1:

Yes very nice, good job @dethi

@dethi I let you do the merge :)


Sites unable to connect to DB

Description
Crating new or adding existing sites as Nitro sites are unable connect to the DB on WSL. Assuming creating a site would setup the .env file correctly, they still cannot connect. Using a MySQL GUI (DBeaver), I can connect to the DB directly and browse, but I guess the .env would need a different host address to connect with as it's running in WSL?
Steps to reproduce

Create new or add site to Nitro
Open site, browse CP, or run /admin/install
Get 503 error

Additional info

Nitro version: 2.0.8
Docker version: 3.4.0

May have fixed it, and I'm not sure why it's working the way it is.
Docker, Nitro, and DBeaver all have MySQL container as being on port 3307 - even the container name has 3307 in it. DBeaver is connected and working on 3307.
Despite all of this, I can create new sites and setup current sites as long as they connect to the database on 3306.

@jamiematrix this is documented on this page. Internal database connections use the driver/engines default port (e.g. 3306) as they are located inside of the containers network. The port set in the config file is only used for creating a unique names (since we support running more than one database engine at a time) and external access with a GUI.
I think we need to do a better job at illustrating this going forward, but its not necessarily a bug - unless you are saying the .env file was modified by Nitro to use the external versus internal port number?


Add the read_image_from_mem function

:+1:

Thanks for both PRs!

Thanks for the library, I'm happy with the move: https://github.com/d-gamedev-team/gfm/commit/4f39947c5faf12f2b78506f47dfd71656cb9e16c


Add support for 'prefix' field on individual uploads, takes priority over global prefix field

The purpose of this PR is to allow for setting a 'prefix' field on a per-upload basis when creating a new upload instead of only being able to set prefixes in the plugin config. The prefix field can either be entered manually using a field input, or set in a beforeChange or beforeOperation hook.
If using a hook, the field 'prefix' will need to either be added to the collection manually, or you can set the plugin config 'prefix' value in order to make sure the field is added to the collection. I have added support in this PR for the plugin config 'prefix' value to be an empty string.
The use case for this in my company's project is to be able to set a prefix based on the current tenant/website. It worked well for that case when testing this plugin change locally.
Let me know if there or any issues with this implementation I should fix, or if you'd rather not include it at all and I can keep it on my own branch. Thanks!

Love it, merged! New release will be coming within the next hour or so 👍 THANK YOU!

@lucyawrey Thank you for the amazing job!
Is it possible to have an example of the hooks?

If using a hook, the field 'prefix' will need to either be added to the collection manually, or you can set the plugin config 'prefix' value in order to make sure the field is added to the collection.


Repo sync for protected CLA branch

The pull request is created from master637737419942542879 to master to fix git push error for protected CLA branch

@shsagir : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Comments and Likes

Support for using silk to leave a comment on chain.
This would require a new contract and re-caching nfts in redis but otherwise should slot in nicely.
GitHub style and image board style have been suggested. This can work in world.

Overview of imageboard software: https://github.com/kennell/imageboards


[MOD = 3.8][MC = 1.12][Crash  = NoClassDefFoundError]

structpro-3.8-1.12
forge-1.12-<IP_ADDRESS>7-installer-win
Tested with no other mods, crashes consistently first time anything tries to get spawned into the world.
crash-2017-07-03_16.30.33-server.txt

Done


Transform(To.TitleCase) is not working

When running this line.
var t = "14 INDEPENDENCE WAY".Transform(To.TitleCase);
It does not change it to title case. It looks like you have to normalize it to lower to get it to work.
var t = "14 INDEPENDENCE WAY".ToLower().Transform(To.TitleCase);

Hi donnyv,
This is exactly how it should behave as ALL CAPS is considered as an acronym. Only transforming it using ToLower will change the casing here in this example you have provided.
You can achieve exactly what you want by using ToLowerCase and ToTitleCase together. So in your example I would write
var t = "14 INDEPENDENCE WAY".Transform( To.LowerCase | To.TitleCase);
Hope that helps

Hi @donnyv,
Yup, as @kunjaltrivedi mentioned this is the desired behaviour as explained in docs here.


Bug on site when on apps docs or community page

Steps to reproduce:
click the word probot in the upper left and move your mouse around.
Clicking the probot face icon still works.
cc/ @JasonEtco

Looks like a Chrome-only bug (just verified in FF and Chrome). Do you want to take care of it @hiimbex? I can take a look if you don't have time


[test] testing-library patterns for playwright tests

Implements some testing-library patterns in playwright in response to https://github.com/mui-org/material-ui-x/pull/1443#pullrequestreview-640250556.
One of the weak spots of our e2e tests using playwright is that they're using playwright API for querying and asserting. With this API the smallest matchers/queries are most of the time the less expressive ones. Expressive assertions need to provide information when they fail. Oftentimes developers only think about the happy path when writing tests which is not the primary concern of tests.
Example TrapFocus:
The playwright test for TrapFocus now mirrors its original mocha test.
https://github.com/eps1lon/material-ui/blob/0d400978012444913c9ba3d2f9951f4065b4bbe3/test/e2e/index.test.ts#L80-L99
-userEvent.tab();
+await page.keyboard.press('Tab');

-expect(screen.getByText('x')).toHaveFocus();
+ await expect(screen.getByText('x')).toHaveFocus();

Especially the assertion is now exactly the same. The required await is a language problem with JavaScript that  we can't do anything about for now.
If we agree on the general direction I'll start working on feature parity with our mocha test so that people can potentially just copy&past mocha tests to playwright with minimal usage of playwright API.
Custom implementation over playwright-testing-library (PTL):

PTL's API is still to verbose for my liking
I don't quite follow their implementation.
It seems to be tailored towards users that don't have control over the rendered page.
This makes sense if you're testing a real page but we have dedicated fixtures in which we can inject @testing-library/dom easily.
No assertion library
The setup for the assertion library can be re-used for queries so PTL wouldn't solve any problem that we can't solve trivially.

I might just put this code into a dedicated package but first I'd like to get some core member feedback and then sync with PTL members in case my approach is flawed.
/cc @mui-org/maintainers @mui-org/x

Going to limit this to the most common queries. For matchers we can add them as we go. The initial implementation can be used as a pattern when porting other matchers.


chore(gui-client/windows): bump tauri-winrt-notification

This eliminates windows 0.54.0 so it should speed up Windows builds a little. It's 6% faster on my Macbook according to cargo build --timing, in debug mode.

That's a good question

That's a good question

I don't have access to it but GitHub actually exposes logs of dependabot runs somewhere under the repository settings.

It's cause we already have 5 open PRs for Rust stuff


Update version to 2.0.0

Winston version 3.0 has been out for over 2 years at this point. It seems that the v2 branch of this repo works with<EMAIL_ADDRESS>Is is possible to merge the v2 branch to master and update the version?

@kenperkins @troy @ffxsam Any update on this?

@1212gmartinez: I'm no longer a maintainer, but @markdascher may have some comments.

Ditto, I'm no longer using Papertrail.

I'd have to dig back in and refresh myself on this project. I haven't touched any of these in quite some time.

I started looking into this again, but came across an alternative that might actually work better. The winston-syslog transport is maintained by winston contributors, already built for v3, and recently added TLS support. I just tried it out, and it worked well:
const os = require('os');
const winston = require('winston');
require('winston-syslog');

const papertrail = new winston.transports.Syslog({
  host: 'logsN.papertrailapp.com',
  port: XXXXX,
  protocol: 'tls4',
  localhost: os.hostname(),
  eol: '\n',
});

const logger = winston.createLogger({
  format: winston.format.simple(),
  levels: winston.config.syslog.levels,
  transports: [papertrail],
});

logger.info('hello papertrail');

In other news, Papertrail recently added native HTTPS ingestion support, so if you just need to send in JSON logs, Winston's native Http transport would also work:
const winston = require('winston');

const papertrail = new winston.transports.Http({
  host: 'logs.collector.solarwinds.com',
  path: '/v1/log',
  auth: { username: new String(''), password: 'TOKEN' },
  ssl: true,
});

const logger = winston.createLogger({
  transports: [papertrail],
});

logger.info('hello papertrail');

@1212gmartinez can you see if one of these transports works for your purposes?


[Feature Request] Disable automatic updating on Flatpak version

In GittyUp installed using Flatpak, GittyUp prompts users to download new updates if it's not up to date but it tries to download and install new updates as if it's not using Flatpak. Needless to say this does not do anything because of the nature of using Flatpaks. (The way to update GittyUp as a Flatpak once installed is via command line or via a GUI application such as the Pop!_Shop on Pop!_OS or Ubuntu Software Centre on Ubuntu)
The prompts that a new version is available is alright and worth keeping on the Flatpak version but I think the automatic downloading and installing of updates should be disabled for the Flatpak version.
The check for update button in the Help Menu should also probably be disabled on the Flatpak version. I don't know if it would be too much effort to also add a possible tool tip for hovering over that disabled menu button with something like "You must update GittyUp from the terminal or from the application where you installed GittyUp."
Thanks

Hi @AluminiumTech,
There is a possibility to disable checking for updates. In the Check for updates we are informing the user to not install manually if the package is downloaded from flathub.

One possibility we can do is disabling the update for the flathub version but not for the flatpak version we provide in the release second. This can be done by having by default the update disabled with a cmake flag and in our CI we are enabling it.
I will check it out I think this should be quick

https://github.com/Murmele/Gittyup/pull/443


Document the need for .gqlconfig in the readme

I'm not a superfan of the wording but adding .gqlconfig does seem to be a necessary step. :man_shrugging:

@enaeseth thank you for the PR. It feels like a weird case of deja vu though, because I think I'd merged a similar PR a while back (https://github.com/kumarharsh/graphql-for-vscode/pull/8). I think I might have made some mistake in pushing the correct branch.


Coin

Have you read the Contributing Guidelines on Pull Requests?
(Write your answer here.)
Description
(Write your answer here.)
Coin Change Problem Maximum Number of ways
This problem is solved using dp.
Given a value N, if we want to make change for N cents,
and we have infinite supply of each of S = { S1, S2, .. , Sm} valued coins,
how many ways can we make the change? The order of coins doesn’t matter.
In this problem we have to count whether the values of subset of array is equal to sum or not.
if equal then we will return true else we will return false.
Input -
Enter the value of n andd m:
10 4
2 5 3 6
Enter the value of array:
Output - 5
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
(Write your answer here.)
#5445

@HarshCasper @ankitaggarwal23 pls review

@HarshCasper pr updated pls review

@HarshCasper pr updated pls review


Runner software on running EC2 instance does not register with GitHub

Hello, I'm having an issue with the "start" mode of this action, as the runner software on my EC2 instance does not register with GitHub. I have a feeling that this issue is caused by the instance's lack of internet connection as the action hangs at "Checking every 10 seconds to see if the runner is registered".

The instance is started and stopped correctly by the Action. This is my first application of this action in my work, so I have not implemented this action before.
I've taken the following steps so far:
The security group which is attached to the instance allows all outbound traffic
A NAT gateway was added to the VPC/Subnet containing the instance
The route table of the VPC/subnet points internet traffic to the NAT gateway
Regenerating the GitHub token used in this repository
Has anyone else encountered this issue, if so, how did you resolve it?

@mayormaier You need to provision the NAT gateway in another (public) subnet, for which the Internet (<IP_ADDRESS>/0) route points to your VPC's Internet Gateway.
See https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html for more information.

I was able to fix the issue by following the recommended steps. Thank you.

@jpalomaki I am also running into this issue, however I am able to boot an AMI with the Github Actions runner myself in an AMI instance, then boot that and see the github actions runner in the "Runners" portion of my repository. Is there something else I'm missing ?

@jpalomaki I am also running into this issue, however I am able to boot an AMI with the Github Actions runner myself in an AMI instance, then boot that and see the github actions runner in the "Runners" portion of my repository. Is there something else I'm missing ?

So a GitHub workflow fails to register the runner (timing out), but when running a similar instance manually, runner registration succeeds?
If so, did you use the exact same settings (AMI, VPC, subnet, security group etc) when launching the instance manually?

@jpalomaki yes! I was going to update this today! I figured out I wasn't attaching the correct security group, so requests for being blocked. A quick look at /var/logs/syslog in ubuntu server solved that pretty quick. Thanks so much for replying! Great work on this project too!


couldn't find libtensorflow_demo.so

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader
I tried to integrate the tensorflow android sample to my existing project but the TensorFlowClassifier cannot execute since libtensorflow_demo.so is not loaded. What should I do?

You'll need to build it too; it's defined in tensorflow/examples/android/BUILD. Alternatively you can download the pre-built .so files here.

thank you for this answer..
I already have a libtensorflow_demo.so file placed in my jnilibs, but yet, it can't be found.
this is the error java.lang.UnsatisfiedLinkError: No implementation found for int ph.com.spamast.mliapp.TensorFlowClassifier.initializeTensorFlow()...
I will try now the files you refer.. thanks again!

What is the content of your APK? You can see this with e.g. unzip -v tensorflow_demo.apk
Note that you need all the .so files present at the highest architecture level any of them are present at. So if you have one added to your apk in libs/arm64-v8a, all of the others used need to be in that directory as well.

Already added the files libandroid_tensorflow_lib.lo, libpthread.so, libtensorflow_demo.so, and libtensorflow_inference.so to jniLibs, yet, still have the same error.
At the moment, still decompiling tensorflow_demo.apk to check its contents.
thank you @andrewharp

I have tried to configure JNI. I created native classes, Application.mk, Android.mk, and imported several C++ files.. Seems like I got lost & now I have this error.
Error:error: 'errno' was not declared in this scope
Error:error: 'EINTR' was not declared in this scope
Error:Execution failed for task ':app:ndkBuild'.

Process 'command 'C:/Users/user/AppData/Local/Android/sdk/ndk-bundle/ndk-build.cmd'' finished with non-zero exit value 2

Also modified the build.gradle with this:
task ndkBuild(type: Exec, description: 'Compile JNI source via NDK'){
commandLine "C:/Users/user/AppData/Local/Android/sdk/ndk-bundle/ndk-build.cmd",
'NDK_PROJECT_PATH=build/intermediates/ndk',
'NDK_LIBS_OUT=src/main/jniLibs',
'APP_BUILD_SCRIPT=src/main/jni/Android.mk',
'NDK_APPLICATION_MK=src/main/jni/Application.mk',
'-j1'
}
tasks.withType(JavaCompile){
compileTask -> compileTask.dependsOn ndkBuild
}

Sorry, newbie to android here.

What is the content of your APK?
We don't use Android/application.mk to build TF, so I would not suggest going down this path.
What OS are you developing on? You should be placing the libs in the "libs/" folders.
Also what version of TF are you using? There are currently no native methods in TensorFlowImageClassifier, so I don't see how this could be native libraries related with any recent release. And if you're changing package names you're really outside the scope of TF support.

issue solved..
Your answer at the top is correct.

Note that you need all the .so files present at the highest architecture level any of them are present at. So if you have one added to your apk in libs/arm64-v8a, all of the others used need to be in that directory as well.

Thank you.. @andrewharp


QR Scanner: Recognize advanced transfers and ...

When a user has just scanned an advanced transaction, the wallet recognizes the qr code, and notifies the user that this advanced transaction is not supported right now so that the user knows.
Dialog can be dismissed

Tha heck is an advanced transaction I'm still new in the EOS.IO terms we need make more clear some of this tiockets for any dev.


JSON output for lookup command includes an extra comma, not valid JSON

Describe the Bug
There seems to be an extra comma when printing JSON for the bolt lookup command, which makes the output invalid JSON.
Steps to Reproduce
bolt lookup foo -t localhost --format json

Hm, I can't reproduce so guessing (hoping) this was something I had changed locally!


Disable default features of reqwest

Default features enable default-tls which is native-tls
Signed-off-by: Michael Pankov<EMAIL_ADDRESS>

This change is

I would have expected the Cargo.lock file to change to remove native-tls as part of this patch:
https://github.com/whamcloud/integrated-manager-for-lustre/blob/a86998683c14db89779510a675a517578bf2a792/Cargo.lock#L3189
Is it still being included somehow?

It's because influx_db_client is using it.
If you update
https://github.com/whamcloud/integrated-manager-for-lustre/blob/a86998683c14db89779510a675a517578bf2a792/iml-services/iml-stats/Cargo.toml#L14
to influx_db_client = {version = "0.4", default-features = false, features = ["rustls-tls"]}
Then the Cargo.lock file will also update


SourceMap position not found for trace: TypeError: ...

Hello,
I've got the following karma configuration:
module.exports = (config) ->
  config.set
    frameworks: ["browserify", "jasmine"]
    files: [
      "node_modules/angular/angular.js"
      "node_modules/angular-mocks/angular-mocks.js"
      "app/**/*.spec.js"
    ]
    preprocessors:
      "app/**/*.js": ["browserify"]
    browserify:
      debug: true
      configure: (bundle) ->
        bundle.once "prebundle", ->
          bundle.transform "babelify"
    reporters: ["dots"]
    port: 8877
    colors: true
    logLevel: config.LOG_INFO
    autoWatch: false
    browsers: ["PhantomJS"]
    singleRun: true

When I get an error, the stack trace cannot be linked with the source maps:
SourceMap position not found for trace: TypeError: undefined is not an object (evaluating '[...]') in http://localhost:8877/absolute/tmp/c6ec59ad61f294fd51d07305eeaf5c17.browserify?ed7e1e8ce42e802c4d614ba337bf1dc8ac6e27b9 (line 182)

Any Idea what's going wrong here?

Can we get some code please?

Sure!
The problem is that the issue occurs in a closed source project.
I'll boil it down to the essentials when I've got time.

I believe I have the same error testing React. my karma.conf.js looks like this:
module.exports = function(config) {

  config.set({

    basePath: ".",

    frameworks: ['jasmine', 'browserify'],

    preprocessors: {

      'tests/**/*.js': ['babel', 'browserify']

    },

    babelPreprocessor:{

        options: {

          presets: ['es2015'],

          sourceMap: 'inline'

        }
    },

    browserify: {
      debug: true,

      transform: [ 'babelify'],

      configure: function(bundle){

        bundle.on("prebundle", function(){

          bundle.external("react/addons");

          bundle.external("react/lib/ReactContext");

          bundle.external("react/lib/ExecutionEnvironment");

        });

      }

    },

    reporters: ['spec'],

    colors: true,

    logLevel: config.LOG_INFO,

    autoWatch: true,

    browsers: ['PhantomJS'],

    files: [

      'tests/**/*.js'

    ]

  });

};

My one and only test file has:
'use strict';

import React from 'react';
import {mount} from 'enzyme';
import sinon from 'sinon';
import Footer from '../src/js/components/Footer';

describe('<Footer/>', () => {

	it('renders footer <Footer/> component', () => {
		const wrapper = mount(<Footer/>);
		console.log(wrapper);
		expect(wrapper.find('.app_footer')).to.have.length(1);
	});
});

Footer component has only one div with class name '.app_footer'. The error I get is this:
SourceMap position not found for trace: TypeError: undefined is not an object (evaluating 'expect(wrapper.find('.app_wrapper')).to.have') in http://localhost:9876/absolute/var/folders/wr/hkjbf_wd3tnf5j9t2p8ndnt40000gn/T/40f5d6b577f0f7e57a2eb4aabc9edf46.browserify?d01138ff9d27c662c126752a88873bdf74683625 (line 61603)
http://localhost:9876/absolute/var/folders/wr/hkjbf_wd3tnf5j9t2p8ndnt40000gn/T/40f5d6b577f0f7e57a2eb4aabc9edf46.browserify?d01138ff9d27c662c126752a88873bdf74683625:61603:42

@hazboun Can you provide us with a sample project that reproduces the issue?

Sample.zip
This is my sample project. Btw, I only that error when the test fails.

I got the same error.

Please use reactions to say "me too" instead of notifying everyone on a thread

This may not be specific to karma-browserify - I am using karma-webpack and am experiencing the same behavior.

That is what I thought, too. Did you find an upstream bug in TypeScript or a sourcemap library?

I have not tracked down the root cause in an upstream yet, but I am not using typescript, so that eliminates that possibility =-D

I have Typescript too and same error.

Any update on this?

I just had the same issue with Typescript 2.2.x. I reverted to version 2.0.8 and the issue was fixed.

This is a bit random. But I had this issue. When I deleted a line that just has a ; on it the error disappeared.
I'm using typescript.

As indicated in the comments, this seems to be a TypeScript source map generation.

Can also happen if one of your typescript files has a compile error - in my case it was one of my test files as referenced by the error:
02 06 2017 15:16:54.630:WARN [reporter]: SourceMap position not found for trace:
undefined
PhantomJS 2.1.1 (Windows 7 0.0.0) ERROR
{
"line": 104034,
"sourceURL": "src/test.ts",
....

I'm not using typescript and get this error. just regular source-map.

I encountered this issue, and it turned out it is because I didn't use correct mode for webpack config in karma.conf.js
Solution
karma.conf.js
webpack: {
      mode: 'development',

version
"karma-sourcemap-loader": "^0.3.7",
"karma-webpack": "^4.0.2",

If you are using karma-sourcemap-loader, try switching to karma-source-map-support.
My case: Babel, no TypeScript, Webpack and not Browserify, I was using karma-sourcemap-loader.

When throwing errors or failing assertions in test, there would be anywhere from 2 to 12 "SourceMap position not found for trace" warnings for each thrown error, badly polluting the output. The errors themselves though were displayed correctly, source maps working.
When using console.error() to print stack traces without halting execution, there would be the same "SourceMap position not found for trace" noise, but console output for errors would not be mapped, line numbers referencing compiled bundles, not original sources.

After switching, both use cases work perfectly fine, outputting mapped stack traces, no extra warnings.
This is likely not to be relevant to the OP's problem, but this issue comes up as the Google's top hit for "SourceMap position not found for trace", so I hope that'll help someone.

I'm also running into this issue, and unfortunately @septagram's solution doesn't work for me.
My karma.config.js:
module.exports = function(config) {
  config.set({
    frameworks: ["mocha", "karma-typescript"],
    files: [
      "src/**/*.ts"
    ],
    preprocessors: {
      "**/*.ts": "karma-typescript"
    },
    karmaTypescriptConfig: {
      include: ["src/**/*.ts"],
      tsconfig: './test-tsconfig.json',
    },
    reporters: ["progress", "karma-typescript"],
    browsers: ['ChromeHeadless'],
  });
};

And test-tsconfig.json:
{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "declaration": true,
    "outDir": "./dist",
    "rootDir": "./src",
    "skipLibCheck": true,
    "strictNullChecks": false,
    "strict": true,
    "sourceMap": true,
    "moduleResolution": "node"
  },
  "include": ["src/**/*.ts"],
  "exclude": ["node_modules"]
}

Gives me:
Chrome Headless 84.0.4147.105 (Linux x86_64): Executed 0 of 1 SUCCESS (0 secs / 0 secs)
03 08 2020 12:07:52.113:WARN [reporter]: SourceMap position not found for trace: AssertionError: expected 'a' to equal
'b'
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:43:35
    at step (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:33:23)
    at Object.next (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:14:53)
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:8:71
    at new Promise (<anonymous>)
    at __awaiter (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:4:12)
    at Context.<anonymous> (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:41:57)
03 08 2020 12:07:52.113:WARN [reporter]: SourceMap position not found for trace: AssertionError: expected 'a' to equal
'b'
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:43:35
    at step (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:33:23)
    at Object.next (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:14:53)
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:8:71
    at new Promise (<anonymous>)
    at __awaiter (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:4:12)
    at Context.<anonymous> (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:41:57)
03 08 2020 12:07:52.113:WARN [reporter]: SourceMap position not found for trace: AssertionError: expected 'a' to equal
'b'
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:43:35
    at step (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:33:23)
    at Object.next (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:14:53)
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:8:71
    at new Promise (<anonymous>)
    at __awaiter (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:4:12)
    at Context.<anonymous> (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:41:57)
03 08 2020 12:07:52.113:WARN [reporter]: SourceMap position not found for trace: AssertionError: expected 'a' to equal
'b'
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:43:35
    at step (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:33:23)
    at Object.next (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:14:53)
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:8:71
    at new Promise (<anonymous>)
    at __awaiter (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:4:12)
    at Context.<anonymous> (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:41:57)
03 08 2020 12:07:52.114:WARN [reporter]: SourceMap position not found for trace: AssertionError: expected 'a' to equal
'b'
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:43:35
    at step (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:33:23)
    at Object.next (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:14:53)
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:8:71
    at new Promise (<anonymous>)
    at __awaiter (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:4:12)
    at Context.<anonymous> (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:41:57)
03 08 2020 12:07:52.114:WARN [reporter]: SourceMap position not found for trace: AssertionError: expected 'a' to equal
'b'
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:43:35
    at step (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:33:23)
    at Object.next (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:14:53)
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:8:71
    at new Promise (<anonymous>)
    at __awaiter (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:4:12)
    at Context.<anonymous> (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:41:57)
03 08 2020 12:07:52.114:WARN [reporter]: SourceMap position not found for trace: AssertionError: expected 'a' to equal
'b'
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:43:35
    at step (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:33:23)
    at Object.next (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:14:53)
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:8:71
    at new Promise (<anonymous>)
    at __awaiter (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:4:12)
    at Context.<anonymous> (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:41:57)
03 08 2020 12:07:52.114:WARN [reporter]: SourceMap position not found for trace: AssertionError: expected 'a' to equal
'b'
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:43:35
    at step (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:33:23)
    at Object.next (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:14:53)
    at http://localhost:9876/base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:8:71
    at new Promise (<anonymous>)
    at __awaiter (base/src/upscale.test.js?20df1025977bd3ae048a1ea3861f34519dc74a99:4:12)
Chrome Headless 84.0.4147.105 (Linux x86_64) predict should make a prediction FAILED
        AssertionError: expected 'a' to equal 'b'
            at src/upscale.test.ts:7:20 <- src/upscale.test.js:43:35
            at step (src/upscale.test.js:33:23)
            at Object.next (src/upscale.test.js:14:53)
            at src/upscale.test.js:8:71
            at new Promise (<anonymous>)
            at __awaiter (src/upscale.test.js:4:12)
            at Context.<anonymous> (src/upscale.test.ts:6:34 <- src/upscale.test.js:41:57)
Chrome Headless 84.0.4147.105 (Linux x86_64): Executed 1 of 1 (1 FAILED) (0.01 secs / 0.001 secs)
TOTAL: 1 FAILED, 0 SUCCESS
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Attached is the log output when running with DEBUG.
log.txt


Request for Configurable Timeout Parameters in Istio Resources

(This is used to request new product features, please visit https://discuss.istio.io for questions on using Istio)
Describe the feature request
Currently, we are experiencing http-related timeouts and tcp socket timeout issues in our deployments. Specifically, we are using the transport_socket_connect_timeout for TCP and stream_idle_timeout and max_stream_duration for HTTP in Envoy filters.
We would like to request the ability to configure these timeouts directly through Istio resources in VirtualService to reduce the reliance on EnvoyFilters.
Reason for Request:
The current approach of defining these timeouts in EnvoyFilters involves a relatively complicated format, increases the chance of introducing errors, and is challenging to maintain. Having these timeout parameters configurable through standard Istio resources would greatly simplify the configuration process and enhance maintainability.
Requested Timeout Parameters:

transport_socket_connect_timeout for TCP
stream_idle_timeout for HTTP
max_stream_duration for HTTP

Describe alternatives you've considered
Currently these parameters are configurable in envoy filters as below:
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: custom-timeouts
spec:
  workloadSelector:
    labels:
      app: sample
  configPatches:
    - applyTo: NETWORK_FILTER
      match:
        context: SIDECAR_OUTBOUND
        listener:
          filterChain:
            filter:
              name: "envoy.filters.network.tcp_proxy"
      patch:
        operation: MERGE
        value:
          name: envoy.filters.network.tcp_proxy
          config:
            stat_prefix: "outbound_tcp"
            transport_socket:
              name: envoy.transport_sockets.raw_buffer
              typed_config:
                "@type": type.googleapis.com/envoy.extensions.transport_sockets.raw_buffer.v3.RawBuffer
                **transport_socket_connect_timeout:** 5s

    - applyTo: HTTP_FILTER
      match:
        context: SIDECAR_OUTBOUND
        listener:
          filterChain:
            filter:
              name: "envoy.filters.network.http_connection_manager"
      patch:
        operation: MERGE
        value:
          name: envoy.filters.network.http_connection_manager
          config:
            stat_prefix: "outbound_http"
            http_filters:
              - name: envoy.filters.http.router
                typed_config:
                  "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
            http_protocol_options:
              **idle_timeout: 10s**
              max_stream_duration:
                **max_stream_duration: 30s**

Proposing these "transport_socket_connect_timeout", "idle_timeout" and "max_stream_duration" to be also configurable params from the Virtual service istio resource as below as an example
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: my-service
spec:
  hosts:
  - my-service.example.com
  http:
  - route:
    - destination:
        host: my-service
        subset: v1
   - stream_idle_timeout
       value
   -  max_stream_duration
       value
  tcp:
  - match:
    - port: 5000
    route:
    - destination:
        host: my-tcp-service
        port:
          number: 6000
    - transport_socket_connect_timeout
        value

If there is some general agreement on this, I would be happy to open the PRs for istio/api and istio/istio.
Affected product area (please put an X in all that apply)
[ ] Ambient
[ ] Docs
[ ] Dual Stack
[ ] Installation
[x ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

As a general matter, I'm worried about adding such granular configurations to our 1st class APIs because of the hit to the project's complexity budget. It makes perfect sense why users like yourselves may need all of these fields, but once we add it to VirtualService, every user has to deal with the complexity of figuring out which timeout they need to configure. To be clear, I'm not saying no; I'd love to hear others' opinions on this (cc @howardjohn @ramaraochavali @hzxuzhonghu), but IMO, the bar is somewhat high for adding more complexity into these resources. Answers to these questions would be really helpful to me in evaluating the tradeoffs:

How generally applicable are the scenarios where these fields are necessary?
Why doesn't the DestinationRule connectTimeout satisfy your use-case?
Why doesn't the DestinationRule idleTimeout satisfy your use-case?
Why do you need to limit stream duration?

VirtualService is not the right place for timeout.
https://www.envoyproxy.io/docs/envoy/latest/faq/configuration/timeouts We all know that there are many kinds of timeouts, we have supported some of them.  It's hard set up them well without conflict. Both VS and DestinationRule applies on the client side, the requirements are on inbound. We cannot expand VS to support this case

For timeout related configuration on outbound http connection manager - there is no easy way to set.  Virtual Service is for a specific route and the http connection manager might be for many outbound calls.

As a general matter, I'm worried about adding such granular configurations to our 1st class APIs because of the hit to the project's complexity budget. It makes perfect sense why users like yourselves may need all of these fields, but once we add it to VirtualService, every user has to deal with the complexity of figuring out which timeout they need to configure. To be clear, I'm not saying no; I'd love to hear others' opinions on this (cc @howardjohn @ramaraochavali @hzxuzhonghu), but IMO, the bar is somewhat high for adding more complexity into these resources. Answers to these questions would be really helpful to me in evaluating the tradeoffs:

How generally applicable are the scenarios where these fields are necessary?
In large scale deployment there were hundreds of envoy filters in one cluster alone and maintaining the config is getting difficult, and for the optimization at each level, these timeouts being use full at each level.

Why doesn't the DestinationRule connectTimeout satisfy your use-case?

DestinationRule connectTimeout, as per the definition specified in https://github.com/istio/istio/issues/29892, is the timeout to complete the connection establishment. We need a timeout which which would apply on transport-level negotiations (encrypted handshake) happening after the connection establishment, which is provided by transport_socket_connect_timeout (https://www.envoyproxy.io/docs/envoy/latest/faq/configuration/timeouts)

Why doesn't the DestinationRule idleTimeout satisfy your use-case?

The idleTimeout in DestinationRule applies to upstream pool connections. We would like to have a timeout for untrusted downstream connections (which sometimes may not open stream window once an entire response has been buffered) which is provided by stream_idle_timeout https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto

Why do you need to limit stream duration?
When an initiated request is being sent too slowly in a way that even the headers are not delivered at required intervals we need Envoy to respond with a 408 error code.

@sakatkoori Thanks for the information. How large scale are we talking? 5000 nodes? 10k nodes? Hundreds of EnvoyFilters is quite a large number...it seems like a lot of these timeouts are meant to prevent bad downstream actors.  I assume you're wanting this at the gateway because meshed clients are typically considered trusted

Thanks @keithmattix, our deployment has lot of nodes and currently for all the clusters having almost ~43000 envoy filter configurations are being configured, maintaining this is getting difficult.
And regarding having WAF solution in front of gateway is not a feasible solution in our scenario.

As @hzxuzhonghu and @ramaraochavali mentioned above, I don't think most of these asks will be feasible. That said, I'm a bit surprised we don't have a way to configure downstream timeouts on a gateway; that seems broadly useful. That could also be a good proxy for stream duration.

I will add a use case: Google ASM does not support envoyfilter. So there is no way currently to configure these features.


backup create page

#1124

FYI after design meeting today the types for this feature are changing from namespaced to not-namespaced, so you'll end up not having a namespace choice here.
A generated name makes sense for Restores, but the Backups should get the full NameNsDescription (with namespaced=false).  It's a long-lived resource that you may want to go back and edit, you refer to the names of them as part of the restore, it probably becomes part of the filenames written to the backup target.
Resource Set Name -> Resource Set
Insecure TLS Skip Verify -> (needs padding) Skip TLS Verifications
Credential Secret Name -> Credential Secret
Encryption Config Name -> Encryption Config Secret
* * * * ? cron placeholder -> 0 * * * * -- Suggest once an hour instead of once a minute. * vs ? doesn't appear to be relevant to the parser used.
Setting up encryption is not going to be obvious, so I'd pull that out into its own section:
Encryption
(x) Store the contents of backups unencrypted
( ) Encrypt backups using an [Encryption Config Secret] (linking to docs page explaining how to make one based on https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/#understanding-the-encryption-at-rest-configuration)
[ Encryption Config Secret |v| ]

@mrajashree Does the secret have to have exactly a `encryptionConfig.yaml` key in it?  If so we can use that to only show you relevant secrets.

Move the S3 header above the radios and call it something like "Storage Target" so that's a description of what the radios are for too
Use the backup... -> Use the the default storage target configured during installation
Specify details... -> Use a S3-compatible object store

Another change from yesterday's design meeting is accepting a field for credentialSecretNamespace in the s3 details. So along with Credential Secret Name there will be another field for Credential Secret Namespace.
@vincent99 even if Credential Secret Name is changed to Credential Secret in UI, the yaml fields are still credentialSecretName and credentialSecretNamespace right?
Same question about Credential Secret Name changing to Credential Secret, the yaml field can still be encryptionConfigSecretName right?
Can the cron placeholder show two examples? The golang cron parser library accepts it in two formats, so can we display them both:
Descriptors: '@midnight'
Standard crontab specs: 0 0 * * *

Can the cron placeholder show two examples?

Sure @mantis-toboggan-md  can do placeholder="e.g. @midnight or 0 0 * * *, though I think few people know about/use the at version...  Ideally we'd have a better control that validates the input, parses it and shows you a human-readable version ("Every Tuesday at 12:45am") or the next few times it will fire, but that's unlikely for now.

the yaml fields are still credentialSecretName and credentialSecretNamespace right?

Yes, [thing]Name is the standard way to name the fields in k8s but we don't label the fields in the UI that way.  The user is selecting a "thing", not a "thing name".

no the filename ... doesn't always have to be encryptionConfig.yaml ... Right now the operator gets the first key from secret ... should we expect secret to have a particular filename

Yes I think the operator should expect a particular key, and look for only that key.

This is easier to explain and deterministic on the backend.
And on the frontend @mantis-toboggan-md can further filter the list down to Secrets which have the appropriate key, and link the user to docs on how to make one/disable the encryption option if there aren't any.

So moving S3 header above radio buttons might not make it clear? Can we say Storage Location above radio buttons instead?

Yes (that's roughly what I suggested):

Move the S3 header above the radios and call it something like "Storage Target" so that's a description of what the radios are for too

Also I'm not sure I understand the Description box, is it something we expect users to input? and I think maybe we don't need it for these CRDs?

(Almost) all resources in the UIs have a description field for the user to add  their own notes, warnings to others that might try and edit the resources, or whatever else they want.  It's just stored as an annotation.

@vincent99

Yes I think the operator should expect a particular key, and look for only that key.
Okay, the operator can expect the secret to have one key, with name "encryption-provider-config.yaml" then.

Yes (that's roughly what I suggested):

Move the S3 header above the radios and call it something like "Storage Target" so that's a description of what the radios are for too
ah, my bad I misread that.

Updated per feedback here:

re-add name and description fields
remove namespacing
set credentialSecretName and credentialSecretNamespace from credential secret field
filter encryption secrets by presence of encryption-provider-config.yaml field
move encryption to its own section with descriptive radio options
update schedule field with better placeholders
updated several input labels

@mantis-toboggan-md to confirm, the dropdown for Encryption Config lists secres only from cattle-resources-system namespace.
And the dropdown for credentials shows secrets across all namespaces right? and based on what the user selects, the yaml fields for credentialSecretName and credentialSecretNamespace get populated?

I didn't know the encryption config secret still needed to be namespaced; updating now


setup-hooks/strip: uniqify files by inode number before stripping

Description of changes
Mesa, among other packages, has binaries that are linked together and
can end up corrupted when the same binary is stripped through two
different names.
To resolve this, print out the device and inode number before each file
name, sort/uniq based on that, then cut it back out before stripping.
The symlink resolution logic is removed as the same file accessed
through two different links in $paths will necessarily have the same
numbers. File/directory within the paths listed in $paths are
correctly not (and were never) processed due to the -type f predicate
and (implied) -P option to find.
Things done

Built on platform(s)

[X] x86_64-linux
[x] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[X] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Why not just move the symlinkification to before the stripping, like @puckipedia suggested?

Mesa changes are going to need to go through staging anyway, and this does fix the root cause as also suggested.
However, fixing Mesa might be easier to review. I'll investigate, we should quite possibly do both anyway.

I wonder if it's worth sending this to 23.11 too, since we have at least a few more staging cycles to go in it.

That would fix the issue in all stable releases which seems like a good thing. I would be happy to at least build such a patch on my machine.


Haojun/inference

use the config in the run_generation.py script as we did in other scripts. Add a for_inference argument to support fixed outcome inference

need to add something


chore: Adds analytics event to log search input.

Description
Adds analytics event to log search input.

Adds debounce to search as well.

PR fixes following issue(s)
Fixes #27449
Type of change

Chore (housekeeping or task changes that don't impact user perception)

Testing

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration.
Delete anything that is not relevant

[x] Manual
[ ] JUnit
[ ] Jest
[ ] Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

/ok-to-test

/build-deploy-preview

/ok-to-test

/ok-to-test

/ok-to-test

/ok-to-test

@shwetha-ramesh
Only visible change that comes with this PR is that search input in the /templates page is now debounced, i.e. you won't immediately receive the results but after 500ms.
DP: https://ce-27477.dp.appsmith.com/templates

@rahulbarwal QA done.

/ok-to-test


Prepare user documentation for Transport Interface (python-can)

Requires
#22
Description
As a user, I would like to have documentation "how to use" Transport Interface for python-can, so I could follow the guide.
As a developer, I would like to provide tutorials for the user, so I do not have to explain it every time by myself.
Testing
With the guide as the only source of information, a user is able to send and receive trial CAN Packet(s).
Preferable, someone fresh to follow these steps as review.
Acceptance Criteria

page for python-can Transport Interface created in User Documentation

configuration tutorial with explanations (and references to knowledge base)
use cases are described (send/receive CAN packet)

make sure to restore default setting in build configuration once the issue with building is fixed

I have managed to fix the graphviz issue. Resolution was also posted in the stackoverflow ticket.


Reject Small Image

Have just tried to test the small image rejection using your basic.html demo as below. It will not reject an image of 480 x 640 when I think it should.
Can you point out what I'm doing wrong.
  $(function() {
    $('.image-editor').cropit({
      minZoom: 'fit',
      maxZoom: 2,
      width: 300,
      height: 400,
      imageBackground: false,
      exportZoom: 2,
      smallImage: 'reject',
      onImageError: function(error) {
          console.log('Image error');
      }
    });
    $('.rotate-cw').click(function() {
      $('.image-editor').cropit('rotateCW');
    });
    $('.rotate-ccw').click(function() {
      $('.image-editor').cropit('rotateCCW');
    });
    $('.export').click(function() {
      var imageData = $('.image-editor').cropit('export');
      window.open(imageData);
    });
  });

I think I found it. It works for a very small image so my guess is that rejection takes account of the maxZoom property. So if imageSize x maxZoom would fit in the window it is not rejected.


Fix bug that does not apply adaptive limits correctly

Description
The bookmarks tab and popup are not respecting the limits, it triggers a 429 with the custom adaptive limits option enabled or disabled.
Steps to Reproduce

Have a very big bookmarks list (mine has more than 200 items, I think that 80 bookmarks might be enough to trigger a 429)
Open the bookmarks tab/popup with infinite scrolling enabled

If using the popup keep scrolling it until it no longer loads any bookmarks despite the "Loading more" message at the top
If using a tab wait until it no longer loads any bookmarks despite the "Loading more" message at the top

Try to load any SG page, to see the 429.

Expected Behavior
It should load all the bookmarks without triggering a 429.
System (please complete the following information):

ESGST Version: Extension v8.8.6
Browser + Version: Firefox v83
OS: Windows 10 Pro 20H2 build 19042.662

Additional Context
My bookmarks list is very big (around 200 items I think).
the last custom values I tested to make sure were:
default -> 3s
>50% minute -> 6s
>75% minute -> 9s
>75% hourly -> 12s
>75% daily -> 24s
and even then the bookmarks were being loaded faster than 1 per second.
I think in worked correctly on v8.8.5, but I'm not 100% sure.

8.8.7 beta 2 seems to be refusing to run many background requests, even when ESGST had issued no requests for several minutes. I tried to sync groups and it just wouldn't do it. For many giveaways on the home page, it also failed to load their groups (1.6.3: Content Loader -> Giveaway Groups, loading as panel), no matter how long I waited. It's working fine on 8.8.5, if kind of slow. :) I can't test 8.8.6 because it doesn't load on Pale Moon to begin with, so I don't know whether this fix is the cause, but I figured it can't be completely unrelated, so I decided to mention it here for the time being. Do you think it merits a separate issue?

I'll test with Pale Moon to see if I can reproduce.

Sorry for the very late reply, but this should finally be fixed in the latest beta.


router-link to named route not matching nested routes like router-link to path does

Version
4.0.15
Reproduction link
codesandbox.io
Steps to reproduce

In App.vue create a router-view
create a route, give it a name parent, add a heading saying parent, add a <router-view>
add a child route with an empty path '', give it a name child, add a heading saying child, add a <router-view>
add a grandchild route with an empty path, give it a name grandchild,  add a heading saying grandchild
in App.vue, create a <router-link :to="{ name: 'parent' }">
in App.vue, create a <router-link to="/parent">
click the first route (using name) and observe that only parent page shows, none of the router-views show
click the second route (using path) and observe that parent, child and grandchild, all the nested router-views show

What is expected?
Clicking a router-link with a route name should cascade through the nested routes it matches, just like a router-link with a path does.

What is actually happening?
Clicking a router-link with a route name does not match on any nested routes.

This is expected behavior. Use the name of the child if you want to target the child.

@posva I can't target the child in this situation. It's my top level nav and targeting a specific child will mean active-class won't get set except when the child route is active.
I have a somewhat complex routing situation because my index page has its own sub-routes and its own layout. So I have to do the following so that the layout does not appear on the edit page.
    {
      path: '/users',
      component: PassthruLayout,
      name: 'users',
      children: [
        {
          path: '',
          component: UserLayout, // <-- layout with tabs specifically for the index page routes
          name: 'users-index',
          children: [
            {
              path: '',
              component: UserIndex,
              name: 'users-all',
            },
            {
              path: 'flagged',
              component: UserIndex,
              name: 'users-flagged',
            },
            {
              path: 'banned',
              component: UserIndex,
              name: 'users-banned',
            },
          ],
        },
        {
          path: ':id', // <-- edit page does not share the tabbed layout
          component: UserEdit,
          name: 'users-edit',
          props: true,
        },
      ],
    },

In that case, you should be able to either:

add a redirect:path: "/parent",
component: Parent,
redirect: () => ({ name: 'grandchild' }),

Add the class manually with :class="{ 'active-link': $route.path.startsWith(...) }"

Ah, the redirect worked. I didn't realize I could put a redirect and a component on the same route; I thought they were mutually exclusive.

I still think it's very strange behaviour for nested router-views to not load anything because the parent route was linked by name. Especially since it's inconsistent with the way path routing works.


Dashboard column change

I'll have to see how it looks before merging.
Btw, the comment about changing bootstrap.css from your first commit still relevant?

No, the next commit with container-fluid fixed that issue.  I'll edit the first commit message.
I think a more elegant solution might be to have the ability to toggle between a wide format and the current tall and skinny format. I really wanted the full width/3 columns because we display some dashboards on TVs and the huge margins are a real drawback.

I think that until we do some redesign of the whole interface, we should hide this behind a toggle (can be done with ng-class, and adding a toggle to the dashboard options view). Otherwise it just doesn't look good:

(@ranbena, when will you implement the TV Mode? #117 :))

I apologize but I can't merge this at current state. But expect improvements to the grid soon enough...


Add application listener to locate property sources during bootstrap

Also adds support for activating profiles using spring.profiles.active from bootstrap property source listeners.

Partial fix for https://github.com/spring-cloud/spring-cloud-config/issues/1922

Profiles from the bootstrap context get applied to the child context here
https://github.com/spring-cloud/spring-cloud-commons/blob/main/spring-cloud-context/src/main/java/org/springframework/cloud/bootstrap/BootstrapApplicationListener.java#L372
When ParentContextApplicationContextInitializer.initialize sets the parent context to the bootstrap context it inherits the active profiles.
This all happens after the environment is prepared when config data runs.
Here is where we prepare the environment
https://github.com/spring-projects/spring-boot/blob/main/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/SpringApplication.java#L306
And here is where the parent context is set
https://github.com/spring-projects/spring-boot/blob/main/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/SpringApplication.java#L310


handle first to second level masking cases

I realized we have not assumed certain cases like not masking at the first level or certain assumptions about masking at first and then at second level. Since the first level object is passed to the second level object, certain things like using the second level mask on first level models could be implemented. I think we should discuss the details around this.

#89 addresses not masking at the first level

Closing for lack of activity on that one.


No download

After trying 3 days, I cannot download the .rmskin file....
Anyone has same problem?

working fine here. I used this link: https://github.com/raiguard/ModernGadgets/archive/master.zip

Aah, you are still around :)