Create Journal references page

[x] Create page
[x] Add description of what is being covered
[x] Add description of checks required on this content, compiled from current protocol documents
[x] Add examples covering correct and incorrect scenarios, as required to support checks
[x] Populate with schematron messages
[x] Provide explanations for how to fix schematron errors and warnings
[x] Review house style document to ensure all requirements are covered by GitBook and schematron
[x] Review schematron messages related to this topic to ensure they are user friendly
[ ] Becky approved page
[ ] Melissa approved page
[ ] Fred approved page
[ ] James approved page
[x] Naushin approved page
[ ] Update Kriya queries as necessary
[ ] Share page with Exeter and invite feedback
[ ] Revise with Exeter's suggestions

Definition of done

[ ] Page completed
[ ] Team reviewed and approved page?
[ ] Assign Fred to update the Schematron

https://app.gitbook.com/@elifesciences/s/productionhowto/article-details/content/references/journal-references
This is now ready to review! I think I will admit defeat with the gitbook commenting system and ask for any comments to be left on this issue. However, if there are any spelling/grammar errors please just feel free to edit and merge! I'm sure I must be missing something because the actual guidance part is quite short...

Authors: Enter each author name as a surname followed by initials.

Change surname to surname(s)

e-location ID: The e-location identifier for the article (if applicable).
First page/last page: The page number on which the article starts and ends (if applicable). Some page numbers will be prefixed with letters.

Is it worth clarifying here (and in the table) that it's one or the other? I know it's mentioned further down but might be good to add for consistency.

If any of the mandatory information is not provided, please leave the following author query, replacing 'XXXXXX' with the missing information:
Please provide the XXXXXX for this reference.

Even if it can be found with a google search?

The default fields in Kriya will need to be altered to include the following information in this order:

There's no mention of 'in press' in this section or above it.

Once you have entered the information in the fields, click on 'Search CrossRef'. This will compare the information entered to the CrossRef database and give you a variety of articles to choose from.

I always search pubmed first (especially if there's a pmid). Is that the right thing to do? If so, do we need to update this section?

Many journals do not use volume numbers, page ranges or e-locations.

Suggest changing 'Many' to 'Some'. This isn't the norm and we should be aiming to include this information as much as possible (where it exists).

Research-gate-check

As discussed, this will also for for researchgate (no space).

article-title-fullstop-check-1

This doesn't happen often anymore (perhaps because of this check), but it was also intended to catch partial journal names included in the article title, e.g. 'Reversal of prolonged obesity-associated cerebrovascular dysfunction by inhibiting microglial Tak1. Nature'. Neuroscience. Might be worth including in the action to check that the journal name (or part of it) is not included in the article title.

If the authors refer to both the corrected/retracted article and the original article, or if they mention the citation is to a corrected/retracted article in the context, you can leave this reference in.

Should we include something about whether there is another reference to the article itself? (being explicit about how the authors have 'refer'ed to it)

If the original submitted manuscript cites the corrected/retracted paper, you can leave this reference in, but leave the following author query:

Is it worth specifying that this should be done at pre-author stage(s) or is that implicit?

Action: This warning will appear if a journal reference has an article title with formatting applied to the whole content (e.g. if the title is entirely in italics or bold formatting). Look up the reference online to see how it should be formatted and update accordingly. If you can't find the reference online, leave the following query:

Please provide the full bibliographic details for this reference.

Is this the correct author query?

For eloc-page-assert and volume-assert is it worth clarifying that this is often because an article has been published online before a print version (and so doesn't have those details yet)?

journal-preprint-check
... biorxiv, arxiv, chemrxiv, peerj preprints, psyarxiv, paleorxiv, preprints ...

Any suggestions (from anyone) about what others we should include for this

elife-ref-check
Action: This error will appear if a journal reference has the journal name 'eLife' but the doi is incorrectly formatted. eLife articles have dois in the format: 10.7554/eLife.XXXXX. Look up the article online to check what the doi should be.

What should Exeter do if this has not been published yet?

Look up the article online to check whether it has been published in a journal, or whether it is a paper from a conference. If the conference publishes its papers in a journal, keep this as a journal reference, otherwise change it to a conference reference (hyperlink to be added).

Is it worth clarifying how to identify that a 'conference publishes its papers in a journal'? For example if it is indexed by pubmed, and how to find that out.

online-journal-w-page
PLOS, eLife or mBio

Any suggestions (from anyone) about what other online-only journals we should include in this test?

Can we include a collab and In press example in the XML structure please?
Collab
<element-citation publication-type="journal">
  <person-group person-group-type="author">
    <name>
      <surname>Blake</surname> <given-names>JA</given-names>
    </name>
    <name>
      <surname>Bult</surname> <given-names>CJ</given-names>
    </name>
    <name>
      <surname>Eppig</surname> <given-names>JT</given-names>
    </name>
    <name>
      <surname>Kadin</surname> <given-names>JA</given-names>
    </name>
    <name>
      <surname>Richardson</surname> <given-names>JE</given-names>
    </name>
    <collab>the Mouse Genome Database Group</collab>
  </person-group>
  <year iso-8601-date="2009">2009</year>
  <article-title>The mouse genome database genotypes::phenotypes</article-title>
  <source>Nucleic Acids Research</source>
  <volume>37</volume>
  <fpage>D712</fpage>
  <lpage>D719</lpage>
  <pub-id pub-id-type="doi">10.1093/nar/gkn886</pub-id>
  <pub-id pub-id-type="pmid">18981050</pub-id>
</element-citation>

In press
<element-citation publication-type="journal">
  <person-group person-group-type="author">
    <name>
      <surname>Wu</surname> <given-names>C</given-names>
    </name>
    <name>
      <surname>Liu</surname> <given-names>Y</given-names>
    </name>
    <name>
      <surname>Yang</surname> <given-names>Y</given-names>
    </name>
    <name>
      <surname>Zhang</surname> <given-names>P</given-names>
    </name>
    <name>
      <surname>Zhong</surname> <given-names>W</given-names>
    </name>
    <name>
      <surname>Wang</surname> <given-names>Y</given-names>
    </name>
    <name>
      <surname>Wang</surname> <given-names>Q</given-names>
    </name>
    <name>
      <surname>Xu</surname> <given-names>Y</given-names>
    </name>
    <name>
      <surname>Li</surname> <given-names>M</given-names>
    </name>
    <name>
      <surname>Li</surname> <given-names>X</given-names>
    </name>
    <name>
      <surname>Zheng</surname> <given-names>M</given-names>
    </name>
    <name>
      <surname>Chen</surname> <given-names>L</given-names>
    </name>
    <name>
      <surname>Li</surname> <given-names>H</given-names>
    </name>
  </person-group>
  <year iso-8601-date="2020">2020b</year>
  <article-title>Analysis of therapeutic targets for SARS-CoV-2 and discovery of potential drugs by computational methods</article-title>
  <source>Acta Pharmaceutica Sinica B</source>
  <comment>In press</comment>
  <pub-id pub-id-type="doi">10.1016/j.apsb.2020.02.008</pub-id>
</element-citation>

How do we want to handle tests which apply to all types of reference? In a general citation page?

Sorry for all the comments - that's me done. Great job on this @naushinthomson.

The following information can be added for journal references:
Table

Kriya field

Please add '(s)" to Author and Collaboration entries, eg Author(s) Collaboration(s)

Mandatory?

Author and Collaboration entries please change to:

Yes (and/or a collaboration must be entered instead)
Yes (and/or an author(s) must be entered instead)

To indicate can have both.

The following information can be added for journal references:
Table

Mandatory?

for e-location ID and First page entries please indicate you cannot have both but it is preferred to have one of them - few exceptions
Please also indicate if you have a First page it is usual to have a Last page but not mandatory

Where the optional information is available, this should also be added in.

What does this mean? We do not expect manual checking of references so I am not sure there is value in adding this statement.
The non-mandatory fields are not really optional, it's just that we cannot always include them.
Perhaps change to:

non-mandatory fields are required if they exist. Validation of references via PubMed or Crossref API tools should pull them in if the author did not provide them. Schematron warnings may also pick them up and should be checked at source.

Journal name: The name of the journal in which the article was published.

Should we indicate we use full journal title and not an abbreviated form?

Volume: The volume of the journal in which the article was published (if applicable).

Perhaps mention that we do not publish Issue numbers. Some publishers do, so for clarity makes sense to indicate we actively don't

e-location ID: The e-location identifier for the article (if applicable).

Suggest changing to:

e-location ID: The e-location identifier for the article (if applicable; most journal references will have either page numbers or an e-location ID).

First page/last page: The page number on which the article starts and ends (if applicable). Some page numbers will be prefixed with letters.

Suggest changing to:

First page: The page number on which the article starts (if applicable; most journal references will have either page numbers or an e-location ID). Some page numbers will be prefixed with letters.
Last page: The page number on which the article ends (if applicable; some articles are one-page long and so an end page is not required as it is the same as the first page). Some page numbers will be prefixed with letters.

PMID: The PubMed Identifier for the article (if applicable)

Suggest changing to:

PMID: The PubMed Identifier for the article (if applicable). This will not be supplied by the author but is added during pre-editing via the PubMed API tool

The default fields in Kriya will need to be altered to include the following information in this order:
Author
Collaboration (if appropriate)
Year
Article title
Journal name
Volume (if available)
e-location ID or first and last page (if available)
DOI (if available)
PMID (if available)

Suggest changing to:

The default fields in Kriya will need to be altered to include the following information in this order:
Author/Collaboration (as appropriate, in order as provided in citation)
Year
Article title
Journal name
Volume (if available)
e-location ID or first and last page (if available)
DOI (if available)
PMID (if available)

Please note, to delete an unnecessary field click the red 'bin' button and to add a field click the green '+' button to the entry above where you need to add it.

Often you don't need to fill in all the details for a journal reference - filling in some of the fields and then clicking on the 'Search CrossRef' button will usually give you the correct article. The rest of the details will then be automatically filled in when you click on the article.

Which fields need to be filled in to get the correct result and auto population of the rest of the fields?

Watch out for unexpanded journal names when trying to validate them. Sometimes, the authors may have provided the contracted version of the journal name, e.g. 'Mol Biol Evo' for 'Molecular Biology and Evolution' (they will likely take this from a source like PubMed which shows the contracted version by default). If this is no expanded to the full version of the name, the validator may not be able to pick up the reference correctly to assign DOI/PMID.

Arghhhh!! This needs to be fed back to Exeter!! :-)

Look out for journal names that are incorrectly run on to the end of article titles. This is often caught by the schematron rules but in some cases, it may not be.

This indicates we are expecting someone to manually run their eye across all references...is that right?

Journals are not standardised in the way they archive their articles.

This example is of ahead of print. When this journal publishes the VoR they have page ranges and volume info (eg https://www.liebertpub.com/doi/10.1089/jwh.2019.7821).
I think this needs to be more explicit. Most examples of this are ahead of print publication aren't they? (Our name for this is PoA)

err-elem-cit-journal-2-1
Error: Each  of type 'journal' must contain one and only one  element. Reference 'XXXXXX' has XXXXXX  elements.

Could this fire if there are more than 1 author groups in the XML?

err-elem-cit-journal-2-2
Error: Each  of type 'journal' must contain one  with the attribute person-group-type 'author'. Reference 'XXXXXX' has a  type of 'XXXXXX'.
Action: This error will appear if there is no author list, or if authors have been tagged as other kinds of contributors (e.g. editors or curators). If there is no author list, make sure this is added by searching for the article details online. If there are contributors other than authors or collaborations, these should be removed.

Should they just be removed? Would it be best to check whether they should be listed as authors first? Also, how can this happen in Kriya if the options are author or collaborator? Would you have to delete them and then re-add them if they should be there?

err-elem-cit-journal-3-1
Error: Each  of type 'journal' must contain one and only one  element. Reference 'XXXXXX' has XXXXXX  elements.
Action: This error will appear if a journal reference has more than one or no article titles. If the authors have not provided the article title but have given other bibliographic details (e.g. journal, volume, page range or elocation ID) it may be possible to search for the article online. If there are not enough details to find the article title, add the following author query:

Please add instructions on what to do if there are 2 article-titles tagged

err-elem-cit-journal-4-1
Error: Each  of type 'journal' must contain one and only one  element. Reference 'XXXXXX' has XXXXXX  elements.
Action: This error will appear if a journal reference has more than one or no journal name. Check that the journal name has not been accidentally captured as part of the article title. If the authors have not provided the journal name but have given other bibliographic details (e.g. article title, volume, page range or elocation ID) it may be possible to search for the article online. If there are not enough details to find the article, add the following author query:

Suggest changing to

Check that the journal name has not been accidentally captured as part of the article title (which will result in no source) or that the journal title or article title has not be split out over multiple source entries...

err-elem-cit-journal-5-1-3
Error: There may be no more than one  element within a  of type 'journal'. Reference 'XXXXXX' has XXXXXX  elements.
Action: This error will appear if a journal reference has more than one volume number. Remove the extra volume number(s) and make sure that a page number/e-location ID has not been tagged as a volume by mistake.

Suggest changing part of the action from:

Remove the extra volume number(s) and make sure that a page number/e-location ID has not been tagged as a volume by mistake.

To:

Check the citation details and remove the incorrect volume number(s). Make sure that a page number/e-location ID has not been tagged as a volume by mistake.

There is no mention of in press in the explanatory text at the top of the article

err-elem-cit-journal-5-1-2
Error: A  element within a  of type 'journal' must contain at least one character and may not contain child elements. Reference 'XXXXXX' has too few characters and/or child elements.
Action: This error will appear if the volume field in a journal reference is empty, or if there are formatting elements present (e.g. bold, underline). Make sure the correct volume number is entered if appropriate by looking up the article details online, and make sure the contents do not contain any formatting.

This text should be added to most of the intrusions or removed from this one:

if appropriate by looking up the article details online,

err-elem-cit-journal-6-2
Error: If  is present, neither  nor In press may be present. Reference 'XXXXXX' has  and one of those elements.
Action: This error will appear if a journal reference has a first page and an e-location ID or 'Inpress' comment. Look the article up online and make sure that the page range is correct. If the article in fact has an e-location ID rather than a page range, remove any first or last pages and enter the ID in the e-location ID field. If the article is published, any 'In press' tag/comment should be removed. If the article has not been published, leave the following author query:
Please check whether this In press reference has now been published and, if so, please provide the full citation details.
If the authors do not have a publication date or if the publication date will be more than a few days after the publication of the eLife article, remove the page range and keep the 'In press' comment.

...or 'Inpress' comment. should be corrected to In press comment

err-elem-cit-journal-6-2
Error: If  is present, neither  nor In press may be present. Reference 'XXXXXX' has  and one of those elements.
Action: This error will appear if a journal reference has a first page and an e-location ID or 'Inpress' comment. Look the article up online and make sure that the page range is correct. If the article in fact has an e-location ID rather than a page range, remove any first or last pages and enter the ID in the e-location ID field. If the article is published, any 'In press' tag/comment should be removed. If the article has not been published, leave the following author query:
Please check whether this In press reference has now been published and, if so, please provide the full citation details.
If the authors do not have a publication date or if the publication date will be more than a few days after the publication of the eLife article, remove the page range and keep the 'In press' comment.

Suggest changing action to:

Action: This error will appear if a journal reference has a first page and an e-location ID and/or 'In press' comment. It can only have one of these. Please check and update the reference.
If the article has not been published, leave the following author query:
Please check whether this In press reference has now been published and, if so, please provide the full citation details.
If the authors do not have a publication date or if the publication date will be more than a few days after the publication of the eLife article, remove the page range and keep the 'In press' comment.

err-elem-cit-journal-6-3

Same comments as above for err-elem-cit-journal-6-2

err-elem-cit-journal-6-5-2
Error:  must be larger than , if present. Reference 'XXXXXX' has first page  = 'XXXXXX' but last page  = 'XXXXXX'.
Action: This error will appear if a journal reference has a first page value larger than the last page value (e.g. first page: 27, last page: 20). Look up the article online to identify the appropriate page range information and correct the reference. If the article in fact has an e-location ID rather than a page range, remove any first or last pages and enter the ID in the e-location ID field.

This will usually occur if the author truncates the last page, eg 123-34.
I'd reword this Action using that as an example instead.

Error: Comment elements with content other than 'In press' are not allowed. Reference 'XXXXXX' has such a  element.
Action: This error will appear if the 'Comment' field in Kriya has anything other than 'In press'. If the comment element contains relevant bibliographic information (article title, journal name, volume, etc) move this information to the correct fields and delete the comment element. If the comment contains a variant on 'in press' (e.g. 'in production', 'forthcoming' etc), correct this to 'In press' and leave the following author query:

If the comment contains a variant on 'in press'

Change to:

If the comment contains a variant on 'In press'

Please update this reference if this article is now in press. If it is still in preparation, it will need to be removed from the reference list
If the authors respond to say the article is now in press, update the 'Comment' field in Kriya with the text 'In press'. If the authors respond to say the article is still in preparation, the reference will need to be removed from the reference list and cited in the text as, for example 'Smith et al., in preparation'.

I think we need to update the AQ to:

Please update this reference if this article is now in press. If it is still in preparation, it will need to be removed from the reference list and cited in the text as, for example 'Smith et al., in preparation'.

err-elem-cit-journal-10
Error: If  is present, the content must be all numeric. The content of  in Reference 'XXXXXX' is XXXXXX.
Action: This error will appear if a PubMed ID has any letters. PMIDs should only contain numbers - look up the article online to get the correct ID and enter this.

Suggest changing the action to:

Action: This error will appear if a PubMed ID has any letters. PMIDs should only contain numbers - search for the article on PubMed [https://pubmed.ncbi.nlm.nih.gov/] to get the correct ID and enter this.

Action: This error will appear if a journal reference has the doi for PNAS but the journal name has been entered as something other than 'PNAS'. Firstly, make sure that following the DOI leads to the same article as the reference in Kriya. When you have confirmed this, apply the correct capitalisation for the journal name. For example, 'Proceedings of the National Academy of Sciences, Proceedings of the National Academy of Sciences of the United States of America' should all be changed to 'PNAS'.

Suggest changing to:
Action: This error will appear if a journal reference has the doi prefix for PNAS (10.1073/pnas) but the journal name has been entered as something other than 'PNAS'. Firstly, make sure that following the DOI leads to the same article as the reference in Kriya. When you have confirmed this, apply the correct capitalisation for the journal name. For example, 'Proceedings of the National Academy of Sciences, Proceedings of the National Academy of Sciences of the United States of America' should all be changed to 'PNAS'.

PNAS
Error: ref 'XXXXXX' has the doi for 'PNAS' but the journal name is XXXXXX, which is incorrect.
Action: This error will appear if a journal reference has the doi for PNAS but the journal name has been entered as something other than 'PNAS'. Firstly, make sure that following the DOI leads to the same article as the reference in Kriya. When you have confirmed this, apply the correct capitalisation for the journal name. For example, 'Proceedings of the National Academy of Sciences, Proceedings of the National Academy of Sciences of the United States of America' should all be changed to 'PNAS'.

Why do we ask to check whether "the DOI leads to the same article as the reference in Kriya' for PNAS but don't do it for PLOS or the BMJ?

G3
Error: ref 'XXXXXX' has the doi for 'G3' but the journal name is XXXXXX - it should be either 'G3: Genes|Genomes|Genetics' or 'G3: Genes, Genomes, Genetics'.
Action: This error will appear if a journal reference has the journal name 'G3' formatted incorrectly. Due to an issue with how G3 supplies its data to PubMed/Crossref, the journal name will sometimes have the unicode character replacing the ':'. Change the journal name to 'G3: Genes|Genomes|Genetics' or 'G3: Genes, Genomes, Genetics'.

Why do we allow 'G3: Genes|Genomes|Genetics' AND 'G3: Genes, Genomes, Genetics'.
Should it not just be one of these variants?

ampersand-check
Warning: ref 'XXXXXX' appears to contain the text 'amp', is this a broken ampersand?
Action: This error will appear if a journal reference contains the text 'amp'. Look up the article online to check whether this is a broken ampersand and fix if so.

Should the action be:

This error will appear if a journal reference contains the text 'amp'. This usually indicates a conversion error where '&' has converted to the text string 'amp'. Please check the source and correct as necessary - if the source used & please replace amp with &; if the source used 'and' please update to 'and'

Research-gate-check
Error: ref 'XXXXXX' has a source title 'XXXXXX' which must be incorrect.
Action: This error will appear if a journal name has been entered as 'Research Gate' (or 'research gate' or any other capitalisation alternatives). Check what the correct journal name should be by looking up the article online and enter that instead.

Does this happen if an author has found a PDF to a research article on Research Gate and so citing that instead of the source? If so, I think this action should be clearer as it could be that it's hard to find the real source and the user might just find Research Gate again?

journal-replacement-character-presence
Error: element contains the replacement character '�' which is unallowed - XXXXXX
Action: This error will appear if a journal name contains the character ‘�’. This usually indicates that processing has gone wrong, or it has been used to replace an unknown, unrecognized or unrepresentable character. Look up the article online and make sure the fields have all been entered correctly.

Is this just searching in the journal name or anywhere in the reference? @FAtherden-eLife
Also suggest changing to '...indicates a conversion error has occurred and replaced an unknown, unrecognized or unrepresentable character with  ‘�’.  Refer to the source of the reference and update with the correct character.

journal-off-presence
Warning: ref 'XXXXXX' has a source title which contains the text 'official journal' - 'XXXXXX'. Is this necessary?
Action: This warning will appear if a journal name includes the text 'official journal'. Delete this text from the journal name.

Can we do this categorically?

General

Look up the article online

Can we change this to something like find the source for the journal title (either PubMed, PMC or the publisher website)?

article-title-fullstop-check-3
Warning: ref 'XXXXXX' has an article-title which ends with some full stops - is this correct? - XXXXXX
Action: This error will appear if a journal reference has an article title which ends with multiple full stops. The full stops should be removed as this will make the journal reference incorrectly formatted.

Should there never be fullstops at the end of the article-title?
If so, I'd change this to:

Action: This error will appear if a journal reference has an article title which ends with 1+ full stops. All the full stops should be removed.

article-title-correction-check
Warning: ref 'XXXXXX' has an article-title which begins with 'Correction', 'Retraction' or 'Erratum'. Is this a reference to the notice or the original article?
Action: This warning will appear if a journal reference has an article title beginning with 'Correction', 'Retraction' or 'Erratum'. Read the context surrounding the citation of this reference to work out what to do. If the authors refer to both the corrected/retracted article and the original article, or if they mention the citation is to a corrected/retracted article in the context, you can leave this reference in. Otherwise, check the original submitted manuscript to make sure the wrong details have not been entered for this reference. If the original submitted manuscript cites the corrected/retracted paper, you can leave this reference in, but leave the following author query:
This reference is to a correction/retraction/erratum. Please confirm whether this is correct.

I'd like to add some context somewhere about why we do this - it's a Kriya bug right?

article-title-journal-check
Warning: ref 'XXXXXX' has an article-title which contains the text ' journal '. Is a journal name (source) erroneously included in the title? - 'XXXXXX'
Action: This warning will appear if a journal reference has an article title which includes the text 'journal'. This may need to be removed if, for example it reads 'Journal: PNAS'. However, if the word 'journal' is part of the journal name, then it needs to be kept (e.g. Journal of Neuroscience).

I sense the interpretation of this is wrong; it's checking the article title, not the journal title, as this indicates: 'However, if the word 'journal' is part of the journal name, then it needs to be kept (e.g. Journal of Neuroscience).' I think the right interpretation should be to find a journal article title that references another journal?
@FAtherden-eLife

article-title-child-1
Warning: ref 'XXXXXX' has an article-title with one child XXXXXX element, and no text. This is almost certainly incorrect. - XXXXXX
Action: This warning will appear if a journal reference has an article title with formatting applied to the whole content (e.g. if the title is entirely in italics or bold formatting). Look up the reference online to see how it should be formatted and update accordingly. If you can't find the reference online, leave the following query:
Please provide the full bibliographic details for this reference.

I don't understand why for this action we introduce the concept you might not be able to find a reference online, but it's not in any of the other actions.
Also, I think you should be able to just remove the formatting for the article title and not have to check it?

a-title-replacement-character-presence

See comments on journal-replacement-character-presence

online-journal-w-page
Error: XXXXXX is a XXXXXX article, but has a page number, which is incorrect.
Action: This error will appear if a journal reference has the journal name PLOS, eLife or mBio and a page number. These journals never use page numbers for their articles, so any page number fields should be removed.

These journals always have elocation-IDs so the action is not just to remove the page numbers but to add an eLocation ID too

journal-doi-test-1
Warning: XXXXXX is a journal ref without a doi. Should it have one?
Action: This warning will appear if a journal reference does not have a DOI. Revalidate the reference first, to ensure it is not just a system glitch. Then, look up the article online and check PubMed and Crossref as well, to see whether this information can be found. If the article has a PubMed ID but no DOI, the reference can be left as it is. Some articles will not have DOIs. This is particularly common with older articles e.g. those published before ~1990, but some journals also do not assign DOIs to their articles (e.g. Development). While doing this check, keep an eye out for differing article information. If the author names or the title are slightly different from the published details or what is recorded in PubMed, the validator will not identify the reference.

Suggest changing the action to:

This warning will appear if a journal reference does not have a DOI. Revalidate the reference first, to ensure it is not just a system glitch. If it is still not added look up the article on PubMed , if the article is listed and no DOI is present, the reference can be left as it is. If it is not on PubMed look at the journal source online, or use Crossref to check whether there should be a DOI.
Some articles will not have DOIs. This is particularly common with older articles e.g. those published before ~1990, but some journals still do not assign DOIs to their content now (e.g. Development). eLife Schematron attempts to filter out false positives so please inform Production staff of this message on content that does not have DOIs (for example Development references do not fire this warning).
While doing this check, keep an eye out for differing article information. If the author names or the title are slightly different from the published details or what is recorded in PubMed, the validator will not identify the reference.

Nice job @naushinthomson Thanks!! Another massive page with loads of warnings covered :-)

I'm not sure the 'Examples of journal citations' screenshot makes much sense, or is needed. There's no difference in citation style depending on which reference type it is.

"The way journal references are displayed depends on the referencing style." I'm not sure there's a lot gained by saying this. This is a page covering eLife's style, so it's probably better to just lay that out and avoid confusion by referencing other journals' styles.

"Yes (or a collaboration must be entered instead)" on Authors and Collaborations is potentially misleading. At least one author or collaboration is required, might be a better way of saying it.

<article-title>"XXXXXX" where XXXXXX is the article title - not sure why this has the XXXXXXs and the other elements don't?

Is it worth stating at the start that either e-location OR page range is allowed, but not both?

"If this is no expanded to the full" -> "If this is not expanded to the full"

"Many journals do not use volume numbers, page ranges or e-locations." Probably not relevant but the main distinction is that only print journals have page ranges.

"Searching for this reference online takes you to this page." I think it might be clearer to say "Searching for this reference online, one of the results is this page. "

Why is the Schematron section not split in the usual fashion between content and structure? If this split isn't applicable, I'd suggest not having a level 2 heading.

Also, I think it's 'Schematron warnings' as the level 1 heading on other pages - does that need fixing in the template?

Should there be a space in 'Inpress'? Does it show run-together on Kriya?

Regarding err-elem-cit-journal-6-2, if we have the final publication details, shouldn't we be including them even if that article is not yet live? The point of an in press label is to substitute for publication details that are not yet known. If we had the final details - page range, elocation, DOI etc - then it does more service to readers to include that than to remove them in favour of an in press comment that will become outdated within, say, a month.

Related to Melissa's comment above about journal-off-presence, it's probably worth an example to show which bit and how much of the extra text needs deleting.

handbook-presence - Does this account for reference with entries in PubMed (I think some of the 'handbooks' are treated like journals) and do we care if changing these to books loses us the PMID? It would also lose us any DOI, so probably worth clearly stating that the DOI will need to be re-added for it as a book.

article-title-correction-check - There are plenty of articles that just legitimately have 'correction' or even 'retraction' in their titles e.g. https://pubmed.ncbi.nlm.nih.gov/30037348/, https://doi.org/10.1055/s-0038-1672142. This rule fires for those too, so this needs to be covered.

Edge case - I have seen a couple of instances of preprint servers outside the common ones being captured as journals. It is sometimes possible to spot them if looking up references that don't have page ranges, volumes or e-locations. Is this worth covering?

I think that's everything from me! Thanks for tackling this, @naushinthomson!

I'm not sure if this has been covered but when validating the reference against crossref or Pubmed, should we mention that you do not need to select an article as it can be the case that it will not appear? I think the way it reads suggests you must pick an article from what the validator suggests.

journal-off-presence
Warning: ref 'XXXXXX' has a source title which contains the text 'official journal' - 'XXXXXX'. Is this necessary?
Action: This warning will appear if a journal name includes the text 'official journal'. Delete this text from the journal name.
In the rare case that something like the 'Official Journal of the European Union' was mistagged, this would be wrong.. I just Googled this but I think this would apply!

Everything else I would have said, people have covered. Thanks! :)

To cover in Production meeting:

[ ] General ref rules should go in the 'References' gitbook page
[ ] Do we search PubMed before Crossref in Kriya when adding refs?
[ ] Run updated table by team
[ ] Run updated 'Finding reference details' section by team. Do we need to add an example of a journal that doesn't use these details at all?
[ ] Have added info about how to delete fields in Kriya - but this doesn't always work! Thoughts?
[ ] Which fields need to be filled in to get the correct result and auto-populate of the rest of the fields?
[ ] article-title-child-1 - Is the author query correct? If so it should be added to the other tests that ask you to look up the article online. Should you even look up the article online or can the formatting just be removed (what about correcting italicisation?)
[ ] journal-preprint-check - Any suggestions for other preprints to add to this test
[ ] online-journal-w-page - Any suggestions for online-only journals to add
[ ] elife-ref-check - What should Exeter do if the paper hasn't been published yet?
[ ] Run updated conference-check actions by team
[ ] Can err-elem-cit-journal-2-1 fire if there are more than 1 author groups in the XML? (If so, action needs to be updated)
[ ] err-elem-cit-journal-2-2 - How might this happen?
[ ] err-elem-cit-journal-3-1 - Run updated action by team
[ ] Adding the text 'if appropriate by looking up the article details online' to other actions - unsure what you mean, all actions that need it currently have a variation of 'look up the article online' I think?
[ ] Changing 'look up the article online' to something like 'find the source for the journal title (either PubMed, PMC or the publisher website)' - thoughts?
[ ] PNAS - Run updated action by team
[ ] G3 - Why do we allow 'G3: Genes|Genomes|Genetics' AND 'G3: Genes, Genomes, Genetics'. Should it not just be one of these variants?
[ ] Research-gate-check - run updated action by team
[ ] journal-replacement-character-presence - is this just checking the journal name?
[ ] article-title-correction-check - Adding context about why we do this?
[ ] err-elem-cit-journal-6-2, 3 and 4 - What do we do for In Press articles in general? (Also check consistent capitalisation of 'in press'.
[ ] 'I have seen a couple of instances of preprint servers outside the common ones being captured as journals. It is sometimes possible to spot them if looking up references that don't have page ranges, volumes or e-locations. Is this worth covering?'
[ ] handbook-presence - Does this account for reference with entries in PubMed (I think some of the 'handbooks' are treated like journals) and do we care if changing these to books loses us the PMID? It would also lose us any DOI, so probably worth clearly stating that the DOI will need to be re-added for it as a book.
[ ] article-title-correction-check - will this only fire if 'correction, retraction, erratum' are at the beginning of the article title? If so, there are plenty of articles that just legitimately have 'correction' or even 'retraction' in their titles (and action needs to be updated).
[ ] journal-off-presence - run updated action by team
[ ] Run split of content vs xml structure checks by team


Update checkpoint url

This updates the checkpoint URL to one that is now able to download the checkpoint from blob storage.
I have also updated the MACs stats. We were previously just outputting the details from the last task. This update collects the MACs count after each user, then displays the average and std at the end. I also added that it is a leader board stat too.

@martinpgrayson @mgrayson-msft It looks good now! :) Thank you for the updates.

@martinpgrayson please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree


Protection Warrior Support

Any chance it would be possible to add support for protection warriors for those times we aren't tanking and want to optimize what little DPS we do?

I think that's pretty achievable - only needs a Devastate implementation, a couple talents, and a preset or two.  I assume Prot BIS would basically mirror Fury BIS?

I think stat weights are going to be different.
Bloodthirst scales on AP, Devastate scales on weapon damage only. Crit is also going to be devalued due to lacking Rampage.


PnP Powershell version for Copy Planner plan

An equivalent PnP PowerShell to Copy Planner Plan for planner-copy-planner-plan would be good.
I can work on it if approved.

Please do, I will assign this :-)

ps, let me know if you no longer want to, just saw its 15 days old - opps. Sorry.


Allocation too large< ~lib/rt/itcms.ts<$Index out of range,~lib/rt.ts

Hello everyone, I'm a newbie learning webassembly, I just encountered the issue but have been stuck several days.
I'm sorry I posted unrelated questions in this repository because this seems to an issue from my code in assemblyscript.
I will appreciate a lot 🙏 for any helps.
I'm stuck on this when learing web assembly.
basically I have this index.ts file written in assembly script
// The entry file of your WebAssembly module.

class Animal {
  constructor() {}
  name: i32;
  age: i32;
}

export function newAnimal(): i32 {
  let animal = new Animal();
  animal.name = 1;
  animal.age = 2;

  return 1;
}

I compile with the following command
npx  asc assembly/index.ts --target release --use abort=assembly/index/myAbort

However when i check the realease.wat file it has some weird messages
 (memory $0 1)
 (data $0 (i32.const 12) "<\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00(\00\00\00A\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00\00\00\00\00")
 (data $1 (i32.const 76) "<\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00 \00\00\00~\00l\00i\00b\00/\00r\00t\00/\00i\00t\00c\00m\00s\00.\00t\00s\00\00\00\00\00\00\00\00\00\00\00\00\00")
 (data $2 (i32.const 144) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00")
 (data $3 (i32.const 176) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00")
 (data $4 (i32.const 204) "<\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00\00\00\00\00\00\00\00\00")
 (data $5 (i32.const 268) ",\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00\00\00\00\00\00\00\00\00")
 (data $6 (i32.const 320) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00")
 (data $7 (i32.const 348) "<\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00")
 (data $8 (i32.const 416) "\06\00\00\00 \00\00\00 \00\00\00 \00\00\00\00\00\00\00 \00\00\00 \00\00\00")

I decode this Unicode message and got this error
<(Allocation too large< ~lib/rt/itcms.ts<$Index out of range,~lib/rt.ts@@<~lib/rt/tlsf.ts
I execute this using go-wasmtime and also got the same error
package main

import (
	"encoding/json"
	"fmt"
	"net/http"

	"C"

	"github.com/bytecodealliance/wasmtime-go/v9"
)

func main() {
	// Load the WebAssembly module from file

	// Almost all operations in wasmtime require a contextual `store`
	// argument to share, so create that first
	engine := wasmtime.NewEngine()
	store := wasmtime.NewStore(engine)
	linker := wasmtime.NewLinker(engine)

	vals := map[int32]int32{}

	set := func(k, v int32) {
		vals[k] = v
		fmt.Printf("set: %d, %d\n", k, v)
	}

	get := func(k int32) int32 {
		fmt.Printf("get: %d\n", k)
		return vals[k]
	}

	linker.DefineFunc(store, "kv", "set", set)
	linker.DefineFunc(store, "kv", "get", get)

	module, err := wasmtime.NewModuleFromFile(engine, "./release.wasm")
	check(err)

	// Create the WASI instance
	wasiConfig := wasmtime.NewWasiConfig()
	store.SetWasi(wasiConfig)

	check(err)

	instance, err := linker.Instantiate(store, module)

	check(err)

	mem := instance.GetExport(store, "memory").Memory()
	fmt.Printf("mem = %+v\n", mem)
	ptr := mem.Data(store)
	// Allocate memory
	fmt.Printf("Go: wasm sandbox memory info: size %d, data size %d\n",
		mem.Size(store),
		mem.DataSize(store),
	)
	buf := mem.UnsafeData(store)
	fmt.Printf("Go: wasm sandbox memory content: %s\n", string(buf))

}

func check(e error) {
	if e != nil {
		panic(e)
	}
}

Output
mem = &{val:{store_id:1 index:0}}
Go: wasm sandbox memory info: size 512, data size 33554432
Go: wasm sandbox memory content: <(Allocation too large< ~lib/rt/itcms.ts<$Index out of range,~lib/rt.ts@@<~lib/rt/tlsf.ts

Thank you a lot if any one can give me instruction on how to resolve this issue.

It looks like you're not actually running any wasm other than instantiating the given module? Otherwise you're printing a raw byte slice as a string where I'm not sure what Go's behavior of that is because the input is unlikely to be utf-8 so it may be skipping all non-printable characters which means you're reading the raw contents of memory. The raw contents are that meaningful outside the context of the guest, so I'm not sure what you're trying to achieve by printing memory?

thanks for the help @alexcrichton . I'm just debugging and learning how to pass a string from a guest program in Assembly Script to a host program in Go.
I don't find many examples around how to do this. I copied the memory inspection code from this https://github.com/tricorder-observability/Starship/blob/d5ed851b1471d86dd27b78066b5b97b36e8c42f6/experimental/wasi-sdk-cpp/picohttpparser/main-wasmtime.go#L172

Yes doing something like passing strings right now is unfortunately not a trivial operation. You'll need to be pretty deep in the system and understand what's going on to do that today. That's the goal of the component-model, however, is to provide much easier-to-use interfaces (in the future, which we're actively working on)

noted. thanks a lot for the help Alex


How to run your own data set?

Very good job!
How to run your own data set? colmap?
Thanks!!

Yep that's right! You can follow the instructions within the LLFF readme to extract poses from your own dataset.

Thank you very much！
1、Yes, my scene is not forward facing. The scenes in my data set are shot in all directions. Which configuration files should I modify?
2、In addition, I have noticed that the llff dataset contains images that are subsampled and run out using colmap. But the original colmap does not produce files such as the poses_bounds.npy file. Do you have your own colmap script for everyone to use? thank you.

Thank you very much！ 1、Yes, my scene is not forward facing. The scenes in my data set are shot in all directions. Which configuration files should I modify? 2、In addition, I have noticed that the llff dataset contains images that are subsampled and run out using colmap. But the original colmap does not produce files such as the poses_bounds.npy file. Do you have your own colmap script for everyone to use? thank you.

Thanks for your question, and I also want to run on my own dataset, could you share more about what should I do?

Thanks very much.

Thanks! I will try.
I see you mentioned distorted reflection and refraction, is this reconstructed for non-Lambertian objects? Mirrors, water surfaces, things like that. And there's an algorithmic optimization for that, right?

Yep! Given enough views, our method should be able to reproduce the appearance of such objects. For example see the reflections on the CD and refractions through the bottle of liquid in this scene:
https://user-images.githubusercontent.com/2993881/211887264-2874afc8-d4de-4990-a7cc-351c1903efcf.mov

I replicated the same effect in the CD dataset, which worked well.
But now we're having some trouble with our own datasets.
I have tried to use scenes that are inward facing (all cameras shooting around objects). The llff configuration file (run_one_llff.sh) is currently used in the training process, but the training loss and psnr effect are poor. When I tried to run my own data set using donerf's configuration file, I was prompted that many files were missing (sorry, I haven't used this data set before). Is there any detailed guidance for this type of scenario? Thanks!!
Here is the result of my llff configuration file, psnr=15.08. And you can only look forward when you're visualizing, whereas I shoot around objects. The data set used is the refnerf data set.

Is the from the "real" dataset provided on the Ref-NeRF website? If so, let me try our method on this data and get back to you.
Note that our method works quite well for densely captured scenes, but that it's difficult to capture inward facing 360 degree scenes with high angular density (so it might not work super well in this setting).

Yes! It's a real data set from the website.  I'm going to try something similar.
That it's difficult to capture inward facing 360 degree scenes with high angular density (so it might not work super well in this setting).Could you please tell me the reason for this result? geometric primitives?

Yep, because of the sample prediction network, which predicts geometric primitives / sample points that vary depending on the input (4D) ray. This allows the framework to reproduce complex view dependence, but also means that the samples are not explicitly constrained for rays that are not observed during training (and so it tends to lead to worse interpolation / extrapolation quality in sparse view settings).
This is one of the main limitations of the work, which we discuss in the conclusion of the paper:

thank! I see. But the experimental scenes in real nerf are still curious.

No problem! And I agree -- it's still definitely worth looking into.

I am very willing to work with you on this work. Is there anything I can do to help speed up the progress of this work?


Set parentID to -1 rather than worldID for when flagging parent transform as dirty

Was recommended in a comment for a previous PR, and I've seen no negative side efffects
https://github.com/pixijs/pixi.js/pull/5030#issuecomment-441299080

[x] Lint process passed (npm run lint)
[x] Tests passed (npm run test)

Codecov Report

Merging #5891 into dev will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##              dev    #5891   +/-   ##
=======================================
  Coverage   70.38%   70.38%
=======================================
  Files         206      206
  Lines       10454    10454
=======================================
  Hits         7358     7358
  Misses       3096     3096

Impacted Files
Coverage Δ

...kages/canvas/canvas-renderer/src/CanvasRenderer.js
85.57% <100%> (ø)
:arrow_up:

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 497d9ec...6374eef. Read the comment docs.

You guys are stepping on a very dangerous territory of #4632 . When I tried to made certain small changes, I found many edge cases that were either broken already, either broken by my changes. I had tests for it. It was too difficult for us back then.
Maybe you guys finally ready try to fix temp parent approach, but that doesn't mean we can just merge random changes and hope that it works.

@a-rasinski This PR for v5 stems from your findings in v4: https://github.com/pixijs/pixi.js/pull/5030#issuecomment-441299080
Is there any chance that you could reproduce your scenario with vanilla v5 and see if this change is required or not for v5 please?

Close in favor of #5891, I made better fix.


[Modelling] Create UML diagrams for the application

Create UML diagrams which describes the way the users will perform tasks on the application (use case diagrams). Also, create class diagrams. Each team member has to create 2 diagrams. Try to include as many aspects as possible (include and extend relationships at use-case diagrams, aggregation, composition relationships in class diagrams, and so on).

Mihai: Account management use case diagram, Fed photos ranking use case diagram.
Ciprian: Get a prediction use case diagram, Predictions management use case diagram.

Diana: class diagrams for Prediction Service.
Ioan: class diagrams for Historical Predictions Management Service.
Cătălin: class diagrams Account Management Service.


[sysrst_ctrl,sw] DIF support for precondition.

Description
The pre-condition feature for system reset control was added after D3: https://github.com/lowRISC/opentitan/commit/fee5874f2f0cbf30c134b50a89ccfecce65633ad
However, I see no mention of this in the DIF. Can someone have a look at adding this?

@moidx / @msfschaffner ; this is blocking for D2.5 of Sysrst_ctrl. Highlighted in Slack.
Changed priority accordingly

#17842 will fix this.


RN 57 fresh install force close

i install rn 57 and then change the package -b
and apps cannot open

I am also using RN 0.57. Looks like it deleted MainActivity.java that's why its crashing. i had full backup. so didn't hurt much.

Duplicate of #55


Change test structure in core KeyringController

Currently, unit tests for core KeyringController are not divided by targeted method, making it hard to establish the methods affected by a change.
We should group tests by the tested KeyringController method.
This is part of the effort to merge extension and mobile keyring interactions.

Hey team! Please add your planning poker estimate with Zenhub @cryptodev-2s @Gudahtt @mikesposito


Adding the pull_request

Pull Request Test Coverage Report for Build 296332060

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.328%

Totals

Change from base Build 296143604:
0.0%

Covered Lines:
197

Relevant Lines:
197

💛  - Coveralls

Pull Request Test Coverage Report for Build 296332060

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.328%

Totals

Change from base Build 296143604:
0.0%

Covered Lines:
197

Relevant Lines:
197

💛  - Coveralls


Union of object literals : a case where refinement is not very smart

Try Flow.
export type ItemType =
  | {| type: 'text' |}
  | {| type: 'step' |}
  | {| type: 'code', token: string |}
  ;

function insertItem(data: ItemType) {
}

function handleNewItem(t: 'text' | 'step' | 'code') {
  if (t === 'text') {
   insertItem({ type: t })
  }
}

12:    insertItem({ type: t })
                  ^ object literal. Could not decide which case to select
7: function insertItem(data: ItemType) {
                             ^ union type

Another example:
export type ItemType =
  | {| kind: 'text' |}
  | {| kind: 'step' |}
  ;

const kind = 'text'
const d1: ItemType = { kind } // works

if (kind === 'text') {
  const d2: ItemType = { kind } // doesn't work
}

Weird !

I agree that this is a bug, but something like this most likely has been reported before

Also happens without exact types.
// @flow

type A = { a: 'A' };

type B = { a: 'B' };

type AB = A | B;

function asdf(a: string): AB {
  switch (a) {
    case 'A':
      return {
        a,
      };
  }
  throw new Error('nope');
}

This is very similar to #4683, #4685, #4669. We've had a ton of reports on behavior like this with unions of objects that have the same property but different string literals. Might be a good topic for docs of what does(n't) work and why.

this now works


Get logs from Lambda into logging.wellcomecollection.org

Closing as done – this got picked up in separate tickets.


feat: split test files in PD, for simpler V2 merging in the future

This change is

/deploy

/deploy

/deploy

/deploy

/deploy

/deploy

/deploy


[SUGGESTION] Blacklist for mobs not affected by acid

Please add  blacklist config for mobs that is will not be affected by mist and acid rain.

Once again I want to ask to add configurable list of mobs not being affected by mist.

Oh! Sorry for not answering ...
I'm very busy with the port of the mod for version 1.16.5, so I don't really want to be distracted.
However, to make any mobs immune to fog, you can simply use the damage event.
Just cancel the "mist.in_fog" or "mist.dissolution" damage for specific mobs.

Oops...
The script worked fine, i will close this issue.

I also expanded script by adding additional check for DISSOLUTION damage

That prevented mobs from getting damage by rain aswell


fix: Count output and version checks in YAML specs

Coverage: 80.331% (-0.03%) from 80.362% when pulling e40b041c30942247f2d78a329e870b979bd9f7de on bugfix/fix-count-output into fedc88fccd7026260a457735fa1fc57a1927b5cb on main.


Additional secp256k1 Source Exclusions

These files contain a conflicting main method.
I was able to compile after adding both as exclusions.

These files contain a conflicting main method. I was able to compile after adding both as exclusions.

Yeah @michilumin had mentioned running into this a few weeks back when trying to build .dll's from msvs. I'll check this out more in depth over the next few days. Thank you!


popping the last element will panic

I was fiddling with your code and see that it panics if you the last element is popped off. I submitted a pull-request that contains a test that shows this.
FWIW, I liked your article, but wanted to make push and push_front call a helper function to avoid repeated code. Same with pop and pop_front. I also wanted to move the Option out of Link so that LinkedList could have a head_and_tail field that is an Option, since I figured that head and tail will either both be None or both be Some. After I made my transformations, I was left with an unwrap that made me nervous and when I added a test for popping the last element, my code died, that's when I went back and added the same test to your code…

Thanks for highlighting this issue @ctm . I like your ideas to improve the LinkedList. I'll keep these in mind for future improvements!

I have pushed a branch of what I was exploring. Here's the relevant file
https://github.com/ctm/ads-sandbox/blob/no-unwraps-and-other-refactoring/src/data_structures/linkedlist.rs.
I'm happy with the code, but it's way too esoteric to not have more
comments. Take anything you like.
On Sat, Jul 15, 2023 at 3:41 PM Connor Mooney-Collett <
@.***> wrote:

Thanks for highlighting this issue @ctm https://github.com/ctm . I like
your ideas to improve the LinkedList. I'll keep these in mind for future
improvements!
—
Reply to this email directly, view it on GitHub
https://github.com/cmooneycollett/ads-sandbox/issues/5#issuecomment-1636892091,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAGNBMUFWNPKB5QY7NHQALXQMFAHANCNFSM6AAAAAA2LOGSJU
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Cliff Matthews
Founder, Craft Poker Co.
https://craftpoker.com
@.***


User-defined types experimental feature changes the behavior of the nested resource accessor (::) operator

Bicep version
0.13.1
Describe the bug
Enabling the User-defined types experimental feature changes the behavior of the nested resource accessor (::) operator.
See example below for details.
To Reproduce
Deploy the following template with and without the experimental feature enabled
@description('Optional. The location to deploy resources to.')
param location string = resourceGroup().location

resource storageAccount 'Microsoft.Storage/storageAccounts@2021-09-01' = {
  name: 'testsaexpudt01'
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'

  resource blobService 'blobServices@2021-09-01' = {
    name: 'default'

    resource container 'containers@2021-09-01' = {
      name: 'container01'
    }
  }
}

@description('The name of the created Storage Account Blob Container.')
output storageContainerName string = storageAccount::blobService::container.name // Note: this is returning storageAccountName/default/containerName when the userDefinedTypes experimental feature is enabled

Check the output

Without enabling the experimental feature (default behavior)

Outputs                 :
                          Name                    Type                       Value
                          ======================  =========================  ==========
                          storageContainerName    String                     `"container01"`

With experimental "userDefinedTypes" enabled

Outputs                 :
                          Name                    Type                       Value
                          ======================  =========================  ==========
                          storageContainerName    String                     "testsaexpudt01/default/container01"

Additional context

The same can be reproduced with other nested resource types (e.g., Key Vault keys)
Accessing nested resource properties throws a DeploymentOutputEvaluationFailed error.
For example adding the following output parameter to the above templateoutput storageContainerPublicAccess string = storageAccount::blobService::container.properties.publicAccess

results inStatus Message: The template output 'storageContainerPublicAccess' is not valid: Language expression property 'publicAccess' can't be evaluated, the referencing object is null.. (Code:DeploymentOutputEvaluationFailed)

This is definitely a divergence in behavior between regular and symbolic name compilation, but it looks like it was fixed in https://github.com/Azure/bicep/pull/9458. With no experimental features enabled, the storageContainerName output is calculated by the compiler:
{
  ...
  "outputs": {
    "storageContainerName": {
      "type": "string",
      "value": "container01",
      "metadata": {
        "description": "The name of the created Storage Account Blob Container."
      }
    }
  }
}

with symbolicNameCodegen enabled (and using a version of Bicep that does not include the change from #9458), the calculation relies on resourceInfo:
{
  ...
  "outputs": {
    "storageContainerName": {
      "type": "string",
      "value": "[resourceInfo('storageAccount::blobService::container').name]",
      "metadata": {
        "description": "The name of the created Storage Account Blob Container."
      }
    }
  }
}

If/when we decide to reenable resourceInfo code generation, a resource name will need to generate an expression that takes the last segment of the name, not the fully qualified name. Instead of [resourceInfo('storageAccount::blobService::container').name], this should be `[last(split(


add testgrid_publish test definition

What this PR does / why we need it:
Add testgrid test definition
Release note:

Publish k8s e2e conformance test results to testgrid

Found a bug in execute script, which needs to be fixed first.


Publish the latest version on nuget

I have been breaking my head for the last week just to notice that the Nuget version haven't been updated for over a year

Sorry about this, it seems that the owner and other maintainers can no longer put efforts into this.
And I'm still trying to figure how to make the build thing work...

It should be just running 0 full.bat
Let me know if you have issues

I compiled this myself for use, but it would be nice if it was pushed to nuget from time to time, instead of maintaining it locally :)


Added tracking prevention documentation

This commit adds a first pass at tracking prevention documentation.

Docs Build status updates of commit d342584:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/media/web-platform/tracking-prevention/console.jpg
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/page-info-flyout.png
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/tracking-prevention-settings.png
:white_check_mark:Succeeded

microsoft-edge/web-platform/tracking-prevention.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 9456b34:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/media/web-platform/tracking-prevention/console.jpg
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/page-info-flyout.png
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/tracking-prevention-settings.png
:white_check_mark:Succeeded

microsoft-edge/web-platform/tracking-prevention.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 9f5d40d:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/web-platform/tracking-prevention.md
:warning:Warning

Details

microsoft-edge/media/web-platform/tracking-prevention/console.jpg
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/page-info-flyout.png
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/tracking-prevention-settings.png
:white_check_mark:Succeeded

microsoft-edge/web-platform/tracking-prevention.md

Line 99: [Warning] Cannot find bookmark '#determining-whether/how-a-particular-url-is-classified' in 'web-platform/tracking-prevention.md', did you mean '#determining-whetherhow-a-particular-url-is-classified'?

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit cdcacd3:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/web-platform/tracking-prevention.md
:warning:Warning

Details

microsoft-edge/media/web-platform/tracking-prevention/console.jpg
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/page-info-flyout.png
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/tracking-prevention-settings.png
:white_check_mark:Succeeded

microsoft-edge/web-platform/tracking-prevention.md

Line 99: [Warning] Cannot find bookmark '#determining-whether/how-a-particular-url-is-classified' in 'web-platform/tracking-prevention.md', did you mean '#determining-whetherhow-a-particular-url-is-classified'?

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 839b7a0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/media/web-platform/tracking-prevention/console.jpg
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/page-info-flyout.png
:white_check_mark:Succeeded

microsoft-edge/media/web-platform/tracking-prevention/tracking-prevention-settings.png
:white_check_mark:Succeeded

microsoft-edge/web-platform/tracking-prevention.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


App crashes immediately in Firefox

Firefox 60.3.0esr, macOS 10.13.6
Opening the side menu to sign in crashes the app.
Ad blocker is disabled.

Yep, understood. Just wanted to get this on the radar because web apps should be at least moderately functional in every major browser.

Notes from Refinement:

Give this ~15 minutes to look into, but don't spend too much time on it.
We should collect analytics on how many people run into this.

FWIW when I investigated myself I did not see any AJAX requests being made around the crash, so I'm not sure this would show up in any analytics without extra engineering

I was unable to reproduce this on the same FF version. The app loads normally and I am able to log in. Closing this for now, but we'll keep an eye out for additional reports. Thanks!

@aednichols I'd be suspicious of some overzealous content blocking, if you perhaps have changed some settings. It looks like the Google login library isn't being allowed to load, which we've only seen before with really overprotective content blockers and privacy plugins.

Good call, this was indeed a self-inflicted breakage.
Changing the blocklist from strict ("Some websites may not function properly"!) to recommended fixes the issue.

FWIW this is the first site that has required me to change this setting, but I agree there's nothing wrong with your app.


RFC: It's about time to enable Tauri updater.

Search before asking

[X] 我在 issues 列表中搜索，没有找到类似的内容。
I searched in the issues and found nothing similar.

Motivation
Auto updating Pake itself is the must feature for the user who like to keep their software up to date to get the most joyful user experience.
Solution
Prerequisite
These tasks need @tw93 as admin to do the setup

[ ] user npm run tauri signer generate -- -w ~/.tauri/myapp.key generate pubkey and privkey
[ ] Add these keys into secret of this repo: PAKE_TAURI_PUBLIC_KEY and PAKE_TAURI_PRIVATE_KEY

TODO

[ ] Enable signing when build apps
[ ] Host a release file in seperated branch
[ ] Enable updater for each apps.

Alternatives
No response
Anything else?
No response
Are you willing to submit a PR?

[X] I'm willing to submit a PR!

赞 很欢迎提交pr

Here I thought carefully, in fact, there is no need to update the Pake, because most of the logic is all in the web page to carry, basically, there will be no problem, increase the update can only meet the common package scenarios, for the packaged scenarios, the configuration will be more troublesome, and it seems that there is no need to update the thing, do you think so?

I would like it keeps itself up to date automatically, especially when Pake has major issue fix or fantastic feature released, instead of re-download it from github.
I encountered one issue where the message will accidentally send to ChatGPT when I hit enter key during inputting Chinese words. I know it will be fixed in the future, but don't know when, so it would be great that it will update it self with fix when I open it in next time on my computer.
I'm not sure how many this kind of issues over these, if it is a rare case, I'm ok with close this issue at this moment.


Finish language framework

[x] framework done
[x] English
[x] Chinese

Please review the code. I would merge it if there's no serious issues

Let's merge it for now.  We can submit another PR for other languages.


[url_launcher] plugin should use MessageUI on iOS for mailto: URLs

Use case
the
When launching a mailto: URL with the url_launcher plugin on iOS, the user leaves the Flutter app when mail app opens with a new email. It would be more elegant and beneficial to both the user and the developer if the url_launcher would use the MessageUI API (https://developer.apple.com/documentation/messageui) which opens an in app mail composer. This way the user finds himself back in the Flutter app after sending or cancelling his email message.
Proposal
Either add an option to url_launcher to launch in the mail app or an in app message composer or use the in app message composer as default (as this is probably what 99% of the Flutter devs want anyways).

Closing as out of scope for url_launcher; it's intended as a general purpose launcher. Specialized UI for specific use cases should be done via plugins targeting those use cases.


#Add Blog about DRL

closes #1613
This PR addresses the addition of a blog related to leveraging DRL's.
Please review and share the feedback.
Thank you!

@blackgirlbytes I have made the requested changes. Thanks for the eye-opening content ideas. Please review and share your feedback :-)


[FR] - Adding the logging module would be great :)

I'll will pull request this feature soon :smile:
It is important to have a generic way to log things thanks to the python logging module.

yeah, you are right

Done

#12


Doc: joining geocoding results back to input data

Prompted from @mixedlogit where they are using find_address_candidate() to do single address geocoding. The result includes an input_id. Here we need to illustrate how to join that back to the original input data.
This would be a good "tutorial"
CC @mmachir as we should probably have this on the doc site.

Alternatively we figure out a way to return an empty row from the geocoder but thats actually a lot more work than i think is worth it. We should have a tutorial on this and the doc page should make this very clear.
repro:
add <- readr::read_csv("https://github.com/R-ArcGIS/arcgisgeocode/files/15124731/data.csv")

single_line <- add$end

res <- find_address_candidates(single_line, max_locations = 1)

res[,"input_id"]

To do the joining:

add <- readr::read_csv("https://github.com/R-ArcGIS/arcgisgeocode/files/15124731/data.csv") |>
  dplyr::mutate(
    input_id = dplyr::row_number()
  )

# geocode
res <- find_address_candidates(single_line, max_locations = 1)

# join back
dplyr::left_join(add, res[, "input_id"])

yes! great. I already added this to the tutorial/blog I have drafted for batch geocoding but could add in an example for find_address_locations() too - or just mention that the same method can be used for each? (just joining on input_id instead of result_id?)


This version seems to have many unknown problems

Describe the bug
For example, sometimes the icon is not displayed, or the process does not exist in the task manager, but the notification icon still exists and can be clicked
Steps to reproduce the bug
No response
Expected behavior
No response
Screenshots
No response
NuGet package version
No response
Platform
No response
IDE
No response
Additional context
No response

For example, sometimes the icon is not displayed, or the process does not exist in the task manager, but the notification icon still exists and can be clicked

the process does not exist in the task manager, but the notification icon still exists and can be clicked

This usually indicates that you forgot to call Dispose() before exiting the application. Since WinUI does not have an application end event at the global level, you need to do it yourself

sometimes the icon is not displayed

To fix this I need a reproducible example


add a more explicit requirement/note that says clicintattr.mode can only be set to equal or lower privilege level than the currently running privilege level

just to log this correction:
Thank you again for noticing this issue. Yes, to ensure security, we definite need to “add a more explicit requirement/note that says clicintattr.mode can only be set to equal or lower privilege level than the currently running privilege level” as you suggested.  I will add this requirement in the next spec. release.
Hi,
I may have missed it, but I didn't see anything limiting code running in USER mode from changing an USER clicintattr.mode from USER to MACHINE.
I see that USER mode can't read/modify clicintattr interrupts that are already set to machine or supervisor,

In M/S/U harts, where cliccfg.nmbits = 2, if clicintattr[i].mode is set to U-mode (bits 6 and 7 are clear), then interrupt i is visible in the U-mode region.

but I didn't see anything saying user mode code can't change a user interrupt clicintattr.mode from user to machine.   this statement below in the S-Mode CLIC regions implies that this shouldn't be allowed:

This allows the supervisor region to be used to selectively configure the interrupt as S-mode or U-mode.

Since it would be a security hole if it was accidentally allowed, can we add a more explicit requirement/note that says clicintattr.mode can only be set to equal or lower privilege level than the currently running privilege level?

should we also add a note that CLICCFG can only be modified by m-mode?  it seems dangerous to let s/u-mode be able to modify it.

in draft 20200423: in section 3.6 CLIC Interrupt Attribute, this note was added to the spec:
For security purpose, the mode field can only be set to a privilege level that is equal to or lower than the currently running privilege level.  This closes the first issue.
The question of what modes can modify CLICCFG is discussed in issue #57.
closing this issue.


Update searchParameterFilter change from 2.x

Previously, when you configured a searchParamterFilter for a resource type, that filter implicitly included search paramters defined on the Resource type.
For example, an entry like
		"searchParameterFilter": {
			"Device": [
				"patient",
				"organization"
			],

would only allow you to search on patient and organization search parameters, not _id and _lastUpdated.
In the new implementation, to exclude _id and _lastUpdated search params, you'd need to create an entry with a key of "Resource":
		"searchParameterFilter": {
			"Resource": [
			],

and there is no way to exclude them from a specific resource type.
We need to fix the documentation to reflect this change.

PR https://github.com/IBM/FHIR/pull/295


mod+poolscript: bump lnd compile time dependency to v0.18.4-beta

Depends on https://github.com/lightningnetwork/lnd/pull/8960.
Depends on https://github.com/lightninglabs/lndclient/pull/192.
Pull Request Checklist

[ ] LndServices minimum version has been updated if new lnd apis/fields are
used.

Bumped to lndclient v0.18.4-0 which references https://github.com/lightningnetwork/lnd/pull/9183 (commit https://github.com/lightningnetwork/lnd/pull/9183/commits/ca3bde901eb86638256a72fd17b75ce5951d119f) which should remain stable.


Include other users in a ticket

This is a feature request, or a question as to how I could incorporate this myself; including other users in a ticket.
A user opens a ticket requesting access to something.
The agent needs to check with their supervisor, and so needs to add them to the ticket to comment about it.
The supervisor is then included in the ticket and can access it the same as a user.
Could this be added as a possible future feature?
If you have an idea of how this could be added now at a high level, then let me know and I can try implement it.

Agents and admins can have access to all tickets, check the agent_restrict option in configuration -> permissions.


Wiggle: make wasmtime an optional dependency

Feature
Wiggle will forcely depend on wasmtime in future releases, according to #5137 . However, recently wasmi begins support for WASI with wiggle (https://github.com/paritytech/wasmi/pull/557). We need to avoid importing wasmtime when using it. With the current latest version 2.0.x, it is easy to control with features, but this will not work in future releases.
Therefore I suggest making wasmtime an optional dependency of wiggle again.
Benefit
Wasmtime is a de facto standard of WASM. It provides many standard implementations and benefits many other projects in the community. Cranelift is a good example, it is not only a JIT of wasmtime, but also a codegen of many frontends. If wiggle provide an option to remove wasmtime dependency, it (and wasi-common) could be another standard implementation of WASI.
Implementation
I'm aware of the huge work to make a dependency optional, but I think it worth. If there are no prettier attempts, reverting the commit might be a choice.

You might want to read the thread at https://bytecodealliance.zulipchat.com/#narrow/stream/219900-wasi/topic/wasi-common.3A.20General.20WASI.20implementation.3F

Personally I can see the value in having an implementation of a host API decoupled from the wasm engine it's running on, but such an implementation requires a fair bit of macro-trickery to keep it maintainable. The wiggle of old, as you've found, did this as it was multiplexing the Lucet and Wasmtime runtimes. Nowadays, however, the design of wasi-common is evolving, especially with an upcoming implementation of the preview2 snapshot of WASI. With all the shuffling going on we need to focus on the needs of Wasmtime and the component model right now. Once the dust settles I think it would be reasonable to look at this issue again and see where things are at and whether it can be reasonably supported. For now though I'm going to close this as this was something intentionally removed (with more information on Zulip as well in that linked thread)


Preset chart: "Number of commits per month breakdown per repo" legend taking too much space

On medium-sized orgs (e.g. src-d, docker), the legend takes all space. It is possible to remove the legend, and the tooltip is still visible.
So fat the tooltip works for me on Google Chrome, although it's not showing up in Firefox. I guess it's better that at least it shows up properly in Chrome?
Also minor thing, the title should say "repository", not "repo", for consistency.

Covered by https://github.com/src-d/sourced-ui/pull/158

pr wasn't merged and can't be merged as it is

fixed by #160


Can I refer this repository in my repository?

It is a great repository. Can I refer to this repository and the corresponding paper in my repository (actually I have referred them in LCF-ABSA, but forgot to ask for permission)

Thanks, I'm glad our code is helpful to you.
I hereby give you permission to refer to this repository.


Update tests to account for changes in test bucket

Context
Tests are currently failing because the test bucket has undergone changes to structure. This was done in preparation of adding AnnData for testing. We need to update our tests to account for these changes.
Solution or next step

Identify changes and implement updates to account for changes to the test bucket structure

Closing with #458


Just to be sure to understand

Hello !
So you can use local CORAL device to do the job done by deepstack with CPU (on my raspberry)  ?
Thanks !

This is correct.


Deploy moon Helm with a values.yaml

Hi,
I need to deploy moon with a config file.
Actual deployment with helm: helm upgrade --install -n moon moon aerokube/moon
What I need: helm upgrade --install -n moon moon aerokube/moon -f values.yaml
The only way to set this variables is manually as follows:
helm upgrade --install --set=moon.enabled.resources=false -n moon moon aerokube/moon
This method is untenable for me. Thanks in advance.
Regards,

@Juancarlosmartin10 helm update --install -f values.yaml ....

@Juancarlosmartin10 -- Like @vania-pooh says and like you said in your post: helm update --install -f your_values_file_name_here.yaml ....
Simply create a new file with your favorite editor, put your yaml key/values that you want to set in that file, then use helm with -f option.
Example:
my_values.yaml:
moon:
  enabled:
    resources: false

run the command: helm upgrade --install -n moon moon aerokube/moon -f my_values.yaml

This seems to be resolved and does not relate to Moon itself.


The label position gets disturbed when user opens the chart in new tab and select the bubble

SEVERITY:  Major
MODULE: Bubble Chart
PLATFORM:  Windows 7 / Chrome 49.0
STEPS TO REPRODUCE:

Navigate to the URL: http://www.gapminder.org/tools/mountain
Scroll down the page and right click on bubble chart
Click open in new tab
Don’t switch the tabs for 7-10 seconds
Now switch the tab and open the other tab
Click on bubble

ACTUAL RESULTS:
The labels detached from the bubbles when user select any bubble after opening the chart in new tab
EXPECTED RESULTS:
The labels should not detached from the bubbles
SCREENSHOT / GIF:
http://g.recordit.co/CEQuShIudQ.gif

Fixed


Add media components and data|code|media subtypes

Description of the Problem / Feature

Extend Component type models to support Media and more subtypes for existing models

@shadrach-tayo can you explain why this change is necessary and if product still wants to move forward with this / what feature does this enable?

@shadrach-tayo can you explain why this change is necessary and if product still wants to move forward with this / what feature does this enable?

To have more types exposed as we support more content types

@shadrach-tayo Is this stale/irrelevant as of the recent work of @Electromorphous ?

@shadrach-tayo closing this unless it's still relevant?


Refactor to class

This PR moves the main logic of this library from the singleton class and to a separate PostgresDocker class, where it is easier to test and maintain. Most significantly, it also introduces a new calling API to the singleton with a map instead of an argument list, which means that it can be invoked like so:
postgres.withDb(port: 6667, version: '9.6', dbName: 'foo') {
  sh 'run_tests.py'
}

ptal @AbletonDevTools/gotham-city, thanks!

@AbletonDevTools/gotham-city actually, please hold off on reviewing this (just on the chance that someone has started looking at it). I have some more WIP that I would like to add to this PR rather than creating a bunch more PRs to review.

a4f75e2b40ca314c8944c74001136798542a7660 is now doing two things.

@ala-ableton I've rebased the branch and made the API changes as we discussed. Mind taking another look?

7b67260ef2d95119fc5486e57cd78337d8134224's commit message contains "instead" twice.

b4dbe43926d80136b337d7f4f855e1f0f134566c's commit message is advertising tests that I can't find...

@ala-ableton Ah yeah, that references the commit which I removed from this branch to simplify the PR. I'll fix the message and we'll worry about the tests later.

@ala-ableton Thanks for the careful review! 🎉


Support JWT secret key from fields other than iss

This patch adds support for a configurable JWT secret key field,
defaulting to 'iss'.

Nice, thank you!

@thibaultCha, I have a follow-up to this patch to add support for Base64-encoded secrets (https://github.com/ryanbreen/kong/pull/1).
If I submit that patch against next, you're going to get some painful merge conflicts since jwt-secret-key-field and jwt-secret-base64 touch a lot of adjacent lines.  It seems cleaner to propose it as a commit extending this branch, so that's what I've done.
How would you prefer to see such a PR proposed?

Very nice! Here is good for me as a second commit (with tests)!

Cool, merged onto this PR.
As background, Auth0 generates JWTs signed by a key that is a Base64-encoded binary blob (witness the "secret base64 encoded" checkbox at jwt.io). This patch adds support for such secrets while preserving the status quo by default.
I believe this patch is necessary: decoding the secret provided by Base64 and attempting to use it in its raw form is a non-starter: round-tripping it through UTF-8, as would be necessary using curl in a terminal to pass these secrets to Kong APIs, will perturb the byte stream and lead to spurious signature mismatches.

Thank you for the patch! Very much appreciated. I will review shortly. In the meantime, could you get rid of the merge commit? That'd be great

Cool, done.

Thank you!


Enhancement: Make cache respect HTTP cache headers

There are multiple cache control headers sent as part of an HTTP response. It would be nice if cache expiration was controlled by those headers by default, and then override using the existing mechanisms.

Hi, Thanks for your advice.
This sounds good, I'll think about it in the next release.
Thank you again.

Hello
It's supported in 0.2.4
Usage
// buildCacheOptions:
options: buildServiceCacheOptions()
// or: set maxAge null or don't set it.
options: buildConfigurableCacheOptions()

Logic
only if maxAge == null, it will try to get maxAge and maxStale from response headers. And if maxStale is setted before, it'll not be overrided by header's value.

@hurshi How to define "reverted" behavior, i.e. always take maxAge and maxStale from response headers as primary, and only if they are not provided by the service then use passed "fallback" maxAge and maxStale?

@hurshi Currently defaultMaxAge is not working, because DioCacheManager method has to be fixed:
Future<bool> _pushToCache(Response response) {
    RequestOptions options = response.request;
    Duration maxAge = options.extra[DIO_CACHE_KEY_MAX_AGE];
    Duration maxStale = options.extra[DIO_CACHE_KEY_MAX_STALE];
    if (null == maxAge) {
      _tryParseHead(response, maxStale, (_maxAge, _maxStale) {
        maxAge = _maxAge;
        maxStale = _maxStale;
      });
    }

    // FIX
    if (null == maxAge) {
        maxAge = _manager?._config.defaultMaxAge;
        maxStale = _manager?._config.defaultMaxStale;
    }
    // End of FIX

    if (null == maxAge) return Future.value(false);


Add amountMicros to Price interface

Motivation / Description
This adds a new amountMicros field to Price. It keeps the previous amount field but deprecates it.
Need to hold until the backend part of this is deployed.
Changes introduced
Linear ticket (if any)
Additional comments

Confirmed it works as expected and tests pass after deploying backend changes :)


Add DKIM signature to sent email

Email some times gets eating in transit. Adding DKIM signature might aleviate this problem

https://nodemailer.com/dkim/


[Snyk] Security upgrade node from 18.15-bullseye-slim to 18.17.1-bullseye-slim

This PR was automatically created by Snyk using the credentials of a real user.Keeping your Docker base image up-to-date means you’ll benefit from security fixes in the latest version of your chosen image.
Changes included in this PR

Dockerfile

We recommend upgrading to node:18.17.1-bullseye-slim, as this image has only 52 known vulnerabilities. To do this, merge this pull request, then verify your application still works as expected.
Some of the most important vulnerabilities in your base image include:

Severity
Priority Score / 1000
Issue
Exploit Maturity

621
HTTP Request Smuggling SNYK-UPSTREAM-NODE-5741793
Proof of Concept

614
Prototype Pollution SNYK-UPSTREAM-NODE-5741794
No Known Exploit

614
Denial of Service (DoS) SNYK-UPSTREAM-NODE-5741889
No Known Exploit

514
Buffer Underwrite (Buffer Underflow) SNYK-UPSTREAM-NODE-5741900
No Known Exploit

514
Privilege Escalation SNYK-UPSTREAM-NODE-5756501
No Known Exploit

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Prototype Pollution

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
101

Relevant Lines:
101

💛  - Coveralls


Create env for Canary team

Need
A separate env for the canary team to develop in

long term we want them to have a branch in cellxgene, when updates are merged into this branch it should kickoff a redeploy of canary-cellxgene without any user input

Notes from work so far

Initial approach create a new env via fogg however
A new fogg env is also massively heavy weight in that it can require changes to add more bastion servers to your blessclient and require everyone on the team (and everyone on the shared-infra team) to regenerate their SSH config. And requires new IP space to be reserved globally.

Second approach - trying to create a new cellxgene component in the dev env however

It looks like the hosted-cellxgene Terraform module made some pretty bad assumptions that there is only one such component per env. (i.e. none of the generated names use var.service in them), that are basically impossible to fix now without full redeployment of everything.

Paired with @mbarrien on a slight hack, changing the env passed in via the variables.tf file to canary and making some updates to the cert.tf. See https://github.com/chanzuckerberg/single-cell-infra/pull/354
Updated/set the secrets in secret manager

db creds
hosted-cellxgene-canary
sentry

In progress

updating the deploy script to include the canary env
setting up sentry (req of the deployment script)

Need to manually fix cloudfront. Default behavior for canary-cellxgene.dev.single-cell.czi.technology should point to hosted-cellxgene-canary origin (instead of data-portal)


Feedback from Marco Polo

Hi guys, I found your dashboard to be very interesting! I would have really loved to see information from every country (this is not a correction; it is just a personal comment). I do think it was very clever to combine the Big Mac Index with the minimum wage of every country to estimate purchasing power. However, for the general public inflation adjustment might be unnecessary as the index that you developed already tells them how many Big Macs, they can buy in one hour (maybe you could show how many hamburgers could be bought in a day/8 hours).
Having said the above, here is my feedback:
•	Regarding the colour fill of the map, I understand that the number of Big Macs is expressed as a continuous value (example: 2.4554654). Although the map let’s the user easily compare which country has a darker “colour”, I think that it may be better if you used a color scale with a countable number of levels (i.e. creating intervals like 0-1, 1-2, 2-3, 3-4, or as many as you find appropriate). And give each interval a different shade of colour either the ones that you are using, or a single colour (i.e. white, light blue, blue, dark blue…). Some information (decimals of a Big Mac) may be lost, but the user would also be able to visually identify which countries belong to the same interval, meaning that they would have a similar purchasing power.
•	Now, focusing on the colour scheme of the map, some countries are small, and it is hard to tell whether they are part of the study case or not. For example, Costa Rica and Israel almost go unnoticed. Maybe highlighting the contour of the countries that are not currently selected in black would help them be more visible.
•	The chart at the bottom of the app mentions “wage” only. To be consistent with the bar chart, I believe it would be a good idea to specify we are looking at an “hourly” wage as well. In some countries, minimum wage is understood as minimum “daily” wage. Since this chart plots wages in the local currency of the selected country, some users may get confused if this is not specified.
•	Since the radio buttons and the graph at the bottom of the app are only visible if you scroll down, maybe it would be a good idea to have multiple pages. You could keep the slider and the dropdown at the top of the app, and then put the next 3 graphs in one page, while the radio buttons and the bottom graph in a second page.
•	I know this doesn’t have to do with the dashboard itself, but I had problems when trying to run the app. I had to install dash_vega_components and geopandas.
(bigmac_12) Marcony1@MSI ~/OneDrive - Fundacion Universidad de las Americas Puebla/Documents/MDS/Block 6/DSCI 532/DSCI-532_2024_12_bigmac (main)
$ python -m src.app
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\Marcony1\OneDrive - Fundacion Universidad de las Americas Puebla\Documents\MDS\Block 6\DSCI 532\DSCI-532_2024_12_bigmac\src\app.py", line 4, in <module>
    import dash_vega_components as dvc
ModuleNotFoundError: No module named 'dash_vega_components'

(bigmac_12) Marcony1@MSI ~/OneDrive - Fundacion Universidad de las Americas Puebla/Documents/MDS/Block 6/DSCI 532/DSCI-532_2024_12_bigmac (main)
$ python -m src.app
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\Marcony1\OneDrive - Fundacion Universidad de las Americas Puebla\Documents\MDS\Block 6\DSCI 532\DSCI-532_2024_12_bigmac\src\app.py", line 13, in <module>
    import geopandas as gpd
ModuleNotFoundError: No module named 'geopandas'

Overall, the dashboard looks great. It just needs some polishing, but it really makes you want to know more and explore. Cheers!

[ ] Data Visualization - Map Color Scale:

Task: Redesign the color fill of the map by using a color scale with defined intervals (e.g., 0-1, 1-2, 2-3, 3-4 Big Macs) instead of a continuous scale, to simplify visual comparison and enhance user understanding.
Objective: Enhance user ability to visually categorize countries with similar purchasing powers, while making the map easier to interpret.

[ ] UI Enhancement - Map Visibility:

Task: Highlight the contours of smaller countries, like Costa Rica and Israel, to make them more visible on the map, regardless of whether they are currently selected.
Objective: Ensure that all countries, regardless of size, are easily identifiable on the map.

[ ] Consistency Improvement - Wage Description:

Task: Specify "hourly" before "wage" in all relevant charts to clarify that the wages are hourly, avoiding confusion with daily or monthly wages.
Objective: Provide clear and consistent information to accommodate global users with different understandings of wage contexts.

[ ] Technical Issue - Dependency Management:

Task: Ensure all necessary libraries, like dash_vega_components and geopandas, are included in the project’s installation instructions or automatically handled via a setup script or dependency file.
Objective: Facilitate smooth setup and operation of the dashboard by resolving dependency issues and providing clear setup documentation.