text:
Draft Census schema for support of Visium and Spatial data

See parent Epic for further information.
https://github.com/chanzuckerberg/single-cell/issues/644
See current draft for spatial support in SOMA https://docs.google.com/document/d/1S48pD5XTzDcaLGlq6YVYCoUjptR93PHHHmG79TiJzsA/edit
TODOs

[ ] Change all version of datasset schema to 5.1.0
[ ] Update ./census_accepted_assays.csv to include:

[ ]  EFO:0010961 - Visium Spatial Gene Expression
[ ]  EFO:0030062 - Slide-seqV2
[ ]  EFO:0009920 - Slide-seq maybe?

Schema changes

Version: 2.1.0
Last edited: April, 2024.

Data included
All datasets included in the Census MUST be of CELLxGENE dataset schema version 5.1.0. The following data constraints are imposed on top of the CELLxGENE dataset schema.

Editor's note: do this change in all other places where the CELLxGENE dataset schema version is mentioned. For simplicity all other changes are omitted here.

Assays
[...]
The Census MUST include all cells from the list of accepted assays.
These assays were selected with the following criteria:

Only children "EFO:0002772" or "EFO:0010183" are shown as this is a constraint imposed by the CELLxGENE dataset schema >3.0.0.

Must measure gene expression via RNA sequencing.
Can be done at the single-cell level.
May include nascent or elongating RNA data.
May be targeted to specific genes in an assay-specific manner.
May include spatial data only from Visium or Slide-seq.
Doesn’t measure spatial data from other assays,
Doesn't measure other non-RNA molecules concurrently.
Doesn’t require author metadata for correct interpretability (e.g. perturbation-based technologies).
Doesn’t intend to primarily measure RNA structure, RNA fusions, RNA modifications, or RNA interactions.
Doesn’t intend to primarily measure non-mRNA (e.g. tRNA, rRNA, small RNAs).
Doesn’t intend to primarily measure viral RNA.
Doesn’t intend to primarily measure introns.
Doesn’t do ribosome profiling.

Spatial Assays
Only observations from Visium and Slide-seq assays MUST be included in Census, as indicated in the list of accepted assays.  Per the CELLxGENE dataset schema, datasets with spatial observations can be identified with the presence of the slot uns["spatial"]. For these assays, only observations from datasets that contain "one Space Ranger output for a single tissue section" MUST be included in Census.
The full logic above can be asserted as follows:

If a dataset has the slot uns["spatial"] and True in uns["spatial"]["is_single"], then all observations MUST be included.
If a dataset has the slot uns["spatial"] and False in uns["spatial"]["is_single"], then all observations MUST be excluded.

Census metadata – census_obj["census_info"]["summary"] – SOMADataFrame
[...]

Total number of cells or spatial spots included in this Census build:

label: "total_cell_count"
value: Cell count

Unique number of cells or spatial spots included in this Census build (is_primary_data == True)

label: "unique_cell_count"
value: Cell count

Data encoding and organization
[...]
Census Non-Spatial Data – census_obj["census_data"][organism] – SOMAExperiment
Non-spatial data for Homo sapiens MUST be stored as a SOMAExperiment in census_obj["census_data"]["homo_sapiens"].
Non-spatial data for Mus musculus MUST be stored as a SOMAExperiment in census_obj["census_data"]["mus_musculus"].

Feature dataset presence matrix – census_obj["census_data"][organism].ms["RNA"]["feature_dataset_presence_matrix"] – SOMASparseNDArray
[...]
Census Spatial Data – census_obj["census_spatial_data"][organism] – SOMAExperiment
Only Visium and Slide-seq are supported for spatial data. See the "assays included" section above.
Spatial data for Homo sapiens MUST be stored as a SOMAExperiment in census_obj["census_spatial_data"]["homo_sapiens"].
Spatial data for Mus musculus MUST be stored as a SOMAExperiment in census_obj["census_spatial_data"]["mus_musculus"].
For each organism the SOMAExperiment MUST contain the following:

Cell metadata – census_obj["census_spatial_data"][organism].obs – SOMADataFrame
Non-spatial data  –  census_obj["census_spatial_data"][organism].ms – SOMACollection. This SOMACollection MUST only contain one SOMAMeasurement in census_obj["census_spatial_data"][organism].ms["RNA"] with the following:

Matrix  data –  census_obj["census_spatial_data"][organism].ms["RNA"].X – SOMACollection. It MUST contain exactly two layers:

Count matrix – census_obj["census_spatial_data"][organism].ms["RNA"].X["raw"] – SOMASparseNDArray
Normalized count matrix – census_obj["census_spatial_data"][organism].ms["RNA"].X["normalized"] – SOMASparseNDArray

Feature metadata – census_obj["census_spatial_data"][organism].ms["RNA"].var – SOMAIndexedDataFrame
Feature dataset presence matrix – census_obj["census_spatial_data"][organism].ms["RNA"]["feature_dataset_presence_matrix"] – SOMASparseNDArray

Spatial data  –  census_obj["census_spatial_data"][organism].spatial – SOMACollection.

Summary data frame of Scenes  –  census_obj["census_spatial_data"][organism].spatial.scenes – SOMADataFrame
Spatial Scenes with spatial data  –  census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid]  – SOMAScene.  There will be as many as Spatial Scenes as  spatial datasets. EachSOMAScene MUST contain the following:

A data frame with raw spatial coordinates  –  census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid]["obs_locations"]  – SOMADataFrame. If there is an image in this SOMAScene the coordinates MUST correspond to the pixel integer representation of the image.
A spatial experiment collection –  census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].exp – SOMACollection. This SOMACollection:

MUST contain a positions array – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].exp["positions"] – SOMASparseSpatialArray. This will contain the spatial array positions for each observation, the geometry points associated to them, and additional metadata.
MAY contain a full resolution image  – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].exp["fullres_image"] – SOMAImageNDArray.
MAY contain a high resolution image  – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].exp["highres_image"] – SOMAImageNDArray.

Matrix Data, count (raw) matrix – census_obj["census_spatial_data"][organism].ms["RNA"].X["raw"] – SOMASparseNDArray
Same as non-spatial data. See the corresponding section here.
Matrix Data, normalized count matrix – census_obj["census_spatial_data"][organism].ms["RNA"].X["normalized"] – SOMASparseNDArray
Same as non-spatial data. See the corresponding section here.
Feature metadata – census_obj["census_spatial_data"][organism].ms["RNA"].var – SOMADataFrame
Same as non-spatial data. See the corresponding section here.
Feature dataset presence matrix – census_obj["census_spatial_data"][organism].ms["RNA"]["feature_dataset_presence_matrix"] – SOMASparseNDArray
Same as non-spatial data. See the corresponding section here.
Cell metadata – census_obj["census_spatial_data"][organism].obs – SOMADataFrame
Same as non-spatial data. See the corresponding section here.
Additionally the following column MUST be included to the SOMADataFrame:

Column
Encoding
Description

scene_soma_join_id
int
The corresponding soma_joinid of census_obj["census_spatial_data"][organism].spatial.scenes

Important note: The following spatial obs columns from the CELLxGENE dataset schema MUST NOT be included in this SOMADataFrame

Column
Encoding
Description

array_col
As defined in CELLxGENE dataset schema

array_row

in_tissue

Summary data frame of Scenes  –  census_obj["census_spatial_data"][organism].spatial.scenes – SOMADataFrame
Scenes metadata must be MUST be encoded as a SOMADataFrame, each row corresponds to single Scene which in turn corresponds to a single spatial dataset, and the following columns:

Column
Encoding
Description

dataset_id
string
The dataset_id of the dataset corresponding to spatial datasets from census["census_info"]["dataset_id"]

assay
string
The assay as defined in the CELLxGENE dataset schema.

assay_ontology_term_id
string
The assay ontology term ID as defined in the CELLxGENE dataset schema.

soma_dim_0
categorical
MUST be "X"

soma_dim_1
categorical
MUST be "Y"

library_id
string
If Visium ("EFO:0010961") it MUST be the key value that is not "is_spatial" from the dictionaryuns["spatial"]  as defined in the CELLxGENE dataset schema. Otherwise it MUST be "None".

tissue_hires_scalef
string
If Visium ("EFO:0010961") it MUST be the value in uns["spatial"][library_id]['scalefactors']['tissue_hires_scalef']  as defined in the CELLxGENE dataset schema. Otherwise it MUST be "None".

spot_diameter_fullres
string
If Visium ("EFO:0010961") it MUST be the value in uns["spatial"][library_id]['scalefactors']['spot_diameter_fullres']  as defined in the CELLxGENE dataset schema. Otherwise it MUST be "None".

Raw spatial coordinates of a Scene  –  census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid]["obs_locations"]  – SOMADataFrame.
For each observation in each Scene, the raw spatial coordinates encoded as a SOMASparseSpatialArray. If there is an image in this SOMAScene the coordinates MUST correspond to the pixel integer representation of the image.  Each row corresponds to an observation with the following columns:

Column
Encoding
Description

X
float
It MUST be the corresponding value in the first column of obsm["spatial"]. As defined in the CELLxGENE dataset schema.

Y
float
It MUST be the corresponding value in the second column of obsm["spatial"]. As defined in the CELLxGENE dataset schema.

Positions array of a Scene– census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].exp["positions"] – SOMASparseSpatialArray
scene_soma_joinid MUST correspond to the values soma_joinid in census_obj["census_spatial_data"][organism].spatial.scenes.
For each observation in each Scene, spatial array positions, the geometry points associated to them, and additional positional metadata  MUST be encoded as a SOMASparseSpatialArray.  Each row corresponds to an observation with the following columns:

Column
Encoding
Description

X
float
It MUST be the corresponding value in the first column of obsm["spatial"]. As defined in the CELLxGENE dataset schema.

Y
float
It MUST be the corresponding value in the second column of obsm["spatial"]. As defined in the CELLxGENE dataset schema.

soma_geometry
float
Radius of points: dimeter/2. If Visium ("EFO:0010961") diameter MUST be uns.["spatial"][library_id]['spot_diameter_fullres'].  As defined in the CELLxGENE dataset schema. Otherwise TBD-TODO (else for Slide-seq it should be  0.003% of the radius occupied by the full cloud of points).

array_row
float
If Visium ("EFO:0010961") it MUST be the corresponding value in obs.["array_row"]. Otherwise it MUST be the corresponding value in the first column of obsm["spatial"].  As defined in the CELLxGENE dataset schema.

array_col
float
If Visium ("EFO:0010961") it MUST be the corresponding value in obs.["array_col"]. Otherwise it MUST be the corresponding value in the second column of obsm["spatial"].  As defined in the CELLxGENE dataset schema.

in_tissue
bool
If Visium ("EFO:0010961") it MUST be the corresponding value in obs.["in_tissue"]. Otherwise it MUST always be True.

Full resolution image of a Scene  – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].exp["fullres_image"] – SOMAImageNDArray.
The full resolution image of a Visium ("EFO:0010961") scene MUST be encoded as a SOMAImageNDArray. Other assays MUST NOT have images.
Value: the image from uns["spatial"][library_id]['images']['fullres'] as defined in the CELLxGENE dataset schema
High resolution image of a Scene  – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].exp["highres_image"] – SOMAImageNDArray.
The full resolution image of a Visium ("EFO:0010961") scene MUST be encoded as a SOMAImageNDArray. Other assays MUST NOT have images.
Value: the image from uns["spatial"][library_id]['images']['hires'] as defined in the CELLxGENE dataset schema

First iteration, very likely to change
https://drive.google.com/file/d/1_A8YlZsVZrDrt_hhjHIYQ_jVw0M5b_eP/view?usp=sharing

Second iteration
census_schema_spatial_v2.pdf

Third iteration (changes reflected in text as of today).
census_schema_spatial_v3.pdf

census_schema_spatial_v4.pdf

@pablo-gar - Some questions/comments here about the differences in the diagram of census_scheme_spatial_v4.pdf and the descriptions of the data fields and types in the text above:
Does soma_joinid in scenes dataframe correspond to soma_joinid in experiment.obs dataframe? That is, the two references to soma_joinid are actually talking about a particular observation? If so, should scenes dataframe just contain an scene_id instead of soma_joinid? I say this because experiment.obs already has a scene_id that ties each observation to a Scene and the scenes dataframe seems to be about metadata about each scene and therefore I don't see why it should contain anything about a particular observation like obs_joinid. From what I understand, a scene corresponds to multiple observations so scene metadata dataframe probably should not contain anything about obs_joinid other than perhaps num_observations or something like that?
soma_dim_0 and soma_dim_1 are defined as categoricals that contain the name of the "X" and "Y" spatial coordinate names. If that is the case then soma_dim_0 and soma_dim_1 are weird names. Maybe something like spatial_X_coord_name and spatial_Y_coord_name or something like that?

Spatial Scenes with spatial data – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid] – SOMAScene. There will be as many as Spatial Scenes as spatial datasets

Should .spatial[scene_soma_joinid] be replaced with .spatial[scene_id] where scene_id is specified in the experiment.obs dataframe (and possibly in scenes dataframe)? Also the text above describing the columns of scenes dataframe doesn't quite match with the columns listed in the v4 diagram and one or the other needs updating

A data frame with raw spatial coordinates – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid]["obs_locations"] – SOMADataFrame

There is no obs_locations in the v4 diagram anymore. Should this be removed from the text description above?

MUST contain a positions array – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].obsl["positions"] – SOMASparseSpatialArray. This will contain the spatial array positions for each observation, the geometry points associated to them, and additional metadata.

According the v4 diagram, this is a SOMAGeometryNDArray. Should the text should be modified? Also even in the v4 boxed diagram, positions is also specified as a SparseSpatialArray which is confusing. I also think the text description about the fields of positions should be updated since it doesn't match with v4 diagram description. For instance the text contains a column called in_tissue that is not in the v4 diagram
Full resolution image of a Scene and High resolution image of a Scene are specified as SOMAImageNDArray in the text above but the v4 diagram calls them as DenseSpatialArray. This needs updating

@pablo-gar - I noticed a reference to fiducial_diameter_fullres in the PDF above. This is unsupported by the dataset schema, per earlier conversations. Please see #cell-sci-modalities.

@prathapsridharan answering your questions

Does soma_joinid in scenes dataframe correspond to soma_joinid in experiment.obs dataframe? That is, the two references to soma_joinid are actually talking about a particular observation? If so, should scenes dataframe just contain an scene_id instead of soma_joinid? I say this because experiment.obs already has a scene_id that ties each observation to a Scene and the scenes dataframe seems to be about metadata about each scene and therefore I don't see why it should contain anything about a particular observation like obs_joinid. From what I understand, a scene corresponds to multiple observations so scene metadata dataframe probably should not contain anything about obs_joinid other than perhaps num_observations or something like that?

No, soma_joinid in scenes datafame DOES NOT correspond to soma_joinid in experiment.obs dataframe. If that was understood from the schema text I should improve it.

soma_dim_0 and soma_dim_1 are defined as categoricals that contain the name of the "X" and "Y" spatial coordinate names. If that is the case then soma_dim_0 and soma_dim_1 are weird names. Maybe something like spatial_X_coord_name and spatial_Y_coord_name or something like that

I'll bring this proposal to Julia and Aaron. I don't have an strong opinion on it.

Spatial Scenes with spatial data – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid] – SOMAScene. There will be as many as Spatial Scenes as spatial datasets

Should .spatial[scene_soma_joinid] be replaced with .spatial[scene_id] where scene_id is specified in the experiment.obs dataframe (and possibly in scenes dataframe)? Also the text above describing the columns of scenes dataframe doesn't quite match with the columns listed in the v4 diagram and one or the other needs updating

I'm proposing to unify everything via the soma_joinid of the .spatial["scenes"] DataFrame, this effectively acts as a scene ID, so adding yet another scene_id field seems redundant to me. Do you I'm missing something here?

A data frame with raw spatial coordinates – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid]["obs_locations"] – SOMADataFrame

There is no obs_locations in the v4 diagram anymore. Should this be removed from the text description above?

Yes, thanks for the catch! I will remove it

MUST contain a positions array – census_obj["census_spatial_data"][organism].spatial[scene_soma_joinid].obsl["positions"] – SOMASparseSpatialArray. This will contain the spatial array positions for each observation, the geometry points associated to them, and additional metadata.

According the v4 diagram, this is a SOMAGeometryNDArray. Should the text should be modified? Also even in the v4 boxed diagram, positions is also specified as a SparseSpatialArray which is confusing. I also think the text description about the fields of positions should be updated since it doesn't match with v4 diagram description. For instance the text contains a column called in_tissue that is not in the v4 diagram
Full resolution image of a Scene and High resolution image of a Scene are specified as SOMAImageNDArray in the text above but the v4 diagram calls them as DenseSpatialArray. This needs updating

Yes, thanks for catching all of these!

@brianraymor Thanks for the catch I've fixed it.

census_schema_spatial_v5.pdf

Sixth iteration:

array_col, array_row, in_tissue moved to obs
Updated structure to .spatial to adhere to latest changes in TileDB-SOMA
Added var_scene and obs_scene

census_schema_spatial_v6.pdf

Seventh iteration:

Removed spot_diameter_fullres from census_obj["census_spatial_data"][organism].spatial[scene_id].obsl["loc"]
Removed summary data frame of Scenes  –  census_obj["census_spatial_data"][organism].spatial.scenes – SOMADataFrame

Eighth iteration:

Updated details of img collection to match the latest changes in TileDB-SOMA for MultiscaleImage
Updated editorial changes to match all image requirements.

census_schema_spatial_v8.pdf

authors: brianraymor pablo-gar prathapsridharan

repo: chanzuckerberg/cellxgene-census


text:
Parsing Refactor

This one's a big one but I am very pleased with how it came out. Still adding some tests but I wanted to flag this as ready for review so we can get the ball rolling.
This fixes some problems in the codebase:

The codebase had a lot of custom tsv parsing. This is a problem because that module handles edge cases nicely.
The codebase had multiple reusable custom parsers for the same file types. In the case of iterate_m8 it contained specific business logic in addition to parsing which wasn't immediately clear.
There were numerous examples of ad-hoc parsing inside particular functions, despite having parsers for them implemented. This increased the complexity of those functions dramatically and it is unclear what file format they expect.
In general, it was extremely difficult to know the format of any file in advance. There were many variants of each file and the schemas were not necessarily strictly enforced and it was unclear why. It was very challenging to determine which fields you could depend on and which you couldn't.
The old schema system relied on dictionary key order, which technically works but isn't standard
There were numerous examples of list order and length being used to hold different data. This made it difficult to track which data was in a particular data structure when it was passed across and around files.
Refactoring parsers to a different file format would have been an extreme challenge due to how heterogenous everything was. (It was a big challenge even with the same format)

There were probably other issues as well but these are the major ones. I know this was a big lift but I really felt this needed to change.
To solve this problem I created a wrapper around python's csv parsers to add support for schemas. I would like to standardize the file formats, add headers, and explicitly add null values in any missing fields but I wanted to leave the file formats themselves unchanged here. So I needed a solution for multiple slightly different schemas. To address this I created a system of different schema variants. So instead of making every value optional, as we did before in some cases, rows must now conform to one of a set of variants. This means we can guarantee the presence of certain values in certain situations, and it is easier to reason about the types of files we may encounter. You can read more about it in the parsing.py file.
This does make the code a bit slower. However, I firmly believe this is worth it. The python code is usually not the bottleneck of our pipeline runs. I think reliable maintainable code is the priority here. In the future, we want to replace this stuff anyway with formats and tools that will probably be even more performant. I think this is an important step on the path to replacement because now all of the call sites are obvious.
Testing
Testing this is a bit of a challenge. The existing logic was not tested or fully documented so the challenge is to ensure that we are producing identical results (this is arguably even more important than producing correct results). Fortunately, our current level of testing offers at least some basic assurances (as you can see by the many failures...). This ensures that everything at least works and produces roughly the same results.
I've also run the pipeline with and without this change and done a detailed comparison of outputs. The outputs actually do slightly differ. In some cases, the spacing is slightly different, and in some cases None is replaced with the empty string. I actually think this is a good thing since these are decisions made by the python csv writer and ensure our outputs conform to standards. I compared the contents of these resulting rows and they were identical and parsable.
It's possible in certain edge cases we may encounter more problems, but I still think it is worth it to merge this and monitor for them. It will ultimately make it easier to detect parsing and schema issues.

Thanks @morsecodist, this is a great effort and I'm very happy to see the direction we're going with this.
Some architectural questions for this before we proceed (would have been great for a design review, but post-hoc design review is fine too):

Why use the abc module instead of plain inheritance?
The csv module has csv.DictReader which is a schematized tabulated format reader. Why not inherit directly from that class? What do you think about having a class for each format, with the schema as a class variable, and init passing that schema to the parent constructor?
Can you add some unit tests for this? Any time we add a new interface (in this case, the new readers) we should have a unit test for the interface. I recognize the difficulties with integration testing these - but we should at least have unit tests that alert us if this code ceases to correctly handle input that we expect the pipeline to give it, since the pipeline may have a more complex behavior that might mask the issue.

Thanks @morsecodist, this is a great effort and I'm very happy to see the direction we're going with this.
Some architectural questions for this before we proceed (would have been great for a design review, but post-hoc design review is fine too):

Why use the abc module instead of plain inheritance?
The csv module has csv.DictReader which is a schematized tabulated format reader. Why not inherit directly from that class? What do you think about having a class for each format, with the schema as a class variable, and init passing that schema to the parent constructor?
Can you add some unit tests for this? Any time we add a new interface (in this case, the new readers) we should have a unit test for the interface. I recognize the difficulties with integration testing these - but we should at least have unit tests that alert us if this code ceases to correctly handle input that we expect the pipeline to give it, since the pipeline may have a more complex behavior that might mask the issue.

@kislyuk thanks for the review, good points. The form things are in now is not what I would have chosen if designing from first principles due to a few compatibility concerns, though maybe we should change more. A design review would have been good but a lot of these decisions came up organically as I was going over the code base and wouldn't have been clear beforehand.

My inheritance structure is more complicated because on short-read-mngs/idseq-dag/idseq_dag/steps/blast_contigs.py:442 we need a list of the fields from one of the schemas. Previously, I just had the schemas as a class property and the other classes just extended the base class and called it's constructor with the schemas. I intended to keep everything in the class's namespace and to do this I needed access to the schema when using static methods on the class, hence the complicated abc structure. I considered construcing an instance with an empty iterable which would work but it feels hacky. I also considered exporting the schema and using it directly which would probably be cleaner now that I think more about it. I liked the idea of the caller not needing to worry about the notion of schemas but I think I did more harm than good here. I will change it to this unless you have another suggestion.
I would like to leverage the DictReader more (if we added headers we could just use it as is) but I needed to add some custom logic to recognize which variant we were dealing with because it is not clear from the code. I think I could slot this into DictReader but with the ammount of custom stuff I felt it wasn't worth it. Now that I've done more testing I probably could figure out which is which at each call site. That would simplify things a lot. I wanted to box how much time I spent here because there is a lot more I want to change but now that I have every usage easily findable I think I can do this pretty quickly so I will set a short time box and see if it is doable.
I will write some unit tests. The main issue I had is that we have a lot of idseq-dag unit tests that are no longer usable and they don't run with CICD so I felt if I put it in there they would get lost. I tried a bit to see if I could get the unit tests into a workable state but it would be too much for this PR. I will leave a comment over them that they are post-transfer and should be preserved but we should look into this going forward.

I will make the changes I discussed and update soon.

@kislyuk thanks for the review, good points. The form things are in now is not what I would have chosen if designing from first principles due to a few compatibility concerns, though maybe we should change more. A design review would have been good but a lot of these decisions came up organically as I was going over the code base and wouldn't have been clear beforehand.

My inheritance structure is more complicated because on short-read-mngs/idseq-dag/idseq_dag/steps/blast_contigs.py:442 we need a list of the fields from one of the schemas. Previously, I just had the schemas as a class property and the other classes just extended the base class and called it's constructor with the schemas. I intended to keep everything in the class's namespace and to do this I needed access to the schema when using static methods on the class, hence the complicated abc structure. I considered construcing an instance with an empty iterable which would work but it feels hacky. I also considered exporting the schema and using it directly which would probably be cleaner now that I think more about it. I liked the idea of the caller not needing to worry about the notion of schemas but I think I did more harm than good here. I will change it to this unless you have another suggestion.
I would like to leverage the DictReader more (if we added headers we could just use it as is) but I needed to add some custom logic to recognize which variant we were dealing with because it is not clear from the code. I think I could slot this into DictReader but with the ammount of custom stuff I felt it wasn't worth it. Now that I've done more testing I probably could figure out which is which at each call site. That would simplify things a lot. I wanted to box how much time I spent here because there is a lot more I want to change but now that I have every usage easily findable I think I can do this pretty quickly so I will set a short time box and see if it is doable.
I will write some unit tests. The main issue I had is that we have a lot of idseq-dag unit tests that are no longer usable and they don't run with CICD so I felt if I put it in there they would get lost. I tried a bit to see if I could get the unit tests into a workable state but it would be too much for this PR. I will leave a comment over them that they are post-transfer and should be preserved but we should look into this going forward.

I will make the changes I discussed and update soon.

@kislyuk tests and a few rough edges coming soon but how do you feel about this for a simpler approach? I like it much better than before.

@kislyuk tests and a few rough edges coming soon but how do you feel about this for a simpler approach? I like it much better than before.

I can't say that I've checked all the logic updates - there's a lot - but I trust you've kept good track of everything and it's a definite improvement.
I would prefer to see unit test coverage with a good and bad row for each reader class, but I won't insist on adding it all now.

I can't say that I've checked all the logic updates - there's a lot - but I trust you've kept good track of everything and it's a definite improvement.
I would prefer to see unit test coverage with a good and bad row for each reader class, but I won't insist on adding it all now.

@kislyuk added the tests, just going to do one more branch test for sanity then merge.

@kislyuk added the tests, just going to do one more branch test for sanity then merge.

source: gharchive/pull-request

authors: kislyuk morsecodist

repo: chanzuckerberg/idseq-workflows

license: MIT

license_type: permissive

license_source: github-api


text:
Data table

Hotkey x on full tree or any subset

repo: chanzuckerberg/ontology-ui


text:
Update DropdownMenu Screenshot Test to prevent overlaps

DropdownMenu's Chromatic screenshot currently renders the DropdownMenus it iterates through inconsistently: some are below their input, others are above. The dropdowns automatically change whether they are above or below the input in order to ensure they are always visible on the screen. I didn't think it'd do it in the Chromatic screenshot, since I thought it took a pic of everything in the UI without any regard to a screensize, but it does.
I will add a LOT of top-margin to each iteration, to ensure they never overlap each other, regardless of whether they render on top or bottom!

Closed via #500

source: gharchive/issue

repo: chanzuckerberg/sci-components


text:
feat(wmgv2): Do performance benchmark comparing wmg/v1/query and wmg/v2/query

Do the following 5 tests between wmg/v1/query and wmg/v2/query and report results. Ensure the queries are exactly the same between v1 and v2

query with filter criteria: all tissues
query with filter criteria: single gene and all tissues
query with filter criteria: all tissues and multiple genes (~25) by clicking add to dot plot for 1 cell
query with filter criteria: all tissues and multiple genes (~50) by clicking add to dot plot for 2 cell
query with filter criteria: all tissues and multiple genes (~80) by clicking add to dot plot for 4 cell
query with filter criteria: all tissues and multiple genes (~170) by clicking add to dot plot for 8 cell

Get All Tissues

version
total response time
waiting for server response

v1.
1.72s
.        1.66s

v2.
1.74s
.        1.68s

Per the benchmark done above, wmg/v1 and wmg/v2 have similar performance for the \query endpoint. @signechambers1, do you agree that at this point performance need not be prioritized?

@prathapsridharan agreed! we do not need to prioritize performance of the endpoints now. Thank you for this analysis.

repo: chanzuckerberg/single-cell-data-portal


text:
大佬能否添加高危命令过滤的功能

在实际使用现场防止有人删库跑路

这咋防。。。真有心的人靠这可防不住

这样我们最少能控制一下哪些命令是不能输出的  因为我们有一个现场的人用rm -rf 删错了文件  被批评了
我想着就常用的高危命令如[rm -rf,sudo]  让他无法执行命令就行了
------------------ 原始邮件 ------------------
发件人: @.>;
发送时间: 2024年11月6日(星期三) 晚上9:58
收件人: @.>;
抄送: @.>; @.>;
主题: Re: [chaos-zhu/easynode] 大佬能否添加高危命令过滤的功能   (Issue #119)
这咋防。。。真有心的人靠这可防不住
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

无计划支持

这样我们最少能控制一下哪些命令是不能输出的  因为我们有一个现场的人用rm -rf 删错了文件  被批评了     我想着就常用的高危命令如[rm -rf,sudo]  让他无法执行命令就行了
…
------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2024年11月6日(星期三) 晚上9:58 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [chaos-zhu/easynode] 大佬能否添加高危命令过滤的功能 (Issue #119) 这咋防。。。真有心的人靠这可防不住 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

这个可以在ash或zsh里安装插件禁用

repo: chaos-zhu/easynode


text:
Question about Gumbel sampling

I read that you apply a bivariate gumbel sampling in your paper, and use the generalized form gumbel softmax.
Gumbel softmax takes logits (log probability) as input, while you directly use learned structure theta as input:
adj = gumbel_softmax(x, temperature=temp, hard=True) (in line 234, GTS/model/pytorch/model.py)
Why it worked? Thank you.

Hi, thanks for your great question. Here we consider the output of neural network as logits. This implementation is the same as the NRI code. Here we provide another option. you could use the following way to get the logits:
x = torch.nn.softmax(x)
logits = torch.log(x+1e-20)
If you have additional questions, please let me know. : )

authors: ThinkNaive chaoshangcs

repo: chaoshangcs/GTS


text:
🛑 es-2 (Ícar) is down

In 36f2d83, es-2 (Ícar) (https://es-2-mirror.chaotic.cx/no-failover/chaotic-aur/lastupdate) was down:

HTTP code: 503
Response time: 116 ms

Resolved: es-2 (Ícar) is back up in e4532d4.

repo: chaotic-aur/chaotic-uptimes


text:
🛑 Silky.Network - kr-2 is down

In 6efdead, Silky.Network - kr-2 (https://kr-2-mirror.chaotic.cx/no-failover/chaotic-aur/lastupdate) was down:

HTTP code: 503
Response time: 132 ms

Resolved: Silky.Network - kr-2 is back up in 52b41b1.


text:
🛑 Silky.Network - us-ca is down

In e29d23f, Silky.Network - us-ca (https://us-ca-mirror.chaotic.cx/no-failover/chaotic-aur/lastupdate) was down:

HTTP code: 503
Response time: 65 ms

Resolved: Silky.Network - us-ca is back up in 4e2cc97.


text:
🛑 in (Naman) is down

In 1785a48, in (Naman) (https://in-mirror.garudalinux.org) was down:

HTTP code: 0
Response time: 0 ms

Resolved: in (Naman) is back up in 7e200ab after 19 minutes.


text:
🛑 Silky.Network - us-ca is down

In 3547af0, Silky.Network - us-ca (https://sjc-us-mirror.silky.network) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Silky.Network - us-ca is back up in 03c08f1 after 42 minutes.


text:
🛑 Silky.Network - ae-3 is down

In 2976d68, Silky.Network - ae-3 (https://ae-3-mirror.chaotic.cx/no-failover/chaotic-aur/lastupdate) was down:

HTTP code: 503
Response time: 61 ms

Resolved: Silky.Network - ae-3 is back up in aaa880d.


text:
building custom pipelines

Hello
I'm looking for some direction on customizing pipelines. Specifically what's doable via config vs code. I wasn't sure given all the work on cwl. I'm fine with either but wanted to double check on recommendations.
A few examples:

annotation. I already have vcfs and want to run vep. Problem is I want to run a number of vep plugins for loftee and clinvar functionality. I was unclear how to parametrize a call to vep.

joint calling from bams/vcfs. I have vcfs (or gvcfs) and just want the squared off call set.

pedigree calling. For example RTG with a ped file. Or GATK with a ped file for standard batch calling with post processing step for optimized phasing (readbackphasing, phasebytransmission and ld/haplotypecaller).

exome cnv calling. conifer, xhmm, penncnv-exomseq

Daryl;
Thanks for the thoughts. We're hoping the CWL mechanism will allow people to build their own custom pipelines and then mix/match with bcbio components. This is still a bit of a work in progress and although bcbio can run with CWL (http://bcbio-nextgen.readthedocs.io/en/latest/contents/cwl.html) it would still be for early adopters if you want to play with it.
To answer your questions specifically, 1 and 2 are probably best done outside of bcbio. bcbio doesn't provide a lot of value over running VEP or running GenotypeGVCFs so it's probably not worth the overhead of trying to force these cases into a run.
For 3, we don't currently do that although it would be nice to include the functionality in bcbio. This is something that could fit quite well within the framework but would need to be coded and tested.
For 4, we have exome CNV calling implemented with svcaller: [cnvkit]: http://bcbio-nextgen.readthedocs.io/en/latest/contents/configuration.html#structural-variant-calling and http://cnvkit.readthedocs.io This should work as is with a standard run.
Hope this helps.

Thanks for the update!

authors: chapmanb dwaggott

repo: chapmanb/bcbio-nextgen

license: mit

license_source: bigquery


text:
How to skip QC file creation when re-doing variant calling?

Hi Brad,
We want to accumulate the QC files of the increasing cohorts of samples that we sequence.
We re-variant call all samples when our cohorts expands (we get new samples) to get a square genotype table over all samples.
This leads to fastqc and samtools stats being run for samples for which we already have fastq and samtools stats files.
Is there a way to skip fastq, samtools and bcftools stats/QC file creation?
For example by specifying the QC steps to skip in the input fastq/bam bcbio sample table? We also would like to skip bcftools stats always because for large VCF files  (100M+ variants * few 100 samples) that takes way to much time.
Another option would be to check a directory for if the sample QC files already exist.
But specifying which QC steps to run / skip in the input sample table is more robust (does not depend on actual storage used for the accumulation of the QC files).
Thank you.
Neill

Neill;
Thanks for the discussion on this. I'll follow up with more details in #1808 since these are linked and I hope we have a dirty copy solution that will work relatively well.

Yes sure. I wasn't sure if this was handled best as 1 or 2 separate issues.

authors: NeillGibson chapmanb


text:
DrupalNode type definition missing body

DrupalNode type definition is missing the body prop

Hi. Thanks for the feedback.
The reason we don't have a body field on the DrupalNode is because not all node types have a body field.
Example we have some node types using paragraphs and we generally remove the body field.
With that said, you can extend the interface and add your own field pretty easily.
import { DrupalNode } from "next-drupal"

export interface ArticleNode extends DrupalNode {
  body: {
    value: string
    processed: string
    format: string
  }
  field_another_field: string
}

Then you can use it as follows:
const article = await drupal.getResource<ArticleNode>("node--article", ID)

// No error.
article.body.processed

Hope this helps.

Could you provide better documentation about this?
I didn't know where to put and how to use what is "explained" under Extending Types at https://next-drupal.org/docs/typescript

authors: kopeboy shadcn violabg

repo: chapter-three/next-drupal


text:
Make styling optional

Currently, we cannot fully customize the CSS included in vuejs datepicker as we have to override it.
I think this is a problem with any vuejs component that includes styles.
We can provide an option like includeStyling to provide this functionality.
I think it requires some css changes in the datepicker component. Even though I would like to raise a Pr for this i am not a css wizard, so the quality is not guaranteed. I would appreciate if someone else can take this up.
Example implementation
https://github.com/rowanwins/vue-dropzone/blob/master/src/components/vue-dropzone.vue

raised the PR anyway :D

repo: charliekassel/vuejs-datepicker


text:
rule for detecting format error in gettext translations

import gettext
_ = gettext.NullTranslations().gettext
var = 'baz'
_('foo %s bar' % var)
_('foo {} bar'.format(var))
_(f'foo {var} bar')

those 3 cases should be detected in a new rule.

Is the error that you're supposed to leave the parameters unfilled?

(Seems like a reasonable rule, I'm just not familiar with the API.)

The error is that you're supposed to use constant strings, not dynamic ones as that passed string is used as a key during the lookup in message catalog.
I think that ideally this should support not just the most basic gettext call accepting a single argument but also calls to gettext, ngettext, and so on:
https://docs.python.org/3/library/gettext.html

thanks for the feedback, I clarified the initial description.

Thank you!

authors: Jackenmen charliermarsh spaceone

repo: charliermarsh/ruff


text:
Regression: piped input

As mentioned on Discord, piped input is broken as of v0.24.0.

👩🏻🍳 Update: I broke it here: https://github.com/charmbracelet/bubbletea/commit/fcc805f3da68f535f7c3c78b94b4b14cd22a047a

repo: charmbracelet/bubbletea


text:
各位大佬，请教下，我一键启动后无法打开网页是为什么呀

如果是在服务器上跑的，本地当然打不开，需要端口转发。

如果是在服务器上跑的，本地当然打不开，需要端口转发。
我用ssh连接了云服务器，可以在本地调用云服务器的内容了，可还是打不开本地连接TT....
大佬还有啥办法呀

你可以试试将0.0.0.0:8501当中的0.0.0.0改为你的服务器地址，我就是这样解决的

嗯呐，刚刚解决啦，改成了127.0.0.1，配置了SSH，调整了ipv6的顺序。也不知道哪步解决的，。，最后能用了

authors: liyiyiya yhzhou688 zmwstu

repo: chatchat-space/Langchain-Chatchat


text:
Fix Typo in Contributing File #936

Issue link / number:#936
What changes did you make?
Correct the typo: sustainble -> sustainable.
Why did you make the changes?
Mentioned in open issues
Did you run tests?
Not Required

@bhiwagade-rahul thank you for your interest in contributing to Chayn.
As per our Contributing Guidelines all issues need to be claimed first before submitting a PR.
This particular issue is reserved for volunteers in a program we're running.
Please check back in 3 weeks for more issues like this to contribute. Closing this PR.

authors: bhiwagade-rahul kyleecodes

repo: chaynHQ/bloom-frontend


text:
Khmer Text Overlapping

This project is really amazing and challenging! I'm amazed that you've pulled it off!
I encountered an issue with my language while testing the demo. My guess is that the engine doesn't understand how to break Khmer text.
Render

Content
រស់ សេរីសុទ្ធា កេីតនៅថ្ងៃទី០៦ ខែ វិច្ឆិកា ឆ្នាំ ១៩៤៧ នាងមានកំណើតនៅក្នុងគ្រួសារកសិករក្រីក្រមួយ ក្នុង ខេត្តបាត់ដំបង ។ សុធា មានឪពុកឈ្មោះ រស់ ប៊ុន និង ម្ដាយឈ្មោះ ណាត់ សាមៀន និង មានបងប្អូនចំនួន ៥ នាក់ ប្រុស១នាក់ ស្រី៤នាក់ (បច្ចុប្បន្នស្លាប់ទាំងអស់) បងស្រីទី១ ឈ្មោះ រស់ សាបឿន, បងស្រីទី២ ឈ្មោះ រស់សាបឿត, បងប្រុសទី៣ ឈ្មោះ រស់ សុគន្ធ, ទី៤សុធាផ្ទាល់ ឈ្មោះ រស់ សេរីសុទ្ធា និង ទី៥ប្អូនស្រី ឈ្មោះ រស់ សេរីសោភ័ណ, សុធា នាងបានចូលសិក្សា ថ្នាក់អនុវិទ្យាល័យនេតយ៉ង់ ក្នុងខេត្តបាត់ដំបង ។ ទេពកោសល្យ របស់សុធា បានរកឃើញនៅអាយុ ១៣ ឆ្នាំ ពេលដែលនាងបានច្រៀងចម្រៀង ប្រចាំថ្នាក់អនុវិទ្យាល័យ ក្នុងឆ្នាំ ១៩៦០ សិស្សរួមថ្នាក់ និងលោកគ្រូ អ្នកគ្រូ តែងតែសរសើរទឹកដមសម្លេងដ៏ច្បាស់ ស្រទន់ និង ខ្លាំងរបស់ សុធា ដែលប្រៀបបាននិង សម្លេងរណ្ដំរបស់សត្វរៃ ហើយសុធា ត្រូវបានគេដាក់ឈ្មោះហៅក្រៅពេលនោះថា (អារៃ) ដោយឪពុករបស់សុធា មើលឃើញពីទេពកោសល្យផ្នែកចម្រៀងដូចនេះ ក៏បាននាំសុធា ដើរច្រៀងតាមពិធីមង្គលការ និង ភោជនីយដ្ឋានផ្សេងៗ ក្នុងខេត្តបាត់ដំបង ។

Thanks for testing out Khmer! Dropflow can't use system fonts, and the demo only has Roboto loaded right now. So the layout engine is getting tofu, and the paint backend (<canvas>) does use system fonts. That's why you're seeing the gaps. Khmer should work correctly when a font is registered though.
Ideally I'd update the demo to have the top 100 languages or so, but if that impacts performance, I'll have to add a language selector. The long-term solution is to have it lazily download fonts, which is pretty high on my list of things to do.

It works now with Noto Sans Khmer loaded. Thanks!

authors: chearon seanghay

repo: chearon/dropflow


text:
v0.5.0 not working with auth

I believe v0.5.0 broke the auth/3 request:
iex(13)>  Mongo.Db.auth(db,"redacted-username", "redacted-password")
** (ArgumentError) argument error
    :erlang.byte_size(%Mongo.Db{auth: {"redacted-username", "redacted-hash"}, mongo: %Mongo.Server{host: 'redacted.server-hostname.com', id_prefix: 28673, mode: :passive, opts: %{}, port: 10026, socket: #Port<0.5573>, timeout: 6000}, name: "redacted_database_name", opts: %{mode: :passive, timeout: 6000}})
    lib/mongo_request.ex:41: Mongo.Request.cmd/3
    lib/mongo_db.ex:44: Mongo.Db.auth/1

I meet the same problem. Please check for me.

Same problem.

authors: adrianmarino hieuht817 trenpixster

repo: checkiz/elixir-mongo


text:
Photo scroll focus issue

Photo in feed starts scrolling after preview is opened. And it can't be focused on mobile (to start scrolling) in any way (only click that opens preview)
Example: https://youtube.com/shorts/cC1nkFHr9I8?feature=share

Attempted to fix this via https://github.com/cheeaun/phanpy/commit/e4d9e7f7db19be406aaebf2e012154a7814e5784
Probably can check it out if this bug is still happening for you 🙇♂

repo: cheeaun/phanpy


text:
page-object-1.2.2 still has dependencies to watir-webdriver

hi, I've followed the instructions according to commits from Nov 20th 2016. (i.e removing all references to watir-webdriver)
However, there still looks like there is a reference to  watir-webdriver-0.9.3 somewhere in page-object gem that I can't source.
Steps to reproduce:
1.Force uninstall watir-webdriver and page-object
gem uninstall watir-webdriver
Continue with Uninstall? [yN]  y
gem uninstall page-object
Successfully uninstalled page-object-1.2.2

Install page-object

 gem install page-object

output:
Fetching: watir-webdriver-0.9.3.gem (100%)
Successfully installed watir-webdriver-0.9.3
Fetching: page-object-1.2.2.gem (100%)
Successfully installed page-object-1.2.2
Parsing documentation for watir-webdriver-0.9.3
Installing ri documentation for watir-webdriver-0.9.3
Parsing documentation for page-object-1.2.2
Installing ri documentation for page-object-1.2.2
Done installing documentation for watir-webdriver, page-object after 4 seconds
2 gems installed

Please help! Having watir and watir-webdriver in our eco-system is causing lots of runtime issues and preventing us from running our tests.
Thanks in advance.

Try to run your tests with bundle exec and make sure you dont have watir-webdriver in your gemfile. if youll search for watir-webdriver in source code - you'll not find anything.

Aha! Your edited suggestion did the trick!
Much appreciated.

authors: brbrr emereyd

repo: cheezy/page-object


text:
Browser context changing after updating to 2.2

Hi, I'm writing tests for a page that has a footer. I have a class Footer that is locating the footer element. However, when I try to use a global browser variable, it looks like with the 2.2 upgrade and above, the @browser variable is re-initialized within the context of a new Watir element. When I was on 2.1.1, this worked:
def footer
    Footer.new(browser.element(css: '.Footer'))
  end

and then later on in the code
browser.element(css: '#test')

However, with the upgrade to 2.2, after Footer.new is called with the new element, it seems that @browser is reset to the context of the footer, so my browser.element(css: '#test') fails because it's searching for #test inside of .Footer.
Any thoughts on how to preserve the global browser context?

Also experiencing this. When trying to do @browser.screenshot I get undefined method 'screenshot' for #<Watir::HTMLElement' which is totally the wrong type for @browser.

Noticed a similar issue. In our case, I think it's related to a call to @browser inside of a page section (which is itself an instance of Watir::HTMLElement). I was able to work around the issue in the short term by calling @browser.browser.method_you_want.

If I'm understanding this correctly, the issue is that the following code returned a Watir::Browser:
gem 'page-object', '=2.1.1'
gem 'watir', '=6.7.3'
require 'watir'
require 'page-object'

class Container
    include PageObject
end

class Footer
    include PageObject
end

class MyPage
    include PageObject

    page_section(:container, Container, :id => 'container')

    def footer
        Footer.new(browser.element(css: '.Footer'))
    end

end

browser = Watir::Browser.new
browser.goto('C:\Users\Gonk\Desktop\test.htm')

page = MyPage.new(browser)

p page.footer.browser.class
#=> Watir::Browser

p page.container.browser.class
#=> Watir::Browser

In contrast, in Page-Object v2.2+, both now return a Watir::HTMLElement.


text:
Call with full path to clean_array

Description
Fixes undefined method error being thrown in latest Chef 14
Issues Resolved
https://github.com/chef-cookbooks/habitat/issues/109
Check List

[ ] All tests pass. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/TESTING.MD
[ ] New functionality includes testing.
[ ] New functionality has been documented in the README if applicable
[ ] All commits have been signed for the Developer Certificate of Origin. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/CONTRIBUTING.MD

that'll be busted in every other version of chef-client.
this is a regression in chef-client.

Got it.  What version of Client did it come in ?

probably 14.3.x

https://github.com/chef/chef/pull/7477
that'll unbreak it with the old API, but it will throw multiple deprecation warnings now (on the use of both shell_out_with_timeout and clean_array, both of which are deprecated).
the correct code is just:
shell_out!('hab', *command)

but that will not work on chef < 14.3.x

Move proper resolution over to issue.  Closing...

authors: jamesc lamont-granquist

repo: chef-cookbooks/habitat


text:
WIP: Add custom resource for install

Description
Start of work that would transition the SQL server installation to a custom resource and add the appropriate integration tests
Issues Resolved
[List any existing issues this PR resolves]
Check List

[ ] All tests pass. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/TESTING.MD
[ ] New functionality includes testing.
[ ] New functionality has been documented in the README if applicable
[ ] All commits have been signed for the Developer Certificate of Origin. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/CONTRIBUTING.MD

Still not ready for merging but the kitchen test pass. https://media.giphy.com/media/3oz8xsRKgCWlzkqT7y/giphy.gif

I added a few minor comments, but overall this is super good to merge.


text:
Parallel Bootstrap Issues.

Seems like if there are two knife bootstraps going on at the same time the one that includes the ssh_known_hosts recipe seems to produce this error and can't converge until the other one is complete. In fact all hosts seem to produce this error until the bootstrapped node completes.
================================================================================
Recipe Compile Error in /var/chef/cache/cookbooks/msc_core/recipes/msc_auth.rb
================================================================================

ArgumentError
-------------
You must supply a name when declaring a ssh_known_hosts_entry resource

Cookbook Trace:
---------------
  /var/chef/cache/cookbooks/ssh_known_hosts/recipes/default.rb:85:in `block in from_file'
  /var/chef/cache/cookbooks/ssh_known_hosts/recipes/default.rb:77:in `each'
  /var/chef/cache/cookbooks/ssh_known_hosts/recipes/default.rb:77:in `from_file'
  /var/chef/cache/cookbooks/msc/recipes/sshd.rb:17:in `from_file'
  /var/chef/cache/cookbooks/msc_core/recipes/msc_auth.rb:2:in `from_file'

Relevant File Content:
----------------------
/var/chef/cache/cookbooks/ssh_known_hosts/recipes/default.rb:

 78:    unless host['key'].nil?
 79:      # The key was specified, so use it
 80:      ssh_known_hosts_entry host['fqdn'] do
 81:        key host['key']
 82:      end
 83:    else
 84:      # No key specified, so have known_host perform a DNS lookup
 85>>     ssh_known_hosts_entry host['fqdn']
 86:    end
 87:  end
 88:

All we are doing in our recipe is the following.
include_recipe 'ssh_known_hosts'

that probably doesn't have anything to do with parallel bootstraps, and has more to do with running this cookbook on one node (no matter what state that node is in) while another node is bootstrapping and has not fully run but has a node object without an fqdn or other ohai information (e.g. validatorless boostrapping where the node is created first).

there's an unless host['fqdn'].nil? check on that line now, this issue is likely fixed.


text:
configuring LOG_LEVEL for components of chef-server services

I have observed erchef filling up logs upon inspection they appear to be largely INFO messages. I searched for a way to change the log level but did not find anything there. Is there something I am missing? I can set various log rotation settings via: https://github.com/chef/chef-server/blob/master/omnibus/files/private-chef-cookbooks/private-chef/attributes/default.rb#L242-L245

Also after attempting to change the options that appear available they dont appear to work or I am doing something horribly wrong:
root@ip-172-16-250-5:/etc/chef# cat /etc/opscode/chef-server.rb
topology "standalone"
api_fqdn "<REDACTED>"
{"bookshelf"=>{"enable"=>false, "log_directory"=>"/var/log/opscode/bookshelf", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "rabbitmq"=>{"log_directory"=>"/var/log/opscode/rabbitmq", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "opscode-solr4"=>{"log_directory"=>"/var/log/opscode/opscode-solr4", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "opscode-expander"=>{"log_directory"=>"/var/log/opscode/opscode-expander", "reindexer_log_directory"=>"/var/log/opscode/opscode-expander-reindexer", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "opscode-erchef"=>{"log_directory"=>"/var/log/opscode/opscode-erchef", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "oc-chef-pedant"=>{"log_directory"=>"/var/log/opscode/oc-chef-pedant", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "redis_lb"=>{"log_directory"=>"/var/log/opscode/redis_lb", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "nginx"=>{"log_directory"=>"/var/log/opscode/nginx", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "postgresql"=>{"log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "oc_bifrost"=>{"log_directory"=>"/var/log/opscode/oc_bifrost", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "oc_id"=>{"log_directory"=>"/var/log/opscode/oc_id", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "opscode-chef-mover"=>{"log_directory"=>"/var/log/opscode/opscode-chef-mover", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}, "keepalived"=>{"log_directory"=>"/var/log/opscode/keepalived", "log_rotation"=>{"file_maxbytes"=>52428800, "num_to_keep"=>5}}}

and then running chef-server-ctl reconfigure still does not actually change the log settings.
root@ip-172-16-250-5:/etc/chef# grep -C 10 'num_to_keep' /etc/opscode/chef-server-running.json
      "port": 8983
    },
    "rabbitmq": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/rabbitmq",
      "data_dir": "/var/opt/opscode/rabbitmq/db",
      "log_directory": "/var/log/opscode/rabbitmq",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "vhost": "/chef",
      "user": "chef",
      "password": "93dd6b1b47ea2690b4005c6b0676fcaea94a9f35af6ed7bb9bdc69e1e1888b52b6f57611a83b32d30dc8ebcd5d6d7857b3e6",
      "reindexer_vhost": "/reindexer",
      "jobs_vhost": "/jobs",
      "jobs_user": "jobs",
      "jobs_password": "5d49be6f3ff234583ab33a162063e4f1e432a5b6967ea210c9740ef8d59039cd61c31e39484aa600c4b5cae1e826b01407e2",
      "actions_user": "actions",
      "actions_password": "4594ec1cff1d40e87716b559b987e0449b82553f9b0661a04443e00e3942efcf3e6a9a50f2fa143d985a8e90070a56de5860",
--
      "log_directory": "/var/opt/opscode/opscode-solr4/jetty/logs"
    },
    "opscode-solr4": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/opscode-solr4",
      "data_dir": "/var/opt/opscode/opscode-solr4/data",
      "log_directory": "/var/log/opscode/opscode-solr4",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "heap_size": 1024,
      "new_size": 64,
      "java_opts": " -XX:NewSize=64M -XX:+UseConcMarkSweepGC -XX:+UseParNewGC",
      "url": "http://localhost:8983/solr",
      "ip_address": "127.0.0.1",
      "vip": "127.0.0.1",
      "port": 8983,
      "ram_buffer_size": 100,
      "merge_factor": 15,
--
      "poll_seconds": 20,
      "command": "java -Xmx1024M -Xms1024M -XX:NewSize=64M -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -Xloggc:/var/log/opscode/opscode-solr4/gclog.log -verbose:gc -XX:+PrintHeapAtGC -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime -XX:+PrintTenuringDistribution -Dsolr.data.dir=/var/opt/opscode/opscode-solr4/data -Dsolr.solr.home=/var/opt/opscode/opscode-solr4/home -server -jar '/opt/opscode/embedded/service/opscode-solr4/jetty/start.jar'"
    },
    "opscode-expander": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/opscode-expander",
      "log_directory": "/var/log/opscode/opscode-expander",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "reindexer_log_directory": "/var/log/opscode/opscode-expander-reindexer",
      "consumer_id": "default",
      "nodes": 2
    },
    "opscode-erchef": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/opscode-erchef",
      "log_directory": "/var/log/opscode/opscode-erchef",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "vip": "127.0.0.1",
      "listen": "127.0.0.1",
      "port": 8000,
      "auth_skew": "900",
      "authz_pooler_timeout": "0",
      "bulk_fetch_batch_size": "5",
      "max_cache_size": "10000",
      "cache_ttl": "3600",
      "db_pool_size": "20",
--
    },
    "opscode-webui": {
      "enable": false
    },
    "oc-chef-pedant": {
      "dir": "/var/opt/opscode/oc-chef-pedant",
      "log_directory": "/var/log/opscode/oc-chef-pedant",
      "log_http_requests": true,
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "debug_org_creation": false
    },
    "redis_lb": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/redis_lb",
      "data_dir": "/var/opt/opscode/redis_lb/data",
      "log_directory": "/var/log/opscode/redis_lb",
      "log_rotation": {
        "file_maxbytes": 1000000,
        "num_to_keep": 10
      },
      "port": "16379",
      "bind": "127.0.0.1",
      "vip": "127.0.0.1",
      "keepalive": "60",
      "timeout": "300",
      "loglevel": "notice",
      "databases": "16",
      "appendonly": "no",
      "appendfsync": "always",
--
      "account_port": 9685,
      "oc_bifrost_port": 9683
    },
    "nginx": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/nginx",
      "log_directory": "/var/log/opscode/nginx",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "log_x_forwarded_for": false,
      "ssl_port": 443,
      "enable_non_ssl": false,
      "non_ssl_port": 80,
      "x_forwarded_proto": "https",
      "server_name": "chef.prod-west.cloudcruiser.com",
      "url": "https://chef.prod-west.cloudcruiser.com",
      "proxy_connect_timeout": 1,
      "ssl_protocols": "TLSv1 TLSv1.1 TLSv1.2",
--
    "postgresql": {
      "version": "9.2",
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/postgresql/9.2",
      "data_dir": "/var/opt/opscode/postgresql/9.2/data",
      "log_directory": "/var/log/opscode/postgresql/9.2",
      "log_min_duration_statement": -1,
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "username": "opscode-pgsql",
      "shell": "/bin/sh",
      "home": "/var/opt/opscode/postgresql",
      "user_path": "/opt/opscode/embedded/bin:/opt/opscode/bin:$PATH",
      "sql_user": "opscode_chef",
      "sql_password": "752db1c58fbdc2741f81d010be9485115ca567d90628a60aadb840cea69802ddc3fd55b2e9a8bd05b4620be721a8ad1e22c9",
      "sql_ro_user": "opscode_chef_ro",
      "sql_ro_password": "7f8afefb4d560e33a864bc50d07a670523be56a85217a1997cef2109a02936cb7eee7a6d2e16fbc3681eb27c3c3501467bf3",
      "vip": "127.0.0.1",
--
      "checkpoint_completion_target": 0.5,
      "checkpoint_warning": "30s"
    },
    "oc_bifrost": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/oc_bifrost",
      "log_directory": "/var/log/opscode/oc_bifrost",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "vip": "127.0.0.1",
      "listen": "127.0.0.1",
      "port": 9463,
      "superuser_id": "650123299ba1a95839b35f69adc71418",
      "db_pool_size": "20",
      "sql_user": "bifrost",
      "sql_password": "cc2edba027cbe2775d0512867ab3612ee599ab062989ba56ad7b95a9404d56d8e6f49a0946f11b142803d36959e04b96b3ea",
      "sql_ro_user": "bifrost_ro",
      "sql_ro_password": "f4614e93ab671ebfdd4d5aaee5e01d59cf313e5bcb27f3ba9c84174d11e52787b3be2e0ce0fa2eef4bc0644c411295830f49",
--
      "ibrowse_options": "[{connect_timeout, 5000}]"
    },
    "bookshelf": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/bookshelf",
      "data_dir": "/var/opt/opscode/bookshelf/data",
      "log_directory": "/var/log/opscode/bookshelf",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "vip": "ip-172-16-250-5.us-west-2.compute.internal",
      "listen": "127.0.0.1",
      "port": 4321,
      "stream_download": true,
      "access_key_id": "2ec9083bc6fbee0e99d2bd770b398e0d2e4569b6",
      "secret_access_key": "da4d5d7684e55006a1a934d667f1feef8a4f49e2a5b0c4cfe462aa1478f759ec27cfc0b2f842122c",
      "external_url": "host_header"
    },
    "oc_id": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/oc_id",
      "log_directory": "/var/log/opscode/oc_id",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "vip": "127.0.0.1",
      "port": 9090,
      "sql_database": "oc_id",
      "sql_user": "oc_id",
      "sql_password": "9e5eb53f955f501e879388a020008c9bb00bc8c8431f8e020feb614563a931e4101c65b3b4b03e1a27b1c434cfbb0cb4b7f7",
      "db_pool_size": "20",
      "sentry_dsn": null,
      "sign_up_url": null,
      "administrators": [
--
      "actions": true
    },
    "opscode-chef-mover": {
      "enable": true,
      "ha": false,
      "dir": "/var/opt/opscode/opscode-chef-mover",
      "data_dir": "/var/opt/opscode/opscode-chef-mover/data",
      "log_directory": "/var/log/opscode/opscode-chef-mover",
      "log_rotation": {
        "file_maxbytes": 1073741824,
        "num_to_keep": 10
      },
      "bulk_fetch_batch_size": 5,
      "max_cache_size": "10000",
      "cache_ttl": "3600",
      "db_pool_size": "5",
      "sql_db_timeout": 5000,
      "ibrowse_max_sessions": 256,
      "ibrowse_max_pipeline_size": 1,
      "solr_timeout": 30000,
      "solr_http_init_count": 25,
--
      "vip": "127.0.0.1",
      "port": 9466
    },
    "keepalived": {
      "enable": false,
      "dir": "/var/opt/opscode/keepalived",
      "ipv6_on": false,
      "log_directory": "/var/log/opscode/keepalived",
      "log_rotation": {
        "file_maxbytes": 104857600,
        "num_to_keep": 10
      },
      "smtp_server": "127.0.0.1",
      "smtp_connect_timeout": "30",
      "vrrp_sync_group": "PC_GROUP",
      "vrrp_sync_instance": "PC_VI",
      "vrrp_instance_state": "BACKUP",
      "vrrp_instance_interface": "eth0",
      "vrrp_instance_virtual_router_id": "1",
      "vrrp_instance_priority": "100",
      "vrrp_instance_advert_int": "1",

repo: chef/chef-server


text:
Revert "Run in fips mode if node is fips enabled"

Reverts chef/chef#4841

👍

for the record, on OS X:
3623 examples, 616 failures, 2 pending

authors: lamont-granquist thommay

repo: chef/chef


text:
Display the labels sorted by decreasing Y

@lpatiny
I think this point will not be a good one because Y changes with your mouse move and we look inside the array to find the closest value...

@lpatiny
I think this point will not be a good one because Y changes with your mouse move and we look inside the array to find the closest value...

authors: hamed-musallam lpatiny

repo: cheminfo/nmr-displayer


text:
🛑 Homepage is down

In d36f7e7, Homepage (https://larrychen.tech) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Homepage is back up in c7698d6.

repo: chendachao/uptime


text:
Please format the generated code

Hi. Would you mind running 'flutter/dart fmt' on the generated code please.
Many of my projects have checks to ensure that the code is formatted correct. This is usually done with a simple dart format -o none --set-exit-if-changed .
However, dart/flutter don't provide a way to exclude files from the formatting, and the dart team don't plan on fixing this - https://github.com/dart-lang/dart_style/issues/864 . This results in me having to implement the exclusion on my end, or format the generated code. I've finally done the latter, but I don't like having to add an explicit 'flutter format' for this package.
It would be awesome if this package could format its generated code. It would save me (and others) a lot of headache.

There is an option for formatting generated code:
assets_gen:
  ...
  format_dart_code: true

Could you have a try? 😆

I really should have read the docs better.
Sadly it doesn't seem to work for me. The file still isn't formatted
$ dart format -o none --set-exit-if-changed lib/generated/assets.dart
Changed lib/generated/assets.dart
Formatted 1 file (1 changed) in 0.12 seconds.

Also, out of curiosity, why not enable it by default?

Please try 1.4.1, it should fix the format issue.

Thank you. This works perfectly!

authors: chenenyu vHanda


text:
All Baidu cloud links have been invalid

All Baidu cloud links have been invalid

Thx for your reminder, I updated the Baidu cloud links.

repo: chengaopro/AdversarialNAS


text:
What does the sldro mode represent?

Hello, thank you for your work. When reproducing your code, I noticed that there were different training modes. I would like to ask under what mode the method implemented in your paper was carried out. When I use the ours mode, there is a CUDA error, while the default sldro is normal

../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [0,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [2,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [3,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [5,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [6,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [10,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [11,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [12,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [13,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [14,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
../aten/src/ATen/native/cuda/ScatterGatherKernel.cu:365: operator(): block: [0,0,0], thread: [15,0,0] Assertion idx_dim >= 0 && idx_dim < index_size && "index out of bounds" failed.
Traceback (most recent call last):
File "/root/autodl-tmp/crowdsource_toxicity_classification/noisy_learning_question.py", line 867, in
main()
File "/root/autodl-tmp/crowdsource_toxicity_classification/noisy_learning_question.py", line 777, in main
train_result = trainer.train(resume_from_checkpoint=checkpoint)
File "/root/miniconda3/lib/python3.10/site-packages/transformers/trainer.py", line 1591, in train
return inner_training_loop(
File "/root/miniconda3/lib/python3.10/site-packages/transformers/trainer.py", line 1892, in _inner_training_loop
tr_loss_step = self.training_step(model, inputs)
File "/root/miniconda3/lib/python3.10/site-packages/transformers/trainer.py", line 2776, in training_step
loss = self.compute_loss(model, inputs)
File "/root/autodl-tmp/crowdsource_toxicity_classification/cus_trainer.py", line 219, in compute_loss
labels_onehot = torch.nn.functional.one_hot(labels, num_classes=2).float() * self.worker_quality_vec[i]
RuntimeError: CUDA error: device-side assert triggered
CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions.

Hi Junyang, thank you for your interest in our work. These modes represent different baseline methods and one of them is "ours". There should be some (slight) modifications of the code regarding different baseline methods. I'm sorry that I am a bit busy with the ACL deadline. I will update the documentation in the next few days and keep you posted.

Hello, thank you for your prompt response. Could you please clarify if "our" in this context refers to the method proposed in the paper? Additionally, could you explain what the sldro mode represents?


text:
🛑 tt is down

In 5fcc3ff, tt (https://telebot-app-serverless-i7z8-chenhaonanniubi.vercel.app/checkhealth) was down:

HTTP code: 500
Response time: 2829 ms

Resolved: tt is back up in e4d6565.

repo: chenhaonanniubi/upptime


text:
🛑 tt is down

In b933366, tt (https://telebot-app-serverless-i7z8-chenhaonanniubi.vercel.app/checkhealth) was down:

HTTP code: 500
Response time: 3263 ms

Resolved: tt is back up in 29f9628.


text:
🛑 tt is down

In 9b89eb1, tt (https://telebot-app-serverless-i7z8-chenhaonanniubi.vercel.app/checkhealth) was down:

HTTP code: 500
Response time: 3684 ms

Resolved: tt is back up in 6243600 after 21 minutes.


text:
🛑 tt is down

In d21e332, tt (https://telebot-app-serverless-i7z8-chenhaonanniubi.vercel.app/checkhealth) was down:

HTTP code: 500
Response time: 1732 ms

Resolved: tt is back up in aa2538e after 11 minutes.


text:
🛑 tt is down

In 31464b8, tt (https://telebot-app-serverless-i7z8-chenhaonanniubi.vercel.app/checkhealth) was down:

HTTP code: 504
Response time: 10125 ms

Resolved: tt is back up in 3af707f after 10 minutes.


text:
Play stops after guessing only first word

I've been playing this game for several days now, and only recently got good enough to be able to guess the words. However, whenever I guess the first word correctly, the games immediately ends and tells me what the other word is. Is this the expected gameplay? I would have thought that it would still give me an opportunity to guess the second word.

Hi, this behavior is by design as of now. But the feedback is valid that it's not what the player would expect since there is a pair of hidden words.
Like you said, it might be better if we provide an opportunity to guess the second word. I will add support for it in the coming days

repo: chetanbhat/quantum-wordle


text:
[BUG] MySQL Settings-Entries get duplicated...

Describe the bug
Following: I want to change the settings of my instance, in the way of try and error to replace the values in the Database, I restarted the container several times... The weird thing, that I did notice is that EVERY time I restart the stack, the Entries in the settings table get reinserted... but the old ones not truncated...
To Reproduce
Steps to reproduce the behavior:

Setup Chibisafe with MySQL.
Start it.
Stop it.
Start it.
look into your MySQL Server: SELECT * FROM settings;

Expected behavior
That if I set ENV "OVERWRITE_SETTINGS" to False, that nothing in the Database gets reentered or changed....
Screenshots
see above.
Additional context
For that Paranoia folks: Yes, I did open port 3306 for my database. No, I am not at risk because there is still an hardware-firewall in front of my host.

And yes, I did nothing else to the settings, I just filled out the docker-compose.yml from the docker/docker-compose.yml and pulled it up with docker-compose -f docker/docker-compose.yml buld & up

Temporary workaround is, to set a PrimaryKey to the Database, so it CANNOT enter mutliple values... hopefully this will work:
CREATE TABLE `settings` (
  `key` varchar(255) NOT NULL,
  `value` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

Sadly this will not fix the Issue mentioned in #294

Thank you for bringing this up, I'll look into it 🙏

Adding that this also happens in SQLite

I'm closing this since the new version was just pushed to master.

authors: Pitu calvinthefreak reeve567

repo: chibisafe/chibisafe


text:
Faster Whisper never progresses with the transcription

Tried on a Windows 10 PC with the medium model:
I have loaded a file that is around one hour long and in ogg format. The model has downloaded just fine, the conversion by FFMPEG worked as expected, I think, the recording has queued for transcription and then it seems to forever be stuck at 0%.
Maybe the issue is not related to Buzz at all and there is something about my machine and Faster Whisper not playing nice with each other. If there is any additional information I might provide, do not hesitate to reach out.
Thanks in advance for taking a look at this.

Could you let me know which of these work for you?

Using the normal Whisper model and not Faster Whisper
Transcribing a much shorter audio (you can try with this test file: https://github.com/chidiwilliams/buzz/raw/main/testdata/whisper-french.mp3)
Using the tiny Faster Whisper model

Hello!

Transcribing with regular Whisper including larger models works as usual;
Transcribing of your test file with the medium Faster Whisper model worked in an instant.
Transcribing of a 8-minute file with the Faster Whisper tiny model also worked relatively quickly.
I'm beginning to wonder whether something isn't up with the progress bar indication because also during the download of the Faster Whisper models it seems to be showing that the download is at 25% with 2 seconds remaining all the time. Of course the download takes longer than that and it works as expected in the end.

authors: Piciok chidiwilliams

repo: chidiwilliams/buzz


text:
Beer not hoppy with Z series machine

When I create a recipe I am deleting the step Pre-Hop Boil because I dont know what that step is for, then I set the next step in the recipe to have Hops 1 @ 45 then Hops 2 @ 13 then Hops 3 @ 2 minutes.  I assume the Hops 1 gets boiled for 45+13+2 which is 58 minutes but it just doesn't seem the machine does that.  I have logs and the graph shows the word Hops 1 for a long time but the beer doesnt seem to taste like the hops are boiled for 58 minutes.  Should I type the recipe into the GUI interface differently?

Give this a try - might make the timing calculations easier:
http://glenridgehomebrewers.com/z1.html
Pre-Hop Boil is the time you're boiling the wort (prior to hop additions)

Additionally @gaston6858 sounds like you aren't used to viewing graphs from even the "mothership" as these also would have some hop #1 for a shorter time than total contact time as the hop filter is built to be "cascading".
The loss of hop character is due to the inefficient utilization rate (closer to 60-70% range) due to hops not being in contact with the entire volume of liquid and instead having a steady stream.
For instance if your recipe has a 5m boil addition the entire volume of liquid won't even be in contact over this short amount of time. I recommend no less than 10 minutes for any addition as that is enough time to move the full volume of liquid...
**I want to stress none of the above is unique to the offline server and instead is just general recipe creation advice for any and all Picobrew machines due to loss of utilization/efficiency for the trade off of hands off brewing."

To make hop timings easier I did create https://github.com/chiefwigms/picobrew_pico/issues/136 which should incorporate the site Pete linked to.


text:
Icons added to Main page

Icons for main page need adding in
details fo Icons component will come from: https://github.com/chingu-voyage3/grad.then/projects/3

closed by #156


text:
Fix code scanning alert - SQL query built from user-controlled sources

Tracking issue for:

[ ] https://github.com/chinkk-git/skills-introduction-to-codeql/security/code-scanning/1

asdasda


text:
install f4pga through pip and use envvars to support deprecated wrappers

Close #297.
Close #300.

LGTM

authors: tmichalak umarcor


text:
Integration test "should be able to step over declarations and assignments" occasionally fails

This has occurred twice on my laptop. Need to improve the error message and maybe provide more leniency for the test to succeed.

Have not seen this issue after adding pending support with dummy implementations.

repo: chipsenkbeil/scala-debugger-api


text:
call sqld instead

This PR calls sqld instead of trying to implement hrana in go.
It puts the burden on the user to install it, but as soon as we start publishing binaries we can download it ourselves.

Will close #431 if you all think this is a better approach (@CodingDoug @honzasp )

I like pushing as much responsibility down to the actual software rather than a simulation when possible, without adding much dev overhead.
I'm wondering though, at this point, what value is the CLI adding over just running sqld yourself? I'm sure there is room to improve going forward, but I want to be clear what exactly we intend to offer in the near term.

At this point the main thing is that we make sure the addresses are set up correctly, and provide better visibility into the sqlite file. The user can use a visible file in the local directory of their choosing, that I then link into the data/ directory of sqld, that is temporary.
A good next step is to download sqld once we have builds, and follow ups, as you suggested, are auto-downloading the schema and matching versions of databases, installing extensions, etc.

btw, one thing we can do very soon - if someone helps me with that, is add certificates so we can keep using libsql:// URLs.

I'm not sure how we could do that, we have no control over the list of trusted CAs in all clients, and no CA will give us a certificate for localhost:8080. But I'm planning to add support for ?tls=0 query string to libsql client (after the new HTTP API is implemented), then we could use libsql://localhost:8080?tls=0.

@CodingDoug I'd advocate for merging this, since it already provides one QoL feature, which is the ability of passing a local sqlite file (and then we'll handle links internally), and we can soon install sqld automatically. But would love to hear from you

@glommer Sure, let's do whatever we can do make things easier in the near term.

do you want to test drive first?
@haaawk this should also fix the build on windows, as it removes moderc.org/sqlite

do you want to test drive first?

Yes, I'll do this shortly.

Command output
I'd suggest changing this output:
For environments where a filesystem is available:
→   use file:somefile.db as a URL. This server is not needed. (Ctrl-C)
For all others environments:
→   connect to ws://127.0.0.1:8080.

Without context, it's confusing how I should act on this messaging. If my intent in running turso dev was to start a local server, I'm not clear why it would be trying to talk me out of that.
What I suggest is changing the help text for this command to the following:

$ turso dev --help
Starts a sqld emulator for local development with Turso.
If you're using a libSQL client SDK that supports SQLite database files on the local filesystem, then you might not need this server at all.  Instead, you can use a file: URL with the path to the file you want the SDK to read and write.

The change the normal output:

$ turso dev
sqld emulator listening on port 8080. Use the this URL to configure your libSQL client SDK for local development:
ws://127.0.0.1:8080

[persistence-message]

[persistence-message] can be either:

This server is using an in-memory database. Changes will be lost when this server stops. If you want to persist changes, use --db-file to specify a SQLite database file instead.

or:

Using database file [db-file]

Command line args
Suggest using --db-file with short flag -f instead of --local-file.  Files are implicitly local for the developer.
Suggest adding -p as a short flag for --port.
--verbose doesn't appear to do anything.  Minimally I'd like to see a record of each incoming request so I know it's working, maybe even each JSON payload.
turso db shell
The shell does not work with 127.0.0.1 or localhost URLs.  This is unexpected. It errors with:

Error: hostname 'localhost' not found

I thought this used to work for running against other local sqld. Maybe something bad happened in #419?

I'll also remove verbose for now. We won't have the necessary level of control over the sqld verbosity level without patching it, so that's for later, best case.  All we can do at the moment is increase the rust log level from error to info, debug or trace, but that will print. a lot of unrelated stuff.

I don't think the issues with localhost are really solvable from our side.
It seems the client is always trying the ipv6 address on the mac, even though the hosts file lists both.
the shell issue was fixed.

Ok, to support both localhost and 127.0.0.1 on mac, we'd have to patch sqld to accept more than one listen-addr for the server, and explicitly listen on both 127.0.0.1:8080 and [::1]:8080.
If I listen on the latter, then localhost works (but 127.0.0.1 doesn't)

127.0.0.1 works fine for me. We can assume the user will copy the provided URL, and the server of course do whatever it's coded to do (listen on 127.0.0.1).

authors: CodingDoug glommer honzasp

repo: chiselstrike/turso-cli


text:
Maximum call stack size exceeded "Range" mode, via onChange event handler.

Maximum call stack size exceeded for "Range" mode on subsequent calls when binding a onChange event on it.
JSFiddle is included below, here are the steps :
JS, on ready :

init flatpickr instance(s)
add onChange event handler (in my use case, via jQuery)

User input :

click on range mode picker, opens up the widget
select 1st date
select 2nd date (widget closes, selection is complete)
click again on the same picker, opens up the widget
select 1st date, and then the onChange event is fired indefinitely, until stack overflow.

Reproduction Link
https://jsfiddle.net/g065szva/10/
Your Environment

flatpickr version used:
2.6.3
Browser name and version:
Chrome 58.0.3029.110
OS and version:
Windows 7 Pro SP1 x64

Notes
Somewhat related : #828
If I'm not handling events the right way and it's what's causing this issue, could you please update the documentation on your website with a viable approach to this problem, either with vanilla JS or jQuery event listener?
Thanks a lot Gregory, your help is appreciated as always.

Hello @cyrilmesvayn
This is an easy fix.
On line 42, instead of
this._flatpickr.setDate(e.target.value,;

do
this._flatpickr.setDate(e.target.value, false);

https://jsfiddle.net/g065szva/11/

authors: chmln cyrilmesvayn

repo: chmln/flatpickr


text:
inline:true not working in vue2

When passing the option "inline:true", I get the error vue.common.js:469 TypeError: Cannot read property 'insertBefore' of null
Note: passing other options like enableTime work just fine

My element looks like this:

     When do you want to send this campaign?
      <input type="text" v-model="campaign.time_exact" v-flatpickr="fpOptions" />

Using a custom directive @chmln  https://gist.github.com/chmln/e77b52cf0a719e18233ca7948be8fab4
fpOptions: {
                    // flatpickr options
                    utc: false,

                    enableTime: true,
                    inline: true,
                    time_24hr: true,
                    locale: {
                        firstDayOfWeek: 1
                    },
                    onChange: function(selectedDates, dateStr, instance){
                        that.setDate(new Date(dateStr))
                    }
                }

Looking at flatpickr, the implementation where the error occurs looks like this
if (self.config.inline && !customAppend) {
	return self.element.parentNode.insertBefore(self.calendarContainer, self._input.nextSibling);
}

By my logic, there should be a parentNode that isn't null.
Your Environment

flatpickr version used: latest
Browser name and version: chrome latest
OS and version: macos latest

@iamgoodbytes
Can you try this Vue.js component for flatPickr -
https://github.com/ankurk91/vue-flatpickr-component

Hello,
This also looks more like an issue with vue's directives.
Please try using the component mentioned above or just flatpickr without directives.
If you still run into problems, feel free to reopen the issue.

authors: ankurk91 chmln iamgoodbytes


text:
RFP - switchhosts

Checklist

[x] The package I am requesting does not already exist on https://chocolatey.org/packages;
[x] There is no open issue for this package;
[x] The issue title starts with 'RFP - ';
[x] The download URL is public and not locked behind a paywall / login;

Package Details
Software project URL : https://swh.app/
Direct download URL for the software / installer : https://github.com/oldj/SwitchHosts/releases/download/v4.0.2/SwitchHosts_installer_4.0.2.6057.exe
Software summary / short description: Host File Manager

I pick up this package :slightly_smiling_face:
I actually already have created a Chocolatey package which is currently waiting for the review of Moderators :wink:

This package has been reviewed and approved by @TheCakeIsNaOH :slightly_smiling_face:

It looks like the package is not using the 64-bits installer.
The chocolateyInstall.ps1 in switchhosts.4.1.2.nupkg refers to SwitchHosts_windows_installer_4.1.2.6086.exe.
Is it on purpose or a bug I should report?

@C-Duv Please contact the maintainer about this.

authors: BrandonKMLee C-Duv Xav83 pauby


text:
RFP - ROCCAT Swarm

Checklist

[x] The package I am requesting does not already exist on https://chocolatey.org/packages;
[x] There is no open issue for this package;
[x] The issue title starts 'RFP - ';
[x] The download URL is public and not locked behind a paywall / login;

Package Details
Software project URL : https://en.roccat.org/Support/Product/ROCCAT-Swarm
Direct download URL for the software / installer : https://en.roccat.org/software/ROCCAT-Swarm/roccat-swarm-v19361-v1.zip
Software summary / short description: Peripheral management and configuration utility for Roccat branded hardware. Supports most Roccat mice, keyboards, headsets, and mousepads,

I've got this one, please assign to me. Cheers!

@Cossey Done. Please keep us updated on when this is submitted and approved.

This might take a few days, as whoever creates/distributes this software is an idiot and distributes the installer exe inside of a zip file (which only reduces the file size by 800kB). Fortunately I've recorded the InstallShield .iss files needed to perform the silent install and uninstall of the software and in testing they appear to work fine. I have just been experimenting with the correct way to go about the install script.

@Cossey please refrain from name-calling. Your comment have been edited to remove this.

Package submitted here.
Passed automated checks, ready for review.

Package was approved yesterday. Should be clear to close this one out.
Thanks again @Cossey for stepping up!

Package approved.
Package will be automatically maintained via my Package Update script at github script link running on docker in a server instance in the cloud.

authors: AdmiringWorm Cossey brogers5 pauby


text:
(filezilla) fix AU update script

Description
Add headers to the filezilla installer download so it does not get blocked.
Motivation and Context
Fixes #2571
How Has this Been Tested?
Tested on Win10 and in test env
Screenshot (if appropriate, usually isn't needed):
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Migrated package (a package has been migrated from another repository)

Checklist:

[x] My code follows the code style of this repository.
[ ] My change requires a change to documentation (this usually means the notes in the description of a package).
[ ] I have updated the documentation accordingly (this usually means the notes in the description of a package).
[ ] I have updated the package description and it is less than 4000 characters.
[x] All files are up to date with the latest Contributing Guidelines
[x] The added/modified package passed install/uninstall in the Chocolatey Test Environment(https://github.com/chocolatey-community/chocolatey-test-environment/). Note that we don't support the use of any other environment.
[x] The changes only affect a single package (not including meta package).

:white_check_mark: Package verification completed without issues. PR is now pending human review

@TheCakeIsNaOH your changes have been merged. Thanks for your contribution 👍

authors: AdmiringWorm AppVeyorBot TheCakeIsNaOH


text:
PDF Creator Download Link Update

Hello I just post the updated link to the pdf creator

thank you for your contribution.
However, we are using the urls that are listed here which still uses the same url format that the current package use.
Even if the url had changed, the update script would probably need to be changed (the url is automatically inject in the install script during each appveyor update run)
as such I'm going to close this, feel free to reopen it if you disagree.

authors: AdmiringWorm tkriviradev

repo: chocolatey/chocolatey-coreteampackages


text:
(#291) Add documentation around Passphrase Encryption

This pull request adds some documentation around the new
functionality for encryption and its use of the Passphrase.
fixes #291

Are the numbered bullets not supposed to be 1. each time? I thought they were but maybe I was wrong.

Sorry, had missed this initially, and just noticed the comment now.
It doesn't really matter whether they are 1. each time, or if they are some other number.
As long as it is a number it should create a numbered list.
I can change everything to be 1 though if that is preferred.

@pauby I have updated according to your review, I also set the id of the Set the encryption passphrase for the first time header to a fixed id, so even if the header changes we don't need to update any links to it.

Awesome work @AdmiringWorm! Thanks for your contribution!

authors: AdmiringWorm pauby

repo: chocolatey/docs


text:
A blank target URL here would be nice.

That way you still have the original page left in another tab, when you go to the linked page.
Also, this link is not currently rendered as a link on this page, in my experience.

nice! good call

authors: arokem choldgraf

repo: choldgraf/textbooks-with-jupyter


text:
[JOSS Review] - PingjunChen

Hey,
I am reviewing the checklist https://github.com/openjournals/joss-reviews/issues/7022#issuecomment-2243749071. HoverFast is in good shape overall. Two minor issues:

The command line for training the model using docker/singularity in the "README/Training/Train model" part, "-l training_metrics" should be "-o training_metrics".
"scikit-learn’s [@scikit-learn] regionprops and watershed" inside paper/paper.md should be scikit-image.

Hi @PingjunChen,
Thank you very much for your feedback. I have made the necessary modifications and recompiled the paper to verify if it's working. Please let me know if there are any other points you would like to address.

authors: JulienMassonnet PingjunChen

repo: choosehappy/HoverFast


text:
android.widget.ImageView$ScaleType uk.co.senab.photoview' on a null object reference

java.lang.NullPointerException
Attempt to invoke virtual method 'android.widget.ImageView$ScaleType uk.co.senab.photoview.d.h()' on a null object reference
uk.co.senab.photoview.PhotoView.getScaleType(Unknown Source)
com.bumptech.glide.e.a(Unknown Source)
com.bumptech.glide.c.a(Unknown Source)
when i display photoview in dialog use glide occasionally get NullPointerException,
version:1.3.1

i has fixed this Exception , in an async method to set bitmap to PhotoView,this time dialog has dimss throw this exception

repo: chrisbanes/PhotoView


text:
should not add generated statistics to assets

When adding Visualizer to the webpack plugins the generated html file is also listed as an emitted asset and thus triggers a warning about exceeding the recommended asset size limit. Is there a way to remove it from that ?

great ! thanks.

repo: chrisbateman/webpack-visualizer


text:
Library endpoints fail when no plex is connected or channels exist

If you click either of these links as a new account

you get this:

Based on the error in the logs I think this is a dupe of #158 (the server crashed and we can't connect)

authors: chrisbenincasa markdavella

repo: chrisbenincasa/tunarr

license: Zlib


text:
Attribute textStyle not work.

Hy, I have a question for you:

When I customize a TextView with a custom font, is not possibile set textStyle attribute? TextStyle not work.

How can I use text style attribute with your library?
<TextView
android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textStyle=”bold”
android:textAppearance="@style/TextAppearance.FontPath"/>
The attibute textStyle don't change the style of the text.
Thanks for your support,

dup: #46

authors: chrisjenx rgarau

repo: chrisjenx/Calligraphy


text:
[Events] Add missing actor label in eventActorShow.js

I was looking at the code to get some understanding of GBVM and noticed eventActorShow was missing a label as opposed to eventActorHide. I just added it back.

Good spot, thanks!

authors: ReyAnthony chrismaltby

repo: chrismaltby/gb-studio


text:
Opening the console make the editor read-only

When you open the Chrome console, the whole editor becomes read-only. I dont know if that's an expected behaviour, but I that's quite disturbing.
Steps to reproduce

Create a new bin
Open the Chrome console
Try to type something

Informations

Chrome Version 49.0.2623.112 (64-bit)
OSX Version 10.11.3

I tried to reproduce this into Firefox and Safari, and I couldn't. It seems to be linked to Chrome only.

Hi! Thanks for reporting. It might be because it goes into "mobile mode". This will be changed in next version. It has to do with the width of the screen :-)

Indeed, this is it. I didn't try to resize the console, but it works as normal when the console is not that large. 👍

authors: antoinerey christianalfoni

repo: christianalfoni/webpack-bin


text:
TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/81424

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/82519

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/82636

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/83462