Fix image and audio result focus rings

Fixes

Fixes #3525 by @fcoveram
Fixes #3193 by @fcoveram
Related to #4911 by @zackkrida
Description

This PR updates focus-bold-filled to set the inner ring to the color of the page background. It also updates the focus ring for the non-square image result.
The inner ring looks narrower in dark theme than it does in the light theme, so I updated the width for the dark theme. but I think it just seems so, and the ring is actually of the same width.
Testing Instructions

Check the result focus rings for image, audio and all content results.
You can use the storybook to view image cell and the audio results
Checklist

[ ] My pull request has a descriptive title (not a vague title likeUpdate index.md).
[ ] My pull request targets the default branch of the repository (main) or a parent feature branch.
[ ] My commit messages follow best practices.
[ ] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[ ] I tried running the project locally and verified that there are no visible errors.
[ ] I ran the DAG documentation generator (ov just catalog/generate-docs for catalog
PRs) or the media properties generator (ov just catalog/generate-docs media-props
for the catalog or ov just api/generate-docs for the API) where applicable.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

I see the storybook components correctly, but I don't see changes on any of the three search results when I run dev.

I've updated the PR, and it should look correct in both places now.

The inner ring looks narrower in dark theme than it does in the light theme, so I updated the width for the dark theme.

Is this happening in the designs?

I think it's just that it seems narrow, but actually isn't. Could you check?

Everything looks good now


docs(fix typos): migration guide search snippets

after running TS on code snippets here https://github.com/cognitedata/cognitesdk-js/pull/262/files

:tada: This PR is included in version 2.3.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Getting ERR_SSL_VERSION_OR_CIPHER_MISMATCH for the subdomain containing www prefix

Before opening, please confirm:

[X] I have checked the custom domains troubleshooting guide.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
d8t83e2f6qezu
Region
us-east-2
Step
Testing of the deployment
Status
Failed
Issue or question
For the application d8t83e2f6qezu I've connected the custom domain pfait.com for the branch "dev". The deployment was successfull and the application is available now at https://admin-dev.pfait.com (the wildcard certificate was issued by AWS for the domain *.pfait.com).
However, when I try to add the CNAME DNS record in Route 53:
www.admin-dev.pfait.com -> admin-dev.pfait.com
I'm getting the following exception when trying to open https://www.admin-dev.pfait.com:
ERR_SSL_VERSION_OR_CIPHER_MISMATCH
Error message
ERR_SSL_VERSION_OR_CIPHER_MISMATCH
Additional information
No response

Hi @ozharkikh-enyo, thank you for opening this issue. At this time what you have explained is the expected behavior. In short wild card certificates will only work on the same level subdomain and would not be able to work with multi level domain. E.g., *.a.com matches foo.a.com but not bar.foo.a.com - more information in this RFC - Section 3.1
In order to have www.admin-dev.pfait.com working, I recommend you add your custom domain to you application as admin-dev.pfait.com instead of pfait.com then you can setup a the www.admin-dev.pfait.com subdomain within your application. You can reference the Amplify documentation here for more information.
Let me know if you have any questions.


将照相机静音应为禁用

Microsoft PowerToys version
0.64.1
Utility with translation issue
Video Conference Mute
🌐 Language affected
Chinese
❌ Actual phrase(s)

✔ Expected phrase(s)
将照相机禁用
ℹ Why is the current translation wrong
“照相机”不可搭配“静音”

https://microsoft.visualstudio.com/OS/_workitems/edit/42564184

this should be fixed now, correct?  /needinfo

This issue is resolved

This issue is resolved


[FEATURE] Node replication throttling

The use-case here- I run a cluster with mixed 1G and 10GBe networking. I will assume, you will find lots of home users also using 1GBe networking.
The problem- when heavy replication occurs, say, when a node goes down and replicas are rebuilt- this traffic can completely saturate the network connection causing connectivity issues with kubernetes.
This will eventually result in the node being considered down, causing a snowball effect which makes the issue worse.
The ask- the ability to set a bandwidth limit on either the node level.
For anyone else having this issue, I have found a work-around which does seem to work very well.
// Nodes with 10GBe.
kubectl annotate pods -l longhorn.io/component=instance-manager -l longhorn.io/node=kube01 kubernetes.io/ingress-bandwidth=8G kubernetes.io/egress-bandwidth=8G
kubectl annotate pods -l longhorn.io/component=instance-manager -l longhorn.io/node=kube03 kubernetes.io/ingress-bandwidth=8G kubernetes.io/egress-bandwidth=8G
kubectl annotate pods -l longhorn.io/component=instance-manager -l longhorn.io/node=kube04 kubernetes.io/ingress-bandwidth=8G kubernetes.io/egress-bandwidth=8G

// Nodes with 1GBe.
kubectl annotate pods -l longhorn.io/component=instance-manager -l longhorn.io/node=kube05 kubernetes.io/ingress-bandwidth=500M kubernetes.io/egress-bandwidth=250M
kubectl annotate pods -l longhorn.io/component=instance-manager -l longhorn.io/node=kube06 kubernetes.io/ingress-bandwidth=500M kubernetes.io/egress-bandwidth=250M

Not a perfect solution- but, since implementing, I have not had an issue with nodes dropping from the cluster.

Would love to see this feature. We also see issues with replicas saturating bandwidth. But in addition to replicas, we would like to throttle scheduled backups.

@XtremeOwnageDotCom regarding your workaround, are you using Calico to enforce these labels?

Honestly, I cannot recall which CNI I was using at that time. I believe it was calico. But, I cannot confirm.

Yeah, my problem isn't network bandwidth but DISK I/O or I/O wait. It sky rockets and eventually Longhorn times out and we just end up in an infinite loop of attempting to replicate replicas.
Setting Concurrent Replica Rebuild Per Node Limit to 3 (from 5) helped a little bit but I will try this and see if it helps. I don't need it to happen fast, just happen. I don't care how long it takes. One PVC seems to be a problem because its 25GB (the rest are quite small).

cc @ejweber @derekbit @shuo-wu

IN the end I ended up removing these annotations and set Concurrent Replica Rebuild Per Node Limit to 1, got me out of my bind.

Controlling the traffic during replica rebuilding involves two key factors:

The number of concurrent replica rebuilds.
The network bandwidth used by replica rebuilding.

The first factor is managed by the global setting Concurrent Replica Rebuild Per Node Limit, which limits the number of simultaneous rebuilds per node. The second factor involves throttling the total throughput of replica rebuilding on a node. All the background IO such as delta rebuilding, backup, restore, and snapshot hashing should be able to be throttled.
Related ticket: https://github.com/longhorn/longhorn/issues/4765

related to https://github.com/longhorn/longhorn/issues/4765

In favor of https://github.com/longhorn/longhorn/issues/4765


Add bindingOptions for DxPopup to disable toolbarItems dxButton widget via binding

To help us process the issue more efficiently, please provide the following information:

Specify the version of the devextreme-angular and devextreme packages you are using.
devexteme version: 17.1.3
devextreme-angular version: 17.1.3

Specify the type of the issue (check one with "x"):
[ ] bug Report
[x] feature request
[ ] support inquiry

Hello.
Current behavior: dxButton is declared in toolbarItems, disabled property can be specified but accepted value is of boolean type. Impossible to specify "bindingOptions" for toolbarItems.
Expected behavior: either dxButton's disabled property can be declared as function(or as a text with binding) or bindingOptions is available to specify for DxPopup.
UseCase: I need to bind popup widget's (button) disabled property and in DevExpress forum they suggest using "bindingOptions" (for AngularJS https://www.devexpress.com/Support/Center/Question/Details/T294915/controlling-popup-button-disabled-state-in-angularjs).
Setting disabled property for toolbar item with current approach just makes no sense since there's no way to change disabled value to anything else in code. And once button is declared as disabled it's just useless on UI.

Angular is different from Angular JS. So that Angular tracks changes of component properties, they should be bound in the component markup. So, you need to bind the toolbar item options option in your component markup and change the bound object:
<dxi-toolbar-item [toolbar]="'bottom'" [location]="'after'" [widget]="'dxButton'" [options]="buttonOptions"></dxi-toolbar-item>

buttonOptions = {
  text: "Ok",
  disabled: true
};
enableSubmit() {
  this.buttonOptions = {
    text: "Ok",
    disabled: false
  };
}

See the Plunker sample that illustrates this.

This issue is closed because of being inactive. If you need further assistance, leave a comment here.


Features/Metrics project

Interactions
Home page

[x] When the page loads, the webapp shows the list of categories that could be filtered out by some parameter, for example by the category name.
[x] Along with the category name, you will display some numeric values per category that come from the API.
[x] When the user clicks (or taps) on a category item, the application navigates to the details page.

Details page

[x] In the details page, the webapp retrieves data from the API to show detailed data in the category.
[x] When the user clicks on the "Back" button (<), the user navigates to the home page.

Testing requirements

[x] Create unit tests for pure functions in your Redux code.
[x] Create integration tests for your application using the React Testing Library.
[x] You may need to mock the access to the API, so that your tests don't send actual requests.
[x] You may need to mock the connection to the Redux Store.

Technical requirements

[x] The project is a single-page application (SPA) built with React and Redux.
[x] The data retrieved from the API should be stored in the Redux store.
[x] You should filter the data that you retrieve from the API using a Filter stateless component.
[x] Every page (the main page and the pages for each item) should have a unique route within the SPA.
[x] The project should be deployed and accessible online.
[x] Add a link to the online version of your app to your README file.
[x] Project documentation

Once you have finished the development of the project, you should record a video presenting the features of the project you built. It is a video with a maximum length of 5 minutes. The content of the video should include:

[x] a description of the project.
[x] a demo of the project features.
[x] You should also highlight some interesting piece of code or something you built that you are very proud of.

BotwCapstone.webm

@Whoistolu  Thanks for your review!!! :smile:


handlerConcurrency is broken

Hi Oleksyk, thanks for making this awesome library. We were trying to use handlerConcurrency and I noticed that the promise chain is broken in BaseConsumer.prototype._fetch
I made a PR (https://github.com/oleksiyk/kafka/pull/85) to fix the issue, you can use it, you can make the change yourself or you can tell me that the system functions as designed.
Cheers

You are right, thanks! Merged.


Add downloading model into installation guide

Just to save a bit of time for people asking "why do I get model not found error?"

@Vokidah, I still didn't get what changes this PR is reporting!
The model link is already added to the installation guide by @bmschmidt.
Can you please add more clarifications ?


added all validations and exception handling

Related Issue
added all validations and exception handling
Closes: #298
Describe the changes you've made
Give a clear description what modifications you have made
Type of change
What sort of change have you made:

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Code style update (formatting, local variables)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Mention any unusual behaviour of your code (Write NA if not)
Any unusual behaviour of your code
Additional Info (optional)
Any additional information you want to give
Checklist:

[ ] My code follows the guidelines of this project.
[ ] I have performed a self-review of my own code.
[ ] I have commented my code, particularly whereever it was hard to understand.
[ ] My changes generate no new warnings.
[ ] Any dependent changes have been merged and published in downstream modules.

@adarshvulli kindly review this PR


No view error the first time, but works fine afterward.

I'm trying to following the suggestion in http://pouchdb.com/2014/05/01/secondary-indexes-have-landed-in-pouchdb.html to start building the index as soon as the index is created.  However, I always get the following error first time when indexeddb is empty.  It's always the first time with an empty indexeddb.  It works afterward.
not_found: ddoc folders_view has no view named folders_view

Code
    let viewName = 'folders_view';
    this.db.createIndex({
        index: {
            ddoc: viewName,
            name: viewName,
            fields: ['name']
        }
    }).then(result => {
        if (result.result === 'created') {
            this.db.query(viewName, { stale: 'update_after' });
        }
    }).catch(console.error.bind(console));

Yeah, seems like a bug. Thanks for reporting!

Is this bug fixed? I keep running into the same issue once in a while. Is there any way we can be notified when the index views are ready to be used? A hook maybe?

This issue was moved to pouchdb/pouchdb#6272


[SPARK-25947][SQL] Reduce memory usage in ShuffleExchangeExec by selecting only the sort columns

What changes were proposed in this pull request?
When sorting rows, ShuffleExchangeExec uses the entire row instead of just the columns references in SortOrder to create the RangePartitioner. This causes the RangePartitioner to sample entire rows to create rangeBounds and can cause OOM issues on the driver when rows contain large fields.
This change creates a projection and only use columns involved in the SortOrder for the RangePartitioner
How was this patch tested?
started a local spark-shell with a small spark.driver.maxResultSize:
spark-shell --master 'local[16]' --conf spark.driver.maxResultSize=128M --driver-memory 4g

and ran the following script:
import com.google.common.io.Files
import org.apache.spark.SparkContext
import org.apache.spark.sql.SparkSession

import scala.util.Random

@transient val sc = SparkContext.getOrCreate()
@transient val spark = SparkSession.builder().getOrCreate()

import spark.implicits._

val path = Files.createTempDir().toString

// this creates a dataset with 1024 entries, each 1MB in size, across 16 partitions
sc.parallelize(0 until (1 << 10), sc.defaultParallelism).
  map(_ => Array.fill(1 << 18)(Random.nextInt)).
  toDS.
  write.mode("overwrite").parquet(path)

spark.read.parquet(path).
  orderBy('value (0)).
  write.mode("overwrite").parquet(s"$path-sorted")

spark.read.parquet(s"$path-sorted").show

execution would fail when initializing RangePartitioner without this change.
execution succeeds and generates a correctly sorted dataset with this change.
Please review http://spark.apache.org/contributing.html before opening a pull request.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

cc @cloud-fan @gatorsmile @hvanhovell

ok to test

Test build #98722 has started for PR 22961 at commit 54b60ab.

do you have some benchmark numbers?

Test build #98722 has finished for PR 22961 at commit 54b60ab.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/98722/
Test PASSed.

Test build #98768 has started for PR 22961 at commit 6dd50b0.

Did some performance evaluation on a 1G test dataset on a small cluster with the following script:
import java.util.UUID

import org.apache.spark.SparkContext
import org.apache.spark.sql.SparkSession
import org.apache.spark.sql.functions.udf

import scala.util.{Random, Try}

@transient val sc = SparkContext.getOrCreate()
@transient val spark = SparkSession.builder().getOrCreate()

import spark.implicits._

val totalSize = 28 // 1G total

val longSize = 6 // 256 Byte records

val wideSize = 13 // 32KB records

sc.parallelize(0 until (1 << (totalSize - longSize)), 200).
  map(_ => Array.fill(1 << longSize)(Random.nextInt)).
  toDS.
  write.mode("overwrite").parquet("long")

sc.parallelize(0 until (1 << (totalSize - wideSize)), 200).
  map(_ => Array.fill(1 << wideSize)(Random.nextInt)).
  toDS.
  write.mode("overwrite").parquet("wide")

val expensiveOrdering = udf((vs: Seq[Int]) => vs.foldLeft(0L)(_ + _))

for {
  format <- Seq("wide", "long")
  expensive <- Seq(true, false)
  trial <- 0 until 10
} yield {
  val time =
    Try({
      val start = System.currentTimeMillis()
      spark.read.parquet(format).orderBy(if (expensive) expensiveOrdering('value) else 'value (0)).write.parquet(s"$format-${UUID.randomUUID}")
      System.currentTimeMillis() - start
    }).toOption
  (format, expensive, trial, time)
}

scenarios:

after: with this change and using default 1g spark.driver.maxResultSize
before : without this change and using default 1g spark.driver.maxResultSize
before + : without this change and increase spark.driver.maxResultSize from default 1g to 4g.

no value means evaluation failed.

ordering
format
scenario
avg (ms)
0
1
2
3
4
5
6
7
8
9

cheap
long
after
23435.2
16259
31116
24585
21104
26732
15863
23716
25672
28313
20992

cheap
long
before
24087.9
26391
24483
28731
24995
18151
27224
25278
16526
24290
24810

cheap
long
before+
21538.5
22336
31748
17915
21733
16393
20415
23558
21403
22264
17620

cheap
wide
after
25028.7
26401
21526
27118
22763
41360
14608
22935
28918
21304
23354

cheap
wide
before

cheap
wide
before+
33324.1
42077
32455
38926
31055
30729
30532
30121
30127
30357
36862

expensive
long
after
24989.2
22967
22490
22365
27159
23944
25401
22834
26073
28212
28447

expensive
long
before
33553.1
30019
33404
32004
33547
35282
34149
33365
30934
36945
35882

expensive
long
before+
32839.4
32572
35354
32635
33385
32063
33350
35472
31771
31261
30531

expensive
wide
after
26740.2
39559
30116
22777
24766
21391
22470
31302
18392
35768
20861

expensive
wide
before

expensive
wide
before+
254233.4
356997
309464
281589
226232
223588
224295
238064
226036
230633
225436

the suggested change has roughly the same performance as before when the dataset has small rows and the ordering evaluation is cheap.
it reduces runtime when the ordering evaluation is expensive by distributing ordering evaluation across the cluster.
it reduces driver memory usage and helps job complete successfully when rows are large by reducing the size of data collected to the driver

Test build #98768 has finished for PR 22961 at commit 6dd50b0.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/98768/
Test PASSed.

thanks, merging to master!


[Question] Symfony bundle

Do you plan to create a Symfony bundle ?

Sure! I just wanted to do a few more improvements (something similar to #3), tag v0.1 and then start with the bundle :wink:


⚠ Bofrost.nl has degraded performance

In 26b0ae0, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 1240 ms

Resolved: Bofrost.nl performance has improved in da789fa.


Create recommendations.md

@benjaminbellamy I put the recommendations.md file in the proposal-docs/recommendations folder to keep things more tidy.  Can you re-do this one to use that structure?


Refactor array_to_batch implementation

xsimd was switched to new implementation.
The PR is to refactor arry_to_batch for the previous PR #490

Let me fix build issues in CI.

Thanks for your comments on PR #490. @JohanMabille
For xsimd was re-implemented and added Architecture parameter: "A" to Class 'Batch',
this PR is to refactor PR#490.
I also added the related test cases. All CI issues were fixed and tests cases were passed on x86(sse, avx and avx512) and Arm64.
Could you please help to review it, thanks.

I'm not a big fan of this PR in current state : we already have https://github.com/xtensor-stack/xsimd/blob/master/include/xsimd/types/xsimd_batch.hpp#L356 that does a pretty similar job. I'd rather fill the holes in the design than introducing an extra function that overlaps with existing ones.

@guyuqi : let me reformulate, the above comment may sound a bit "straight to the face" ^^!
We appreciate the effort, we just need to find a way to interact in a nice manner with the new infrastructure. What about introducing a new constructor like
template<class Iterator> batch(Iterator begin, Iterator end)

that forwards to the appropriate kernel? That looks like a nice generalization of your proposal.

@serge-sans-paille
Thanks for your explanation. It makes sense.
Could you please explain more details about the new constructor ? :
template<class Iterator> batch(Iterator begin, Iterator end)

@serge-sans-paille
Agreed that the PR does a pretty similar job like set in :  https://github.com/xtensor-stack/xsimd/blob/master/include/xsimd/types/xsimd_batch.hpp#L356.
The implementation in: https://github.com/xtensor-stack/xsimd/blob/master/include/xsimd/arch/xsimd_avx512f.hpp#L991-#L999
    template<class A, class T, detail::enable_signed_integer_t<T> = 0>
    batch<T, A> set(batch<T, A> const&, requires_arch<avx512f>, T v0, T v1, T v2, T v3, T v4, T v5, T v6, T v7,
                               T v8, T v9, T v10, T v11, T v12, T v13, T v14, T v15,
                                T v16, T v17, T v18, T v19, T v20, T v21, T v22, T v23,
                                T v24, T v25, T v26, T v27, T v28, T v29, T v30, T v31,
                                T v32, T v33, T v34, T v35, T v36, T v37, T v38, T v39,
                                T v40, T v41, T v42, T v43, T v44, T v45, T v46, T v47,
                                T v48, T v49, T v50, T v51, T v52, T v53, T v54, T v55,
                                T v56, T v57, T v58, T v59, T v60, T v61, T v62, T v63

To make the code easier to maintain, how about  use std::array instead of the 64 input arguments?
And also thanks for your suggestion for the new constructor:
template<class Iterator> batch(Iterator begin, Iterator end)
Does it mean:
(intuitive example)
template<class T, class A, class Iterator>
batch(T, A) bytes_array_to_batch(Iterator begin, Iterator end, A{})
{
     return _mm256_set_epi8( *end, *(end - 1), *(end - 2), ... , *(end - Iterator->size() -1));
}

I'm sorry I don't have a good understanding of this new Iterator template.
Could you kindly help to give more explanation for this new constructor, or an simple example?
Thanks. :-)

@serge-sans-paille
Agreed that the PR does a pretty similar job like set in : https://github.com/xtensor-stack/xsimd/blob/master/include/xsimd/types/xsimd_batch.hpp#L356.

Thanks for being more open minded than I am :-)

To make the code easier to maintain, how about use std::array instead of the 64 input arguments?

Let's consider this function as an internal one. Using an std::array may be valuable but it's probably for another PR.

And also thanks for your suggestion for the new constructor:
template<class Iterator> batch(Iterator begin, Iterator end)
Does it mean:
(intuitive example)
template<class T, class A, class Iterator>
batch(T, A) bytes_array_to_batch(Iterator begin, Iterator end, A{})
{
     return _mm256_set_epi8( *end, *(end - 1), *(end - 2), ... , *(end - Iterator->size() -1));
}

Very close! Let's use the set function instead and that really looks good to me!

@serge-sans-paille
OK, let me reformulate it.
I will:

Close this PR.
Refine the set in another PR:

refine the API input arguments to std:array  as mentioned above.
Make the function set  as an internal one and introduce a new constructor with Iterator  that is also called set  to forwards to the appropriate kernel like:

template<class T, class A, class Iterator>
batch(T, A) set(Iterator begin, Iterator end, A{})
{
     return _mm256_set_epi8( *end, *(end - 1), *(end - 2), ... , *(end - Iterator->size() -1));
}

Do you have more comments on it?
Please correct me if I missed something or something misunderstood.

Hi @guyuqi,
Sorry for jumping so late in this. The idea would be to keep this PR to implement a new constructor for the batch class, that accepts a pair of iterators:
template <class It>
batch(It first, It last);

Its implementation would be very similar to this constructor.
Notice that the set functions are already internal to the library, you cannot find them in https://github.com/xtensor-stack/xsimd/blob/master/include/xsimd/types/xsimd_api.hpp.
The next PR should refactor the set functions themselves. We should replace the existing implementation with two overloads of set accepting iterator pairs only, enables/disabled with SFINAE depending on the contiguity of the iterator. For iterators from a contiguous container, the implementation should call loadu. For Iterators from a non-contiguous container, the implementation should be similar to the existing one (i.e., calling _mmXX_setr_YY passing all the arguments).

Hi @guyuqi,
Sorry for jumping so late in this. The idea would be to keep this PR to implement a new constructor for the batch class, that accepts a pair of iterators:
template <class It>
batch(It first, It last);

Its implementation would be very similar to this constructor.
Notice that the set functions are already internal to the library, you cannot find them in https://github.com/xtensor-stack/xsimd/blob/master/include/xsimd/types/xsimd_api.hpp.
The next PR should refactor the set functions themselves. We should replace the existing implementation with two overloads of set accepting iterator pairs only, enables/disabled with SFINAE depending on the contiguity of the iterator. For iterators from a contiguous container, the implementation should call loadu. For Iterators from a non-contiguous container, the implementation should be similar to the existing one (i.e., calling _mmXX_setr_YY passing all the arguments).

@JohanMabille
Sorry for the late reply. Thanks for your explanation. I'll refine this PR to implement a new constructor that accepts a pair of iterators.
And I also would like to refactor the set like you suggested. Thanks.

@JohanMabille
Refactor the implementation of functions and constructor with iterators.
Tests were passed on x86 and Arm64.

Rebased and clang format.


os: split cluster architectures into separate pages

Right now we have all of the cluster architectures on one page. It would be nice to separate them into individual pages, so we can expand on them and reference things like etcd discovery with SRV vs static, etc.

Closing due to inactivity.


Add two questions to the form

Add these two questions to the form
Ripulia tai vatsakipua
Kyllä / Ei
Hajuaistin tai makuaistin heikkenemistä
Kyllä / Ei

@EsaMakinen should the first one be
Vatsaoireita kuten ripulia, pahoinvointia tai vatsakipuja
Kyllä / Ei
(this way maybe easier to understand what kind of stomach aches we are after). Should I check with the university professor?

Any thoughts on the order, after which questions would these go?

After Nuhaa, I'd say.

I think adding stomach pain/diarrhea etc is definitely something we can do, more we ask, more we get :)  In the beginning we were worried not to ask too many things, that's why we narrowed it down so much. But if this doesn't seem too long, let's add both now. Let's remove stomach issues if someone is strongly against it.

Added in #119


Fix: Update 600-upgrading-to-prisma-5.mdx

Add await to make try-catch works
Describe this PR
An example in the guide demonstrates the usage of findUniqueOrThrow along with try-catch without "await" it.
The promise will be reject without triggering the try-catch in this case.
Changes
Add await before the call
What issue does this fix?
None
Any other relevant information
None

@MiccWan thank you for your contribution!


crashed extenstion

Type: Bug
crashed JS / TS extension
VS Code version: Code - OSS 1.77.1 (b7886d7461186a5eac768481578c1d7ca80e2d21, 2023-04-05T17:02:20.045Z)
OS version: Linux x64 6.3.0-1-MANJARO
Modes:
Sandboxed: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i3 CPU         540  @ 3.07GHz (4 x 3049)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: disabled_softwarevideo_encode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
4, 2, 2

Memory (System)
7.75GB (5.15GB free)

Process Argv
.

Screen Reader
no

VM
0%

DESKTOP_SESSION
xfce

XDG_CURRENT_DESKTOP
XFCE

XDG_SESSION_DESKTOP
xfce

XDG_SESSION_TYPE
x11

Extensions (19)

Extension
Author (truncated)
Version

All-Autocomplete
Ati
0.0.26

vscode-tailwindcss
bra
0.9.11

path-intellisense
chr
2.8.0

es7-react-js-snippets
dsz
4.4.3

gitlens
eam
13.5.0

prettier-vscode
esb
9.12.0

auto-close-tag
for
0.5.14

auto-complete-tag
for
0.2.0

auto-rename-tag
for
0.1.10

code-runner
for
0.12.0

live-sass
gle
6.0.5

fontawesome-autocomplete
Jan
1.3.1

vscode-react-native
msj
1.10.2

vscode-thunder-client
ran
2.6.2

LiveServer
rit
5.7.9

xasnippets
Tom
2.13.1

vscode-icons
vsc
12.4.0

vscode-import-cost
wix
3.3.0

JavaScriptSnippets
xab
1.8.0

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.77.3. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

Thanks for creating this issue! We figured it's missing some basic information or in some other way doesn't follow our issue reporting guidelines. Please take the time to review these and update the issue.
Happy Coding!

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Optional Message parameter in Assert.Pass doesn't appear to be used anywhere

While working on a test today, I noticed the Assert.Pass method had a message param.  I used it, but it doesn't appear to output in any of the loggers that I looked at (console, GUI - I didn't actually check xml).  Is this used anywhere or did it falls between the cracks during implementation?  I can make the changes so it outputs in relevant places, but didn't know if there was a reason or more to story as to it not outputting currently.

Looks like an oversight. The message is passed into the testresult, so it should be available in the logger. Feel free to submit a pull request. You will need to add it to each of the loggers, adding to the console is simple, adding to the others you will need to check, I suspect for the nunit one you just need to add a message node (if message is not empty).

Got it.  I'll take care of it.  Thanks!


Accessing the Headers object within the interceptor?

With 1.0.0 the request object passed into the interceptor function no longer has access to the headers. How do I access (or assign) headers from within the interceptor function?

Yes, the request object has a Request.headers property which is a Headersobject. You can use its get and set functions to modify the headers.
https://github.com/vuejs/vue-resource/blob/master/docs/api.md#headers

Oh ok--my previous code was overwriting the Request.headers object (and then no headers were being sent), so I didn't see that the object was being passed in.
Might be useful to add an example to the interceptor docs, e.g.:
  // add headers
  request.headers.set('Authorization', 'Bearer: <jwt_token>')

Can you give a quick example of how to use it? The following is not working.
request.headers.set('Authorization', 'Bearer: <jwt_token>')

@ropeladder: Check the sent headers. Is it lowercasing them? Happening for us.

Same here, we do the very thing you do above @ropeladder, and 1.0 broke it, because it converts the headers into lowercase (e.g. authorization). This is definitely a bug and needs urgent fixing.

Fixed this issue in v1.0.1

This appears to still happen in 1.0.1 (from CDNJS) when setting the header via "common":
<script>Vue.http.headers.common['X-CSRF-TOKEN'] = '{{ csrf_token() }}';</script>
Firebug reports this header/value pair on the request:
x-csrf-token	EoIchtXIOODrmmnpM2MUdURbBVuonNTUcY9XvnCX
Is it possible that the wrong version got sent to CDNJS? Or perhaps there's something else doing the lower-casing when the header comes in this way.


PSGD optimizer attempts to allocate 64G of memory for a 0.7G model

Example code:
import torch
import heavyball
from torch import nn

# Create a model
model = nn.Sequential(
    nn.Conv2d(3, 32, 4, stride=2),
    nn.ReLU(),
    nn.Conv2d(32, 64, 4, stride=2),
    nn.ReLU(),
    nn.Conv2d(64, 128, 4, stride=2),
    nn.ReLU(),
    nn.Conv2d(128, 256, 4, stride=2),
    nn.ReLU(),
)
model.cuda()

# Create an optimizer
optimizer = heavyball.ForeachPSGDKron(model.parameters(), lr=1e-3)

x = torch.randn(128, 3, 64, 64).cuda()
y = torch.randn(128, 256, 2, 2).cuda()

for _ in range(1000):
    optimizer.zero_grad()
    loss = torch.nn.functional.mse_loss(model(x), y)
    loss.backward()
    optimizer.step()

Stack trace:
---------------------------------------------------------------------------
OutOfMemoryError                          Traceback (most recent call last)
Cell In[15], line 8
      6 loss = torch.nn.functional.mse_loss(model(x), y)
      7 loss.backward()
----> 8 optimizer.step()

File ~/.pyenv/versions/3.9.6/envs/minerl/lib/python3.9/site-packages/torch/optim/optimizer.py:487, in Optimizer.profile_hook_step.<locals>.wrapper(*args, **kwargs)
    482         else:
    483             raise RuntimeError(
    484                 f"{func} must return None or a tuple of (new_args, new_kwargs), but got {result}."
    485             )
--> 487 out = func(*args, **kwargs)
    488 self._optimizer_step_code()
    490 # call optimizer step post hooks

File ~/.pyenv/versions/3.9.6/envs/minerl/lib/python3.9/site-packages/torch/utils/_contextlib.py:116, in context_decorator.<locals>.decorate_context(*args, **kwargs)
    113 @functools.wraps(func)
    114 def decorate_context(*args, **kwargs):
    115     with ctx_factory():
--> 116         return func(*args, **kwargs)

File ~/.pyenv/versions/3.9.6/envs/minerl/lib/python3.9/site-packages/heavyball/psgd_kron.py:121, in ForeachPSGDKron.step(self, closure)
    119     self.balance(do_update, [g], [q])
    120     if do_update:
--> 121         self.do_update([p], [ea if momentum_into_precond_update else g], [q], precond_lr, [q_orig])
    122     set_(g, psgd_precond_grad(q, self.state_(p)["exprs"], ea))
    124 grad_list = self.clip_fn(grad_list)

File ~/.pyenv/versions/3.9.6/envs/minerl/lib/python3.9/site-packages/heavyball/utils.py:756, in PSGDBase.do_update(self, p_list, grad_list, q_list, precond_lr, original_q)
    754 def do_update(self, p_list, grad_list, q_list, precond_lr, original_q: Optional[List] = None):
    755     for i, (p, grad, Q) in enumerate(zip(p_list, grad_list, q_list)):
--> 756         psgd_update_precond(Q, self.state_(p)["exprs"], torch.randn_like(grad), grad, precond_lr, self._tiny)
    757         if original_q:
    758             update_triu_(original_q[i], Q)

File ~/.pyenv/versions/3.9.6/envs/minerl/lib/python3.9/site-packages/heavyball/utils.py:616, in psgd_update_precond(Q, exprs, V, G, step, tiny)
    613 """Update Kronecker product preconditioner Q with pair (V, G)."""
    614 exprA, exprGs, _ = exprs
--> 616 A, conjB = psgd_calc_A_and_conjB(exprA, G, Q, V)
    618 for q, exprG in zip(Q, exprGs):
    619     term1 = torch.einsum(exprG, A, A.conj())

File ~/.pyenv/versions/3.9.6/envs/minerl/lib/python3.9/site-packages/heavyball/utils.py:573, in psgd_calc_A_and_conjB(exprA, G, Q, V)
    572 def psgd_calc_A_and_conjB(exprA, G, Q, V):
--> 573     A = torch.einsum(exprA, *Q, G)
    574     order = G.dim()
    575     p = list(range(order))

File ~/.pyenv/versions/3.9.6/envs/minerl/lib/python3.9/site-packages/torch/functional.py:402, in einsum(*args)
    397     return einsum(equation, *_operands)
    399 if len(operands) <= 2 or not opt_einsum.enabled:
    400     # the path for contracting 0 or 1 time(s) is already optimized
    401     # or the user has disabled using opt_einsum
--> 402     return _VF.einsum(equation, operands)  # type: ignore[attr-defined]
    404 path = None
    405 if opt_einsum.is_available():

OutOfMemoryError: CUDA out of memory. Tried to allocate 64.00 GiB. GPU 0 has a total capacity of 23.65 GiB of which 19.01 GiB is free. Including non-PyTorch memory, this process has 4.57 GiB memory in use. Of the allocated memory 4.03 GiB is allocated by PyTorch, and 48.03 MiB is reserved by PyTorch but unallocated. If reserved but unallocated memory is large try setting PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True to avoid fragmentation.  See documentation for Memory Management  (https://pytorch.org/docs/stable/notes/cuda.html#environment-variables)
                                                                                ```

Nvidia-SMI memory usage:
with PSGD: 4678MiB
with SOAP: 714MiB

Excellent find!
You need opt-einsum installed for heavyball to find good contractions. Otherwise, torch will fall back to naive contractions, and your memory usage will explode. (So, installing it is a good choice in general.)
I've updated the package to depend on opt-einsum (0.14.6) and added a note in the readme to enable set_torch(). set_torch further adds some performance flags such as the one illustrated here


update script to copy template.cofig files

connect to #216

Hi @hanzzhang, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.azure.com.

TTYL, AZPRBOT;


[FR] Forwarding messages provided that certain words

I would be very happy for the possibility that the bridge will only transfer messages that contain certain words, an opposite option of ignoremessages
ContainMessages="^~~ goodword"
I didn't find any alternative to the problem.
Many thanks in advance

Would be very much appreciated. Use-case is having pretty verbose room with debug logs and want to forward only certain lines to have quick overview what's going on.

Well, you could always simulate that by inverting the regexp, but that is not for the faint of heart.

You can do this with tengo scripting.
See more information here: https://github.com/42wim/matterbridge/wiki/Tengo


Empty reports after generating and pushing to S3

Hey,
I'm using your tool to upload allure reports to AWS. I used the image provided on GitHub with the latest tag (at that time it should be version 0.10.0). And at that moment everything was fine. Unfortunately, uploading started to behave not as expected with the current latest tag (1.2.0 and also not working with any other tag I used to pull the image).
The version when everything worked correctly was 0.10.0.  After running tests I lost my previous tests and can only access the empty template of allure reports. Nothing tests-related is transferred to the S3 bucket.

Command I use
allure-report-publisher upload s3 \
    --results-glob="allure-results/*" \
    --bucket="allure-reports" \
    --prefix="allure-reports" \
    --debug \
    --color

Could you guide me on what could be wrong?
Log stash (with --debug option). I removed some is not a directory lines to save description space. After 1 tests run I have about 1,4k files in that directory.

allure-report-publisher upload s3 --results-glob=allure-results/* --bucket=allure-reports --prefix=allure-reports --debug --color
Generating allure report
[✔] generating ... done
== DEBUG LOG OUTPUT ==
[2022-11-03 23:42:21 +0000] Executing command 'which allure'
[2022-11-03 23:42:21 +0000] Glob 'allure-results/*' found 429 paths
[2022-11-03 23:42:21 +0000] Created tmp folder for common data: '/tmp/allure-results20221103-17-oe0tx2'
[2022-11-03 23:42:21 +0000] Created tmp folder for history data: '/tmp/allure-results20221103-17-oe0tx2/history'
[2022-11-03 23:42:21 +0000] Downloading previous run history
[2022-11-03 23:42:21 +0000] Downloaded 'categories-trend.json' as '/tmp/allure-results20221103-17-oe0tx2/history/categories-trend.json'
[2022-11-03 23:42:21 +0000] Downloaded 'duration-trend.json' as '/tmp/allure-results20221103-17-oe0tx2/history/duration-trend.json'
[2022-11-03 23:42:21 +0000] Downloaded 'history-trend.json' as '/tmp/allure-results20221103-17-oe0tx2/history/history-trend.json'
[2022-11-03 23:42:22 +0000] Downloaded 'history.json' as '/tmp/allure-results20221103-17-oe0tx2/history/history.json'
[2022-11-03 23:42:22 +0000] Downloaded 'retry-trend.json' as '/tmp/allure-results20221103-17-oe0tx2/history/retry-trend.json'
[2022-11-03 23:42:22 +0000] Generating allure report
[2022-11-03 23:42:22 +0000] Executing command 'allure generate --clean --output /tmp/allure-report-1667518942 /tmp/allure-results20221103-17-oe0tx2 allure-results/008a6b78-394b-43b6-8150-a2d4709c3660-result.json allure-results/00a313d5-57b0-4922-803b-4f134ec3bc7b-result.json [...] allure-results/fdc34d25-1239-4f7c-95da-af47107bfa7a-result.json allure-results/fe7c0ebf-0743-41ba-ae36-cc708a6c3ba7-result.json allure-results/fec5c9f0-6320-41b5-96b0-5ca37c576f3d-result.json allure-results/ff9782b7-c59e-43e4-bdb3-f38abd88cd29-attachment.ZIP'
[2022-11-03 23:42:23 +0000] Generated allure report. Out: allure-results/008a6b78-394b-43b6-8150-a2d4709c3660-result.json is not a directory
allure-results/00a313d5-57b0-4922-803b-4f134ec3bc7b-result.json is not a directory
allure-results/00ae21bf-c7f2-4354-a82b-451850f4f2cf-result.json is not a directory
allure-results/00e9f04f-d975-4f33-bb41-2608d8e3dd05-result.json is not a directory
[...]
allure-results/fd72fd59-5a4c-4f49-92a0-1e499a6dd046-result.json is not a directory
allure-results/fdaf806e-d2ac-4b02-a7c0-d0677d0217f4-result.json is not a directory
allure-results/fdc34d25-1239-4f7c-95da-af47107bfa7a-result.json is not a directory
allure-results/fe7c0ebf-0743-41ba-ae36-cc708a6c3ba7-result.json is not a directory
allure-results/fec5c9f0-6320-41b5-96b0-5ca37c576f3d-result.json is not a directory
allure-results/ff9782b7-c59e-43e4-bdb3-f38abd88cd29-attachment.ZIP is not a directory
Report successfully generated to /tmp/allure-report-1667518942
== DEBUG LOG OUTPUT ==
Uploading allure report to s3
[✔] uploading ... done
== DEBUG LOG OUTPUT ==
[2022-11-03 23:42:23 +0000] Uploading report files
[2022-11-03 23:42:23 +0000] Uploading '38' files in '8' threads
[2022-11-03 23:42:24 +0000] Finished upload successfully
== DEBUG LOG OUTPUT ==

Yes, it is expected. 1.0 had a breaking change to remove local copy operations, so --results-glob now has to return folders with allure result files rather than files themselves.
So in this case it will be --results-glob=allure-results

Thank you for your support. I've changed that but still no success.
allure-report-publisher upload s3 '--results-glob=allure-results' '--bucket=allure-reports' '--prefix=allure-reports' --color
Generating allure report
[✖] generating ... failed
Is a directory - read

Thank you, everything is working fine now.


OS X import Error .dylib

In OS X, it will be build cpsm_py.dylib instead cpsm_py.so when remove SUFFIX flag.
https://github.com/nixprime/cpsm/commit/6e00d1df847a8e75c6d820fc1e3658d1dbbfdc74
but, python can not import .dylib file... :(
> ls
cpsm.py  cpsm.vim  cpsm_py.dylib*

> python
Python 2.7.10 (default, Oct 31 2015, 01:36:43)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.1.78)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cpsm_py
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named cpsm_py
>>> import cpsm_py.dylib
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named cpsm_py.dylib

> mv cpsm_py.dylib cpsm_py.so

> python
Python 2.7.10 (default, Oct 31 2015, 01:36:43)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.1.78)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cpsm_py
>>> # import success

As with python_library, seems necessary osx dedicated flag.
Although there are many problems of OS X, Would you support?

Fixed on https://github.com/nixprime/cpsm/pull/12
Close.


[Proposal] Add support to onclick custom code in links

Twine standard links in bar or arrow form (ie. [[text|passageName]]) could accept a simple additional expression executed on user click before next passage rendering (ie. [[text|passageName][onClickCallback]]).
It can be very useful to set a variable value (ie. [[text|passageName][s.myVar=1]]) or run a custom function (ie. [[text|passageName][s.myFunc(event, this)]]) that depends on user choice.
Syntax is inspired by SugarCube v2 link feature.
Here is the working code, I can open a PR if ok for you.

I like this idea, but not necessarily the approach. As the SugarCube documentation notes, this breaks how Twine 2 understands passage links, which is not ideal behavior.
Something I have been considering is Story.link(text, callback, passageName) where a user could create a link with a callback, which they could define when they describe the link, and an optional passage name. This would work like SugarCube's <<link>> macro.

@jenkin After playing around with this more, I have changed my mind and decided to add it to Snowman. Your proposal has now been merged.


Event not registered

Some events aren't getting registered somehow which causes the whole app not render.

This was due to the fact that void tags aren't rendering attributes


segfault with get() call on temp dict in min. example with no imports

Compilation of the included minimal example causes a segmentation fault that seems to occur after the suspect code has been run (so possibly during clean up -- the gdb trace seems to indicate the issue is happening during gc). The code runs fine when it is not compiled via nuitka.

Nuitka version
Tried with nuitka 1.8.4, 1.9.1 and dev. Also tried with python 3.8.18, all have the same issue.

>> python3 -m nuitka --version
2.0rc2
Commercial: None
Python: 3.8.10 (default, Mar 13 2023, 10:26:41)
Flavor: Debian Python
Executable: /b/me/dev/scratch/nuitka_crash/venv/bin/python3
OS: Linux
Arch: x86_64
Distribution: Ubuntu (based on Debian) 20.04.6
Version C compiler: /usr/bin/gcc (gcc 9)

How did you install Nuitka and Python
Via pip, pip3 install Nuitka==1.x.y and pip3 install -U "https://github.com/Nuitka/Nuitka/archive/develop.zip"

The specific PyPI names and versions
No additional packages

Short, Self Contained, Correct, Example
Save the following as nuitka_crash_aio.py, and compile with the provided command. Sorry for the odd example with potentially useless code, but playing around with removing some loops or lists seemed to avoid the crash.

# coding=utf-8

class TempData:
    def __init__(self):
        self.data = {}

def run_me():
    attr0_one = "d8e2275d"
    attr0_two = "36a78a21"
    attr1_one = "48a7ec0b"
    attr1_two = "76bd599e"

    ref_data = [
        [
            {
                "attr0": "d8e2275d",
                "attr1": "48a7ec0b",
                "attr2": "fd39764b",
            },
            {
                "attr0": "36a78a21",
                "attr1": "76bd599e",
                "attr2": "caaf2c9d",
            }
        ],
    ]

    r = TempData()
    r.data = ref_data[0]

    for dat in r.data:
        # this block with x = { ... }.get(...) crashes with a segfault
        x = {
            attr0_one: {
                'attr0': attr0_one,
                'attr1': attr1_one,
                'attr2': 'fd39764b',
            },
            attr0_two: {
                'attr0': attr0_two,
                'attr1': attr1_two,
                'attr2': 'caaf2c9d',
            },
        }.get(dat['attr0'])
        print(x)

        # but moving the .get(...) to a separate line works
        # x = { ... }
        # y = x.get(dat['attr0'])
        # print(y)

if __name__ == "__main__":
    run_me()

Provide in your issue the Nuitka options used

>> python3 -m nuitka --follow-imports nuitka_crash_aio.py --output-dir=out --report=out/build.xml --no-pyi-file --remove-output

The issue also occurs when compiling as an extension and importing + calling the method from a trivial 'main' entrypoint.

More info

>> ./nuitka_crash_aio.bin
{'attr0': 'd8e2275d', 'attr1': '48a7ec0b', 'attr2': 'fd39764b'}
{'attr0': '36a78a21', 'attr1': '76bd599e', 'attr2': 'caaf2c9d'}
Segmentation fault

// through gdb
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
{'attr0': 'd8e2275d', 'attr1': '48a7ec0b', 'attr2': 'fd39764b'}
{'attr0': '36a78a21', 'attr1': '76bd599e', 'attr2': 'caaf2c9d'}

Program received signal SIGSEGV, Segmentation fault.
0x00005555557179a3 in PyObject_GC_Del ()
(gdb) bt
#0  0x00005555557179a3 in PyObject_GC_Del ()
#1  0x00005555556453e5 in PyDict_ClearFreeList ()
#2  0x0000555555716998 in ?? ()
#3  0x00005555557171f1 in PyGC_Collect ()
#4  0x00005555556f29bb in Py_FinalizeEx ()
#5  0x00005555556f32ec in Py_Exit ()
#6  0x00005555555ca32f in ?? ()
#7  0x00007ffff7c28083 in __libc_start_main (main=0x5555555c8f90, argc=1, argv=0x7fffffffe798,
    init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
    stack_end=0x7fffffffe788) at ../csu/libc-start.c:308
#8  0x00005555555d5dfe in _start ()

Thanks for your report, this is fixed on the factory branch, which is a development version under rapid development. You can try it out by going here: https://nuitka.net/doc/factory.html
Feedback if this is working is very welcome, just please do not share plans of doing it, but rather confirmations or denials of it working.

Part of the 1.9.2 hotfix release I just made.


ERRROR! Location of your cli *** does not exist. check your undefined file if your SDK path is correct

1.Run command rnv start
2. Run command rnv run -p android
2. See error
Expected behavior
Expected to build the project on android emulator, but crashed with the error:

Desktop (please complete the following information):

OS: macOS Catalina (10.15.5)
Node Version: 12.12.0
RNV Version: 0.29.0

Additional context
I tried to add my ANDROID_HOME directory to base/renative.json or projectConfig/renative.json
"sdks": {     "ANDROID_SDK": "/usr/local/Caskroom/android-sdk/4333796/tools"   } -  but still with no success..
Where I should change it guys ?
Thank you !

@Ivanov89 you can manually update your ~/.rnv/renative.json with:
{
     "sdks": {
        "ANDROID_SDK": "/usr/local/Caskroom/android-sdk/4333796"
     }
}

that's the best place to keep your SDK configs
NOTE: you must pass root folder of your SDK (not tools)
typically (on macOS) that's:

usr/local/android-sdk
~/Library/Android/sdk

For brew installations usually:

/usr/local/Caskroom/android-sdk/<VERSION>
/usr/local/Cellar/android-sdk/<VERSION>

@pavjacko I updated it ,but the problem is that the script still search somewhere the old directory, for example:
/Users/Ivanov/Android/platform-tools/adb , where I can delete that old directory ?
Thanks!

@Ivanov89 that's strange could you check your project .renative.*.json and appConfigs renative.*.json if you don't override  it with ANDROID_SDK
as you're on mac you could also navigate to your project root and try grep -r '"ANDROID_SDK":' ./ see where is it defined (platformBuilds, node_modules can be ignored)
also if you check platformBuilds/<YOUR_APP_ID>_android.json file what do you see there under ANDROID_SDK` field?

Seems, only in /node_modules/rnv/supportFiles/global-config-template.json is saved the old SDK directory, even I hit rnv clean before every rnv run -p android:
Ivanov@Ivanovs-MacBook-Pro cms-casino % grep -r '"ANDROID_SDK":' ./ .//appConfigs/base/renative.json:      "ANDROID_SDK": "/usr/local/Caskroom/android-sdk/4333796" .//node_modules/rnv/supportFiles/global-config-template.json:        "ANDROID_SDK": "/Users/<USER>/Library/Android/sdk", .//platformBuilds/cmscasino-stage_android.json:        "ANDROID_SDK": "/usr/local/Caskroom/android-sdk/4333796", .//platformBuilds/cmscasino-stage_android.json:            "ANDROID_SDK": "/usr/local/Caskroom/android-sdk/4333796" .//platformBuilds/renative.build.json:        "ANDROID_SDK": "/usr/local/Caskroom/android-sdk/4333796" .//renative.json:    "ANDROID_SDK": "/usr/local/Caskroom/android-sdk/4333796"

@Ivanov89 ok let me see.
what do you get if you run cat ~/.rnv/renative.json in teminal ?
BTW you definitely don't need rnv clean before every run. it's an overkill. If you want to cleanup your build just pass -r ie: rnv run -p android -r . that will regenerate the whole android project for you

after hit cat ~/.rnv/renative.json :
Ivanov@Ivanovs-MacBook-Pro cms-casino % cat ~/.rnv/renative.json {    "sdks": {       "ANDROID_SDK": "/Users/Ivanov/Android",       "ANDROID_NDK": "/Users/<USER>/Library/Android/sdk/ndk-bundle",       "IOS_SDK": "No need. Just install Xcode",       "TIZEN_SDK": "/Users/<USER>/tizen-studio",       "WEBOS_SDK": "/Users/<USER>/Library/webOS_TV_SDK",       "KAIOS_SDK": "/Applications/Kaiosrt.app"    },    "defaultTargets": {       "android": "Nexus_5X_API_26",       "androidtv": "Android_TV_720p_API_22",       "androidwear": "Android_Wear_Round_API_28",       "ios": "iPhone 6",       "tvos": "Apple TV 4K",       "tizen": "T-samsung-5.0-x86",       "tizenwatch": "W-5.0-circle-x86",       "webos": "emulator"    } }%           which is strange because it is not my new sdk directory here ?

yup that's it. can you update "ANDROID_SDK" to /usr/local/Caskroom/android-sdk/4333796

It is updated but I think when I hit cat ~/.rnv/renative.json may be it is overriden, because the below is my code, the above is info from the terminal:
"sdks": {         "ANDROID_SDK": "/usr/local/Caskroom/android-sdk/4333796",         "ANDROID_NDK": "/Users/<USER>/Library/Android/sdk/ndk-bundle",         "IOS_SDK": "No need. Just install Xcode",         "TIZEN_SDK": "/Users/<USER>/tizen-studio",         "WEBOS_SDK": "/Users/<USER>/Library/webOS_TV_SDK",         "KAIOS_SDK": "/Applications/Kaiosrt.app"     }, - this is the part from myAppID_android.json file

Ok found the culprit.
The issue was that RNV checks the existence of your ANDROID_SDK (as folder) and that will return true for
/Users/Ivanov/Android
however sdk fields are not merged thus your project specific overrides did not work
I'll make few adjustments to RNV to fix merges and  make this issue clearer with correct path pointing to that renative file
for now you have to rely on  ~/.rnv/renative.json (workspace location) as only place where you can configure SDKs

Are you sure I should rely only on ~/.rnv/renative.json (workspace location) , because I configured it only in that place and still don't working ?
I updated the RNV to 0.30.1 too right now.

@Ivanov89 could you update to<EMAIL_ADDRESS>(contains fix I mentioned above) and see if it fixes for you.
if not can you run it with -i parameter (full info log) and check what's printed at CLI Config: and SDK Config: lines

fix released in 0.30.2


undefined is not an object (evaluating '_a11.length')

Cannot read properties of undefined (reading 'length') when selecting an invalid marking period

Error is now undefined is not an object (evaluating '_a11.length') , issue with studentvue.js library

Correction: Error Cannot read properties of undefined (reading 'length') on web but undefined is not an object (evaluating '_a11.length') on ios

Related

cac154ea3dde413a85823223d6a69dd67434d20a and https://github.com/vaporrrr/studentvue.js/commit/d00491fc1d1099dca384b66c855558b8cad4151f

1dc600a62fd105d204606e86f812de51030320da


ld: -weak_library and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together

ld: -weak_library and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together clang: error: linker command failed with exit code 1 (use -v to see invocation)
This is still happening, tried to disable bitcode but I can't build anyways.
Using XCode 7.1

:+1: have the same issue


bug: Thermocycler fails performing basic PCR program after lid closing/shifting temperatures

Overview
When running a simple PCR program the thermocycler (Tc) fails with a uniformity error after lid closing. Interestingly, this error only happens when the Tc has been turned off long enough for the lid and plate to cool down to the ambient temperature.
Steps to reproduce

Turn off all hardware (OT2* & Tc**) and allow Tc plate and lid to return to ambient (~23°C) temperature.
Turn on OT2.
Turn on Tc.
Upload this run protocol.
After simulation is complete, initiate protocol.

*OT2 server version is 4.7.0.
*Tc firmware version is v1.1.0.
Documentation of error
I was able to reproduce this error 3 separate times using 2 different OT2s (A & B) and 3 different Tc's (A, B, & C). Below are 3 videos simultaneously showing the OT2 and app running in real-time up until they encounter the error. Below is also one API log which I downloaded and parsed only for the error below.
Videos

API Logs
Dec 31 22:08:33 e9eb27 opentrons-api[208]: rpc built call run on <opentrons.api.session.Session object at 0x70c47690>
Dec 31 22:08:33 e9eb27 opentrons-api[208]: Updating instrument model cache
Dec 31 22:08:34 e9eb27 opentrons-api[208]: loaded: p300_multi_v2.0, pipette offset: [-1.5000000000000089, -1.3000000000000185, 1.5987211554602254e-14]
Dec 31 22:08:34 e9eb27 opentrons-api[208]: Doing full configuration on LEFT
Dec 31 22:08:34 e9eb27 opentrons-api[208]: Updated move split config with {'B': MoveSplit(split_distance=1, split_current=1.75, split_speed=1, after_time=1800, fullstep=True)}
Dec 31 22:08:34 e9eb27 opentrons-api[208]: loaded: p20_multi_v2.1, pipette offset: [1.6000000000000014, -2.3000000000000043, 0.7999999999999972]
Dec 31 22:08:34 e9eb27 opentrons-api[208]: Doing full configuration on RIGHT
Dec 31 22:08:34 e9eb27 opentrons-api[208]: Instruments found: {<Mount.LEFT: 1>: <Pipette: P300 8-Channel GEN2<PHONE_NUMBER>>, <Mount.RIGHT: 2>: <Pipette: P20 8-Channel GEN2<PHONE_NUMBER>>}
Dec 31 22:08:34 e9eb27 opentrons-api[208]: Starting hardware event watcher
Dec 31 22:08:34 e9eb27 opentrons-api[208]: Session.set_state state=running user_message=None duration=None reason=None
Dec 31 22:08:34 e9eb27 opentrons-api[208]: Session.set_state state=running user_message=None duration=None reason=None
Dec 31 22:08:34 e9eb27 opentrons-api[208]: Homing axes ZA in sequence ['ZA']
Dec 31 22:08:36 e9eb27 opentrons-api[208]: Updating instrument model cache
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Skipping configuration on LEFT
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Skipping configuration on RIGHT
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Instruments found: {<Mount.LEFT: 1>: <Pipette: P300 8-Channel GEN2<PHONE_NUMBER>>, <Mount.RIGHT: 2>: <Pipette: P20 8-Channel GEN2<PHONE_NUMBER>>}
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Resetting configuration for LEFT
Dec 31 22:08:38 e9eb27 opentrons-api[208]: loaded: p300_multi_v2.0, pipette offset: [-1.5000000000000089, -1.3000000000000185, 1.5987211554602254e-14]
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Resetting configuration for RIGHT
Dec 31 22:08:38 e9eb27 opentrons-api[208]: loaded: p20_multi_v2.1, pipette offset: [1.6000000000000014, -2.3000000000000043, 0.7999999999999972]
Dec 31 22:08:38 e9eb27 opentrons-api[208]: /data/robot_settings.json not found. Loading defaults
Dec 31 22:08:38 e9eb27 opentrons-api[208]: /data/deck_calibration.json not found. Loading defaults
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Updating instrument model cache
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Skipping configuration on LEFT
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Skipping configuration on RIGHT
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Instruments found: {<Mount.LEFT: 1>: None, <Mount.RIGHT: 2>: None}
Dec 31 22:08:38 e9eb27 opentrons-api[208]: Updating instrument model cache
Dec 31 22:08:39 e9eb27 opentrons-api[208]: Skipping configuration on LEFT
Dec 31 22:08:39 e9eb27 opentrons-api[208]: Skipping configuration on RIGHT
Dec 31 22:08:39 e9eb27 opentrons-api[208]: Instruments found: {<Mount.LEFT: 1>: <Pipette: P300 8-Channel GEN2<PHONE_NUMBER>>, <Mount.RIGHT: 2>: <Pipette: P20 8-Channel GEN2<PHONE_NUMBER>>}
Dec 31 22:08:39 e9eb27 opentrons-api[208]: Homing axes XYZAXZA in sequence ['ZA', 'X', 'Y']
Dec 31 22:08:45 e9eb27 opentrons-api[208]: Homing axes B in sequence ['B']
Dec 31 22:08:52 e9eb27 opentrons-api[208]: Homing axes C in sequence ['C']
Dec 31 22:08:58 e9eb27 opentrons-api[208]: command.THERMOCYCLER_OPEN:
Dec 31 22:08:58 e9eb27 opentrons-api[208]: Cannot assure a safe gantry position to avoid colliding with the lid of the Thermocycler Module.
Dec 31 22:08:58 e9eb27 opentrons-api[208]: command.THERMOCYCLER_SET_BLOCK_TEMP: temperature: 4, hold_time: None
Dec 31 22:09:39 e9eb27 opentrons-api[208]: command.THERMOCYCLER_SET_LID_TEMP:
Dec 31 22:12:17 e9eb27 opentrons-api[208]: command.THERMOCYCLER_CLOSE:
Dec 31 22:12:17 e9eb27 opentrons-api[208]: Cannot assure a safe gantry position to avoid colliding with the lid of the Thermocycler Module.
Dec 31 22:12:43 e9eb27 opentrons-api[208]: command.THERMOCYCLER_OPEN:
Dec 31 22:12:43 e9eb27 opentrons-api[208]: Cannot assure a safe gantry position to avoid colliding with the lid of the Thermocycler Module.
Dec 31 22:13:12 e9eb27 opentrons-api[208]: command.THERMOCYCLER_CLOSE:
Dec 31 22:13:12 e9eb27 opentrons-api[208]: Cannot assure a safe gantry position to avoid colliding with the lid of the Thermocycler Module.
Dec 31 22:13:36 e9eb27 opentrons-api[208]: Thermocycler has encountered an unrecoverable error: /dev/ot_module_thermocycler0: 'Received error response 'ERROR:Plate temperature not uniform. Deactivating.
                                           Error:Plate temperature is not uniform
                                           Lid:closed'. Please refer to support article at https://support.opentrons.com/en/articles/3469797-thermocycler-module for troubleshooting.
Dec 31 22:13:36 e9eb27 opentrons-api[208]: Exception during run:
                                           Traceback (most recent call last):
                                             File "usr/lib/python3.7/site-packages/opentrons/protocols/execution/execute_python.py", line 60, in run_python
                                             File "<string>", line 1, in <module>
                                             File "thermocycler_testing.py", line 20, in run
                                             File "usr/lib/python3.7/site-packages/opentrons/commands/publisher.py", line 94, in _decorated
                                             File "usr/lib/python3.7/site-packages/opentrons/protocols/api_support/util.py", line 420, in _check_version_wrapper
                                             File "usr/lib/python3.7/site-packages/opentrons/protocol_api/module_contexts.py", line 495, in close_lid
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/adapters.py", line 56, in call_coroutine_sync
                                             File "usr/lib/python3.7/concurrent/futures/_base.py", line 432, in result
                                             File "usr/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/modules/thermocycler.py", line 181, in close
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/modules/thermocycler.py", line 345, in _wait_for_lid_status
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/modules/thermocycler.py", line 349, in wait_next_poll
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/poller.py", line 75, in wait_next_poll
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/poller.py", line 141, in _poller
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/modules/thermocycler.py", line 549, in read
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/thermocycler/driver.py", line 119, in get_lid_status
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/asyncio/communication/serial_connection.py", line 119, in send_command
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/asyncio/communication/serial_connection.py", line 138, in send_data
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/asyncio/communication/serial_connection.py", line 170, in _send_data
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/asyncio/communication/serial_connection.py", line 212, in raise_on_error
                                           opentrons.drivers.asyncio.communication.errors.ErrorResponse: /dev/ot_module_thermocycler0: 'Received error response 'ERROR:Plate temperature not uniform. Deactivating.
                                           Error:Plate temperature is not uniform
                                           Lid:closed'

                                           The above exception was the direct cause of the following exception:

                                           Traceback (most recent call last):
                                             File "usr/lib/python3.7/site-packages/opentrons/api/session.py", line 627, in _run
                                             File "usr/lib/python3.7/site-packages/opentrons/protocols/execution/execute.py", line 27, in run_protocol
                                             File "usr/lib/python3.7/site-packages/opentrons/protocols/execution/execute_python.py", line 71, in run_python
                                           opentrons.protocols.execution.errors.ExceptionInProtocolError: ErrorResponse [line 20]: /dev/ot_module_thermocycler0: 'Received error response 'ERROR:Plate temperature not uniform. Deactivating.
                                           Error:Plate temperature is not uniform
                                           Lid:closed'
Dec 31 22:13:36 e9eb27 opentrons-api[208]: Session.set_state state=error user_message=None duration=None reason=None
Dec 31 22:13:36 e9eb27 opentrons-api[208]: Smart exception in protocol
                                           Traceback (most recent call last):
                                             File "usr/lib/python3.7/site-packages/opentrons/protocols/execution/execute_python.py", line 60, in run_python
                                             File "<string>", line 1, in <module>
                                             File "thermocycler_testing.py", line 20, in run
                                             File "usr/lib/python3.7/site-packages/opentrons/commands/publisher.py", line 94, in _decorated
                                             File "usr/lib/python3.7/site-packages/opentrons/protocols/api_support/util.py", line 420, in _check_version_wrapper
                                             File "usr/lib/python3.7/site-packages/opentrons/protocol_api/module_contexts.py", line 495, in close_lid
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/adapters.py", line 56, in call_coroutine_sync
                                             File "usr/lib/python3.7/concurrent/futures/_base.py", line 432, in result
                                             File "usr/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/modules/thermocycler.py", line 181, in close
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/modules/thermocycler.py", line 345, in _wait_for_lid_status
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/modules/thermocycler.py", line 349, in wait_next_poll
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/poller.py", line 75, in wait_next_poll
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/poller.py", line 141, in _poller
                                             File "usr/lib/python3.7/site-packages/opentrons/hardware_control/modules/thermocycler.py", line 549, in read
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/thermocycler/driver.py", line 119, in get_lid_status
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/asyncio/communication/serial_connection.py", line 119, in send_command
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/asyncio/communication/serial_connection.py", line 138, in send_data
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/asyncio/communication/serial_connection.py", line 170, in _send_data
                                             File "usr/lib/python3.7/site-packages/opentrons/drivers/asyncio/communication/serial_connection.py", line 212, in raise_on_error
                                           opentrons.drivers.asyncio.communication.errors.ErrorResponse: /dev/ot_module_thermocycler0: 'Received error response 'ERROR:Plate temperature not uniform. Deactivating.
                                           Error:Plate temperature is not uniform
                                           Lid:closed'

                                           The above exception was the direct cause of the following exception:

                                           Traceback (most recent call last):
                                             File "usr/lib/python3.7/site-packages/robot_server/service/legacy/rpc/rpc.py", line 267, in make_call
                                             File "usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
                                             File "usr/lib/python3.7/site-packages/robot_server/service/legacy/rpc/rpc.py", line 258, in call_and_serialize
                                             File "usr/lib/python3.7/site-packages/opentrons/api/session.py", line 657, in run
                                             File "usr/lib/python3.7/site-packages/opentrons/api/util.py", line 33, in decorated
                                             File "usr/lib/python3.7/site-packages/opentrons/api/session.py", line 649, in _run
                                             File "usr/lib/python3.7/site-packages/opentrons/api/session.py", line 627, in _run
                                             File "usr/lib/python3.7/site-packages/opentrons/protocols/execution/execute.py", line 27, in run_protocol
                                             File "usr/lib/python3.7/site-packages/opentrons/protocols/execution/execute_python.py", line 71, in run_python
                                           opentrons.protocols.execution.errors.ExceptionInProtocolError: ErrorResponse [line 20]: /dev/ot_module_thermocycler0: 'Received error response 'ERROR:Plate temperature not uniform. Deactivating.
                                           Error:Plate temperature is not uniform
                                           Lid:closed'

Current behavior
mostly speculation on a brief review of a few tickets
I suspect that this behavior is the result of one, or both, already notes issues. Ticket #5602 documents this exact error where a plate uniformity error arises if the lid is opened or closed immediately after set_block_temperature().
However, the resolution to this bug is documented in ticket #5807 through the use of a TEMP_THRESHOLD value calculated by averaging the last 10 polled Tc temperatures to determine a "fluctuation threshold". Given that this error only happens after the Tc has been turned off for several hours which is necessary for both the lid and plate to return to an ambient temperature that there's not enough history for it to poll such that the calculated "fluctuation threshold" is presumably to low. While not documented in this ticket, I have a similar issue where the Tc returns a plate uniformity error after holding at a temperature for 15 minutes and then shifts to another temperate afterward.  For example, an RT-PCR reaction is first done by incubation at a specific temperature for several minutes followed by cycling through several different temperatures quickly for PCR. I would suspect that the acceptable TEMP_THRESHOLD` calculated from extended at a specific temperature would lead to such a small value that cycling out of that temperature would return a plate uniformity error only unless the Tc did not get to the next temperature quickly and without overshooting the target temperature.
Expected behavior
For the thermocycler to be able to not fail when doing basic PCR protocols and not when shifting from 1 long incubation to another temperature.

Update
I built a new version of the Tc firmware locally from the opentrons-module repo which includes commits that allow the print out the thermistors values and uploaded it to the Tc in the event of failure. Here they are...
ErrorResponse [line 43]: /dev/ot_module_thermocycler2: 'Received error response 'Error:Plate temperature is not uniform. T1: 2.0172	T2: 8.0703	T3: 4.2907	T4: 3.7157	T5: 8.7126	T6: 4.4932	T.Lid: 105.6111	T.sink: 61.8712	T_error: 0.0000

Thank you for the detailed recording and troubleshooting steps of this issue!
The behavior you are seeing is not due to having the thermocycler turned off for a long time but due to the consecutive, multiple lid open & close commands (although, having the module start off from an ambient temperature could be aggravating the issue slightly). The issue lies in the way the lid's movement affects internal temperature reading. This behavior is documented in https://github.com/Opentrons/opentrons-modules/issues/104.
tl;dr of the issue is that every time the lid is moving, the thermocycler is unable to intelligently correct its block temperature. So each time the lid is opened or closed, the block/plate's temperature deviates slightly. It gets corrected immediately after the motion is completed. But if you have consecutive open and close commands, the thermocycler doesn't get any time to correct its plate's temperature; each consecutive lid command adds to the temperature deviation, ultimately making it large enough to result in a uniformity error.

While not documented in this ticket, I have a similar issue where the Tc returns a plate uniformity error after holding at a temperature for 15 minutes and then shifts to another temperate afterward.

This seems to be a different and more concerning issue. Would you mind creating a different ticket for it with the observed behavior and logs? Did this protocol also have consecutive lid open and close commands?

For example, an RT-PCR reaction is first done by incubation at a specific temperature for several minutes followed by cycling through several different temperatures quickly for PCR. I would suspect that the acceptable TEMP_THRESHOLD` calculated from extended at a specific temperature would lead to such a small value that cycling out of that temperature would return a plate uniformity error only unless the Tc did not get to the next temperature quickly and without overshooting the target temperature.

The TEMP_THRESHOLD value you are referring to does not detect the uniformity of the plate. This value is only monitored for a short amount of time in the python API to check whether the temperature set after set_temperature has stabilized, before moving on to the next protocol step. The uniformity detection is done by the thermocycler firmware which continuously monitors the temperatures of different spots on the plate/block. It raises the error only when the plate is supposed to have reached stable temperatures and two spots on the plate are at very different temperatures, like those shown in your logs T1: 2.0172 and T2: 8.0703

Thanks for the thorough reply and all your hard work in particular addressing the Tc issues! I've been following your commits as I tried to debug. I'll try to adjust my protocols accordingly. I've been automating longer protocols which require multiple opening and closings of the Tc but will break them down. Though once this initially error happens and the Tc is "warmed up," I don't see this error happen again.

Thank you for the detailed recording and troubleshooting steps of this issue!
The behavior you are seeing is not due to having the thermocycler turned off for a long time but due to the consecutive, multiple lid open & close commands (although, having the module start off from an ambient temperature could be aggravating the issue slightly). The issue lies in the way the lid's movement affects internal temperature reading. This behavior is documented in Opentrons/opentrons-modules#104.
tl;dr of the issue is that every time the lid is moving, the thermocycler is unable to intelligently correct its block temperature. So each time the lid is opened or closed, the block/plate's temperature deviates slightly. It gets corrected immediately after the motion is completed. But if you have consecutive open and close commands, the thermocycler doesn't get any time to correct its plate's temperature; each consecutive lid command adds to the temperature deviation, ultimately making it large enough to result in a uniformity error.
We don't have a fix planned for this behavior immediately as having the lid open and close multiple times consecutively is not something a protocol would typically need to do. That said, improving the lid functionality is something on our radar.

While not documented in this ticket, I have a similar issue where the Tc returns a plate uniformity error after holding at a temperature for 15 minutes and then shifts to another temperate afterward.

This seems to be a different and more concerning issue. Would you mind creating a different ticket for it with the observed behavior and logs? Did this protocol also have consecutive lid open and close commands?

For example, an RT-PCR reaction is first done by incubation at a specific temperature for several minutes followed by cycling through several different temperatures quickly for PCR. I would suspect that the acceptable TEMP_THRESHOLD` calculated from extended at a specific temperature would lead to such a small value that cycling out of that temperature would return a plate uniformity error only unless the Tc did not get to the next temperature quickly and without overshooting the target temperature.

The TEMP_THRESHOLD value you are referring to does not detect the uniformity of the plate. This value is only monitored for a short amount of time in the python API to check whether the temperature set after set_temperature has stabilized, before moving on to the next protocol step. The uniformity detection is done by the thermocycler firmware which continuously monitors the temperatures of different spots on the plate/block. It raises the error only when the plate is supposed to have reached stable temperatures and two spots on the plate are at very different temperatures, like those shown in your logs T1: 2.0172 and T2: 8.0703. Merely cycling through different temperatures shouldn't result in this error. So it'll be helpful for us to see the protocol you are using and where this error is happening.

Yeah, I'll open a new ticket this week documenting the above mentioned error modality. Thanks again for you feedback on this.


Exclude libgrpc_csharp_ext.x86.so from publish when targetting linux-64

What version of gRPC and what language are you using?
C# , gRPC 2.32.0
What operating system (Linux, Windows,...) and version?
Linux 64 bit
What runtime / compiler are you using (e.g. python version or version of gcc)
dotnet core 3.1
What did you do?
Build a dotnet core project for linux-64 only.
dotnet publish -c Release -o build -r linux-x64 --self-contained false .
What did you expect to see?
Only have libgrpc_csharp_ext.x64.so in my build directory.
What did you see instead?
Both libgrpc_csharp_ext.x64.so and libgrpc_csharp_ext.x86.so are copied to the build directory.
Due to this the container size increases by ~70MB . How can I only exclude the x86 binaries ?
Also this issue was already reported here #18106 but closed due to inactivity.

On linux and mac, this is now "fixed" as a side effect of https://github.com/grpc/grpc/pull/24378

Also, https://github.com/grpc/grpc/pull/24233 seems to aim to a solution that would work for windows as well (and would work for linux and mac if there still were the x86 artifacts).

This can be considered fixed due to https://github.com/grpc/grpc/pull/24766 and https://github.com/grpc/grpc/pull/24378


Skip authorization on return fields

I am having issues with mutations where I return a type that is guarded. Let's say for example I have a mutation where a user can reset the password with a token it got via a mail and I return a UserType.
mutation($reset_password_token: String, $password: String) {
    newPassword(
      reset_password_token: $reset_password_token,
      password: $password,
      password_confirmation: $password
  ) { id }
}

The problem is that the UserType is guarded but within the mutation I want to skip the UserType guard policy. Is this possible?

Hey @egonm12, that's a very interesting use case. GraphQL-Guard itself doesn't allow to skip some guards with a mutation. But just as an idea, you could use the context to understand whether the execution is after the mutation or not, for example:
mutation: ->(obj, args, ctx) do
  user = User.find(...)
  user.change_password(...)
  ctx[:changed_password_user] = user
end

user_guard: ->(obj, args, ctx) do
  ctx[:current_user] == obj || ctx[:changed_password_user] == obj
end

Or simply let the user, which perfomed the mutation, be "signed in" after the mutation execution:
mutation: ->(obj, args, ctx) do
  user = User.find(...)
  user.change_password(...)
  ctx[current_user] = user
end

user_guard: ->(obj, args, ctx) do
  ctx[:current_user] == obj
end


Loan Repayment Prediction

GSSOC 24 Contribution for Loan Repayment Prediction

@aviralgarg05 do tag the relevant issue

@aviralgarg05 do tag the relevant issue

here's the corresponding issue #602


Monk's Common Display Issue

Hey there, I am trying to use this module, it's perfect for my needs. Only issue is I use Monk's Common Display to control the view of the map I show on stream. In Monk's there is an option to hide UI which I need as I want the stream to only see the important stuff.
Problem is when I use the view card macro, it is considered UI. Is there any way around this?
And one last thing - is there any way to change the lighting color around the card? I changed the border color to black and yet everything still has a yellow glow.

Hi there.  So I took a look at Monk's Common Display... I think you'd need to log a bug with that module's developer.  I can see that they have baked in exception to their hiding rules for many known mods, but card-viewer doesn't seem to be in their exceptions list.

I can't see adding a hack to fix that on my end -- it would be an @ironmonk88 decision on their side.
  You would just need to find the local CSS file that controls this, at [Your Foundry VTT Folder]/Data/modules/monks-common-display/monks-common-display.css), look for the long list of :not(#this):not(.that) rules, and add one for :not(.orcnog-card-viewer).
Okay update: I tested this ^, and yes it seems to work to show the card... buuuuut I don't see a way to force the card display to close without manually closing it from the "common" user's instance (i.e. monk's Clear Images and Clear Journals buttons on the GM's screen do not close the card viewer on the common screen).  So once again, you're best bet is to log an issue over at the common display repo.


Update custom_domains.py

Description
I've added:
avalpardakht.com
bit24.cash
cafearz.com
nikpardakht.com

Checklist

[x] I have read and followed the contributing guidelines.
[x] I have tested my changes.
[x] I have updated the documentation, if necessary.

I've checked and found these sites have been added through enamad sites.


Support any name for a manifest

Motivation and context

How has this been tested?

Checklist

[ ] I submit my changes into the develop branch
[ ] I have added description of my changes into CHANGELOG file
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] I have linked related issues (read github docs)
[ ] I have increased versions of npm packages if it is necessary (cvat-canvas,
cvat-core, cvat-data and cvat-ui)

License

[ ] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
[ ] I have updated the license header for each file (see an example below)

# Copyright (C) 2021 Intel Corporation
#
# SPDX-License-Identifier: MIT

@Marishka17 Hi, please also don't forget to update backup functionality as well https://github.com/openvinotoolkit/cvat/blob/develop/cvat/apps/engine/backup.py#L261

@Marishka17 Hi, please also don't forget to update backup functionality as well https://github.com/openvinotoolkit/cvat/blob/develop/cvat/apps/engine/backup.py#L261

@azhavoro, Right now I'm not sure that I need to update it because the name manifest.jsonl will be used inside CVAT part.


svn: E170013: Unable to connect to a repository at URL 'https://llvm.org/svn/llvm-project/llvm/trunk'

I tried to install clif with "./install_clif.sh", but got this error.
$ ./install_clif.sh
Destination /data/public/rw/heron/pykaldi/tools/clif already exists.
Already up to date.
/root/.local/bin//ninja
Using ninja for the clif backend build.
svn: E170013: Unable to connect to a repository at URL 'https://llvm.org/svn/llvm-project/llvm/trunk'
svn: E000110: Error running context: Connection timed out

I also had issues relating to svn, the  .install_clif.sh script installs llvm repository, it might be that the server is down.
# found in tools/install_clif.sh
mkdir -p "$LLVM_DIR"
cd "$LLVM_DIR"
svn co http://llvm.org/svn/llvm-project/llvm/trunk@307315 llvm

for some reason svn co always crash on checkout.
What I did was:

downloaded llvm outside of pykaldi script with.
svn co http://llvm.org/svn/llvm-project/llvm/trunk@307315 llvm.
(if it crashes run svn cleanup && svn up to keep downloading from where you crash)
copy the llvm files into pykaldi/tools/clif_backend

comment out the svn co line from the install script

Hello @kkawabat,
I was trying to follow your instructions on that issue but I have some struggle with svn command... I'm working on a Mac Big Sur version.
At this point I follow your instructions :
It seems that the line I have to comment out was in INSTALL.sh (used by tools/install_clif.sh I guess).
First I did : svn co http://llvm.org/svn/llvm-project/llvm/trunk@307315 llvm in pykaldi/tools/clif_backend
returns : svn: E170011: Repository moved temporarily to 'https://llvm.org/svn/llvm-project/llvm/trunk'
Then I did : svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm as advised by the last error
returns : svn: E170013: Unable to connect to a repository at URL 'https://llvm.org/svn/llvm-project/llvm/trunk'
svn: E175013: Access to '/svn/llvm-project/llvm/trunk' denied
I decided to use svn cleanup && svn up as advised on your instructions but it returns : svn: E155007: '/Users/admin/pykaldi/tools/clif_backend' not a working copy directory
After some researches on svn, I didn't really understand this error... There are not so many documentation in my native language and I'm struggling with english documentation on svn...
Have you ever encountered this kind of error ?
Thank you very much,
Victor

Hello Victor,
It's been a while since I worked on this and I don't use svn but looking at your error "not a working copy directory" seems to indicate that you aren't in the actual directory of the repo you are downloading. You will need to go into llvm to run the svn cleanup && svn up command. It might even be worth deleting the downloaded repo and start over.

I'll start over and check the possible issues you suggested.
Thanks a lot for your time and help,
Have a good day !
Victor


Best Debug setup.

Please help with how to setup a debug environments for big-agi. I have been trying with the debug setup introduced in nextjs official doc: https://nextjs.org/docs/pages/building-your-application/configuring/debugging
But it does not seem to work ...

Hi @haopengsong can you copy and paste a screenshot of where it's not working? To understand your environment and what step is not being successful.

Sure,
Following is the screenshot of the launch.json file I used. Here I copied the exactly same file from official nextjs doc (https://nextjs.org/docs/pages/building-your-application/configuring/debugging):

Second, is the step that right before I start debugging. Here I put a breakpoint and about to start debug the server side :

After click start debugging, nothing happens ...

This is what happened after I run 'npm run dev' which start the server on localhost:3000. I can oberserve the debugger attached to the port but the program won't stop at the breakpoint where it supposed to ...

This is what happened after I run 'npm run dev' which start the server on localhost:3000. I can oberserve the debugger attached to the port but the program won't stop at the breakpoint where it supposed to ...

Got it, thanks for the details. For the frontend side, while running npm run dev, I use Chrome to debug.
I place the breakpoints in Chrome > Debug > the Sources tab. Magically all the source code shows up.
Or I go more commonly with old school console.log(...) which will output either to the browser console (frontend) or terminal console (backend code).
The Composet file is Frontend (or Client-side), and I debug it in Chrome looking at the terminal. Haven't yet tried connecting the IDE to Chrome for frontend. The IDE I use in big AGI is InteliJ WebStorm.

Wow, thanks for the detailed guidance. Seems like I misunderstood the difference between front & back-end code.
I will definitely try Chrome to debug the frontend!
Cheers.

Hi haopengsong, let me know how your adventure is going and watch out for the new 1.15.0 release of big AGI which is just around the corner!


SecurityServiceProvider use CallbackResolver

Currently when using the SecurityServiceProvider and defined the users options it can be a closure, but because i dump my config and would like to have all that in a seperate json file. I propose we use the CallbackResolver and checks if it is a Closure when building the service for the firewall.
ref: https://github.com/flint/tacker/issues/8

@henrikbjorn do you want to close this or submit something another PR for this?

I've cherry-picked @henrikbjorn commits from #1217 and revived his implementation on top of latest master in #1611.