Separate problem and solution review steps in RFCs

A pattern I've noticed is that some RFCs jump into detailed solutions prior to the point that the problem that's being solved is well understood; sometimes the problem doesn't actually exist, sometimes the problem is just a little bit different from what was originally there.
This PR separates solutioning from validating the problem so that we can be more efficient and avoid getting ahead of ourselves too much: in situations where the solution is written too early, there's often a ton of debate on the details of the solution that would have been more managable if it was around the problem.
This came from a discussion with @lguychard and I think it's a great idea.
When merging this, we can also update the RFC template itself to make it clear that it is often a good idea to wait until there is agreement on the problem before designing the solution.

Merged, I also added some text to the template with the same advice.


Simplified code a bit, and also removed allocation.

super simple change to see if I got the git stuff right this time.

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


update xcodeproj to Xcode 8 GM recommended settings

@ashfurrow can you give this a look? It seems harmless to me, but Im not the best with xcschemes

Looks good to me :+1:


Add support for GemFire 9.5.1

I would greatly appreciate it if SCDF could support connecting to GemFire 9.5.1. My understanding from talking to the PM for the Spring Data GemFire project is that it would require SCDF to bump up the version of the Spring Data Release train BOM.

We are currently compatible with Pivotal Gemfire v.9.1.1 and Apache Geode v1.2.1.
The v2.1.0 of spring-data-gemfireappears to support v9.5.1; however, we rely on Geode OSS backed by spring-data-geode. Most likely v.2.1.0 of this project should support it, but we will have to confirm with the Spring Data team. Also, we won't be able to upgrade until the dependent projects are released as v2.1.0 GA milestone.
cc:/ @jxblum

Please keep in mind there are 2 SD projects related to Apache Geode and Pivotal GemFire.  There is Spring Data for Apache Geode and then there is Spring Data for Pivotal GemFire.  As of SD Kay, these dependencies are interchangeable.  Meaning, if a user is coming from the OSS space, using Spring Data for Apache Geode, then she can simply switch to Pivotal GemFire by changing the dependency from spring-data-geode to spring-data-gemfire, providing they are using SD Kay or the soon to be GA release of SD Lovelace.  The version number between these modules are the same.
See my last year's S1P presentation for more details.  The slides are here.  Please observe slides 7 & 8.
As of SD Lovelace, SD for Apache Geode (2.1) is based on Apache Geode 1.6.0.  SD for Pivotal GemFire (2.1) is based on Pivotal GemFire 9.5.1, which is itself based on Apache Geode 1.6.0.
My intention is to ensure spring-data-geode and spring-data-gemfire are interchangeable, always, within a given SD release train, either forward or back.
Hope this makes sense!
Also have a look at my blog post.
Cheers!

Thanks, @jxblum! I find your blog post on the differences between Gf/Geode as very useful. I get the interchangeable aspect - neat.
As next steps, we would have to upgrade SD stack to Lovelace to pull the latest releases to support GF 9.5.1 - we will plan for that. Do you know the GA timeline for Lovelace?
Also,

As of SD Lovelace, SD for Apache Geode (2.1) is based on Apache Geode 1.6.0. SD for Pivotal GemFire (2.1) is based on Pivotal GemFire 9.5.1, which is itself based on Apache Geode 1.6.0.

It'd still be useful to have a table or a running wiki that list the compatibility matrix. I can't easily find out how the lowest dependency (geode) bubbles all the way to s-d-geode and s-c-gemfire.
We have had similar issues with Kafka - see here.

Well, the easiest thing is to keep in mind that my guarantee will be that SD for Apache Geode & SD for Pivotal GemFire will be interchangeable for a given SD Release Train (e.g. Kay, Lovelace, and eventually Moore (which is Lovelace.next).  I.e., if you are using SD for Apache Geode Kay and want to use Spring anything with Pivotal GemFire instead, then use SD for Pivotal GemFire Kay.  The same applies to SD Lovelace.
SD Lovelace final GA is scheduled tentatively for Wednesday, September 19th, according to the Spring Release Calendar.
Finally, I have also maintained this version compatibility Wiki page between Spring Data and Pivotal GemFire for sometime.
I might be will to do something similar for Spring Data for Apache Geode and/or add an additional Wiki page that shows the complete SD, Apache Geode and Pivotal GemFire version matrix.


Gapped sequences

Hello,
Is it possible to use gapped sequences as input to kpLogo - i.e. unknown nucleotides or amino acids?
In my case, I would like to analyse k-mers across aligned antibody peptides -- each sequence may only cover 10-25 amino acids, preceded and followed by missing residues.
Thanks for your help,
Andrew

You should be able to include any letter with ‘Other’ sequence type (rather than DNA/RNA/protein).
Best,
Xuebing
--
Xuebing Wu, Ph.D.
Assistant Professor
Department of Medicine
Department of Systems Biology
Columbia University Irving Medical Center
3960 Broadway | Lasker 430A | New York, NY 10032
Office:<PHONE_NUMBER>
Lab:<PHONE_NUMBER>
wu-lab.nethttp://wu-lab.net
From: andrewjmc<EMAIL_ADDRESS>Reply-To: xuebingwu/kpLogo<EMAIL_ADDRESS>Date: Thursday, July 25, 2019 at 3:17 PM
To: xuebingwu/kpLogo<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Subject: [xuebingwu/kpLogo] Gapped sequences (#3)
Hello,
Is it possible to use gapped sequences as input to kpLogo - i.e. unknown nucleotides or amino acids?
In my case, I would like to analyse k-mers across aligned antibody peptides -- each sequence may only cover 10-25 amino acids, preceded and followed by missing residues.
Thanks for your help,
Andrew
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_xuebingwu_kpLogo_issues_3-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DACACWQ4CR4ZJQ73YAT2V3LDQBH32HA5CNFSM4IG5VM52YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HBR22CQ&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=teX0eNWQwOfmpqIqQ25ugOordmyPU1cSkqNVvcd2Wq0&s=fzLTFETphTp4rNLF_LsJznBvenkEi5RnYSAte_Pi8no&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_ACACWQZGHP5ANOMMGHT4P7LQBH32HANCNFSM4IG5VM5Q&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=teX0eNWQwOfmpqIqQ25ugOordmyPU1cSkqNVvcd2Wq0&s=IpQxUsaXsrxd9oYrXp2DYrF59rRSOMDXAqCeSAbtoTU&e=.

Thanks, Xuebing.
My query sequences include * for internal gaps and spaces for missing amino acids: e.g.
                                                                                GGGTMLTVLGQP**        1
                                                                                FGQGTKLEI*MRTV*        3
                                                                                FGQGTRVEI*TRTV*        1
                                                                                FGSGTKVGV*PSSQ*        1
                                                                                IFGGGTK                 1
                                                                                MFGGGTK                 1
                                                                                SFGQGTK                 1
                                                                                TFGPGTK                 2
                                                                                TFGQGTEVEI*K            1
                                                                                TFGQGTK                 2

When I run: bin/kpLogo KD_light_abysis_peptides.txt -weighted -alphabet 'ACDEFGHIKLMNPQRSTVWY* ' -k 2 -o kpLogo_light_ -bgfile light_abysis_proteins.txt -markov 1
I get the following output
[Mon Jul 29 11:47:47 2019] Summary:
[Mon Jul 29 11:47:47 2019]    Input       :   KD_light_abysis_peptides.txt
[Mon Jul 29 11:47:47 2019]    Background  :   light_abysis_proteins.txt
[Mon Jul 29 11:47:47 2019]                    1 order markov model
[Mon Jul 29 11:47:47 2019]    Output      :   kpLogo_light_.*
[Mon Jul 29 11:47:47 2019]    alphabet    :   ACDEFGHIKLMNPQRSTVWY*
[Mon Jul 29 11:47:47 2019]    min_kmer    :   2
[Mon Jul 29 11:47:47 2019]    max_kmer    :   2
[Mon Jul 29 11:47:47 2019]    min_shift   :   0
[Mon Jul 29 11:47:47 2019]    max_shift   :   0
[Mon Jul 29 11:47:47 2019]    p           :   1.010000
[Mon Jul 29 11:47:47 2019]    start at    :   1
terminate called after throwing an instance of 'std::invalid_argument'
  what():  stof
Aborted (core dumped)

I am clearly doing something stupid! Can you spot my error?
Secondly, is there any way to make kpLogo ignore kmers featuring a space, without dropping other kmers from the sequence (e.g. for each sequence, I would only like to consider the kmers coming from within the sequenced peptide).
Thanks,
Andrew

Can you replace * and space with other characters such as ‘-‘ and ‘=’ or numbers? * and space are special characters that are frequently used and treated differently.
If you want, you can send me a few lines of your input.
Best,
Xuebing
--
Xuebing Wu, Ph.D.
Assistant Professor
Department of Medicine
Department of Systems Biology
Columbia University Irving Medical Center
3960 Broadway | Lasker 430A | New York, NY 10032
Office:<PHONE_NUMBER>
Lab:<PHONE_NUMBER>
wu-lab.nethttp://wu-lab.net
From: andrewjmc<EMAIL_ADDRESS>Reply-To: xuebingwu/kpLogo<EMAIL_ADDRESS>Date: Monday, July 29, 2019 at 6:51 AM
To: xuebingwu/kpLogo<EMAIL_ADDRESS>Cc: "Wu, Xuebing"<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [xuebingwu/kpLogo] Gapped sequences (#3)
Thanks, Xuebing.
My query sequences include * for internal gaps and spaces for missing amino acids: e.g.
                                                                                GGGTMLTVLGQP**        1

                                                                                FGQGTKLEI*MRTV*        3

                                                                                FGQGTRVEI*TRTV*        1

                                                                                FGSGTKVGV*PSSQ*        1

                                                                                IFGGGTK                 1

                                                                                MFGGGTK                 1

                                                                                SFGQGTK                 1

                                                                                TFGPGTK                 2

                                                                                TFGQGTEVEI*K            1

                                                                                TFGQGTK                 2

When I run: bin/kpLogo KD_light_abysis_peptides.txt -weighted -alphabet 'ACDEFGHIKLMNPQRSTVWY* ' -k 2 -o kpLogo_light_ -bgfile light_abysis_proteins.txt -markov 1
I get the following output
[Mon Jul 29 11:47:47 2019] Summary:
[Mon Jul 29 11:47:47 2019]    Input       :   KD_light_abysis_peptides.txt
[Mon Jul 29 11:47:47 2019]    Background  :   light_abysis_proteins.txt
[Mon Jul 29 11:47:47 2019]                    1 order markov model
[Mon Jul 29 11:47:47 2019]    Output      :   kpLogo_light_.*
[Mon Jul 29 11:47:47 2019]    alphabet    :   ACDEFGHIKLMNPQRSTVWY*
[Mon Jul 29 11:47:47 2019]    min_kmer    :   2
[Mon Jul 29 11:47:47 2019]    max_kmer    :   2
[Mon Jul 29 11:47:47 2019]    min_shift   :   0
[Mon Jul 29 11:47:47 2019]    max_shift   :   0
[Mon Jul 29 11:47:47 2019]    p           :   1.010000
[Mon Jul 29 11:47:47 2019]    start at    :   1
terminate called after throwing an instance of 'std::invalid_argument'
what():  stof
Aborted (core dumped)
I am clearly doing something stupid! Can you spot my error?
Secondly, is there any way to make kpLogo ignore kmers featuring a space, without dropping other kmers from the sequence (e.g. for each sequence, I would only like to consider the kmers coming from within the sequenced peptide).
Thanks,
Andrew
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_xuebingwu_kpLogo_issues_3-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DACACWQY736GHFVARSFFRBUDQB3DSJA5CNFSM4IG5VM52YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3AKZ4Q-23issuecomment-2D515943666&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=CFTOf93NLM_P3aeEbK8P2b3Fu8Re6tlmMJg7rXqqiHc&s=SYoBZuzjtj3YaoOY35X_q9eDxb9PfVNc25RMEzzh30g&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_ACACWQ5FGTWN567MUFZT2ALQB3DSJANCNFSM4IG5VM5Q&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=CFTOf93NLM_P3aeEbK8P2b3Fu8Re6tlmMJg7rXqqiHc&s=2MlPvjvLakVd_P49Vm2nFqoLU61LECclV-OnpZJO0oc&e=.

Thanks for the advice. Fixed!
Is there a way to ignore k-mers containing specified character. My "background" is full length antibody variable sequences and my samples are peptides recovered by mass spectrometry and aligned against the scaffold.
BACKGROUND (two examples)
DIQMTQSP----SSLSASVGDRVTITCQASQDISN--------YLNWYQQKPGKAPKLLIYDAS-------NLETGVPSRFSGSGSGTDFT-----FTISSLQPEDIATYYCQQYDNLP======================= DIQMTQSP----SSLSASVGDRVTITCQASQDISN--------YLNWYQQKPGKAPKLLIYDAS-------NLETGVPSRISGSGSGTDFT-----FTISSLQPEDIATYYCQQYDNLPLTFGG------------------
SAMPLE (two examples)
==========================================================LIYAAS-----SLQGGVPSR==========================================================	6 ===LTQSPPSLSASVGDR======================================================================================================================	1
Therefore, at any given position, only a minority of peptides will be contributing amino acids. Kmers from other peptides will contribute only "==". I would like any kmer containing "=" to be considered uninformative and removed from the denominator and numerator.
Is there a way to achieve this at present?
Many thanks,
Andrew

I have never developed in C, but am having a go at developing this by adding a parameter: drop_character. This defines a single character which is appended to the alphabet to define a full alphabet which is allowable in the query sequences.
However, it is omitted from the list of possible kmers. However, when I ran I found that all the "=" characters in the logo output were replaced by "A". I assume that further code changes are required to allow for a varying denominator across the sequence.

I think I've managed to sort it with a few small changes. I'll try to branch the repository, but am not so good with github!
Basically, I added a parameter. drop_letter. This is then added to the alphabet filter used to remove invalid sequences.
I then modified the pwm code to ignore the dropped letter, and divided the raw counts by the sum of each column (position) to allow for a variable denominator (rather than just the number of sequences).
This seems to be working very well.

Cool! Glad it worked for you.
Best,
Xuebing
--
Xuebing Wu, Ph.D.
Assistant Professor
Department of Medicine
Department of Systems Biology
Columbia University Irving Medical Center
3960 Broadway | Lasker 430A | New York, NY 10032
Office:<PHONE_NUMBER>
Lab:<PHONE_NUMBER>
wu-lab.nethttp://wu-lab.net
From: andrewjmc<EMAIL_ADDRESS>Reply-To: xuebingwu/kpLogo<EMAIL_ADDRESS>Date: Wednesday, July 31, 2019 at 11:37 AM
To: xuebingwu/kpLogo<EMAIL_ADDRESS>Cc: "Wu, Xuebing"<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [xuebingwu/kpLogo] Gapped sequences (#3)
I think I've managed to sort it with a few small changes. I'll try to branch the repository, but am not so good with github!
Basically, I added a parameter. drop_letter. This is then added to the alphabet filter used to remove invalid sequences.
I then modified the pwm code to ignore the dropped letter, and divided the raw counts by the sum of each column (position) to allow for a variable denominator (rather than just the number of sequences).
This seems to be working very well.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_xuebingwu_kpLogo_issues_3-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DACACWQZPTNQRWJXVITDBWJDQCGWS7A5CNFSM4IG5VM52YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3HVCDQ-23issuecomment-2D516903182&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=ntrFGjiwhDtvtuc1bIMH4vnCy3OB-YlzRRLB7ORquXo&s=dTTXPX-hK3ZEereaNxZm_RrCW36LD3jDVSCgt3XeNsc&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_ACACWQ36QVZKFELHM4WUVDLQCGWS7ANCNFSM4IG5VM5Q&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=ntrFGjiwhDtvtuc1bIMH4vnCy3OB-YlzRRLB7ORquXo&s=dNjT4zb_PqcSHTa3DwHion1n7cLe8KoVrrNyD1YYeXI&e=.

Hi, @xuebingwu
When I  use ‘-‘  to represent the missing sequence  in my input, it will be trimmed.My input is just like this below.
>a
------------------GGAAAAGACCCAGTACAGTGTAGCCGTGAT
>b
ACCACGTGTGCCCTGTGGGACATCGAGACCGGCCAGCAGA--------
How can I use gapped sequences as input to kpLogo ?
Thanks.

Sorry for the delayed response. Have you tried treating the gap as a residual:
For 'sequence type' choose 'other' and then enter 'ACGT-' as the alphabet.
Best,
Xuebing

Xuebing Wu, Ph.D.
Assistant Professor
Columbia University Irving Medical Center
Department of Medicine/Cardiology/Cardiometabolic Genomics Program
Department of Systems Biology
Herbert Irving Comprehensive Cancer Center
Data Science Institute
630 West 168th Street, P&S 10-401, New York, NY 10032
Office:<PHONE_NUMBER>
Lab:<PHONE_NUMBER>
https://xuebingwu.github.io/

From: U201412486<EMAIL_ADDRESS>Sent: Thursday, August 13, 2020 12:25 AM
To: xuebingwu/kpLogo<EMAIL_ADDRESS>Cc: Wu, Xuebing<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [xuebingwu/kpLogo] Gapped sequences (#3)
Hi, @xuebingwuhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_xuebingwu&d=DwMFaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=YDVTcJuJY-Q35SMqOR2VtX0wHKfc8aJtM1_okqIkhlw&s=cRhJws3lXiNs7goAv4Vd4chQxKlkjm68-3I3iy1lbIw&e=
When I use ‘-‘ to represent the missing sequence in my input, it will be trimmed.My input is just like this below.

a
------------------GGAAAAGACCCAGTACAGTGTAGCCGTGAT
b
ACCACGTGTGCCCTGTGGGACATCGAGACCGGCCAGCAGA--------
How can I use gapped sequences as input to kpLogo ?
Thanks.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_xuebingwu_kpLogo_issues_3-23issuecomment-2D673247559&d=DwMFaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=YDVTcJuJY-Q35SMqOR2VtX0wHKfc8aJtM1_okqIkhlw&s=tRs0zW58OLGSEdkpSzFrGTTCfxmxCSqdAl-dC7UnFzY&e=, or unsubscribehttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_ACACWQ2I3D4J5NLALQRQNDDSANTNBANCNFSM4IG5VM5Q&d=DwMFaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=YDVTcJuJY-Q35SMqOR2VtX0wHKfc8aJtM1_okqIkhlw&s=EDl58qghT2vafQX83nK3DO6NigUGLVQIuMGfMCQkcrI&e=.

@xuebingwu ,I have tried as you said.And it did not work.
sun,

can you send me the top 100 lines of your input?
Best,
Xuebing

Xuebing Wu, Ph.D.
Assistant Professor
Columbia University Irving Medical Center
Department of Medicine/Cardiology/Cardiometabolic Genomics Program
Department of Systems Biology
Herbert Irving Comprehensive Cancer Center
Data Science Institute
630 West 168th Street, P&S 10-401, New York, NY 10032
Office:<PHONE_NUMBER>
Lab:<PHONE_NUMBER>
https://xuebingwu.github.io/

From: U201412486<EMAIL_ADDRESS>Sent: Wednesday, September 16, 2020 4:45 AM
To: xuebingwu/kpLogo<EMAIL_ADDRESS>Cc: Wu, Xuebing<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: [EXTERNAL] Re: [xuebingwu/kpLogo] Gapped sequences (#3)
@xuebingwuhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_xuebingwu&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=5QLOKP1iytyBoq2g87oB7nVNOPouqkQ0BjBuNrqN3EM&s=P3OKH8L_m5ZkHzEB0bCgkKH7dPNVlCw9EEcUEzYJZS0&e= ,I have tried as you said.And it did not work.
sun,
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_xuebingwu_kpLogo_issues_3-23issuecomment-2D693265871&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=5QLOKP1iytyBoq2g87oB7nVNOPouqkQ0BjBuNrqN3EM&s=C9oggAdUCDdMr-PQaC5trWo9IwHs3Rt_Ba3S33VV45g&e=, or unsubscribehttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_ACACWQ75SDADV6LQDBOHHUTSGB3LZANCNFSM4IG5VM5Q&d=DwMCaQ&c=G2MiLlal7SXE3PeSnG8W6_JBU6FcdVjSsBSbw6gcR0U&r=mj4ZF5KAi9kDb88dDR1oq57e7FcAW2ug_zc6Np3zCV4&m=5QLOKP1iytyBoq2g87oB7nVNOPouqkQ0BjBuNrqN3EM&s=LBvM6dA9vY2ODcuUWSXXErB1RTaoL_4vgjuCd5PDl3A&e=.

Here are my input.
example.zip
Thanks,
sun,

I just used the updated kpLogo locally.


Schema for collection: array

[x] tests and linter show no problems (npm t)
[x] tests are added/updated for bug fixes and new features
[x] code is properly formatted (npm run fmt)

Landed in https://github.com/metarhia/impress/commit/437fafd05cd8f6a8b367d926868164657bb5a009


Parse message from itho daalderop autotemp and spider

This is a reboot of #69
I have a winters worth of packet.logs and I have studied the Itho daalderop manual and servicetool. I think I understand most of the messages.
I want to at least fix the AssertionErrors that clutter my home-assistant.log but also would like to add some functionality to ramses_cc (so let's add the messages to ramses_rf first).
TODO:

[x] 3110 heat_demand and cooling/heating status.
[x] 22d0 cooling/heating status
[x] 22c9 fix error and add cooling/heating status
[x] 4e02 fix error and parse message
[x] 4e04 fix error (contents currently unknown)
[x] add 4e0d, 4e15 and 4e16 (contents not really known) just fix errors
[ ] the messages are now in the HVAC domain, but its really heating. (Itho autotemp is an UFC) change this...

@zxdavb I added a parser test for 3110.
In a gitter message some months ago, you suggested I add tests like tests/systems which are much more elaborate and difficult. I might be able to do this, once I get everything sorted...
Is this kind of test okay? Would you like more info/docs/tests?
(My main goal, is to add the heat_demand and heating/cooling status from this message to the Home Assistant entities, so I can view them in HA.)

Tom, this is great.
I'll have time for a review when I get home, approximately tomorrow.

BTW, I'm thinking to keep this in HVAC domain.

CH/DHW domain is Honeywell or 100% compatible
HVAC is everything else

When I say CH/DHW, I mean devices that only do a true subset of that, and not additional packets.

The mutex one seems clear: I need to add new codes to the sets on the bottom of ramses_rf/protcol/ramses.py. But I do not seem to get it.

Tom, this is fantastic work and I will definitely get it merged.
OK, some quick thoughts...
 For example, you should ideally have one per code (multiple commits per code would be OK).
I would ideally like tests on both:

all (command) codes, e.g.: 10e0, 22c9, etc., and
all device classes, e.g.: Spider gateway, Itho HRU, etc.

Finally, there is a real need to make architectural changes, which will affect (really, is driven by) HVAC devices. However, I suggest we get your work merged, then maybe you can help me with that further down the line.

I have a winters worth of packet.logs and...

It would help if you sent me a packet log dump to test off too.

I'll move the 3110 changes to a new PR. Let's try to do one at a time. I'll cherrypick out of this.

I think we can bank 3110 (includes a parser test), but do have a look at it, and let me know.

@tomkooij This autotemp looks like an UFH manifold - but seems intended to be connected to a heat pump.
What can you connect it too, other than UFH? What about DHW?
How many circuits does yours have?

@tomkooij This autotemp looks like an UFH manifold - but seems intended to be connected to a heat pump.
What can you connect it too, other than UFH? What about DHW?
How many circuits does yours have?

The autotemp is an UFH manifold but is also a controller. It has connected room thermostats. Usually a thermostat for each "zone", except for the bathroom which does not have a separate thermostat. All communication between autotemps and thermostats (spider) is done using RF.
The master autotemp calculates heat demand and determines when to heat or cool. The WPU "heatpump" is just a slave. The heat demand and mode is sent to the master thermostat using RF and the heatpump is wired to that thermostat using OpenTherm. The autotemp cannot tell the WPU to actually start heating. It just gives heat demand and de heatpump needs to decide when to actually fire up the compressor and start heating.
The WPU does not respond to or send RF, it recieves information from the main room thermostat via OpenTherm.
DHW is determined by the master thermostat (spider). The autotemp UFH has no knowledge about DHW.
Except for "repeaters" and HGI-80 devices I don't think there are other devices that can talk to the autotemp.
My setup:
My downstairs master autotemp (02:250704) has a single connected room thermostat (21:033160 which is also the main thermostat connected to the heatpump by wire/OpenTherm). There are 4 valve circuits which open/close together.
My upstairs slave autotemp (02:250984) has 5 thermostats connected (5 bedrooms and a bathroom, which does not have a thermostat) 9 circuits. (6 zones).

@tomkooij Did you see my questions re: the 4Exx parsers?
We could knock those off next - no need to submit a PR, just let me know the answers to my questions.

@tomkooij Did you see my questions re: the 4Exx parsers?
We could knock those off next - no need to submit a PR, just let me know the answers to my questions.

@zxdavb Sorry I missed your questions. All comments refer to 3110. I see no comments at all around 4e02 or similar.
!?

Woops - my bad - didn't submit the review. Have a look now.

Woops - my bad - didn't submit the review. Have a look now.

I'll have a look after lunch today!

I'll have a look after lunch today!

Just so you know: I'm in Australia (GMT+10).

@zxdavb Done. I think 4e15 is interesting as it has the same information / matches as 3ef0.
4e0d and 4e16 are just unknown... Cannot find a pattern.
4e01 would be nice to have (to make visible in HA in a proper autotemp device along with 3110)

To be clear - I will put all the 4Exx parsers in.

I tested the latest master (including 4E01 / 4E02): works fine! Thanks so far!

@tomkooij Regarding 4E15, I was thinking about:
2022-08-21T19:00:33.119082 072  I --- 21:034158 02:250676 --:------ 4E15 002 0000  # {'_flags': [0, 0, 0, 0, 0, 0, 0, 0], 'state': 'is_idle', 'is_dhw_ing': False}  # idle
2022-08-21T02:07:53.248113 064  I --- 21:064743 02:250708 --:------ 4E15 002 0001  # {'_flags': [0, 0, 0, 0, 0, 0, 0, 1], 'state': 'cooling', 'is_dhw_ing': False}  # cool_active
2023-03-19T12:05:35.319025 082  I --- 21:057565 02:250677 --:------ 4E15 002 0002  # {'_flags': [0, 0, 0, 0, 0, 0, 1, 0], 'state': 'heating', 'is_dhw_ing': False}  # ch_active (heat_active)
2022-08-21T02:07:11.017807 065  I --- 21:064743 02:250708 --:------ 4E15 002 0004  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 0], 'state': 'is_idle', 'is_dhw_ing': True }  # DHWing
2022-08-21T15:00:21.012129 045  I --- 21:033160 02:250704 --:------ 4E15 002 0005  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 1], 'state': 'cooling', 'is_dhw_ing': True }  # cool_active *and* DHWing
2022-08-21T15:00:21.012129 045  I --- 21:033160 02:250704 --:------ 4E15 002 0005  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 1], 'state': 'cooling', 'is_dhw_ing': True }  # contrived: ch_active *and* DHWing

... but I think I'll go with:
2022-08-21T19:00:33.119082 ...  I --- 21:034158 02:250676 --:------ 4E15 002 0000  # {'_flags': [0, 0, 0, 0, 0, 0, 0, 0], 'is_cooling': False, 'is_dhw_ing': False, 'is_heating': False}
2022-08-21T02:07:53.248113 ...  I --- 21:064743 02:250708 --:------ 4E15 002 0001  # {'_flags': [0, 0, 0, 0, 0, 0, 0, 1], 'is_cooling': True,  'is_dhw_ing': False, 'is_heating': False}
2023-03-19T12:05:35.319025 ...  I --- 21:057565 02:250677 --:------ 4E15 002 0002  # {'_flags': [0, 0, 0, 0, 0, 0, 1, 0], 'is_cooling': False, 'is_dhw_ing': True,  'is_heating': False}
2022-08-21T02:07:11.017807 ...  I --- 21:064743 02:250708 --:------ 4E15 002 0004  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 0], 'is_cooling': False, 'is_dhw_ing': False, 'is_heating': True }
2022-08-21T15:00:21.012129 ...  I --- 21:033160 02:250704 --:------ 4E15 002 0005  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 1], 'is_cooling': True,  'is_dhw_ing': False, 'is_heating': True }
2022-08-21T15:00:21.012129 ...  I --- 21:033160 02:250704 --:------ 4E15 002 0005  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 1], 'is_cooling': True,  'is_dhw_ing': False, 'is_heating': True }  # contrived: ch_active *and* DHWing

Any thoughts before I push the button?

@tomkooij Regarding 4E15, I was thinking about:

NOTE: has been edited

2022-08-21T19:00:33.119082 072  I --- 21:034158 02:250676 --:------ 4E15 002 0000  # {'_flags': [0, 0, 0, 0, 0, 0, 0, 0], 'state': 'is_idle', 'is_dhw_ing': False}  # idle
2022-08-21T02:07:53.248113 064  I --- 21:064743 02:250708 --:------ 4E15 002 0001  # {'_flags': [0, 0, 0, 0, 0, 0, 0, 1], 'state': 'cooling', 'is_dhw_ing': False}  # cool_active
2023-03-19T12:05:35.319025 082  I --- 21:057565 02:250677 --:------ 4E15 002 0002  # {'_flags': [0, 0, 0, 0, 0, 0, 1, 0], 'state': 'heating', 'is_dhw_ing': False}  # ch_active (heat_active)
2022-08-21T02:07:11.017807 065  I --- 21:064743 02:250708 --:------ 4E15 002 0004  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 0], 'state': 'is_idle', 'is_dhw_ing': True }  # DHWing
2022-08-21T15:00:21.012129 045  I --- 21:033160 02:250704 --:------ 4E15 002 0005  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 1], 'state': 'cooling', 'is_dhw_ing': True }  # cool_active *and* DHWing
2022-08-21T15:00:21.012129 045  I --- 21:033160 02:250704 --:------ 4E15 002 0006  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 1], 'state': 'heating', 'is_dhw_ing': True }  # contrived: ch_active *and* DHWing

... but I think I'll go with:
2022-08-21T19:00:33.119082 ...  I --- 21:034158 02:250676 --:------ 4E15 002 0000  # {'_flags': [0, 0, 0, 0, 0, 0, 0, 0], 'is_cooling': False, 'is_heating': False, 'is_dhw_ing': False}
2022-08-21T02:07:53.248113 ...  I --- 21:064743 02:250708 --:------ 4E15 002 0001  # {'_flags': [0, 0, 0, 0, 0, 0, 0, 1], 'is_cooling': True,  'is_heating': False, 'is_dhw_ing': False}
2023-03-19T12:05:35.319025 ...  I --- 21:057565 02:250677 --:------ 4E15 002 0002  # {'_flags': [0, 0, 0, 0, 0, 0, 1, 0], 'is_cooling': False, 'is_heating': True,  'is_dhw_ing': False}
2022-08-21T02:07:11.017807 ...  I --- 21:064743 02:250708 --:------ 4E15 002 0004  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 0], 'is_cooling': False, 'is_heating': False, 'is_dhw_ing': True }
2022-08-21T15:00:21.012129 ...  I --- 21:033160 02:250704 --:------ 4E15 002 0005  # {'_flags': [0, 0, 0, 0, 0, 1, 0, 1], 'is_cooling': True,  'is_heating': False, 'is_dhw_ing': True }
2022-08-21T15:00:21.012129 ...  I --- 21:033160 02:250704 --:------ 4E15 002 0006  # {'_flags': [0, 0, 0, 0, 0, 1, 1, 0], 'is_cooling': False, 'is_heating': True,  'is_dhw_ing': True }  # contrived: ch_active *and* DHWing

Any thoughts before I push the button? Can you confirm the payload - especially of the latter?

4e15 it is the mode the WPU is in. it is either heating or cooling or dhw. It cannot do heating and dhw at the same time.
Technically cooling and DHW might be possible aa cooling does not require the compressor to run.
So best go with the second option to leave everything open.
Payloads are correct although I have not seen 5 and 6.

@tomkooij Can you check/confirm the following:
We have (largely) merged the (equivalent of the) changes in:

ramses_rf/protocol/const.py
ramses_rf/protocol/parsers.py
ramses_rf/protocol/ramses.py

Parser tests have been added/tweaked.
We still need to check/resolve:

01FF: ???
22C9: zone_idx or ufh_idx for Spider (it is ufh_idx for evohome)
22D0: ???
3110: I think should be action and not mode
3120: everything, incl. adding code_3120.log
3EF0: ???
4E01: tidy up ramses.py & parser
4E0D: issues with the meta-parser for idx
4E15: ???
4E16: add tests

01FF I don't think I have 01FF packets in my log.
22C9 has zone_idx it is the unique number of room with thermostat. So that should be a zone.
22D0 is difficult:
UFC send this  I message all the time:   I --- 02:250704 --:------ 02:250704 22D0<PHONE_NUMBER>0
However it is only sent my master UFC. The upstairs slave UFC never sends this.
The master thermostat (connected to the WPU, i.e. the "controller") send this to the UFC master:
2023-04-05T07:22:46.515060 037  W --- 21:033160 02:250704 --:------ 22D0<PHONE_NUMBER>E14030020
2023-04-05T07:22:46.573032 056  I --- 02:250704 21:033160 --:------ 22D0<PHONE_NUMBER>0

It is certainly some kind of status message, only the cool-mode bit ('payload[2:4] & 0x10') is known, but already in the parser:
heating 22D0<PHONE_NUMBER>E14030020
cooling 22D0<PHONE_NUMBER>E14030020

(end of 22D0)
3110 mode or action... It should be mode, because the actual status "action" is not in this message.
(WIP, editing!)
4E02 has mode: heat while 3110 (and everything else?) has mode: heating.

My bad, but I guess 3ef0 is already well known and parsed. I checked the output against the behaviour of the system today: works fine.

@tomkooij Do you have any appetite to progress this?

I guess the important bits are already merged. Let’s close this and open a new one, if I or someone figures out something that is useful and even necessary to be parsed.


Update AcionButton.js

Allow user to pass style params for text inside button,
Allow user to pass different text for text inside button,
I did it because I don't want to create a whole new component and be in charge of the animation

Can you also update the readme file with the new added props, please?

yes


[LiveComponent] Add priority to PreDehydrate & PostHydrate hooks

Q
A

Bug fix?
no

New feature?
yes

Tickets

License
MIT

As a follow-up of #1068, I have also added the option to prioritize PreDehydrate & PostHydrate hooks.

Thanks Bart!


Docs: Remove deprecated method didReceiveLocalNotification from Push Notification iOS

Description
This is related with the following issue: https://github.com/facebook/react-native/issues/26199
According to iOS docs, didReceiveLocalNotification is deprecated and should be replaced by

This PR removes the following method from the PushNotificationIOS documentation

No problem @Simek thanks for  taking the time on reviewing the PR! Even though PushNotificationIOS is deprecated I considered that it was a valuable thing to update, that's why I opened it! 😊

@carloscuesta Thank you for the effort! This change is still welcome, but you need to update the React Native code first. 🙂
But this might be a bit problematic, since the whole library is scheduled for the removal from the core.


⚠ App has degraded performance

In 13f2340, App (https://mesirve.app) experienced degraded performance:

HTTP code: 200
Response time: 403 ms

Resolved: App performance has improved in e5bf612.


Add String.removeWhere

Same as List.removeWhere but for characters and patterns. This will basically wrap the replaceAll call and default the second parameter to an empty string

With a list you have a list of items. The function given to the method applies it to every item. The problem with a string is the definition of an item in this context. The first definition that comes to my mind is that one each character of a string is an item. For example:
// this would result as: hell wrld
'hello world'.removeWhere((c) => c == 'o');

Do you mean that? Do you have an example or more specified definition?


add feature to add subject

@coderatul can you please elaborate and assign this to me?

Hi @coderatul can you please assign this to me ?
I think that no one work on this now?


Changing DOCS_BASE_URL breaks peach

Hi,
I was fiddling around with peach a bit and tried to change DOCS_BASE_URL to "wiki" as well as "/wiki".
peach starts up fine, but you end up getting a 404 for every request, no matter whether the request goes to http://localhost/docs or http://localhost/wiki.

Fixed in the above mentioned commit. Feel free to add it

This was fixed by #46 as well. Closing.


Fitted segment

Having the option for segments that are fitted (similarly to menus) would be a nice feature

Prepared or Fomantic-UI by https://github.com/fomantic/Fomantic-UI/pull/702


Migrate to Vue3

PR's welcome, otherwise done whenever I have plenty spare time.

I will check later this week if i can help with this migration
As of now i have created a separated wrapper using same api  vue3 using same lumino-widget.js

<template>

      <slot></slot>

</template>

this should do the trick for until the migration is finished

Thank you @nelsonpjunior !

@kinow @nelsonpjunior
Thank you for all your work!
In my project, I used this package and @nelsonpjunior's Vue3 component, but meet some problems:

need do somthing when widget close, even block the close
listen and process event in "Vue" way, and event can carray user's data
widget is not wrappered by a component

so, inspired by your guys, I wrote a Vue3 version:
vue3-lumino-widget
and I used it in this project:
wavy
Thank you all again.

Hi @novrain
If you'd like to send a PR we can merge your changes. Otherwise, this project was created to be used in Cylc. I left the project and haven't had time to update it.
But another dev updated it in Cylc, using Vue3 and the teleport. At some point I will have a look at his changes, at Vue 3 and upgrade this package (or someone could send a PR for that too).
Cheers


fix(ssh_tunnel): Address Base PR comments from peer review

SUMMARY
Address code reviews comments:

https://github.com/apache/superset/pull/21912#discussion_r1026958824
https://github.com/apache/superset/pull/21912#discussion_r1035415356
https://github.com/apache/superset/pull/21912#discussion_r1035558825
https://github.com/apache/superset/pull/21912/files#r1028278374
https://github.com/apache/superset/pull/21912/files#r1028286296
https://github.com/apache/superset/pull/21912/files#r1026937885
https://github.com/apache/superset/pull/21912/files#r1026956904
https://github.com/apache/superset/pull/21912/files#r1035561067
https://github.com/apache/superset/pull/21912/files#r1035558379
https://github.com/apache/superset/pull/21912/files#r1035558237

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Re-running CI... will merge if it passes 🤞


DNN-8910: calc deleted modules within same pane.

Couldn't find DNN-8910 issue on JIRA...

code review done

Still cannot view https://dnntracker.atlassian.net/browse/DNN-8910 - don't have required permissions?


Support additional subdomains (e.g. m.xxxx.localtunnel.com)

Hey guys, I'm currently working on a webapp with a desktop and mobile component.
I'm hosting the mobile version on m.*, even in development mode (by adding m.localhost to /etc/hosts).
I think it would be great if any subdomain under the xxxx subdomain I was given on localtunnel.com also pointed to my local machine. That feature would also make localtunnel useful to anyone whose webapp has per-account subdomains, for example.
What do you think?
Mat

+1

I am new to ruby community was trying to go through the code and how can i add that feature any pointers/ideas on what should i read? because mapping ports to ssh tunnels seams easy but what about virtual hosts

+1


Unable to create a project from AZURE SQL Database

Version: 1.33.0
Commit: 6783aa6967e8c6d086b6f04e5fbf527659981389
Date: 2021-10-26T17:27:01.229Z (5 days ago)
VS Code: 1.58.0
Electron: 12.0.9
Chrome: 89.0.4389.128
Node.js: 14.16.0
V8: <IP_ADDRESS>-electron.0
OS: Darwin x64 21.1.0
Steps to Reproduce:

Connect to Server ( MSSQL )
R/C Db select -> Create Project From Database
Select Server
Seelct Database
Select Location
Folder structure, doesnt mater what you select, same error on all.
Error in Azure Data studio: Extract Project files failed

Note: it creates the Folder, inside the folder is a file called DatabaseProjectXXXXXXX.sqlproj
That is all that is written to disk
In developer console.
ERR The ng module u has already been destroyed.: Error: The ng module u has already been destroyed.
at uInjector.NgModuleInjector.destroy (/Applications/Azure Data Studio.app/Contents/Resources/app/node_modules.asar/@angular/core/bundles/core.umd.js:3615:19) []
at file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3227:6796 []
at Array.forEach () []
at m.dispose (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3227:6783) []
at dispose (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3227:13980) []
at d.cancel (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3227:13832) []
at R.closeDialog (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3227:22606) []
at m.$closeDialog (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3227:24691) []
at a._doInvokeHandler (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2589:11898) []
at a._invokeHandler (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2589:11590) []
at a._receiveRequest (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2589:10252) []
at a._receiveOneMessage (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2589:9055) []
at file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2589:7159 []
at i.fire (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:129:1835) []
at d.fire (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:176:16333) []
at s._receiveMessage (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:176:21591) []
at file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:176:18477 []
at i.fire (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:129:1835) []
at n.acceptChunk (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:176:13694) []
at file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:176:13042 []
at Socket.D (file:///Applications/Azure Data Studio.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3861:136280) []
at Socket.emit (events.js:315:20) []
at addChunk (internal/streams/readable.js:309:12) []
at readableAddChunk (internal/streams/readable.js:284:9) []
at Socket.Readable.push (internal/streams/readable.js:223:10) []
at Pipe.onStreamRead (internal/stream_base_commons.js:188:23) []

Added logs
Archive.zip

This looks like it might be a problem with extracting the schema. Can you try running sqlpackage extract command and sharing the diagnostic file? Sql projects in ADS and sqlpackage are both wrappers around DacFx (the backend for database deployments), but there are more detailed logs when running sqlpackage so hopefully those logs can help with troubleshooting this issue.
example extract command:
sqlpackage.exe /Action:Extract /ssn:[server] /sdn:[database] /tf:"C:\Temp\database.dacpac" /df:sqlpackage-extract.log

When I run the command:
C:\Program Files\Microsoft SQL Server\150\DAC\bin>sqlpackage.exe /Action:Extract /ssn:xxxxx /sdn:xxxxxx /su:xxxxx /sp:xxxxxx /tf:"C:\Temp\database.dacpac" /df:sqlpackage-extract.log
Connecting to database 'xxxxx' on server 'xxxxxx'.
Extracting schema
Extracting schema from database
Time elapsed 0:00:20.03
*** An unexpected failure occurred: Object reference not set to an instance of an object..
it runs for 20 seconds.
No output to c:\temp (Folder is empty)

@rangitoto72 can you please share the log file? There should be a stack trace in there that I can use to find where there error is coming from.

closing because more info needed. Feel free to reopen if the log file can be provided


[FEAT] display categorized columns on the annotation page

In this PR:

added component to display categorized columns
renamed category sub-pages on annotation page with "category" prefix
linked new component form category sub-pages and passed the required props
hard-coded an example list of categorized components in the annotation page and passed it to the category sub-pages. Should be replaced by global store
event emitters are included for when a previously categorized column is unassigned from this category via the new component interface

Resolves #57

Thanks @jarmoza for the detailed review. That's very helpful!

we should use nested directories within the components directory

I had used that first for the same reasons you mention. The reason I changed back to a flat list was that I read a convincing piece on best practice arguing against nested components. The bottom line was:

flat dir gives you quick (visual and filter) access to components, no need to navigate dirs up and down
what namespace control you get from nested dirs, you can also get from kebab-case naming the component itself. Vue treats both the same
the components are (by default) alphabetically sorted, so stick together contextually

There are some other points in the piece, give it a read. What convinced me most was that it gets pretty annoying to navigate all these sub-dirs (how deep should you go) and then you don't know where a new component should go. So I'd vote for keeping things flat until we find that this suggestion doesn't work for us.
agreed on the other points regarding commenting and more readable constructs for the returned values. As we discussed, I wonder if this means we should not use arrow functions for things that are more than one or two levels deep.

@surchs Just a note that since the #76 merge there are now merge conflicts for this branch that must be reconciled.

OK, @jarmoza, as we had just discussed, I turned your unaddressed comments into new issues so we can address them after the demo but merge the functional code now to get ready for the demo. I'll merge this now as is.


Add a "butnot" mode for combining masks

Uses the first prompt as positive, and treats subsequent prompts as reducing the mask.
So you can say "people" but not their "heads" or something.  Maybe "diff" would have been a better name for the mask?  Make of it what you will.

Added a commit to upgrade to 4.0, because I didn't see the other PR for the same purpose.  This one is atop my existing PR for butnot.  Make of it what you will, cherry-pick as desired.


Update README.md

You borrow LINK in the web3 repo. Here you are borrowing DAI.

Appreciate your keen eye!


Bumps solidus_version to 1.2.2

This PR bumps solidus_auth_devise to be compatible with upgrading to solidus 1.2.2 inside your project's Gemfile. NOTE: Please consider that it may be more appropriate to add this commit to add to a new branch of solidus_auth_devise called:   v1.2

Hi @MFRWDesign - the existing gemspec should allow upgrading Solidus to 1.2.2, as it will match any version of Solidus greater than 1.0.6 (but less than 2.0.0). We also perform [automated matrix testing] (http://extensions.solidus.io/) to ensure extensions are compatible with and can be installed alongside different versions of Solidus.

Hi @MFRWDesign as @stewart mentioned, we are not following the spree pattern of releasing new extensions for every version of solidus we cut. So far this has worked out fairly well and is helping to ensure we keep our APIs as stable as possible between versions


Hi,
Can you create this PR to SC5:dev branch. Master branch is reserved for releases. Thanks

I created a PR into the dev branch https://github.com/SC5/sc5-styleguide/pull/530


Multiple osmid per edge

Hi Geoff, great package!
I have a question about some data after loading a map, for example Montevideo (Uruguay).
After generating the geodataframe, I keep the edges, I convert it to a dataframe, and I find that there are observations with multiple osmid, for example: osmid =[176325835, 78108372, 442200095]; name = ['Rambla Edison', 'Coronel Francisco   Tajes']; highway = ['primary', 'residential']; maxspeed = ['45', '60']; and length=163.028.
This is normal? Because I want to get de length of all primary streets, and with these cases I'm in trouble.
My code was:
import geopandas as gpd
import osmnx as ox
import pandas as pd
useful_tags_way = ['oneway', 'lanes', 'name', 'highway', 'maxspeed', 'width', 'est_width','surface']
ox.utils.config(useful_tags_way=useful_tags_way, timeout=1000)
G = ox.graph_from_place('Montevideo, Uruguay', network_type='drive')
edges = ox.graph_to_gdfs(G, nodes=False, edges=True)
df = pd.DataFrame(edges).apply(tuple)
df.to_csv('Montevideo.csv', index=False)
Another question is about the length of streets. I understand that this information does not come from osm, and that osmnx generates it, but how does it calculate it?
Thanks!
Matias

I find that there are observations with multiple osmid

The graph_from_place function's default simplify argument is True, meaning OSMnx automatically topologically simplifies your graph. Some of the resulting edges comprise multiple OSM ways as denoted by the list of OSM ID values. Not a bug.

Another question is about the length of streets. I understand that this information does not come from osm, and that osmnx generates it, but how does it calculate it?

OSMnx's graph._create_graph function assembles the graph model from the raw OpenStreetMap data and as a final step calculates great-circle distances between all straight-line (i.e., unsimplified) edges using the utils_graph.add_edge_lengths function, as noted in the internals reference.


Build for Scala 2.12

Hello,
Would you be able to build the library so it can be used with Scala 2.12?
Thanks
Cal

@calvinlfer I have added 2.12.0. I will publish to bintray later.

done publish

Thnaks a lot!


Additional properties utility methods for CredentialRetrieveRequest

Dependent on #107. Part of the implementation of #99.
@nerdyverde for external review.

Codecov Report

Merging #109 into master will increase coverage by 0.06%.
The diff coverage is 77.77%.

@@             Coverage Diff              @@
##             master     #109      +/-   ##
============================================
+ Coverage     70.07%   70.13%   +0.06%
- Complexity      448      463      +15
============================================
  Files            64       65       +1
  Lines          2613     2662      +49
  Branches        245      253       +8
============================================
+ Hits           1831     1867      +36
- Misses          706      713       +7
- Partials         76       82       +6

Impacted Files
Coverage Δ
Complexity Δ

.../openyolo/protocol/AdditionalPropertiesHelper.java
37.5% <37.5%> (ø)
3 <3> (?)

.../org/openyolo/protocol/CredentialDeleteResult.java
95.71% <83.33%> (-2.57%)
12 <3> (+3)

...org/openyolo/protocol/CredentialDeleteRequest.java
90.38% <83.33%> (-2.12%)
10 <3> (+3)

...rotocol/java/org/openyolo/protocol/Credential.java
90.9% <83.33%> (-0.93%)
21 <3> (+3)

...g/openyolo/protocol/CredentialRetrieveRequest.java
78.26% <84.21%> (-0.84%)
15 <4> (+3)

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 e224890...b636bf0. Read the comment docs.


switch smtp client from webpki-roots to rustls-platform-verifier

We had some feedback that it would be nice to be able to influence the set of ca-certs allowed by the client, which isn't possible when using the hard-coded list in webpki-roots.
This commit is a fairly dumb application of the example shown in the readme for rustls-platform-verifier.
I don't know if there is more nuance or something slightly different we should be doing with out setup here, so it would be great to have @djc review and suggest!

re: ca-certificates, I think that sounds reasonable. We do suggest installing that package in the docs, and we also include it in our docker image. We could go and add it as a dep in our .deb and and the equivalent for rpm systems, but I'm hoping to avoid a hard dependency.
One thing that I'd like to do here is expand the TlsOptions struct in this crate to accept an optional list of files and/or directories and apply that via https://docs.rs/rustls-platform-verifier/latest/rustls_platform_verifier/struct.Verifier.html#method.new_with_extra_roots which I think will mitigate any surprises/pain caused by ca-certificates either not being there or somehow being undesirable as a hard dep.
That also needs to be applicable to the openssl impl in here also, so it can't simply require a list of TrustAnchor in the crate api.

One thing that I'd like to do here is expand the TlsOptions struct in this crate to accept an optional list of files and/or directories and apply that via https://docs.rs/rustls-platform-verifier/latest/rustls_platform_verifier/struct.Verifier.html#method.new_with_extra_roots which I think will mitigate any surprises/pain caused by ca-certificates either not being there or somehow being undesirable as a hard dep.

That makes sense. Note that in 0.3, this API is Linux/BSD only (so would not compile for me on macOS), but 0.4 is in the process of being released.

Thinking about this more, assuming the binary size isn't a big deal it might make sense to just pass the webpki-roots to new_with_extra_roots(), which means you could largely avoid the need to install OS packages.
Also, I noticed that you're building a ClientConfig from scratch for every new client connection? The process for grabbing certificates from disk on Linux (alikes) can be a little expensive, so might make sense to hold on to the ClientConfig between config reloads? (There is a potential issue where you'd want to reload the certificates from disk every once in a while, so there's trade-offs...)

Ah, the reload is a complicating factor. I think I'll update the cache in the current state of the PR to use the same lruttl that we use for the dns resolver crate and set a max of something like 15 minutes, which should amortize the cost of loading the certs nicely while keeping the time window to pick up revocations (if applicable) and other updates to a reasonable small time frame.


Licence improvements

#4302

stuck with grid export as we only have very little info on licences atm to export.


aws.dynamodb - filter backups by table attributes (tags)

When I want to use an aging policy for DaynamoDB there is not filtering for tables and backups and it deletes all backups of all tables which age is in the defined interval. Is there any way filtering and deleting just some of backups os some DynamoDB Tables? (like find just tagged as "..." tables and delete backups which name just includes "..." in that specific table)
policies:
- name: dynamodb-delete-backup
resource: dynamodb-backup
filters:
- type: value
key: BackupCreationDateTime
op: greater-than
value_type: age
value: 28
actions:
- type: delete

Is there any way to use 2 part in the same policy and first part list tables which has tagged "...", and second part uses that list for TableName of deleting?

I have found a workaround solution like below with adding a prefix to backup-name;
policies:
  - name: dynamodb-create-backup
    resource: dynamodb-table
    filters:
      - not:
        - "tag:Backup": absent
    actions:
      - type: backup
        prefix: custom

  - name: dynamodb-delete-backup
    resource: dynamodb-backup
    filters:
      - type: value
        key: BackupCreationDateTime
        op: less-than
        value_type: age
        value: 1
      - type: value
        key: BackupName
        op: regex
        value: custom-.*


Add Semantic Token Support

See https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_semanticTokens

I've been trying to get this to work, but without success. I'll share what I've learnt so far. Maybe it can help others or provide some amusement. 😉

Start by enabling semantic highlighting by adding the following to package.json:

"configurationDefaults": {
    "[flix]": {
        "editor.semanticHighlighting.enabled": true
    }
},

Without this, requests for semantic highlighting won't trigger automatically. The Dark+ theme has this enabled, but FlixifyDark doesn't. Took me quite some time to figure this out! 😵

Add the capability to the language server, e.g. by adding the following to the capabilities object in handlers.ts:

semanticTokensProvider: {
    legend: {
        tokenTypes: ["namespace"],
        tokenModifiers: ["declaration"]
    },
    full: true
}

Of course, the legend should be richer than this, but that can come later.

If you start the extension now, you should see an error message like this:

[Error - HH.MM.SS] Request textDocument/semanticTokens/full failed.
  Message: Unhandled method textDocument/semanticTokens/full

This indicates that semantic token requests are now being triggered (but not yet handled by the server).

One way of getting the server to handle the new request type is to add the following to server.ts:

connection.onRequest(SemanticTokensRequest.method, handlers.handleSemanticTokens)

and then introduce a function handleSemanticTokens in handlers.ts. I've tried with the following:
export function handleSemanticTokens (params: SemanticTokensDeltaParams) {
    const job: jobs.Job = {
        request: jobs.Request.lspSemanticTokens,
        uri: params.textDocument.uri
    }
    queue.enqueue(job)
}

where lspSemanticTokens will need to be added to the Request enum. (Note that some imports will also need to be added to make the above code compile - just click on the red squiggly lines and then use the code actions to add the necessary imports.)

If you start the extension now, you should see an error message like this:

[2021-09-05 HH:MM:SS] [/<IP_ADDRESS>:63336]: Unsupported request: 'JString(lsp/semanticTokens)'.

This error message comes from flix.jar; so the requests for semantic tokens are getting passed successfully to the real Flix LSP!

The next step is probably to handle the lsp/semanticTokens request in the Flix LSP.

I've tried to handle the request in a similar fashion to the other requests, starting with a stub response in LanguageServer.scala looking like this:
case Request.SemanticTokens(id, uri) =>
    ("id" -> id) ~ ("status" -> "success") ~ ("result" -> ("data" -> JArray(List(0, 10, 3, 0, 0))))

It's meant to mark the identifier in the following code:
namespace Bla {}

The hardcoded response causes the error message to disappear. And by using the debugger in VS Code I can see that the response gets sent back successfully to the extension.

But at this point I get stuck. I can't figure out what the extension does with the response it receives. It emits it on some EventEmitter, but I don't know what happens then.

It might be necessary to add something like the following to the client:
client.registerFeature(new SemanticTokensFeature(client));

I've tried this, but I haven't observed any difference.
When I get more time, I might try something like the approach taken in OmniSharp: https://github.com/OmniSharp/omnisharp-vscode/blob/d1785942e51f3afee1d8e62b406ee46b35168c63/src/features/semanticTokensProvider.ts

@jhckragh You are on the right track, but some things are enabled wrong.
Take a look at the recent PR: https://github.com/flix/vscode-flix/pull/144/files to see how another feature was enabled.

And also: https://github.com/flix/flix/pull/2289

Thanks for taking a look! 🙂 I've already looked at the implementation of the other features  (including the nice recent work on documentSymbol). But it seems to me that the same approach can't be used directly to handle semantic tokens because:

There's no onSemanticTokens method on the connection object.
The semantic tokens request is not associated with a position, so it seems strange to attach a positional handler.

Thanks for taking a look! 🙂 I've already looked at the implementation of the other features (including the nice recent work on documentSymbol). But it seems to me that the same approach can't be used directly to handle semantic tokens because:

There's no onSemanticTokens method on the connection object.
The semantic tokens request is not associated with a position, so it seems strange to attach a positional handler.

Hmm. I don't know the answer. Semantic tokens appeared in 3.16- the latest LSP. Could it be that the template we used for the VSCode part is a bit oudated?
Would it make sense to try to start the implementation on the Flix compiler see? The spec should tell us the necessary data structures?

Based on your description, it seems just must be very close to something that works.

Since you have almost the entire round trip.

Thanks for the feedback, Magnus! It would indeed make sense to start the implementation on the Flix compiler. But it would be nice to be able to see the results in the extension while one is working on that. Fortunately I think I've managed to figure it out now!
Replace the two code snippets in step 4 above with
connection.languages.semanticTokens.on(handlers.handleSemanticTokens)

respectively
export const handleSemanticTokens = makePositionalHandler(jobs.Request.lspSemanticTokens)

(I was afraid that makePositionalHandler wouldn't work without a position, but I see now that the position is actually optional.) 🙏
Here's how it looks with the scope inspector activated:

Woo! 🥳
By the way, I figured out the right way of registering the handler by looking at this file: https://github.com/microsoft/vscode-languageserver-node/blob/301224db3cd88571d51971ac512b3031b91fb07b/testbed/server/src/server.ts

@jhckragh Did we manage to add semanticTokens to the VSCode part? Or is that not done yet?
No rush, but do you have future plans to continue working on the SemanticToken part in the Flix compiler? :)

Follow-up: I've found a bug in my code! 😧 Maybe you have an idea for how to proceed? I can illustrate it with the following example:
def _f(xs: List[String]): Unit & Impure =
    let _ys = xs;
    let p = println;
    let g = (x -> x);
    123 |> g |> p;
    ()

In the above code I would say that xs, _ys, p, g, and x are all local variables (Expression.Var). In addition, println and |> are references to function definitions Expression.Def). I think that is what should be reported to vscode.
Does that help?

Thanks for the input! I've handled Defs separately; that part of my code seems to be okay. As for the right highlighting of p: Here I was just trying to follow what the builtin language server for JavaScript does in VSCode:

Here both h and g are classified as function tokens.

Did you want to make a PR that adds semantic token support to flix/vscode? Then it would be easy for me to test also :)

Done! Sorry for the delay. My original intention was to wait with it until the language server could actually provide some interesting tokens. But I've now made a PR for it. ☺

By the way, maybe the token classification that I proposed for the above example could be achieved by looking at the  Type.Apply(tpe1, tpe2, loc) and checking whether the tpe1 is a type constructor? That could be used to check for e.g. List[String]. I don't know if it's too much of a hack/workaround though.

By the way, maybe the token classification that I proposed for the above example could be achieved by looking at the Type.Apply(tpe1, tpe2, loc) and checking whether the tpe1 is a type constructor? That could be used to check for e.g. List[String]. I don't know if it's too much of a hack/workaround though.

Yes, it would be possible, but I am not sure whether it is a good idea. I don't understand why does VSCode do it for JavaScript? A variable should be a variable, no?

Yes, it would be possible, but I am not sure whether it is a good idea. I don't understand why does VSCode do it for JavaScript? A variable should be a variable, no?

Maybe they choose this behavior to "give equal treatment to" the different styles that can be used for declarations?
// Style 1
function g(x) {
    return x;
}

// Style 2
const g = x => x;

I kind of like the VScode behavior because it will make each piece of a Flix pipeline highlight as a function (except possibly the first one, depending on its type):
123 |>
double |> // function
square |> // function
println   // function

But you're the boss. If you don't like it, I can just leave it out (that also makes the implementation easier). ☺

We could try it out and see how it is?

Looking at the token types, I think we should support most of them:

[X] type = 'type',
[ ] class = 'class',
[X] enum = 'enum',
[X] interface = 'interface' // I would use this for our type classes,
[ ] struct = 'struct' // Maybe can be used for records?,
[X] typeParameter = 'typeParameter',
[X] parameter = 'parameter',
[X] variable = 'variable',
[ ] property = 'property',
[X] enumMember = 'enumMember' // corresponds to case,
[ ] event = 'event' // maybe could be used for channels?,
[ ] function = 'function',
[ ] method = 'method' // not sure whether to use function or method for our defs,
[ ] macro = 'macro',
[ ] keyword = 'keyword' // AST lacks this information, but I think that part could be kept in the theme,
[ ] modifier = 'modifier' // same as above,
[ ] comment = 'comment' // same as above,
[X] string = 'string' // I think we could use this one. Might work better for interpolated strings,
[X] number = 'number',
[ ] regexp = 'regexp',
[ ] operator = 'operator' // not sure

In general, I would prefer to use sematic tokens for most things, except maybe keywords and modifiers.

I am closing this as solved. We can open individual tickets for the remaining items.


Improving cards in feed page

The current UI of the cards in the homepage's seems outdated, unappealing or not aligned with modern web designs standards, while what deter users from staying on the site.
The content inside the cards is overflooding out of the parent component which needs to be fixed. The information inside the card component can be aligned properly which will make the users find what they are looking for easily.

@SUGAM-ARORA Please assign me this issue

@vaishnavip27 Issue assigned to you

i would also like to work on this issue @SUGAM-ARORA


Docs: Update readme

Related Issues

fixes #issue-number

Proposed Changes?

How did you test it?

Notes for the reviewer

Screenshots (optional)

Checklist

[ ] I have updated the referenced issue with new insights and changes
[ ] If this is a code change, I have added unit tests
[ ] I've used the conventional commit specification for my PR title
[ ] I updated the docstrings
[ ] If this is a code change, I added meaningful logs and prepared Datadog visualizations and alerts

@ArzelaAscoIi for some reason the lists are not showing up, they just show as inline items. I added more spacing, let's see if it fixes it.

@ArzelaAscoIi looks like I don't have the permissions to merge :) can you please merge if you have no more comments?


library not updating

Device information

Neko version: <IP_ADDRESS>
Android phone & version: android 10 miui global 12.0.10

Steps to reproduce
try to manually update library
Expected behavior
Library updates
Actual behavior
library does not update and progress bar is stuck
Other details

progress bar has been stuck on the first manga for more than 30 minutes

Force close app, log out relogin


Update physical-azure-disaster-recovery.md

Removing extra line "review the architecture for this disaster recovery scenario" since it's pointing to incorrect documentation related to "Hyper-V to Azure disaster recovery architecture".
Also, this link is is already duplicated on line 30 "Make sure that you understand the architecture and components for this scenario."

@maorteg : Thanks for your contribution! The author, @rayne-wiselman, has been notified to review your proposed change.


core: add ceph daemon command support

Description of your changes:
adding ceph daemon * command support
Which issue is resolved by this Pull Request:
Resolves #208

How about an update to the readme with this new command?

there is already ceph * mentioned in Readme, do we want to add specific for ceph daemon?

How about an update to the readme with this new command?

there is already ceph * mentioned in Readme, do we want to add specific for ceph daemon?

Seems good to mention as a separate item because it fundamentally does something different. Instead of executing the ceph command in the operator pod, it would connect to the daemon pod.


Auto Commenting On New issue Creation

It ensures that comments on issues follow a consistent format or structure. This helps teams maintain a standardized approach to handling issues, reducing confusion and misunderstandings.
Users don’t need to manually add repetitive information or instructions. The automatic comment can include standard guidelines, troubleshooting steps, or links to documentation.

@sejals23 I don't think so it is required at this moment but thank you for bringing it to our notice!


mdbook: 0.4.10 -> 0.4.12

Motivation for this change
https://github.com/rust-lang/mdBook/blob/master/CHANGELOG.md#mdbook-0411
https://github.com/rust-lang/mdBook/blob/master/CHANGELOG.md#mdbook-0412
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.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.

Result of nixpkgs-review pr 133095 at 9ec3ed91 run on x86_64-linux 1

5 packages built successfully:

hydra-unstable
mdbook
nix-update
nixUnstable
nixpkgs-review


.jsonnet files are being recognized as JavaScript files

See the following:

No clue why it might be happening, I've tried restarting VS Code but it didn't fix anything.

Check if you have a files.associations setting in your workspace or global settings. Perhaps a *.js* association to the javascript language identifier

Looks like I had .jsonnet set to javascript in my config for some reason, I don't remember setting it like that though :P. Anyway, everything's working now, thanks!


Smoke test driver connection sometimes cannot be established

This test flaked 11 times in the past month (91.4% pass rate):

Example failing build: https://monacotools.visualstudio.com/Monaco/_build/results?buildId=143487&view=results
Error: connect ENOENT \\.\pipe\z4j91yglbudclif
    at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1159:16)

That looks to me like a broken connection to our driver that is exposed via a socket.

Connections don't just break. ENOENT means the named pipe doesn't exist. So either VS Code failed to launch, or failed to reach the socket creation point in the time we hoped it would.

@bpasero I am not the owner of this smoketest.

@joaomoreno easy cowboy
Another variant of this seems to be:
1) VSCode Smoke Tests (Electron)
       Preferences
         "before all" hook for "turns off editor line numbers and verifies the live change":
     Error: connect ENOENT /var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp-45659aw4mF7EHcpih
      at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1159:16)

From https://dev.azure.com/monacotools/Monaco/_build/results?buildId=144271&view=logs&j=3792f238-f35e-5f82-0dbc-272432d9a0fb&t=fff0fe4e-512d-573e-9d0b-0e9f3e677ab7&l=87

Having refactored a lot of the smoke test lifecycle code, I feel that the origin of this issue could be where we try to connect to the IPC driver handle:
https://github.com/microsoft/vscode/blob/e71b28a444783d6b1cec4a6c68dc41a3a4d5d7ae/test/automation/src/electronDriver.ts#L113-L141
This code is basically attempting to connect to the starting VSCode instance for a while until eventually giving up. If the instance does not start (which can be simulated by changing the driver handle), the error is very similar:
1) VSCode Smoke Tests (Electron)
       Data Migration (insiders -> insiders)
         verifies opened editors are restored:
     Error: connect ENOENT /var/folders/fv/p__j7gw9097crr40g7sf2pxw0000gn/T/tmp-60384-Rw9kPPKJlgyi2
      at PipeConnectWrap.afterConnect [as oncomplete] (node:net:1161:16)

I have slightly increased the duration of time we allow to retry with my changes.

Somehow I have not seen this issue for a long time, and I have looked at 1-2 weeks of falures.

Same, let's close this off

Just happened again https://dev.azure.com/monacotools/a6d41577-0fa3-498e-af22-257312ff0545/_build/results?buildId=147380

This is no longer relevant when moving to playwright.


fix: buttonsView compatibility with iOS 13 and above 📈

anyone has a comment on why CircleCI tests failed?
I made sure the project build successfully.


AIR-480 Upgrades to resolve security vulnerabilities

ISSUE:
AIR-480
SUMMARY:
Moved to alpine:latest, to resolve security vulnerabilities, so that even if new vulnerabilities arise, they're being actively resolved in alpine latest version.
Built the image locally, running trivy scan on the image shows no vulnerabilities:
trivy image  -s CRITICAL,HIGH --exit-code 22 platform9/sriov-cni:v2.6.2-pmk-
2022-11-23T13:35:32.351Z	INFO	Vulnerability scanning is enabled
2022-11-23T13:35:32.351Z	INFO	Secret scanning is enabled
2022-11-23T13:35:32.352Z	INFO	If your scanning is slow, please try '--security-checks vuln' to disable secret scanning
2022-11-23T13:35:32.352Z	INFO	Please see also https://aquasecurity.github.io/trivy/0.30.1/docs/secret/scanning/#recommendation for faster secret detection
2022-11-23T13:35:32.372Z	INFO	Detected OS: alpine
2022-11-23T13:35:32.372Z	INFO	Detecting Alpine vulnerabilities...
2022-11-23T13:35:32.373Z	INFO	Number of language-specific files: 1
2022-11-23T13:35:32.373Z	INFO	Detecting gobinary vulnerabilities...

Also added support for sriov-cni local branch build along with pf9 pmk versioning with teamcity build numbers. New version format for pf9 local builds looks like:
/platform9/:-pmk-<TC_BUILD_ID>
The resulting versioned image is then uploaded to ECR/docker.
This is the succesful TC build, which runs a trivy scan on the image, shows no vulnerabilities

@manasabsv26 what is the release plan to push it to dockerhub ? Or do we plan to keep in AWS ECR itself ?

@supreeth90 The plan currently is to push it to both the repos

Confirmed with @poojaghumre and @roopakparikh, will be pushing to docker hub


fix(backend): handle iterations where model has not been created

Codecov Report

Merging #389 (0485d91) into main (94f5efa) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #389   +/-   ##
=======================================
  Coverage   81.67%   81.67%
=======================================
  Files          61       61
  Lines        4066     4066
=======================================
  Hits         3321     3321
  Misses        745      745

Impacted Files
Coverage Δ

label_sleuth/orchestrator/orchestrator_api.py
68.01% <100.00%> (ø)

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


[OpenAI] Prepare beta.5 release

API change check
API changes are not detected in this pull request.


New release to reflect the dependency update?

Hi there,
The nix is upgraded in #18 and #16 . How about releasing a new version to crates.io and make the upgrade alive? Thanks!

Sure, I've released 0.2.3 to crates.io.


[EPIC] UI: Junctions Tool

Currently TM:PE has some duplication of UI when it comes to setting priority / give-way for segments at a junction. I always found this confusing, as it's not clear what takes preference; the vanilla 'stop' sign (via info views > traffic routes > junctions tab) or the TM:PE custom UI that has stop/give-way/priority? The current implementation feels cumbersome and not tightly integrated with existing vanilla features.
Would it be possible to integrate with the vanilla UI (info views > traffic routes > junctions tab) so that when there are no traffic lights, the toggleable 'Stop' icon can be set to on of the three states:

Stop (red hexagon as per vanilla)
Give-way/Yield (red upside down triangle)
Priority (yellow diamond)

Essentially, merge the currently-separate TM:PE UI in to the vanilla UI. The button on the TM:PE menu would then just redirect to: Info views > traffic routes > junctions tab

It seems TM:PE also has optional feature to allow traffic lights to factor in give-way / priority signs at the junction. In that case, the traffic light icon in center of junction (info views > traffic routes > junctions tab) could have three modes:

Signs only
Traffic lights only
Signs + Lights

Clicking the traffic light icon in center of junction cycles between the three modes, thus allowing config on a junction by junction basis (might cause issues with data size in savegame file; there's a limit to how much each mod can store IIRC).
Alternatively, use the existing option in mod settings, in which case:

If disabled, user can choose mode 1 or 2
If enabled, user can choose mode 1 or 3

tbh, I don't really like the native UI for traffic lights.
IIRC, traffic lights and stop signs control are only available if one buys the "mass transit" DLC. Otherwise, the menu info views > traffic routes > junctions tab does not exist.
However, I would like if the stop signs of TMPE could integrate with cities skylines own stop signs for people who own the mass transit DLC.

Yes, this is planned.

this is related to #542

Closing this as we are retaining the TMPE UI.
The stuff about linking TMPE stop sign with vanilla stop sign (ie. adding TMPE stop sign also adds vanilla sign) is handed in separate issue.


Slow performance when generating spec with external dependencies

Describe the bug
When using external dependencies swag is becoming really slow when generating swagger specification files.
I created example repository with simple code: https://github.com/matrixik/swag-perf
On my computer with CPU Intel Core i7-4790 it's taking around 30 seconds to generate specification files. This is simple example on stationary computer. We have some internal projects that on laptops take over 10 minutes to generate spec files.
At the same time same code will generate swagger spec files using https://github.com/go-swagger/go-swagger in around 3 seconds.
We changed some smaller internal projects to go-swagger and it's still generate everything in under 5 seconds when swag need over 1 minute and 30 seconds to output spec files on my computer. Output from both is almost the same but swag is minimum 10 times slower.
We would like to stay with swag because it's annotations are more readable but long generation times are getting in the way.
To Reproduce
Clone example repository
git clone https://github.com/matrixik/swag-perf.git
Clone and fix swag
git clone https://github.com/swaggo/swag.git && cd swag
git checkout v1.7.3
git apply ../swag-perf/swag_annotation_error.patch - needed to avoid exiting on wrong annotations in dependencies (or you can use v1.6.7 without patching)
diff --git i/parser.go w/parser.go
index aaa8112..fc6801e 100644
--- i/parser.go
+++ w/parser.go
@@ -636,7 +636,8 @@ func (parser *Parser) ParseRouterAPIInfo(fileName string, astFile *ast.File) err
 			for _, comment := range astDeclaration.Doc.List {
 				err := operation.ParseComment(comment.Text, astFile)
 				if err != nil {
-					return fmt.Errorf("ParseComment error in file %s :%+v", fileName, err)
+					fmt.Println("Error found in file:", fileName, "error:", err)
+					// return fmt.Errorf("ParseComment error in file %s :%+v", fileName, err)
 				}
 			}

go build -o swag_fix ./cmd/swag
Build swagger spec
cd ../swag-perf
Generate Swagger spec file:
With https://github.com/swaggo/swag

v1.7.3:
time ../swag/swag_fix init -o swagger/docs --md swagger/markdown --parseDependency true
v1.6.7:
time swag init -o swagger/docs --md swagger/markdown

With https://github.com/go-swagger/go-swagger
time swagger generate spec -o ./swagger-ui/swagger.json --scan-models
Start app:
go run main.go
Open swagger:
For swag output: http://localhost:8080/swagger/index.html
For go-swagger output: http://localhost:8080/swagger-ui/
Expected behavior
Swagger spec files would be generated in short time (like under 10 seconds, similar to go-swagger time).
Your swag version
v1.7.3
Your go version
go1.17.2 linux/amd64
Desktop (please complete the following information):

OS: Ubuntu 20.04.3 LTS x86_64

Additional context
--parseDepth 1 is not helping.

Any update? same problem.

@sunlintong please feel free to contribute.

I also have the same question when use swag generate the swagger docs in my project, it wait 7 minutes.
 Recompile swag and run ./swag init -g main.go -o swaggerdocs --parseInternal --parseVendor --parseDependency only have 1 minute.
I want to add this code in the depth project, but have not found a proper way to add it. And if use depth, swag still need to loop too many times in the line, so i refactor the swag get ast files code.
The code demo link: Imporve performance when generating spec with external dependencies
If it can help anyone, i would great to send pr.

Send a pr that added the --parseGoList flag, the default value is true default, swag use go list for dependency parser. If it's set to false, swag still use depth for dependency parser.


Move GetDynamicUtils extension out of the get.dart import

Is your feature request related to a problem? Please describe.
All those methods over dynamic type bloats the autocompletion hinting for any classType in most IDEs.
Describe the solution you'd like
Maybe, don't export 'src/regex/get_utils_extensions.dart'; in utils.dart directly to avoid exporting it with get.dart
Describe alternatives you've considered
Manually hide the import...  import 'package:get/get.dart' hide GetDynamicUtils;

In the latest version, only the most useful extensions are listed.
Thanks


Add utility to send telemetry

Related to internal discussion related to Gradio telemetry. Idea is to centralize telemetry across HF libraries in a single helper. Gradio could be a first step (cc @abidlabs @freddyaboulton @dawoodkhan82) , but it can also replace implementation from transformers and diffusers (cc @sgugger @patrickvonplaten, even though this is not a priority).
Telemetry is sent to _https://huggingface.co/api/telemetry/whatever/path_ using a HEAD request. Headers contain a user_agent with library name/version + some stuff (hf_hub version, python version, pytorch/tf/...,). Additional data can be also provided in the user_agent, either with a string or with a dictionary. Entries are de-duplicated from the user_agent before being sent to the Hub.
Since telemetry is a bit sensible, it will be at the discretion of each library to decide when/where to put telemetry. There is always an opt-out option for the users to disable it globally with HF_HUB_DISABLE_TELEMETRY (or HF_HUB_OFFLINE which has other side effects). DISABLE_TELEMETRY is also supported as legacy for transformers. (We can also add helpers like disable_telemetry/enable_telemetry to programmatically enable/disable it we you think it's useful).
Example:
>>> from huggingface_hub.utils import send_telemetry

# Send telemetry without library information
>>> send_telemetry("ping")

# Send telemetry to subtopic with library information
>>> send_telemetry("gradio/local_link", library_name="gradio", library_version="3.22.1")

# Send telemetry with additional data
>>> send_telemetry(
...     topic="examples",
...     library_name="transformers",
...     library_version="4.26.0",
...     user_agent={"pipeline": "text_classification", "framework": "flax"},
... )

TODO:

[x] send_telemetry
[x] unit tests
[x] docs in package reference section
[x] docs in environment variables sections
[x] (optional) run telemetry in a separate thread to avoid blocking the main thread in case of slow connections

cc @julien-c @LysandreJik who brought up the topic :)

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

@Wauplin any update on when we can expect this to be merged?

@dawoodkhan82 It's tested and reviewed so let's merge it now :)
But I guess your question is more, "when will it be released"? For this question I'm not sure yet. Except if it's urgent I don't think I'll make a new release of huggingface_hub in the next 2 weeks. Would that be ok for you. Open to discussion of course :)

@Wauplin Not urgent, but would be nice if it was released sooner. It would help with fully migrating away from segment sooner (which bills us monthly).

@dawoodkhan82 but are you going to pin the latest huggingface_hub in gradio then? (just curious)

@julien-c Yeah that's the plan. I think we should also collect analytics using both segment + huggingface_hub for the first 2 weeks or so to make sure the transition is smooth + there's no discrepancies. Shouldn't be an issue right? @abidlabs

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Update readme.md

This is a example of a properly made pull request for the library's documentation and archival system.

Now, having given my self the power, I have merged safely to the tree my update to the readme. Using the github website.