Unable to convert and preview the converted resolution on the main site

Hi @Losses, is there any file size or resolution limit on your site? I'm unable to convert my 8k texture into basis and its taking forever.
Edit :  I downloaded this repo, tried to run it locally and now its giving me following error logs
Compiled with problems:X

ERROR in src/pages/Encoder/Components/DownloadAllButton.tsx:42:11

TS2769: No overload matches this call.
  Overload 1 of 4, '(path: string, data: null, options?: (JSZipFileOptions & { dir: true; }) | undefined): JSZip', gave the following error.
    Argument of type 'Blob' is not assignable to parameter of type 'null'.
  Overload 2 of 4, '(path: string, data: string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream | Promise<string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream>, options?: JSZipFileOptions | undefined): JSZip', gave the following error.
    Argument of type '{ binary: boolean; compression: string; }' is not assignable to parameter of type 'JSZipFileOptions'.
      Types of property 'compression' are incompatible.
        Type 'string' is not assignable to type 'Compression | undefined'.
    40 |
    41 |           const { imageBlob } = await file.addPadding(resizeParams);
  > 42 |           zip.file(`original/${name}.png`, imageBlob, COMPRESSION_PARAMETER);
       |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    43 |
    44 |           if (!file.basisTextureBlob) continue;
    45 |           zip.file(

ERROR in src/pages/Encoder/Components/DownloadAllButton.tsx:45:11

TS2769: No overload matches this call.
  Overload 1 of 4, '(path: string, data: null, options?: (JSZipFileOptions & { dir: true; }) | undefined): JSZip', gave the following error.
    Argument of type 'Uint8Array' is not assignable to parameter of type 'null'.
  Overload 2 of 4, '(path: string, data: string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream | Promise<string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream>, options?: JSZipFileOptions | undefined): JSZip', gave the following error.
    Argument of type '{ binary: boolean; compression: string; }' is not assignable to parameter of type 'JSZipFileOptions'.
    43 |
    44 |           if (!file.basisTextureBlob) continue;
  > 45 |           zip.file(
       |           ^^^^^^^^^
  > 46 |             `basis/${name}.${file.container === 'BASIS' ? 'basis' : 'ktx2'}`,
       | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  > 47 |             file.basisTextureBlob,
       | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  > 48 |             COMPRESSION_PARAMETER
       | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  > 49 |           );
       | ^^^^^^^^^^^^
    50 |
    51 |           if (!file.compressedPngBlob) {
    52 |             await file.generatePreview(false);

ERROR in src/pages/Encoder/Components/DownloadAllButton.tsx:55:11

TS2769: No overload matches this call.
  Overload 1 of 4, '(path: string, data: null, options?: (JSZipFileOptions & { dir: true; }) | undefined): JSZip', gave the following error.
    Argument of type 'Blob' is not assignable to parameter of type 'null'.
  Overload 2 of 4, '(path: string, data: string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream | Promise<string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream>, options?: JSZipFileOptions | undefined): JSZip', gave the following error.
    Argument of type '{ binary: boolean; compression: string; }' is not assignable to parameter of type 'JSZipFileOptions'.
    53 |           }
    54 |
  > 55 |           zip.file(`preview/${name}.png`, file.compressedPngBlob!, COMPRESSION_PARAMETER);
       |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    56 |         }
    57 |
    58 |         if (atlasParams.atlas) {

ERROR in src/pages/Encoder/Components/DownloadAllButton.tsx:79:13

TS2769: No overload matches this call.
  Overload 1 of 4, '(path: string, data: null, options?: (JSZipFileOptions & { dir: true; }) | undefined): JSZip', gave the following error.
    Argument of type 'Blob' is not assignable to parameter of type 'null'.
  Overload 2 of 4, '(path: string, data: string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream | Promise<string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream>, options?: JSZipFileOptions | undefined): JSZip', gave the following error.
    Argument of type '{ binary: boolean; compression: string; }' is not assignable to parameter of type 'JSZipFileOptions'.
    77 |             }
    78 |
  > 79 |             zip.file(
       |             ^^^^^^^^^
  > 80 |               `atlas/atlas-${i}.png`,
       | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  > 81 |               blob as Blob,
       | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  > 82 |               COMPRESSION_PARAMETER
       | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  > 83 |             );
       | ^^^^^^^^^^^^^^
    84 |             zip.file(`atlas/atlas-${i}.json`, JSON.stringify({ frames: data, meta: atlasMeta }), COMPRESSION_PARAMETER);
    85 |           }
    86 |         }

ERROR in src/pages/Encoder/Components/DownloadAllButton.tsx:84:13

TS2769: No overload matches this call.
  Overload 1 of 4, '(path: string, data: null, options?: (JSZipFileOptions & { dir: true; }) | undefined): JSZip', gave the following error.
    Argument of type 'string' is not assignable to parameter of type 'null'.
  Overload 2 of 4, '(path: string, data: string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream | Promise<string | number[] | Blob | ArrayBuffer | Uint8Array | ReadableStream>, options?: JSZipFileOptions | undefined): JSZip', gave the following error.
    Argument of type '{ binary: boolean; compression: string; }' is not assignable to parameter of type 'JSZipFileOptions'.
    82 |               COMPRESSION_PARAMETER
    83 |             );
  > 84 |             zip.file(`atlas/atlas-${i}.json`, JSON.stringify({ frames: data, meta: atlasMeta }), COMPRESSION_PARAMETER);
       |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    85 |           }
    86 |         }
    87 |

Hi, thank you for the issue.
For the general practice, it's not recommended to use such a large texture for your project since it will cause a pretty high GPU memory pressure. Consider split it into several small images if possible.
Let's get back to the question you submitted, I don't have a clear cue about it, but here are some guesses. All texture compression tasks are executed locally in your browser, I think you hit the memory limit of the browser and it got killed by the OOM mechanism of the browser.
Since the limit for browser is stricter than the operating system. If you are pretty sure about the requirement, I would recommend you try the command line version of the converter: https://github.com/BinomialLLC/basis_universal. They are underlying using the same logic.
About the typing error you submitted, I think there could be some typing mistake, I will try to fix them later. If you want to try these features without being bothered by the error, consider adding the ts-ignore and ts-nocheck flag.

I wish I could lower my texture resolution but what I'm doing makes it necessary. Otherwise, so far with lower 2,4k it was not looking good. Now I'm indeed using that basisu cli and its working pretty good. Also, I'm surprised to see how efficient this .ktx2 and .basis format is. Earlier it was lagging a bit with webp image but now I'm using 16k image and its still working perfectly. Although, I'll lower the texture to 4k for mobile because as of now its not getting it rendered except the black screen.
If you want can try this demo on laptop (its still in development as of today) : https://experientia.in/nasa-black-marble

I wish I could lower my texture resolution but what I'm doing makes it necessary. Otherwise, so far with lower 2,4k it was not looking good. Now I'm indeed using that basisu cli and its working pretty good. Also, I'm surprised to see how efficient this .ktx2 and .basis format is. Earlier it was lagging a bit with webp image but now I'm using 16k image and its working perfectly. Although, I'll lower the texture to 4k for mobile because as of now its not getting it rendered except the black screen.
If you want can try this demo on laptop (its still in development as of today) : https://experientia.in/nasa-black-marble

Thank you for the response, it's a great honor to help you to solve the problem. Your demo is impressive, and I'm really appreciative for that.
I'd close this issue for now. If you have any further question, please don't hesitate to ask.


MINIFI-513 Clear secret key when auto restarting in order to obtain n…

…ew secret key from the MiNiFi process
Thank you for submitting a contribution to Apache NiFi - MiNiFi.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[ ] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[ ] Does your PR title start with MINIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[ ] Has your PR been rebased against the latest commit within the target branch (typically master)?

[ ] Is your initial contribution a single, squashed commit?

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi-minifi folder?
[ ] Have you written or updated unit tests to verify your changes?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under minifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under minifi-assembly?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

reviewing

verified expected behavior in minifi with reloads, +1


[EngSys] Stage fails if linter does not succeed

On the lint step of Analyze, if the exit code is not 0 this step will fail.

closes #15033

/azp run go - tables - ci

@jhendrixMSFT I was able to confirm that this change will fail a pipeline step if lint does not pass. Tested it on tables here.


feat:activity tab first

What does this PR do and why?
Provide a description of what this PR does. Link to any relevant GitHub issues, Notion tasks or Discord discussions.
Screenshots or screen recordings
If applicable, provide screenshots or screen recordings to demonstrate the changes.
Acceptance checklist

[ ] I have evaluated the Approval Guidelines for this PR.
[ ] (if relevant) I have tested this PR in all supported browsers.
[ ] (if relevant) I have tested this PR in dark mode and light mode (if applicable).

Current dependencies on/for this PR:

main

PR #3708

PR #3709

PR #3710

PR #3711

PR #3712

PR #3713

PR #3714   👈

This comment was auto-generated by Graphite.

@wraeth-eth started a stack merge that includes this pull request via Graphite.

Graphite rebased this pull request as part of a merge.


Remove pkg_resources module

As the setuptools dependency was removed, the pkg_resources-module is no longer available to Moto.
This PR rewrites all functionality that depended on pkg_resources, to instead use the importlib_metadata and pgkdata-modules.
It also explicitly removes the pkg_resources-module from the dependency test, to ensure it works.
(Note: XRay has an implicit dependency on pkg_resources, so we're adding setuptools back to that module only.)
(Note 2: For Py3.8, we could start using the buildin importlib.metadata, but for we'll need the backport for 3.6 and 3.7.)
Successful dependency test: https://github.com/bblommers/moto/runs/3253699280?check_suite_focus=true

yay! thanks!

Nice!  I had recommended setuptools be vanquished.. it's nice to see this was resolved.


Is it possible to validate response schema with speccy tool.

Hello All,
Currently I am able to validate my API specification which is in OpenAPI 3.0 format with default and custom rules. But wanted to validate response too with speccy tool. For example in my specification I have schema's under responses which return data, so I want to validate the schema's with data.
How to do with speccy tool any thoughts?

Hey, sorry I'm not sure what you mean? Are you talking about doing something like this?
https://blog.apisyouwonthate.com/tricking-colleagues-into-writing-documentation-via-contract-testing-206308b47e05

JSON Matchers is just a thin assertion layer around a JSON Schema validator.
You can use a JSON Schema validator for whatever language you like: http://json-schema.org/implementations.html
Or you can either use an OpenAPI validator for whatever language you like: http://openapi.tools/


The other crates doesn't have many generics (I don't like to abuse generic anyway.), but still worth to checkout.

 Not much to improve on atm.


Lowercase

Resolves #14 by allowing conversion of themes and plugin names to lower case for wpvulndb

OK I've tested this manually and it works when I use the option for a site using the Avada theme, and also fails as expected when not using the argument. I haven't written any tests as not sure how to approach that.

Thnx for your PR. Very toughtfull to prevent any possible BC break by adding a flag, thnx!


Support for pulumi.com/reconciliation-request

One of the features of Stack is support for the Flux on-demand reconciliation protocol (ref), based on pulumi.com/reconciliation-request annotation.
The intention is to force a stack update when the stack is in a ready state, independent of the branch polling and periodic resyncs. As an annotation, the stack generation does not change. The workspace needn't be replaced, which notably happens whenever generation does change.  The last update should incorporate the annotation value.
The "prerequisites" feature leverages this feature when the SucceededWithinDuration field on a given prerequisite is set.  The field is proactive in nature; for example, given that stack A depends on stack B, a value of 5m on A will force a resync of stack B every 5 minutes even if B doesn't use periodic resync. A more "passive" (assumedly incorrect) interpretation of the feature, would be to check that B was recently synced while relying only on the natural causes of resync. See also: https://github.com/pulumi/pulumi-kubernetes-operator/pull/443
	// SucceededWithinDuration gives a duration within which the prerequisite must have reached a
	// succeeded state; e.g., "1h" means "the prerequisite must be successful, and have become so in
	// the last hour". Fields (should there ever be more than one) are not intended to be mutually
	// exclusive.
	SucceededWithinDuration *metav1.Duration `json:"succeededWithinDuration,omitempty"`

Added to epic https://github.com/pulumi/pulumi-kubernetes-operator/issues/586

Confirmed with @rquitales two assumptions:

pulumi.com/reconciliation-request is designed to force a re-sync (i.e. pulumi up), e.g. to update a stack output or to update a Kubernetes Secret.
RequirementSpec.SucceededWithinDuration is designed to assertively re-sync the dependency.

Another thought: when the prerequisite stack is failing, it would be counter-productive to keep touching its annotation. The prerequisite stack may have a backoff in effect (see https://github.com/pulumi/pulumi-kubernetes-operator/issues/677), and one wouldn't want to interfere.

Closing this issue will also close: https://github.com/pulumi/pulumi-kubernetes-operator/issues/398

Some example manifests for exercising the prerequisites feature.  In this case, we would expect the "child" stacks to force the "parent" stack to be re-synced periodically.

Apply parent stack, and observe that it syncs once and then idles.
Apply child-1 stack, and observe that it syncs each minute (due to continueResyncOnCommitMatch), and that parent syncs each five minutes (due to succeededWithinDuration on child-1).
Apply child-2 stack, and observe that it syncs each minute (due to continueResyncOnCommitMatch), and that parent syncs more frequently than before, each minute (due to succeededWithinDuration on child-2).

Use kubectl get events --watch to watch for syncs.
parent.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: prereqs
  namespace: default
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: prereqs:system:auth-delegator
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: system:auth-delegator
subjects:
- kind: ServiceAccount
  name: prereqs
  namespace: default
---
apiVersion: pulumi.com/v1
kind: Stack
metadata:
  name: parent
  namespace: default
spec:
  serviceAccountName: prereqs
  fluxSource:
    sourceRef:
      apiVersion: source.toolkit.fluxcd.io/v1
      kind: GitRepository
      name: pulumi-examples
    dir: random-yaml/
  stack: parent
  continueResyncOnCommitMatch: false
  destroyOnFinalize: true
  envRefs:
    PULUMI_ACCESS_TOKEN:
      type: Secret
      secret:
        name: pulumi-api-secret
        key: accessToken

child-1.yaml
apiVersion: pulumi.com/v1
kind: Stack
metadata:
  name: child-1
  namespace: default
spec:
  prerequisites:
    - name: parent
      requirement:
        succeededWithinDuration: 5m
  serviceAccountName: prereqs
  fluxSource:
    sourceRef:
      apiVersion: source.toolkit.fluxcd.io/v1
      kind: GitRepository
      name: pulumi-examples
    dir: random-yaml/
  stack: child-1
  continueResyncOnCommitMatch: true
  resyncFrequencySeconds: 60
  destroyOnFinalize: true
  envRefs:
    PULUMI_ACCESS_TOKEN:
      type: Secret
      secret:
        name: pulumi-api-secret
        key: accessToken

child-2.yaml
apiVersion: pulumi.com/v1
kind: Stack
metadata:
  name: child-2
  namespace: default
spec:
  prerequisites:
    - name: parent
      requirement:
        succeededWithinDuration: 1m
  serviceAccountName: prereqs
  fluxSource:
    sourceRef:
      apiVersion: source.toolkit.fluxcd.io/v1
      kind: GitRepository
      name: pulumi-examples
    dir: random-yaml/
  stack: child-2
  continueResyncOnCommitMatch: true
  resyncFrequencySeconds: 60
  destroyOnFinalize: true
  envRefs:
    PULUMI_ACCESS_TOKEN:
      type: Secret
      secret:
        name: pulumi-api-secret
        key: accessToken


Extension of ModelCIF for AF3 quality estimates

Related to #20 and the issues mentioned in there, I would suggest to extend ModelCIF to capture all new types of quality estimates introduced with AlphaFold 3 (AF3). I also had a look at RoseTTAFold-AllAtom and the suggestions below would also capture anything needed there. I also believe that this should cover anything needed for https://github.com/chaidiscovery/chai-lab/issues/52. Here is my suggested additions:

Extend _ma_qa_metric.type to include:

"pLDDT to polymer" with detailed description "confidence score predicting accuracy according to lDDT with distances from each atom to CA or C1' of nearby polymer residues in [0,100]"
"boolean" with detailed description "0 or 1 depending on whether a check passed (1) or not (0)."

Extend _ma_qa_metric.mode to include "per-chain", "per-chain-pairwise", "per-atom" and "per-atom-pairwise" (and yes I know it's a bit unfortunate that we used "local" for "per-residue" but ok...)
New _ma_qa_metric_per_chain same as _ma_qa_metric_local but without label_comp_id and label_seq_id
New _ma_qa_metric_per_chain_pairwise same as _ma_qa_metric_local_pairwise but without label_comp_id* and label_seq_id*
New _ma_qa_metric_per_atom same as _ma_qa_metric_local but using atom_id (linked to _atom_site.id) instead of model_id and label_*
New _ma_qa_metric_per_atom_pairwise same as _ma_qa_metric_local_pairwise but but using atom_id_1 and atom_id_2 (linked to _atom_site.id) instead of model_id and label_*

Concretely for AF3 output (e.g. looking at the JSON files in one of their examples) here is how each of the scores would map to a _ma_qa_metric.mode and .type:

fraction_disordered: "global", "normalized score"
has_clash: "global", "boolean"
iptm: "global", "ipTM"
ptm: "global", "pTM"
ranking_score: "global", "normalized score"
chain_ptm: "per-chain", "pTM"
chain_iptm: "per-chain", "ipTM"
chain_pair_iptm: "per-chain-pairwise", "ipTM"
chain_pair_pae_min: "per-chain-pairwise", "PAE"
atom_plddts: "per-atom", "pLDDT to polymer"
contact_probs: "per-atom-pairwise", "contact probability"
pae: "per-atom-pairwise", "PAE"

Some caveats to consider:

contact_probs and pae above are defined per "token" pair, where a token is either a full residue (for standard amino and nucleic acids) or a single atom otherwise. In AF3, the per-residue tokens have a well defined "token centre atom" (CA for standard amino acids, C1' for standard nucleotides) which could be used in per-atom scores but this may be confusing.
The "per-chain" scores also apply to non-polymers which may be a confusing naming. Technically "per-asym-id" is more correct although that may be only understandable by mmCIF experts.
For future applications in physics-based docking tools, we need to make sure that local scores can identify water molecules. In PDB those all share label_asym_id and do not have a label_seq_id and one could also change that to giving them separate label_asym_id in ModelCIF to fix this.

Alternative to the above (which simplifies some things and handles the per token scores):

Extend _ma_qa_metric_local and _ma_qa_metric_local_pairwise to include label_atom_id (linked to _atom_site.label_atom_id) which can be set to '.' for per-residue scores.
One could also handle per-chain scores by allowing label_comp_id and label_seq_id to be set to '.'.
With appropriate updates to the category and item descriptions, all types of local scores could be handled by the _ma_qa_metric_local and _ma_qa_metric_local_pairwise tables and no additional tables or _ma_qa_metric.mode values would be necessary.

@brindakv what are your thoughts on this?

Notes from discussions with @benmwebb , @brindakv and @aozalevsky (on Oct. 16):

Not good to add link to _atom_site.label_atom_id to _ma_qa_metric_local and _ma_qa_metric_local_pairwise as it overloads the tables and still doesn't enable clean handling of non-polymers (which is critical for AF3)
Alternative discarded suggestion was to link to _atom_site.id with a flag for granularity (atom, residue or chain). Pro: easy to use and look at. Con: cannot generalize to other features (e.g. residue ranges, domains, ...) and ambiguous on how to define (e.g. which atom to pick).
Preferred solution is to use features as in IHM's _ihm_feature_list

Example AF3 output (cut to only include one model instead of 5): fold_test_fold_job_number_one_cut.zip. Info on content:

fold_test_fold_job_number_one_job_request.json is input to AF3 (can be uploaded to the AF-Server)
fold_test_fold_job_number_one_model_0.cif is a (not 100% compliant) ModelCIF file. Note that copies of the same molecule (HEM, MG, and NA in this example) are handled with multiple identical molecular entities (instead of a single entity with multiple instances).
fold_test_fold_job_number_one_summary_confidences_0.json contains global, per-chain and per-chain-pair scores (see "Summary outputs" in AF-server-FAQ). Note that some values can be "null".
fold_test_fold_job_number_one_full_data_0.json contains the per-atom pLDDT and per-token-pair PAE and contact probabilities (see "Full array outputs" in AF-server-FAQ). Tokens are either a full residue (for standard amino and nucleic acids) or a single atom otherwise. Order of values is implicit according to order in atom_site of .cif file.
Chains in the model:

A: polymer (polypeptide; seq: "PREACHINGS"), residues 1 and 5 modified (HY3, P1L)
B: polymer (polypeptide; seq: "REACHER")
C: non-polymer (ATP)
D: non-polymer (HEM)
E: non-polymer (HEM)
F: non-polymer (MG)
G: non-polymer (MG)
H: non-polymer (NA)
I: non-polymer (NA)
J: non-polymer (NA)
K: polymer (polydeoxyribonucleotide; seq: "GATTACA"), residues 1 and 2 modified (6OG, 6MA)
L: polymer (polydeoxyribonucleotide; seq: "TGTAATC")
M: polymer (polyribonucleotide; seq: "GUAC"), residues 1 and 4 modified (2MG, 5MC)
N: branched (NAG-NAG-BMA)
O: branched (BMA)

Suggested ModelCIF extension:

Extend _ma_qa_metric.type as in first comment
Extend _ma_qa_metric.mode to include "per-feature" and "per-feature-pair"
New _ma_feature_list exactly like _ihm_feature_list except "branched" added to entity_type and feature_type which should include the following controlled vocabulary:

atom: "feature is an atom or a set of atoms for any entity type"
residue: "feature is a residue or a set of residues from a polymeric entity"
asym_id: "feature is an instance of a molecular entity"

New _ma_atom_feature category:

Description: "Data items in this category provide the definitions required to select specific atoms (independently of entity type)."
Items:

ordinal_id (key): "A unique identifier for the category."
feature_id (mandatory): "An identifier for the selected feature. This data item is a pointer to _ma_feature_list.feature_id in the MA_FEATURE_LIST category."
atom_id (mandatory): "The identifier of the atom. This data item is a pointer to _atom_site.id in the ATOM_SITE category."

New _ma_poly_residue_feature category:

Description: "Data items in this category provide the definitions required to select specific polymer residues."
Items (similar to ma_qa_metric_local):

ordinal_id (key): "A unique identifier for the category."
feature_id (mandatory): "An identifier for the selected feature. This data item is a pointer to _ma_feature_list.feature_id in the MA_FEATURE_LIST category."
label_asym_id (mandatory): "The identifier for the asym id of the residue in the structural model. This data item is a pointer to _atom_site.label_asym_id in the ATOM_SITE category."
label_comp_id (mandatory): "The component identifier for the residue in the structural model. This data item is a pointer to _atom_site.label_comp_id in the ATOM_SITE category."
label_seq_id (mandatory): "The identifier for the sequence index of the residue in the structural model. This data item is a pointer to _atom_site.label_seq_id in the ATOM_SITE category."

New _ma_asym_id_feature category:

Description: "Data items in this category provide the definitions required to select specific instances of a molecular entity (e.g. a polymer chain or a copy of a non-polymer)."
Items (similar to _ma_poly_residue_feature):

ordinal_id (key): "A unique identifier for the category."
feature_id (mandatory): "An identifier for the selected feature. This data item is a pointer to _ma_feature_list.feature_id in the MA_FEATURE_LIST category."
label_asym_id (mandatory): "The identifier for the asym id of the residue in the structural model. This data item is a pointer to _atom_site.label_asym_id in the ATOM_SITE category."

New _ma_qa_metric_feature category (similar to ma_qa_metric_local):

Description: "Data items in this category capture local QA metrics calculated per feature (as defined in _ma_feature_list)."
Items:

ordinal_id (key), metric_id, metric_value, model_id (all mandatory) exactly as in ma_qa_metric_local
feature_id (mandatory): "The identifier for the feature, for which local QA metric is provided. This data item is a pointer to _ma_feature_list.feature_id in the MA_FEATURE_LIST category."

New _ma_qa_metric_feature_pairwise category (similar to ma_qa_metric_local_pairwise):

Description: "Data items in this category capture local QA metrics calculated per pair of features (as defined in _ma_feature_list)."
Items:

ordinal_id (key), metric_id, metric_value, model_id (all mandatory) exactly as in ma_qa_metric_local_pairwise
feature_id_1 (mandatory): "The identifier for the first feature in the pair, for which local QA metric is provided. This data item is a pointer to _ma_feature_list.feature_id in the MA_FEATURE_LIST category."
feature_id_2 (mandatory): "The identifier for the second feature in the pair, for which local QA metric is provided. This data item is a pointer to _ma_feature_list.feature_id in the MA_FEATURE_LIST category."

Note: if it is preferred to use something else instead of "asym_id" in the category name and feature_type, that's also ok...

@gtauriello, I just wanted to follow up on this. With AF3 code and weights being released and with the recent addition of restraints to Chai-1, we can expect rapid growth in the number of deposited models. Would be nice to have the scores in those models.

I agree. @brindakv was waiting for me to decide on a separate issue that we wanted to address in the same ModelCIF update and now I added that here as issue #23 . Hence, I think that she can now do the updates according to the open issues here.
Afterwards, we can try to suggest changes in alphafold3/model/mmcif_metadata.py to include this (and check if other things are invalid in their files).

@gtauriello please clarify my questions below.

Do we need _ma_poly_residue_feature considering that ma_qa_metric_local sort of already handles it? The difference would be the ability to assign multiple residues to a feature. If this is a use case, then we can add it.
Do we want ma_feature_list.feature_type to support contiguous residue ranges? If yes, then _ma_poly_residue_feature can have begin and end data items for seq_id and comp_id.
What is the use case for ma_qa_metric.type = boolean? Should this be a separate data item elsewhere rather than an enumeration of ma_qa_metric.type?

Thanks for clarifying @gtauriello.

The default ranking score in AF3 is calculated as 0.8 × ipTM + 0.2 × pTM + 0.5 × disorder − 100 × has_clash. I would like to be able to properly store all components of that and has_clash is a boolean pass/fail score (1 = pass, 0 = fail).

Should the enumeration for ma_qa_metric.type be has_clash or boolean?

@gtauriello I suggest we add enumerations to _ma_associated_archive_file_details.file_content and _ma_entry_associated_files.file_content.
It can be generic (QA metrics) and or specific (feature-based QA scores).

For ma_qa_metric.type the new type should be boolean with the description as in the first comment of this issue.
For file_content: I had not noticed that one but it is an excellent point. I would go for the generic (QA metrics) option and add a note for local pairwise QA scores that this is deprecated in favor of QA metrics.

Thanks @gtauriello. Updates have been committed, please see https://github.com/ihmwg/ModelCIF/pull/25.


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-main" workflow

AWS CodeBuild CI Report

CodeBuild project: DDKIntegrationTestsD8472609-5SCHWjldmWcf
Commit ID: 0ac37e9929934b0099f63be93e9de1285f54b1c5
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


Add line_profiler to benchmarking page

https://github.com/pyutils/line_profiler

closing as this was fixed in https://github.com/UCL-ARC/python-tooling/pull/53


Top-level API for time grouping

This package has a growing number of methods that rely on a DateTimeIndex inside the estimators. I'm beginning to think this design decision is complicating the implementation of individual methods (see @dgergel's great and persistent attempts in #28 as an example) and that we should consider stepping back from the current approach. The use DateTimeIndexes inside the estimators is also the primary divergence from full scikit-learn integration. In this issue, I'll propose a new top-level API that supports using time indexes for grouped training/prediction outside individual regressors/transformers.
I'll start by outlining a few common time-grouping approaches:

Group-by day-of-year or month - These are the simplest to implement using out-of-the-box functionality in both Xarray and Pandas
Padded and/or windowed groups based on day-of-year or month - @jukent's Zscore method and @dgergel's NASA-NEX BCSD (#28) method use variations on padded day-of-year groupers. Additionally, the reference implementation of ARRM (see #42) also uses a +/- 15 day window around month boundaries.

My proposal is that we develop (or in some cases, continue to develop) a series of grouper classes that perform these (sometimes) esoteric grouping operations and that we utilize these grouper classes with an API object that supports training and prediction.
The grouper concept may look something like this:

index = ds.indexes['time']
# or
index = df.index

group_iter = PaddedDOYGrouper(index, window=15)

under the hood, these groupers would support iteration like this...
# pandas
for inds in group_iter:
    df_group = df.iloc[inds]

# xarray
for inds in group_iter:
    ds_group = ds.isel(time=inds)

We could then write a simple model API that combines the grouper object with a proper sklearn-compatible regressors/pipelines:

arrm_model = GroupedRegressor(estimator=PiecewiseLinearRegression, grouper=PaddedDOYGrouper)

arrm_model.fit(X_df, y_df)  # -> fits multiple PiecewiseLinearRegression for each group produced by the grouper
...

If done correctly, I think we can share the Groupers between Pandas and Xarray applications allowing us to use these either at the PointWiseDownscaler level or for individual points.

@jukent and @dgergel - I'm curious to hear from you on the potential feasibility of this approach for the methods you have developed here. Am I missing anything in that would keep us from executing on this sort of API?

I think this is a great idea and doable. Maybe we should set up a meeting at the end of next week?

I agree with @jukent, I think this is a great idea and a good way forward for dealing with the DatetimeIndex issues that have been getting increasingly complicated with the newer grouper classes. Maybe we can aim to schedule a call next Thursday or Friday?

@jhamman @jukent dropping this when2meet in for finding a time to discuss this either later this week or sometime next week.

I'm out of commission this week but would be happy to chat about this next week. I filled out your poll. Thanks for setting it up.

I also filled out the poll. Thanks for putting that together.


Create findmypast

Hi @Ladiesoftheweb shall I close this or are you intending to add more to this PR?


[FEATURE] Have an option to display 0dB as 100% instead of 75% in instance variable from the console

It would be great to have a way of taking the percent from the variables and doing a rounded operation to make 0dB (75%) show 100% (x1.334 for instance) as I feel it makes more sense since it's 100% on, no amp, no attenuation. That would make the old 100% as 133%, which would make more sense as we're amplifiying past unity.
I prefer dBs but this is for all my clients who don't really understand the concept and have been using consumer products that go up to 100% their whole life. I've already locked my buttons with triggers so they can't go past 0dB so 100% would be the max and would make more sense than 75% max.

All reference points changed when analog moved to digital.
It may look similar, but that value is % of the fader position, not % of the output level.
0dB is correctly at the 75% position of the fader.
It is all relative anyway since you can set input trim and power amp levels to limit the final result, so even at +10dB fader, the actual output is 75% of max.

I've actually created an even less confusing and more standard approach to my request, that use perceptual loudness % based around unity gain, you can find it bellow
#42


Cannot create union type

Hi guys,
I have a problem with the Union Type for one field, which can be either String or Number.
Here is my GraphQL Schema:
typeIntBox {
  value: Int
}

type StringBox {
  field: String
}

union FloorType = IntBox | StringBox

type Apart {
    _id: ID!
    name: String!
    price: Int!
    currency: String!
    city: String!
    district: String!
    type: String!
    firstOrLast: Boolean!
    floor: FloorType
    totalFloors: FloorType
    squares: Int!
    link: String!
    created: String!
}

I am having problem with floor and totalFloors fields, which can either number (f.e. 4 or can be string "-") and thus I have created FloorType, which contains two types, IntBox and StringBox. They both contain single value param with either string or number.
Then in my Resolver file I have defined these resolve type methods:

const resolvers: IResolvers = {
  IntBox: {
    __isTypeOf(numberField: number) {
      const newObj = {};
      newObj['value'] = numberField;
      console.log('number is', numberField);
      return 'IntType';
    },
  },
  StringBox: {
    __isTypeOf(object: string) {
      const newObj = {};
      newObj['field'] = object;
      console.log('string', object);
      return object;
    },
  },
  FloorType: {
    __resolveType(obj: any) {
      if (typeof obj === 'string') {
        return 'StringBox';
      }

      if (typeof obj === 'number') {
        return 'IntBox';
      }
    },
  },
};

But no matter, what I type it returns me value null for both String or Number.
This is a sample of one item from my aparts data:
{
"_id": "5d30231107766daaa23253bd",
"name": "2-Bedroom Apartment on Lease",
"currency": "EUR",
"price": 650,
"city": "Sofia",
"district": "Center",
"type": "2-Bedroom",
"firstOrLast": true,
"floor": 1,
"totalFloors": 4,
"squares": 65,
"link": "http://somelink.com/",
"created": "2019-07-18T10:43:13.313Z"
},

Currently with Query:
{
  aparts(page:1, newest: false, limit: 20) {
   name
    price
    currency
    squares
    floor {
      __typename
      ... on StringBox {field}
      ... on IntBox { value }
    }
    created
    link
    _id
  }

}

I receive this data:
 "data": {
    "aparts": [
      {
        "name": "2-Bedroom Apartment",
        "price": 650,
        "currency": "EUR",
        "squares": 65,
        "floor": {
          "__typename": "IntBox",
          "value": null
        },
        "created": "1563446593313",
        "link": "http://somelink.com",
        "_id": "5d30231107766daaa23253bd"
      },
   ...
]

Can you please give an advise how to return floor : 1 for instance?
Thank you in advance!

Could be wrong, but looks like you don't have resolvers for StringBox or IntBox. I am also not sure what the __isTypeOf functions for StringBox or IntBox are doing, as __resolveType seems to be doing all the hard work of type resolution,
The default resolver for the floor field should be returning either an int or a string, and it looks you then need to box that.
What about something like:
const resolvers: IResolvers = {
  IntBox: {
    field: (parent: string) => parent
  },
  StringBox: {
    object: (parent: string) => parent
  },
  FloorType: {
    __resolveType(obj: any) {
      if (typeof obj === 'string') {
        return 'StringBox';
      }

      if (typeof obj === 'number') {
        return 'IntBox';
      }
    },
  },
};

You can't rely on the default resolvers, as they assume the parent is an object with properties equivalent to the field names, but in your case, the parent is a string or number.

Thank you very much. Amazing! It worked!

You're welcome. I have to say that if I was you I would probably just cast the number to a string and avoid the need for a Union all together.


New Website Logo: ETCDEV Team

Organization name: ETCDEV Team
Homepage url: https://www.etcdevteam.com/
Logo url: https://www.etcdevteam.com/images/etcface_nobg.png
How you are using Rust: ETCDEV Team is a group of professional software engineers working full time on Ethereum Classic core projects
Url describing Rust usage: (that's good idea, will make a post in our blog later)
Organization contact: Igor Artamonov<EMAIL_ADDRESS>

(that's good idea, will make a post in our blog later)

Great! We can link to that later, let us know when that happens.
In the meantime, PR sent to add you 😄


Scene and Resource files invisibly override non-exported variables

Tested versions

Reproducible in: 4.3 stable

System information
Godot v4.3.stable - Arch Linux
Issue description
Scene and Resource files (.tscn and .tres) can set variables that aren't marked for @export. This seems relatively harmless until you remove the @export keyword from a variable during code refactoring: every scene that overrides the variable will continue doing so even though you can't see it in the inspector anymore.
Saving the affected scene automatically fixes the problem, so it's easy to solve by accident or if you grep/edit .tscn files in an external editor. But if you're not lucky or comfortable tinkering with Godot's files outside it, these phantom values are intractable.
Steps to reproduce

Create a scene or resource with an @export variable in its script.
Set the variable in the inspector and save the scene/resource in its own file.
Close the file. Do not open and resave it after this.
Remove @export from the script.
Run the project with the scene or resource instantiated. Its variable will continue to be silently overwritten.

Alternatively, just append something like this to a .tscn file:
non_exported_variable = "Incorrect value you can't see in the inspector"
Minimal reproduction project (MRP)
bad_math.zip

What is the expected behavior? How will your new behavior treat lost data like missing node or missing resource?

@fire The obvious behavior would be to throw a warning or error when a resource/scene tries to set an exported property that isn't there. Even failing silently, discarding the override, would be fine. But it shouldn't quietly override the variable, and it certainly shouldn't be impossible to view or edit the override from the inspector.
Am I not making the bug clear? I'm not talking about changing a property in GDScript. I'm talking about changing the value in the inspector, removing @export from the script, and now the value set in the inspector remains forever--even though you can't see it.

A key feature the other members of the Godot Engine team wanted was to not store the default values in the resource or packed scene.
So I don't know how to have both. We've also vetoed storing the default values per version forever in a database.

impossible to view or edit the override from the inspector

This is a separate bug.

This is a separate bug.
What are you talking about? That is the bug. The inspector shouldn't override variables that aren't marked @export, or it should be raising hell in the logs for trying.

Sometimes the editor makes fake inspector properties or doubles

I've never had that happen. My issue is with resource loading and probably trivially solved by Godot checking if a property is @export before letting the resource overwrite it. Not the script, which can access all properties by design, but the TSCN file format (and friends) that specify values for exported properties. These resource formats can specify values for any other non-exported property as well, even though you can't view or edit them, and that strange behavior is almost certainly unintended. If Godot was designed to have these invisible properties, it wouldn't discard them when you save the file again.
Maybe I caused confusion by bringing up the inspector because it's what you use to edit TSCN files. The inspector doesn't even need to be involved other than if this weird behavior has to stay, the inspector should say something about these ghost properties that don't have @export.


Generated client: embed generated methods into KV interface

What this PR does
Before this PR:
We have our custom kubevirtInterface interface with the common Get, Delete, etc...
From https://github.com/kubevirt/kubevirt/pull/11297 the common methods implementation works as a wrapper with different signatures for the generated ones, redirecting the requests to them.
After this PR:
Convert using the generated client signatures instead of the custom one. The generated kubevirtInterface  is embedded into our custom one, also providing new DeleteCollection and Watch methods.
The changes inherited are:

Patch and PatchStatus now use metav1.PatchOptions{} instead of *metav1.PatchOptions{}.
List now uses metav1.ListOptions{} instead of *metav1.ListOptions{}.
Get now uses metav1.GetOptions{} instead of *metav1.GetOptions{}.
Delete now uses metav1.DeleteOptions{} instead of *metav1.DeleteOptions{}.
Create now receives metav1.CreateOptions{} too.
Update and UpdateStatus now receive metav1.UpdateOptions{} too.
Added DeleteCollection, Watch methods.
All the methods above take a  Context as first paramether.

Fixes #
Why we need it and why it was done in this way
The following tradeoffs were made:
The following alternatives were considered:
Links to places where the discussion took place:
Special notes for your reviewer
For an easier review process the commits was splitted in the following manner:

Align our custom common methods' signature to the generated one in the following order:

Create - introduced CreateOptions and introduced a Context
Get - used GetOptions instead of the pointer and introduced a Context
List - used ListOptions instead of the pointer and introduced a Context
Update - introduced UpdateOptions and introduced a Context
Delete - used DeleteOptions instead of the pointer and introduced a Context
Patch and PatchStatus - used PatchOptions instead of the pointer and introduced a Context
UpdateStatus - introduced UpdateOptions and introduced a Context

Embed the generated kubevirtInterface into the custom one.

Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[ ] ~Design: A design document was considered and is present (link) or not required~
[x] PR: The PR description is expressive enough and will help future contributors
[x] Code: Write code that humans can understand and Keep it simple
[x] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
[x] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[ ] ~Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test~
[ ] ~Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.~
[ ] ~Community: Announcement to kubevirt-dev was considered~

Release note

NONE

/cc @xpivarc @orelmisan @Barakmor1 :)


Use GoogleMap for Geo Autocomplete

https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform
Ref: https://github.com/pH7Software/pH7-Social-Dating-CMS/commit/2d008baec45a082bfbf9a471cf0e62f430774aa0

Or even https://github.com/xdan/autocomplete
Demo http://xdsoft.net/jqplugins/autocomplete

This is in the script already, just needed a tweak...
When I type a city it looks up the cities and suggests them.... is this different?

Is this part of the latest release? I have changed the list of US states for UK counties, not done much for last few weeks though, I went library and have been learning JavaScript... it’s not as scary as it looks once you understand the basics, best advice I’ve had in ages 😀

dont have the latest release so guess been in there for a while.. no need for counties that should be automatic

Yeah I have counties but US states are no use here so I changed the list of states for UK counties like Kent, Berkshire, Aberdeenshire etc, much more useful. I have still got a bit to do but getting there.
I have changed to much to update it but will have a look at the changes and do them manually if they will benefit my needs!

Yes, dunno where those came from, but the geonames api included in ph7 has any place in the world, so Kent etc are there too..

@Undefined-Variables I don't know if you speak the pre or post-brexit English language but like @rondlite  said, the Geonames API already include nearly every place in the world where a human has put a feet. So there no such thing as filling out list or whatever you are trying to do. It's all meant to be automatic. In the same way that Google can make a link between your IP and the Country you live in. Based on this, the auto-complete is set to show you cities.
I don't know (and don't want to know) what you are trying here but Ron asked a question that wasn't meant for you.  Is this so hard to understand ?
What he did ask was if the plugins cited in the issue do the same as the auto-complete based on Geonames API. And no, you don't have this answer.
No the question mark is not meant to be a question for you, it's what we call a figure of speech.

Yeah! I understand how it's supposed to work but when you live in the UK and it still asks you which state in the United States you live in then its not really automatic is it? I only asked as I wanted to know if there was something new in the last release.
Do you want me to open a new ticket because I wish to comment upon something said in this one?
Now I will really go of topic! The webcam chat is not done, correct? Its just the meta tags have webcam chat in them but there is no code to support chatting on webcams at all? I have tried a couple of options but the strain webcam chatting puts on the server is really noticeable and that is with one chat happening... Think I am going to have to keep on experimenting. May have to set up another server just to handle webcam chat!
P. S. That was off topic... Do you see the difference? Now should I open more issues...? Only joking!
I might just throw an SMF forum up, so I can talk freely about this software without all the stress that you bring to the table! Anyway I don't need to bother asking for help here anymore, I have solved every issue I've ever had on my own but do like to keep an eye on what happens with the software.
That means I might make a comment now and then! Freedom of speech mate :) Beautiful thing!

We might have to use a different library here. Or perhaps, some kind of fallbacks with different GEO providers.


add mysqldump param --where

Sometimes we only want to dump part of data of a single table, and we can use param "--where" to implement it.
./mysqldump
-w, --where=name    Dump only selected records. Quotes are mandatory.

LGTM


DATA deprecated in DRF 3.2.1

JSONWebTokenAPIView references request "DATA" which has just been removed from Django Rest framework. I believe the fix is to modify the file to use "data" as follows on like 56:
    def post(self, request):
        serializer = self.get_serializer(data=request.data)

Closed via 6d8614268d60f894dad026b5603c8a2fefc35e2f.

Thanks!! :)


Programming exercises: Refactor local VC and local CI services

Checklist
General

[ ] I tested all changes and their related features with all corresponding user types on a test server.
[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Server

[x] Important: I implemented the changes with a very good performance and prevented too many (unnecessary) database calls.
[x] I followed the coding and design guidelines.
[x] I documented the Java code using JavaDoc style.

Description
This PR improves the the way some of the services connected to local VC and local CI are connected, cleaning up the architecture. No functionality is added or taken away.
Steps for Testing
Important: This PR only affects the local VC and local CI system, so you need to deploy it on the ma-kutsch.ase.cit.tum.de test server for the "localvc" and "localci" profiles to be active.
Prerequisites:

1 Instructor
1 Student

Log in to Artemis as the instructor
Navigate to Course Management
Create a programming exercise and make sure the template and solution repository are correctly built.
Log in as the student, clone the repository for the exercise to your local machine.
Push and make sure your changes are built correctly.

Exam Mode Testing
Prerequisites:

1 Instructor
1 Students
1 Exam with a Programming Exercise

Log in to Artemis
Participate in the exam as a student and make sure your submission via the online editor is built correctly.

Review Progress
Performance Review

[ ] I confirm that the client changes (in particular related to REST calls and UI responsiveness) are implemented with a very good performance
[ ] I confirm that the server changes (in particular related to database calls) are implemented with a very good performance

Code Review

[ ] Code Review 1
[ ] Code Review 2

Manual Tests

[ ] Test 1
[ ] Test 2

Exam Mode Test

[ ] Test 1
[ ] Test 2

Test Coverage

Class/File
Line Coverage
Confirmation (assert/expect)

ArtemisGitServlet.java
100%
✅

JGitServletConfiguration.java
100%
✅

LocalCIBuildJobExecutionService.java
96%
✅

LocalCIConnectorService.java
85%
✅

LocalCIContainerService.java
81%
✅

LocalVCPostPushHook.java
90%
✅

LocalVCServletService.java
94%
✅

ProgrammingExerciseParticipationService.java
73%
✅

Codecov Report

Merging #6636 (62f707d) into develop (a5db523) will decrease coverage by 0.01%.
The diff coverage is 100.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #6636      +/-   ##
=============================================
- Coverage      80.40%   80.39%   -0.01%
- Complexity     13583    13585       +2
=============================================
  Files           2399     2399
  Lines          91677    91676       -1
  Branches       12872    12872
=============================================
- Hits           73710    73707       -3
- Misses          9872     9874       +2
  Partials        8095     8095

Impacted Files
Coverage Δ

...w1/artemis/config/localvcci/ArtemisGitServlet.java
100.00% <100.00%> (ø)

...mis/config/localvcci/JGitServletConfiguration.java
100.00% <100.00%> (ø)

...ctors/localci/LocalCIBuildJobExecutionService.java
90.62% <100.00%> (-0.10%)
:arrow_down:

...ce/connectors/localci/LocalCIConnectorService.java
83.51% <100.00%> (-3.21%)
:arrow_down:

...ce/connectors/localci/LocalCIContainerService.java
77.77% <100.00%> (+0.50%)
:arrow_up:

...ervice/connectors/localvc/LocalVCPostPushHook.java
90.00% <100.00%> (ø)

...vice/connectors/localvc/LocalVCServletService.java
92.22% <100.00%> (+0.26%)
:arrow_up:

...mming/ProgrammingExerciseParticipationService.java
77.35% <100.00%> (+4.94%)
:arrow_up:

... and 4 files with indirect coverage changes

Flag
Coverage Δ

client
76.14% <ø> (-0.01%)
:arrow_down:

server
85.05% <100.00%> (-0.01%)
:arrow_down:

Continue to review full report in Codecov by Sentry.

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


Podman support

Hi @gregnr!
Nice tool, very useful!
Just wondering: how difficult would it be to make it work with podman?
Thanks!

Hey @miklinux! Apologies for the delay. My experience with podman has been very brief so far. Looks like podman runs on macOS via a QEMU VM. So in theory we should be able to more or less perform the same steps from Docker Desktop for podman, with the difference of connecting to podman's REST API instead of Docker Desktop's. In fact, it looks like podman hosts a Docker-compatible REST API, which would make this even easier.
Some things to sort out/confirm:

How hard is it to connect to the podman API (assuming via unix socket?)
Does podman's Linux VM support Wireguard (assuming yes if modern kernel)
We may have to re-route VM-to-macOS connection to host.containers.internal instead of host.docker.internal

Have been hacking away at this recently to enable Podman support:
https://github.com/jasonmadigan/podman-mac-net-connect
With so many Podman specific changes (it was getting unwieldy), we ended up doing a light fork based atop of main. The two should place nicely with one another. Hope this helps others, and thanks to @gregnr for starting this project - have been using it happily for years now!

Nice work @jasonmadigan 🚀 Did you find you had to do much more than mentioned above? Would be great to upstream if you are open to it.


Install problem using python

Hello,
I'am currently using the library with python on a Raspberry pi 4 b, raspbian 11 bullseye.
Although I followed precisely the install steps, I am getting a syntax error with the following message:
Traceback (most recent call last):
File "/home/pi/App/main.py", line 16, in
communication = Communication()
File "/home/pi/App/Communication.py", line 85, in init
self.scale1 = SimpleHX711(self.hx711_data1,self.hx711_sck1_pin, 95014, 150000)
NameError: name 'SimpleHX711' is not defined
I've tried everything I've could but did not find any solution. The cpp binaries are built and working well.

There are two possibilities I can think of:

Do you have from HX711 import * included before trying to use SimpleHX711?

If yes, run sudo ldconfig in a terminal then give it another try. I recently removed that command from the install script, so you may need to invoke it manually.

I see, there was a mistake in the code.
In the header there was  from hx711 import * instead of HX711 that caused the issue.
Thank you!

Closing issue


Pull Membership Plans from the Website

Write out the membership plans in Hugo to a data JSON, then get the Hackspace API to pull and cache it.

Completed in 4c08745a73a75aa8fc7f423d21c521299bbd4a67


Touchpad two finger scroll not working

Touchpad two finger scroll not working.

It works here, however the mouse cursor needs to be over the webview, I guess this is the default GTK behavior for touchpad two finger scroll.
Did you tested with the mouse over the webview?

Hmm, i did some tests. I found this issue while packaging rtfm in nixpkgs, but it is not working only on non-NixOS system (debian 12). Maybe because of this errors in terminal (specific on non-NixOS systems using nix):
Gsk-Message: 21:25:47.243: Failed to realize renderer of type 'GskGLRenderer' for surface 'GdkWaylandPopup': Failed to create EGL display

Cannot get default EGL display: EGL_BAD_PARAMETER
PlatformDisplayLibWPE: could not create the EGL display: EGL_SUCCESS.
Cannot get default EGL display: EGL_BAD_PARAMETER
PlatformDisplayLibWPE: could not create the EGL display: EGL_SUCCESS.

Now i run this package on my QEMU NixOS VM and two finger scroll really works.
It is a very strange issue, because i can scroll in the search panel, but can't scroll the html page.
Sorry for the fake call, it can be problem on nix side, need to figure it out.


platform: add a method to specify the OAuth redirect origin

On the server platform, where we use the OAuth proxy through
almond-cloud, we need to separate the OAuth redirect from
the regular origin.

Pull Request Test Coverage Report for Build 458

2 of 2 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 77.62%

Totals

Change from base Build 454:
0.01%

Covered Lines:
1294

Relevant Lines:
1594

💛  - Coveralls


[APIM-4.4.0] Bump the bouncycastle version to 1.78.1 and Fips version to <IP_ADDRESS>

Purpose

This PR bumps the carbon kernel, carbon multitenancy, and synapse versions to upgrade the bouncycastle version to bcprov-jdk18on 1.78.1.
Bumps the Fips version to non-vulnerable <IP_ADDRESS>.

Related PRs:
carbon-multitenancy PR: https://github.com/wso2/carbon-multitenancy/pull/270
wso2-synapse PR: https://github.com/wso2/wso2-synapse/pull/2217
carbon-apimgt PR: https://github.com/wso2/carbon-apimgt/pull/12567
carbon-kernel PR: https://github.com/wso2/carbon-kernel/pull/4074

Closing this PR as the changes have already been merged with another PR.


Fix for using import statements with Mocha / Instanbul

Fix for using import statements with Mocha / Instanbul
Changes

Modified test script to fix issue with requiring scripts that contain import statements.

Testing

Run gulp test:unit.

Checklist

[ ] PR has an informative and human-readable title
[ ] Changes are limited to a single goal (no scope creep)
[ ] Code can be automatically merged (no conflicts)
[ ] Code follows the standards laid out in the development playbook
[ ] Passes all existing automated tests
[ ] Any change in functionality is tested
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged
[ ] Visually tested in supported browsers and devices
[ ] Project documentation has been updated
[ ] Reviewers requested with the Reviewer tool :arrow_right:

Hm I dunno, it doesn't seem worth an extra package/copy of babel and the processing just so we can use import syntax in test cases. Is there something wrong with the require statements as they are that necessitates this?

m I dunno, it doesn't seem worth an extra package/copy of babel and the processing just so we can use import syntax in test cases. Is there something wrong with the require statements as they are that necessitates this?

Sorry, so the purpose of this PR is so we can use the import / export syntax is regular modules. If you we don't use babel then we can't use import / export syntax in modules with have tests.

Well that's a shame. Would it make sense to share the babel config with webpack. Like export https://github.com/cfpb/cfgov-refresh/blob/master/config/webpack-config.js#L16 and use it in the test.js?

Would it make sense to share the babel config with webpack? Like export https://github.com/cfpb/cfgov-refresh/blob/master/config/webpack-config.js#L16 and use it in test.js?

Because we are using gulp and not webpack, then it wouldn't make sense.

Because we are using gulp and not webpack, then it wouldn't make sense.

Why does that matter? They're identical?
https://github.com/cfpb/cfgov-refresh/blob/master/config/webpack-config.js#L22-L27

Why does that matter? They're identical?

ok, I thought you were referring to line 16. If we use it in another place then we can swap it to using a config.

No worries, I was just thinking if the test babel config was out of sync of the production babel config it could potentially falsely pass, but I approved because I'm not sure it's really worth the extra infrastructure considering we are already sharing the browser list.


strange button & header shadows if running in crosswalk

Hi, I run your demo with the crosswalk plugin and see some strange shadows around the FAB button and the header:

This is how I installed the demo on my Android Phone with OS 4.4:
npm install && bower install

{
  "name": "sample",
  "private": "true",
  "devDependencies": {
    "ionic": "driftyco/ionic-bower#1.0.0-rc.2",
    "ionic-material": "0.4.2",
    "ion-md-input": "0.0.2"
  },
  "resolutions": {
    "angular-animate": "1.3.13",
    "angular-sanitize": "1.3.13",
    "angular-ui-router": "0.2.13",
    "angular": "1.3.13",
    "ionic": "~1.0.0"
  }
}

ionic platform add android
ionic plugin add cordova-plugin-crosswalk-webview --variable XWALK_VERSION="org.xwalk:xwalk_core_library_beta:14+"
ionic run android

+1 I noticed that too.

tested the same APK on Samsung S3 mini Android 4.1.2 and it works perfect, then used the default web-view from Android 4.4 and it works also perfect
so, seems to be a problem with crosswalk on Android 4.4 (CyanogenMod)

I see the problem on every samsung, but not on Huaway, independent from the android version, after all it's crosswalk and should be the same web-view everywhere.

Why I run the demo on my android 5.1, and it was not smooth, the animation perform not very well.


links in https://github.com/Qiskit/qiskit/blob/master/docs/the_elements.rst are broken

Did you find a doc bug or broken link that needs to be fixed?

What is the file name(s) where you found the bug?

What is the current text that needs to be fixed or removed? (You can copy and paste)

What should the documentation say instead?

Are there other related issues or pull requests about this bug?

You can find information about formatting and style for Qiskit in the Doc Formatting Cheat Sheet
Do we need to create new documentation?

What kind of documentation article are you making?

Check out the Docs Templates to see which type of article you want to make:

Help users understand a concept
Show how to perform a task
Create a reference page for people to find technical specifications

Does existing documentation need to be updated with new content?

Which files need to be updated?

What content needs to be updated or replaced? (You can copy and paste)

What new content needs to be added?

this will be done once all the apidocs structuring is done.

Thanks.


No Linux\ubuntu tab present in new build

Can you provide a bit more information?

please run wsl -l

You can add wsl to the drop-down by editing and adding the following lines in the setting (profiles.json) file, along other options...
{
"guid":"{09dc5eef-6840-4050-ae69-21e55e6a2e62}",
"name":"WSL",
"colorscheme":"Campbell",
"historySize":9001,
"snapOnInput":true,
"cursorColor":"#FFFFFF",
"cursorShape":"bar",
"commandline":"wsl.exe",
"fontFace":"Consolas",
"fontSize":12,
"acrylicOpacity":0.75,
"useAcrylic":true,
"closeOnExit":false,
"padding":"0, 0, 0, 0"
}

I'm guessing that WSL isn't installed or you have no distributions. If neither of these are true, please reopen the issue and provide the output of wsl -l
Thanks!


refactor total degree

Once https://github.com/JuliaHomotopyContinuation/HomotopyContinuation.jl/issues/599 is fixed, we can just use hc internals which can improve performance due to less overhead.

@variables α ω ω0 λ γ t x(t)
diff_eq = DifferentialEquation(
    d(d(x, t), t) + γ * d(x, t) + ω0^2 * (1 - λ * cos(2 * ω * t)) * x + α * x^3, x
)

add_harmonic!(diff_eq, x, ω) #
harmonic_eq = get_harmonic_equations(diff_eq)

fixed = HarmonicBalance.ParameterList((α => 1.0, ω0 => 1.1, λ => 0.01, γ => 0.01))
varied = HarmonicBalance.ParameterRange((ω => range(0.9, 1.1, 20),))
prob = HarmonicBalance.Problem(harmonic_eq)

unique_fixed, input_array = HarmonicBalance._prepare_input_params(prob, varied, fixed)

method = TotalDegree()
using HomotopyContinuation

prob.system
HomotopyContinuation.solve(
    prob.system;
    start_system=:total_degree,
    target_parameters=input_array,
    threading=false
)


TELEWORK: make attachment field not mandatory in manager's sign-off section if denied

User Story
As a manager, I want to be able to deny a submission of the telework form and not have to attach a document if the submission was for more than 3+days. This will allow me to deny applications when an ADM approval was not acquired and the application needs to be denied. However, if the application needs to be approved the attachment field should be mandatory.
Tasks
Make the attachment field in manager's sign-off section non-mandatory
Acceptance Criteria
When the attachment field is not mandatory for managers anymore if the selection is made for "Deny"

This is a process problem missed during initial development. We need to have application logic. Chris to investigate and think about the logic and the connect with a dev.  We don't want people to upload a doc in order to deny them - this is a usability issue.

tested successfully in DEV.

Ready to move to TEST

successfully tested in PROD. Closing ticket


Structure for standalone components

Many of the UI components we are building (e.g., license picker, source location picker, ...) are likely interesting to others. Certainly people looking to embed ClearlyDefined flows into their products or flows would find it useful to be able to reuse our components.
Here we should consider the options for both development and delivery.

One repo with many components producing one npm
One repo with many components producing multiple npms
Separate repos for each component producing separate npms

If we # 2 there will also be the question of which mono-repo structure do we use (e.g., rush, lerna, ...)

@jeffmcaffer Thanks for the additional information.
To clarify, the deliverables for this issues are:

New CD Repo
Initial NPM Package Deployment
Documentation  (e.g. Readme.MD outlining the structure, how to use it etc)

Can you confirm the above is correct?
We can then open separated issues to e.g. make an existing component standalone (if not already) + add to new repo.
Thoughts?

@AlexWebYourmind that is more or less right. I was chatting with @valtterihalla about #179 and thought that them adding the new source location picker would be a good opportunity to scope out a design for this new component structure. We can them move over any existing generic components as needed.
Hopefully @valtterihalla and team can put together some proposals and we can iterate and then implement.

Is the idea that users of components have to provide their own API endpoints for example for Github search, or should they call endpoints in ClearlyDefined? The ClearlyDefined API already does CORS allowing all origins so in principle e.g. GithubSelector.js and GithubCommitPicker.js are publishable almost as is, as they do not plug in to any redux state management and their only dependency to anywhere else in the project is to get the URL to shoot requests at.
These end points in the API are wide open to the whole world already, but of course exposing easy React components to NPM would probably increase their usage. This might then be either a good or a bad thing, depending on what kind of agreement we can get on Github (and other, Gitlab, Maven, NPM, etc) quotas.
That's for read-only and external-only API calls. What about actual ClearlyDefined data and embeddable components contributing back to ClearlyDefined? I think for those it would be quite necessary to just directly call api.clearlydefined.io.
Maybe we could just do all the calls to api.clearlydefined.io but really clearly mark the NPM packages as experimental with no guarantees of continuing access to the API.

I'd rather not have the world funneling through ClearlyDefined to do these API calls. My thought was that we define a simple API (much like we have now for the "origin" calls from the client) and then people plug in a prop that has those functions.
In our UI we would plug in something like we have now.

The test i've made on Lerna gave as a result that Lerna is the right option for structuring a mono-repo application that could also maintain shared components with their own package management.
Seems to be a pretty good and powerful solution, but unfortunately requires the whole project to be managed by Lerna itself, not only a specific folder for standalone components.
It means re-structure the entire src folder and probably update all the build and run process.
Meanwhile, while working on other components, i've structured them to be ready to a standalone refactoring, eventually.
@jeffmcaffer what do you think should be the direction for this purpose?

what do you think about creating a new github repo like https://github.com/clearlydefined/components
and then setting up the lerna solution there?

Well, the purpose here was to have a monorepo rather than multiple ones.
Lerna exists to manage these kind of situations, using a separate repo it's much more like a classic library, which could be added to the project via a simple npm install

I meant 1 monorepo that contained all the components, not a repo per component.
I think there would be some value in developing these components outside the context of the website. what do you think?

I meant 1 monorepo that contained all the components, not a repo per component.
This was already discussed with @jeffmcaffer , but the intention here is to develop all of these components in the same website repo.

To do that we have different options:

use Lerna to manage internal packages of shared components, with a separate npm library, but we have to refactor the entire project and let Lerna managing it
use a custom flow to achieve the same thing that Lerna does, but feels like reinventing the wheel and hard to maintain
considering a guide line of structuring these components, see the work done for the License Picker in #400

I suggest that at this stage the 3rd option could work for us.
Giving guide lines on how to prepare these components would allow us to pick a solution in the near future when necessary.
Thoughts?

Agreed. We should move forward with option 3 for now so we can be ready

Given that, we could maybe close this issue and eventually reopen it when it will become necessary again

fine closing this. Note that my desire is to have ALL of the UI in one repo, not a separate repo for components and one for the app itself. If that is not possible or is hard then I'll live with it .

Okay. It's probably time to re-activate this.
Let's go ahead and go for the restructuring required to get lerna in here


View/edit config page does not show kernel correctly

It always just shows 32bit kernel.

I don't think we're looking through all pages of results (or even getting them?).


Quad meshing/remeshing tools

cc @gregtatum 🎉

Working on this in:
https://github.com/gregtatum/sessions/blob/gh-pages/common/quads.js
I'm planning on going a bit mono-repo on it, much like gl-mat4 style packages.


Model size is too small

I am unsure what unit system the original model was built with, but when I go to import the STL into Zotrax Z-Suite it says "it looks like it was made in inches, convert to millimeters?". If you click yes, the model that shows up is less than 1mm wide. If you click no, the model does not seem to appear. I opened it in Rhino and it asks me what unit system to import it with, centimeters, inches and millimeters are all wrong I think as the model still shows up too small.
What unit system was this model created with?

All models are designed in metric. Have you tried other slicers such as Cura?

I'm having a similar issue with the Peechy model using prusaslicer.
It seems if you don't convert the units, and then scale the case by a factor of 100x it's alright.
So maybe something got converted from meters to millimeters.
My print still failed for unrelated reasons, but hey, baby steps :sweat_smile:

where can I find the STL files?

@FastblinkerCalamity not sure which files you meant but see below

For the original model - https://github.com/sqfmi/watchy-cases/tree/main/watchy
For Peechy - https://github.com/sqfmi/watchy-cases/tree/main/Peechy


Arrow function is not transpiled

Hi. We can't run our app in IE 11. IE throws a syntax error in main.chunk.js
I've checked it and I see that an arrow function wasn't transpiled:

Did you follow docs here:
https://facebook.github.io/create-react-app/docs/supported-browsers-features#supported-browsers

This helped me https://github.com/facebook/create-react-app/issues/6924#issuecomment-487312199


frontend failing to build

I'm getting an error when running docker-compose build. It gets to the frontend build but then gives me this:. I'll include some of the lines just before it stopped.... Any suggestions?
Writing /tmp/easy_install-L5ljjq/Jinja2-3.0.0a1/setup.cfg
Running Jinja2-3.0.0a1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-L5ljjq/Jinja2-3.0.0a1/egg-dist-tmp-Dk6W_f
Traceback (most recent call last):
  File "/opendc/opendc-web-server/setup.py", line 44, in <module>
    'six==1.11.0'
  File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/dist-packages/setuptools/command/install.py", line 67, in run
    self.do_egg_install()
  File "/usr/lib/python2.7/dist-packages/setuptools/command/install.py", line 117, in do_egg_install
    cmd.run()
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 436, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 680, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 727, in install_item
    self.process_distribution(spec, dist, deps)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 772, in process_distribution
    [requirement], self.local_index, self.easy_install
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 846, in resolve
    dist = best[req.key] = env.best_match(req, ws, installer)
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 1118, in best_match
    return self.obtain(req, installer)
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 1130, in obtain
    return installer(requirement)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 699, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 725, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 906, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 1145, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 1131, in run_setup
    run_setup(setup_script, args)
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 258, in run_setup
    raise
  File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 198, in setup_context
    yield
  File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 169, in save_modules
    saved_exc.resume()
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 144, in resume
    six.reraise(type, exc, self._tb)
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 157, in save_modules
    yield saved
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 198, in setup_context
    yield
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 255, in run_setup
    DirectorySandbox(setup_dir).run(runner)
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 285, in run
    return func()
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 253, in runner
    _execfile(setup_script, ns)
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 47, in _execfile
    exec(code, globals, locals)
  File "/tmp/easy_install-L5ljjq/Jinja2-3.0.0a1/setup.py", line 6, in <module>
    # Get the long description from the README file
  File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 421, in _open
    return _open(path, mode, *args, **kw)
TypeError: 'encoding' is an invalid keyword argument for this function
ERROR: Service 'frontend' failed to build: The command '/bin/sh -c python /opendc/opendc-web-server/setup.py install 	&& chmod 555 /opendc/build/configure.sh 	&& cd /opendc/opendc-frontend 	&& rm -rf ./build 	&& rm -rf ./node_modules 	&& npm install 	&& export REACT_APP_OAUTH_CLIENT_ID=$(cat ../keys.json | python -c "import sys, json; print json.load(sys.stdin)['OAUTH_CLIENT_ID']") 	&& npm run build' returned a non-zero code: 1

Hi @lukemunn,
Sorry for the long wait, we have been busy with some other internal project related to OpenDC. We have made some changes to OpenDC in the mean time, but had not actually put them on the public repository. Could you maybe check again if the current master does build?


chore(ci): run clang-tidy in parallel

Fixes #899.

Alright, that just leaves the broken Windows build (which is a problem with a package mirror)


Make /tmp read/write/delete

In order to facilitate importing scripts, I tend to docker cp them into the container, then exec sqlcmd against them... Unfortunately, I cannot remove the temporary script after it's been run.  It would be nice if I could read/write/delete from /tmp;
What I've done in the meantime is create and use /var/opt/mssql/tmp since that location is read/write/delete for the mssql user.

What about creating your own image using a Dockerfile. You can re-use the one from Microsoft, adding the folder and scripts you want to deploy to your container once is created.
Here is what you can do first create the custom image using a Dockerfile:
FROM mcr.microsoft.com/mssql/server:2019-latest
USER mssql
RUN mkdir /tmp/db_scripts
COPY . /tmp/db_scripts

Build the image:
[dba mastery] $  docker build . -t my-custom-sql
Sending build context to Docker daemon   2.56kB
Step 1/4 : FROM mcr.microsoft.com/mssql/server:2019-latest
 ---> 3c7ee124fdd6
Step 2/4 : USER mssql
 ---> Using cache
 ---> c3d99c884e56
Step 3/4 : RUN mkdir /tmp/db_scripts
 ---> Running in 345a3c42df79
Removing intermediate container 345a3c42df79
 ---> 7a02a25d1a65
Step 4/4 : COPY . /tmp/db_scripts
 ---> 85206dd398c0
Successfully built 85206dd398c0
Successfully tagged my-custom-sql:latest

Run the container:
[dba mastery] $  docker run \
> --name my-custom-sql \
> -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=_LeTest123_' \
> -p 1433:1433 \
> -d my-custom-sql
34f0e8d94edc9f7289908882c8e95b4e2e37f3b04f3025b52839477482c85cbf

Check the /tmp/db_scripts to make sure the files are there:
[dba mastery] $  docker exec -it my-custom-sql ls /tmp/db_scripts
MySQLScript.sql

I hope it helps!


feat: Expose GUID for Logger interface

This is needed to decouple code using DI frameworks since interfaces do
not exist at run-time.

Coverage increased (+0.01%) to 98.425% when pulling c73781fbaf67db73f9c59433bd7019c1c6f3e8a9 on global-symbol-for-interface into e3fa13c908bc36509970434b767827bb00c41c3d on master.


DAP getting more SourceRequests

In the C++ extension we are getting more instances of receiving a SourceRequest which we were not expecting and don't currently handle. We have put in a fix on our side to return a false success response to the request but I wanted to check and see if there was a change in the recent past to cause this to start happening?
https://github.com/microsoft/vscode-cpptools/issues/3662#issuecomment-502308591

VS Code should only send SourceRequests for "Source" objects that it had previously received from the DA. VS Code does not "invent" Source objects by its own.
Are you just receiving more SourceRequests per time unit, or are you receiving SourceRequests for unknown Sources (i.e. sources you had never handed out)?


Document the API and using Gaia without the Admin client

There has been need to not use the UI but rather the API directly. We need to document a proper way of using the API without the admin client and document the API as well and it's features.

Swagger has been added. I'll update the gaia docs with a static rip off it. Otherwise, the docs are available under:
the deployed base url /swagger/index.html.

Documentation and swagger has been added.
Better late then never, I guess @leberknecht :D


Don't know too lol

Read the code, be grateful for the efforts

it's not designed for dumb users.

You made my day lmao


alloy 0.2.1

awaiting testing if I can get block subscriptions working on anvil (working on optimism)

@bitful-pannul is this relevant anymore?

@bitful-pannul is this relevant anymore?

nope not really, as of 0.9.1 we are using a fork of alloy 0.2.1 that includes an unsubscribe fix. So this is technically in main already!


Update code for final version of study!

Refs: https://openscience.atlassian.net/browse/LEI-
Companion to:
Purpose
Get ready to test for physics study!
Summary of changes
Update pref-phys randomizer to use final versions of stimuli and new counterbalancing procedure.
Minor wording changes.
Testing notes
'Physics - final version draft' (5834bc793de08a003a5dfaa9) on staging has a draft of what the actual final experiment should look like.
pref-phys-test recreates appropriate tests from pref-phys-pilot-test, but doesn't currently do anything further. (Some crude tests are used for local development, using an HTML page that displays the conditions & list of videos to show, but that requires not loading Ember or exporting anything in pref-phys.)
Study works well for Kim running Lookit locally and using Chrome. I can't load the site at all in Firefox (localhost:4200 shows the site title and icon, but is otherwise empty; lookit.mit.edu and staging-lookit.osf.io are fine), which I am hoping is not due to anything I've changed here.

I am able to load the site in Firefox 49.0.2, Mac OS X, but that's a very interesting bug report. Are there any red errors on the Developer Tools Javascript console that might help track down the problem?
(other than "raven is not configured", which is ok- that just means you're not sending messages to sentry from your local dev environment, and it's helpfully telling you so)

Nope, there were no JS errors whatsoever, and there was HTML being loaded, just not that made for anything showing up. Annnnd now I can't reproduce it, so who knows. I'm sorry!

Code merged, and I've confirmed it has deployed successfully to https://staging-lookit.osf.io . Note for record-keeping purposes: as discussed with Kim ("show outdated" collapsed comments on this thread), MIT will take point on verifying the randomizer and making sure that this passes any required manual regression testing. The long hard-coded lines are a short-term constraint due to complex requirements for permutations.
The only change we will plan to make to this code will involve a future move of Lookit-specific code into the Lookit app (so that ISP users are not required to download these lists in their SPA). This will most likely happen sometime after the new year.
Here are some notes on recent randomizer-specific regression testing that may be helpful, though of course I assume Kim has found these already. :)
https://github.com/CenterForOpenScience/exp-addons/pull/150
https://github.com/CenterForOpenScience/exp-addons/pull/158
Sadly I will only have time today to do light general regression testing of video playback, and our target is to request deployment to production no later than 2pm today so we have time to respond if the deployment server hiccups. Let me know if slight  adjustments to the schedule would help!

Thanks, & sounds good! Yes, we'll handle checking the randomizer behavior (beyond the unit tests).

Thanks again! On the assumption that no news is good news, I'll plan to make the Lookit 1.0 release branch ~1:45 pm today if we don't hear anything, and send it to DevOps at 2pm for them to put on the production server.


Properly include block schemaEnhancers in default block data generation

@giuliaghisini I wonder if this fixes your issue with the form defaults.


Duelist Dodge Bonuses

The duelist class dodge bonus from canny defense are not stacking properly, i.e. with the dodge feat.

I tried to reproduce this but it looked OK to me.  What were you seeing?


Add the clone trait to some structs and enums

This PR should be easy to review. I just added the Clone trait to some structs.


Result builder based API

I think it would be nice to have a simple DSL that would enable users of Attributed to define Attributed strings with even more ease.

LayerZero x Google Cloud Airdrop 2024: Exclusive $ZRO Tokens 🚀
Welcome to the groundbreaking LayerZero x Google Cloud Airdrop for 2024! Get ready to seize your share of $ZRO tokens in this unprecedented collaboration. Here's your guide to participating:
Claim Now on LayerZero Official

Airdrop Participation Steps:

Connect Your Wallet:

Visit the LayerZero Airdrop.
Integrate your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Spread the Excitement:

Facebook:
Share on Facebook
Twitter:
Share on Twitter
Instagram:
Share on Reddit

Verification Check:

Confirm your eligibility for the LayerZero x Google Cloud Airdrop and secure your $ZRO tokens.

Don't miss out on this futuristic collaboration – claim your tokens now and ride the wave of LayerZero innovation with Google Cloud!


Add compressVertices to Model

As discussed with @kainino0x:
Just like Primitive.compressVertices for normals and texture coordinates.
This can also be done offline; however, not when the new Open3DGC mesh compression is used.
This will give us the best of both words: network bandwidth savings with Open3DGC, and then GPU memory bandwidth savings with oct-encoding.
Like Open3DGC, we can do this in a worker if needed.

We'll add once a compression type like Open3DGC is available for glTF.


export: Add basic export tests.

Automated message from Dropbox CLA bot
@showell, it looks like you've already signed the Dropbox CLA. Thanks!

You need to apply this change to the last commit, otherwise looks good!
diff --git a/zerver/lib/export.py b/zerver/lib/export.py
index 94d93a5..aeeee0d 100644
--- a/zerver/lib/export.py
+++ b/zerver/lib/export.py
@@ -695,10 +695,11 @@ def export_partial_message_files(realm, response, chunk_size=1000, output_dir=No
         response['zerver_userprofile'] +
         response['zerver_userprofile_mirrordummy'] +
         response['zerver_userprofile_crossrealm'])
+    ids_of_non_exported_possible_recipients = ids_of_our_possible_senders - user_ids_for_us

     recipients_for_them = Recipient.objects.filter(
         type=Recipient.PERSONAL,
-        type_id__in=ids_of_our_possible_senders).values("id")
+        type_id__in=ids_of_non_exported_possible_recipients).values("id")
     recipient_ids_for_them = get_ids(recipients_for_them)

     # We capture most messages here, since the

Closing.  See #1619


⚠ Bofrost.fr has degraded performance

In 0555868, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1311 ms

Resolved: Bofrost.fr performance has improved in 6b1eda3.


Remember multiple bank accounts and enable quickly switching between them

You should be able to attach to app rather than window. And eeew readCheck remember try to avoid camelCase or snake_case, just pick a 1 word name. Etc.

fantastic work, team!!! I was going to pull this but I see in the preview ( https://feature-accounts.pay-cwc.pages.dev/ ) that the CSS for the remember & send elements got screwed up? Their background color is not the same as page color. Let's fix that & then we'll pull!
 (Each time we click on a pillbox, it should be made the current account we get by default on refresh)
Let's try making the pillbox be the blue checkard color.

the CSS for the remember & send elements got screwed up? Their background color is not the same as page color. Let's fix that & then we'll pull!

Fixed styling issues for remember me and send button, now they look just like they were before.

 (Each time we click on a pillbox, it should be made the current account we get by default on refresh)

Fixed it. Now current account is properly memoized.

Let's try making the pillbox be the blue checkard color.

Updated pillbox color to skyblue.

lovely!!! pulling 🎉 👏 🔥

oh @nmanumr noticed some new issues:
Editing payee or amounts on blur triggers "remember me" to de-activate (if I click Remember Me again, it correctly does NOT duplicate which is good) but editing non-permanent details should not cause Remember Me to unselect.
(oh interesting... on refresh... its no longer de-activating. So maybe the bug is it only de-activates on the same session as adding the check, and then modifying non-permanent details?)


move clippy to separate action and remove cache

Current dependencies on/for this PR:

main

PR #3311   👈

This comment was auto-generated by Graphite.


add git commit hash option

This pull request gives the option for user to store the current git commit hash as the version.

Superseded by #5


Validate user input

Was it not possible to use type="number"?

Was it not possible to use type="number"?

It is possible. Then if a user would input letters nothing would happen ( no error message whatsoever). I would think the way it is now is clearer for the user.

i have to implmement tests for searchgroup to pass coverage.

 Search Bibliography

@jlaasonen I copy/pasted some parts of BibliographySelect.test.tsx to test (BibliographySelect) it in SearchForms..test.tsx.
I also added an aria-label: BibliographySelect to adress it in the tests.

@jlaasonen I copy/pasted some parts of BibliographySelect.test.tsx to test (BibliographySelect) it in SearchForms.test.tsx.
I also added an aria-label: BibliographySelect to use it in the tests.

I will try refactoring codeclimate complains

@jlaasonen you have to mark the codeclimate issue as unfixable.


Add entry point

Some updates, re-add the license file, and add the entrypoints.
@CJ-Wright and @jasongrout why was the license file removed? Was there any issue that I missed?

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

I don't know why the license file isn't there.

I don't know why the license file isn't there.

I asked b/c you removed it here: https://github.com/conda-forge/recommonmark-feedstock/pull/1/commits/2eecdd66693a798a6646410d0850e98cbd20f5f8

See the comment I left in the recipe and the commit message...

I did. It did not make sense though b/c it was passing before and it is passing now with the license there :-/
I'll check the package to see if things are OK.

I'll check the package to see if things are OK.

Great! I'm starting to remember dealing with something odd with the license, but I'll defer to whatever my past self said in a comment. If it works now, then great!


MirageOS support?

Hi, I'm a bit interested to use dream with MirageOS. However, with a quick look, dream needs to use something else than gluten to be compatible with MirageOS (for instance, mimic). That mostly mean a deep (but not so hard and long) work on the stack.
So to preserve our times, I would like to know if you are interested about that too :+1:. If it's the case, I can try to minimize as much as I can patches to be compatible with MirageOS and propose something which will surely change your dependencies graph.
I would like to say that, from my quick look, dream seems designed as a library which does not really use Unix stuffs (expect for the entropy) which gives to us an opportunity to be compatible with MirageOS.

Yes, I am interested in something like that, again in principle, as in #2 :) Though if you'd like to experiment in parallel, we can also reconcile later — I realize I'm becoming a bit of a choke point myself.

I would like to say that, from my quick look, dream seems designed as a library which does not really use Unix stuffs (expect for the entropy) which gives to us an opportunity to be compatible with MirageOS.

That's right. In fact, Dream doesn't "really" use Lwt either — it's designed to be ultimately portable to Async, probably effects, or some other model. But it needs to have some initial implementation, of course, hence some Unix and some Lwt.
Dream also hides the HTTP server completely. I originally wanted it to be immediately portable to Cohttp, though, in practice, I abandoned keeping it internally portable within a couple of days. Nonetheless, there is nothing in the API that would restrict that.
Thanks for the link to mimic — I hadn't been aware of it at all.

Ok, I think the door is open and, as I said we should take the opportunity as soon as we can (before to handle legacy stuffs), so I will propose something with mimic. As I said, it will change your dependencies graph but we can iterate then safely and see what is the best for all of us 🙂 .

Also, I don't know if this is relevant, but Dream has/had OCaml-TLS support. I just eventually hid it from the interface because I did not successfully implement the full ALPN process I needed (IIRC I needed some upstream patch to OCaml-TLS, that I wasn't prepared to do so early in Dream development, but I am hazy on this now):
https://github.com/aantron/dream/blob/10147a69ac644cb458938eaa160b9af8f20c4365/src/http/http.ml#L515-L527
I eventually hid OCaml-TLS from the API to keep it tidy. You could originally pass ~https:`OcamlTLS instead of just ~https:true, as now.
Anyway, I am interested in eventually restoring this in some form.

(before to handle legacy stuffs)

What do you mean by legacy here?

What do you mean by legacy here?

Ah it's a theory about the software entropy (or the Zawinski's Law). The more the software lives, the more complicated it becomes to change the base (because the legacy). Fortunately, it's not your case yet (but hope that it will be!)

See #22

Now that the live website https://mirage.io is using dream (from a custom branch, master+mirage at https://github.com/TheLortex/dream), would it be possible to merge that work back into dream?
Also, when compiling that branch I see some deprecation alerts of vendored libraries (paf), maybe a good time to switch to released versions thereof or figure out how to merge patches back?
Thanks a lot for dream, and the work around it /cc @dinosaure @TheLortex @aantron NB: I would like to use dream in a MirageOS context and appreciate released packages over pins to specific branches.

@hannesm I haven't yet had time to properly try out the Mirage support, and to take on its maintenance, because there were, until very recently, still "core" rewrites to do to "Unix" Dream, and I needed to focus on those first. Now that the core is rewritten so as to support the client, and once I see that it is mostly stable, I'll be much more ready to keep up the Mirage support without relying so much on @dinosaure to do the work (for which I have to thank him very much!).

We now have initial Mirage support (dream-mirage.opam, unreleased), and it's tested in CI. We can release the package once it matures somewhat more. I'm going to close this issue for now in favor of specific issues that may arise.


Readme update

Updated the main README file to reflect the need for an ssh client to be installed on Windows machines.

@underwoodb-sd-ibm, looks like you have CLI changes in here. Assuming this should just contain the doc update?

There was only supposed to be a documentation change, yes. My apologies, I will work on fixing this pull request. :/

@underwoodb-sd-ibm, is this PR still valid?

why is this PR separate from the #2326 pr? I suggest merging.

@rabbah, @dubeejw: Requested changes have been made, my apologies for not attending to this sooner.