java.lang.IllegalStateException: already have a wrapped adapter

When i repopulate recyclerview with new data it is giving me java.lang.IllegalStateException: already have a wrapped adapter error. I tried to check library code and found that if i have already set adapter in RecyclerViewExpandableItemManager it will through IllegalArgumentException error.
Actually i am trying to show data from webservice which will be refreshed after every few time so now if i have already populated data once it will not going to show new data.
can you suggest any solution?

Hi. That is an intended behavior of this library. If you want to refresh the all of the list items, I can suggest two approaches.
Approach 1
Implement a setData() or some sort of method to the adapter, and then call the notifyDataSetChanged() method.
Approach 2
Recreate everything. Dispose adapters and RecyclerViewExpandableItemManager, then create a new adapter, new wrapped adapter, and a new RecyclerViewExpandableItemManager instance.
Related issue

Issue #77 - Changing the data for the expandable recycler view throws ClassCastException on item click

Solved the problem. I am editing library according to my requirement too.
Thanks/Regards


:fire: remove unnecessary phpsu-config.dist.php file

Less files in the git 🙂

this could be something, we could autogenerate on a composer install
but for now i agree this is nothing we need hidden inside vendor


Consider using UTF8 backed strings in the VM

Currently Dart VM represents strings internally either as one byte (Latin-1) or two byte (WTF-16) arrays of characters. The choice of WTF-16 stems from Dart's original design goal to be Web compatible: native JavaScript strings are WTF-16. This choice however comes with some additional overheads when operating in predominantly UTF-8 based environments: as passing strings between Dart and such environment requires conversions on the boundary.
I would like us to evaluate the possibility of switching our string representation to be purely UTF-8 based, which would unlock the possibility of directly passing them across the boundary between the Dart and native code.
This issue serves as a starting point for discussions and place to track this investigation. It does not present concrete design, just tries to capture various points of interest that the final design should cover.
Ideally we would like to address the following sources of overhead:

Creating a String from a Uint8Array or Int8Array could simply create a view into this typed array (after validating the contents are valid UTF-8).
Creating a String from Pointer<Int8> representing a native UTF-8 encoded string could simply create an external String pointing to these UTF-8 bytes (after validating that contents are valid UTF-8).
Writing a String into an output which expects UTF-8 bytes could be a simple copying of bytes
Passing String to native code could either be a simple copying of bytes or direct access to underlying bytes in leaf FFI calls.

Dealing with APIs which expose WTF-16 encoding
Many String APIs are operating in terms of indices into WTF-16 representation of the string and return WTF-16 encodings. They will continue to work just fine as long as underlying UTF-8 string is Latin-1, however we would need to figure out how to support strings which contain multibyte encodings. We could either transcode UTF-8 string into WTF-16 on the fly when user does something that requires WTF-16 representation or we could adopt approach similar to Swift which allocates a breadcrumb data structure on the side to facilitate WTF-16 based access.
RegExp
We are using the port of irregexp engine. This engine was originally developed for V8 and is optimised for fixed character width strings. We would either need a replacement which can operate on UTF-8 strings directly or we need to inflate non-Latin1 UTF-8 strings into WTF-16 and run RegExp on that.
Unifying String and TypedData
It would be interesting to explore the possibility of unifying String and TypedData representations as String is essentially a sequence of bytes with some additional semantics. Currently converting between these types requires copying bytes, but it would be interesting to consider design where String could be a view into TypedData and vice versa.
There are some concerns about dangers of accidental mutability here - but the same concerns already apply to external strings so we could probably ignore them. Recently added unmodifiable typed data types allow us to do it in a safer way, though restricting backing store sharing
Zero termination
For the purposes of the interoperability we should consider enforcing zero-termination of strings, when we allocate storage ourselves, because this would allow us to pass string storage directly to native code that expects zero strings
Externalization
It is worth considering if we should factor the possibility of string externalization into the implementation. We used to have a capability to externalise individual strings by copying their bytes out of the VM heap and mutating the String object. The implementation unfortunately was very error prone because it violated a fundamental invariant that objects can't change their class/layout after they were allocated.
We could consider if some less intrusive form of externalization could be incorporated in the design of new string representation. Potentially we could consider allocating all string payloads larger than certain size on special pages, where they could be pinned, instead of using normal heap allocation. Having support for pinned string payloads would allow to pass them to native code without any copying.
String encodings and different native environments
While UTF-8 is essentially becoming a de facto for most environments, UTF-16/WTF-16 is still used in some environments we care about:

NSString is UTF-16 encoded.
Windows APIs are using UTF-16
Java strings are WTF-16
JavaScript strings are WTF-16 which is relevant for both JavaScript and Wasm (if dart2wasm starts using native JS strings via stringref).

/cc @mkustermann @a-siva @rmacnak-google @alexmarkov @lrhn @aam

/cc @askeksa-google

Overall, +1.
Breadcrumbs might require strings live on mutable pages, preventing us from placing them in image pages in the snapshot. Compression pointers prevent this for other reasons, and the loss of demand paging seems not too bad.

You might want to expose access to the UTF-8 bytes as well, so that some operations can work directly on them without having to go through the WTF-16 API. For example package:characters may want to be able to iterate directly on the UTF-8.
But I guess "converting" the string to an unmodifiable UTF-8 byte array should be sufficient.

Wouldn't it need to be WTF-8 to preserve semantics? Dart strings can contain lone surrogates, and then you can concatenate them and get something that is valid again (so the WTF-8 length of the concatenation can be smaller than the sum of the lengths of the parts).

The WTF-8 problem also means that s1 + s2 is non-trivial. It has to check for a trailing lead surrogate and leading tail surrogate, and if it finds those, re-encode those two WTF-8 seqeuences into a new one.
(And if you split a UTF-8 encoded Dart string at a UTF-16 boundary inside a surrogate pair, you also have to re-encode both sides. Good times!)


Deprecate B2C related content because all feature can be done by spring-security natively

related issue: https://github.com/azure/azure-sdk-for-java/issues/23941

Add deprecation description in readme.
Deprecate all java classes.

Please don't merge this pr until this pr merged, we need to update the related doc link in class for the wrong branch.

@chenrujun can we close this PR now?

Closing this PR, because aad-bec-starter will still be maintained for a now.


Wrong decimal separator on serialization

Description
In cultures that use the decimal comma as decimal separator, floating point numbers get serialized wrongly.
Information

.NET Target: .NET Standard 2.0 or .NET 5
DocumentFormat.OpenXml Version: 2.12.3
Language is German in this case

Repro
Example is with .NET 5 in language version C# 9.0 for shorter code
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Spreadsheet;

var spreadsheetDocument = SpreadsheetDocument.Create("demo.xlsx", SpreadsheetDocumentType.Workbook);

var workbookpart = spreadsheetDocument.AddWorkbookPart();
var worksheetPart = workbookpart.AddNewPart<WorksheetPart>();

worksheetPart.Worksheet = new Worksheet(
    new SheetData(
        new Row(
            new Cell
            {
                CellValue = new CellValue(0.1),
                DataType = new EnumValue<CellValues>(CellValues.Number)
            })));

workbookpart.Workbook = new Workbook(
    new Sheets(
        new Sheet()
        {
            Id = spreadsheetDocument.WorkbookPart.GetIdOfPart(worksheetPart),
            SheetId = 1,
            Name = "Demo"
        }));

spreadsheetDocument.Close();

Observed
Value gets serialized with a decimal comma and results in a broken xlsx
Expected
Value gets serialized with a decimal point

@OrthFelix Thanks for reporting this. It should be fixed in the 2.13.0-beta0001 version on Nuget. We added this fix in #904. Can you test with 2.13.0-beta0001?

Sure, it seems to be working!


show git clone proress and git version check.

Description
When execute sui move build and other command, git will be needed installed.
And also show clone progress will be much better.

Similar to/duplicate of #18636.
@tzakian I think one of these two changes could be nice to have. What do you think?

Ya. That should be about same feature. The difference is that I change the git program command output to current stdout, while his code is waiting the git command end and get output to print. I think my changing is much better.

Hi. This PR is too long time? Will you consider merge this?

Closing this one as #18636 was merged. Thanks @v1xingyue for this PR.


Lost karabiner.json

I just updated both OSX (to 10.12.6) and karabiner elements (to 0.91.12) and I I noticed modifications didn't work anymore.
In karabiner's preferences I saw everything empty (as I was just installed karabiner for the first time), no modifications, no profiles, etc.
After recovering old karabiner.json from a backup it seems working without problem, no idea why it happened
Just let you know

I just updated to 11.6.0, and it over-wrote my previous karabiner.json (with custom complex modifications)


README supports dynamic documentation

Context
jsii has a really cool feature where the example Typescript code in README is transformed into the target language at package/publish time. This mean NPM and PyPi will respectively show working TS and Python code examples.
We need to play around that to ensure coherent installation steps and code samples are shown in the packages homepages.
Tasks

[x] Remove Typescript header
[x] Have both npm and pip install
[ ] GitHub README will still show default README, so we need to include a statement for specific python example

Alternatives
Have both TS and Python install/code samples. Will clutter README.
Notes
N/A

re-opening because I missed the last step.


Lottie animation keeps looping

Hi there,
When I use a Lottie animation, it keep looping even if I explicitly set loopAnimation to false.
Code I used is:
CoolAlert.show(
     context: context,
     type: CoolAlertType.error,
     loopAnimation: false,
     title: "Error",
     lottieAsset: "assets/animations/error.json",
     text: "error",
);

The animation I've used is this one
Not sure what if I'm doing something wrong. Any advice would be appreciated, thank you!

Problem goes away when running in release mode


Some iris netcdf saves are fetching all the data.

From a support issue loading a large dataset from a GRIB file and saving to netcdf.
The example data was about 16Gb, and was running out of memory when saving.
It seems that at least some netcdf saves are not able to be correctly saved in a chunk-by-chunk streamed manner.
Simple example to reproduce
import dask.array as da
import iris
from iris.cube import Cube
import tracemalloc

# Reasonably sized usage example, big enough to show problem
nt, ny, nx = 50, 700, 1400
# The data must be a stack of lazy arrays.
# A single random array with these chunks does *not* show the problem.
chunk_arrays = [
    da.random.uniform(0., 1, size=(ny, nx))
    for _ in range(nt)
]
data = da.stack(chunk_arrays)
cube = Cube(data)
print(f"Cube to save : {cube.summary(shorten=True)}")
data_size_mb = data.size * data.dtype.itemsize * 1.0 / 1024 ** 2
print(f"Cube data shape = {data.shape}, size = {data_size_mb:.1f} Mb")

tracemalloc.start()
iris.save(cube, 'tmp.nc')
_, peak_mem = tracemalloc.get_traced_memory()

memory_mb = peak_mem * 1.0 / 1024 ** 2
print(f"Peak memory used during save : {memory_mb:.1f}Mb")

from which, a sample output :
Cube to save : unknown / (unknown)                 (-- : 50; -- : 700; -- : 1400)
Cube data shape = (50, 700, 1400), size = 373.8 Mb
Peak memory used during save : 377.9Mb

For comparison, it is OK in xarray (!! sorry 😬 !!) :
( using same data array )
import xarray as xr
xrda = xr.DataArray(data)

tracemalloc.stop()
tracemalloc.start()
xrda.to_netcdf('tmp.nc')
_, peak_mem = tracemalloc.get_traced_memory()

memory_mb = peak_mem * 1.0 / 1024 ** 2
print(f"Peak memory used during Xarray save : {memory_mb:.1f}Mb")

from which..
Peak memory used during Xarray save : 30.2Mb

Expected result
The total memory required is expected to be only be around N or maybe N+1 * chunk sizes,
where N is the number of Dask workers
-- which here that was =4 (threads or "cpus").
So in this case, approx 8Mb per chunk, expected ~32-40 Mb., as seen in the Xarray case.

Further notes
I already investigated this in some depth, and it looks like the problem is the delayed-write mechanism introduced with #5191 .
In that, the da.store operation is lazy, and it is then combined in a delayed function with the results of fill-value checking.
So, I made some experiments to replicate this problem using synthetic data (as the above example), and a variety of storage mechanisms, like this :
if store_op == "all-direct":
    delayed = da.store(lazydata_all, store_target)

elif store_op == "lazy-save":
    delayed = da.store(lazydata_all, store_target, compute=False, lock=False)
    delayed.compute()

elif store_op == "lazy-via-delayed":

    @dask.delayed
    def mysummary(stores, data):
        return data

    delayed_save = da.store(lazydata_all, store_target, compute=False, lock=False)

    result = mysummary(delayed_save, 0)

    result.compute()

elif store_op == "lazy-combined":
    @dask.delayed
    def mysummary(stores, data):
        return data

    delayed_save = da.store(lazydata_all, store_target, compute=False, lock=False)

    alt_value = lazydata_all[0, 0, 0]
    result = mysummary(delayed_save, alt_value)

    result.compute()

elif store_op == "lazy-scanandstore":

    def my_storing_arrayop(data, store, check_min, check_max):
        store = data
        result = np.count_nonzero((check_min <= data) & (data < check_max))
        return np.array([result])

    lazy_results = da.map_blocks(
        my_storing_arrayop,
        lazydata_all,
        store_target,
        0.0, 0.1,  # min+max check range ops ==> count negative values
        chunks=(1,),  # indicate that results are scalars
        dtype=bool,
        drop_axis=[1, 2]  # indicates that results are scalars
    ).sum()
    result = lazy_results.compute()

    datasize = lazydata_all.size
    percent = 100.0 * result / datasize
    print(
        f"Lazy scan-and-store counted values < 0.1 :  {result}"
        f"\n  ~{percent:0.2f}% of {datasize}'"
    )

_, peak_mem = tracemalloc.get_traced_memory()
memory_mb = peak_mem * 1.0 / 1024 ** 2print("\nDone.")
print(f"Consumed memory ~ {mib:6.2f} Mb.")

Results ..
With similar data to the original case, the various above "store_op" options showed these memory usages :

Saving mode, "store_op="
Consumed memory / Mb

'all-direct'
33.71

'lazy-save'
33.70

'lazy-via-delayed'
33.70

'lazy-combined'
432.50

'lazy-scanandstore'
55.63

.. which means
wrapping the "lazy store operation" in a delayed is not in itself a problem (option 'lazy-via-delayed') , even with the additional "data" argument to the delayed function (in this case not a lazy object)
BUT passing an extra delayed argument which is a calculation on the same data causes the problem ("lazy-combined" case)
-- it seems that dask in this case cannot "see" that both operations can be performed on 1 chunk at a time
So, this "'lazy-combined'" version is specfically designed to mimic what the netcdf saver is doing here
-- the purpose of the 'additional' calculation is the fill-value check.
HOWEVER, the "lazy-scanandstore" I think shows a possible way out.
The map_blocks operation now scans each section of data and stores it.  So the chunks are treated separately, as they should be.  So I think this is a model for how to fix the problem

@bouweandela @fnattino have you seen any examples of this?

Have you seen https://github.com/dask/dask/issues/8380 @pp-mo? I think it may be relevant here, but I'm not entirely sure yet.

I susoect this issue is caused by some variation of the issue described here. Adding
    if arraylib is da:
        from dask.graph_manipulation import clone
        data = clone(data, assume_layers=True)

before this code
https://github.com/SciTools/iris/blob/c6151e819189ca213b370ddf4ff38d8511c7e012/lib/iris/fileformats/netcdf/saver.py#L314
seems to avoid the high memory use by decoupling the store graph from the fill value check graph (at the cost of loading the data twice).

I suspect this issue is caused by some variation of the issue described here.
... at the cost of generating the source data twice

Well, interesting. But TBH I don't really understand what this is really doing.
FWIW I think we are very keen not to fetch data twice, if it can at all be avoided -- and if we accepted that, we could simply do fill-value checking and storage in separate steps.
Do you think this approach could maybe be modified to deliver the desired one-pass data store-and-check, @bouweandela ?

Relevant issue raised on Dask repo
https://github.com/dask/dask/issues/10991

@pp-mo happy to close this given #5833 ?


Behaviour of ^ and $ in regular expressions

The caret (^) and dollar sign ($) in regular expressions seem to match beginning and end of the entire body and not beginning and end of a line, even though the latter might be more intuitive and useful.
It's best seen with an example. Consider this Caddyfile:
{
  order replace after encode
}

:8080 {
  respond 200 {
    body `Line 1
Line 2
Line 3
Line 4`
  }
  replace re ^[A-Za-z]+ foo
  replace re [0-9]+$ bar
}

This is what most people would probably expect the output of a request to be:
foo bar
foo bar
foo bar
foo bar

However, this is what the actual output is:
foo 1
Line 2
Line 3
Line bar

The point is that one often wants to match some pattern relative to the beginning or end of a line, and usually ^ and $ are used for this. Even if it is justified that ^ and $ mean the beginning and end of the entire string, the line-based use case is very common, and as far as I know there is no other robust way to match the beginning and end of a line without ^ and $.
So, is there any possibility to somehow redefine the behaviour of ^ and $ accordingly?

You need to set the m flag (multi-line mode) for that. You can set a prefix (?m) at the front of your regexp to set that flag.
(?m)^[A-Za-z]+

See the syntax docs: https://github.com/google/re2/wiki/Syntax

This is exactly what I needed, thanks!


Category "xktyd" not supported. No Entities in HA for Bneta Galaxy Projector

The device is connected and controllable in the SmartLife App.
When linked to HA, there is an error "Device Not Supported". I got all the DP's, Information etc, but do not have the skill to code it into the various code files.
Your Environment
HAOS running in Virtual Box on a dedicated Windows server with 4 cores and 32GB Ram
Include as many relevant details about the environment you experienced the bug in

tuya-device-sharing-sdk Version used: Not applicable
Device diagnostic file:
localtuya-0bea3a926e05b13509b45dc848289f14-Projector-734f679f195d90473294b9da22108076.json.txt

Expected Behavior
Just simply want to control the device from HA
If you're suggesting a change/improvement, tell us how it should work: The Projector's entities should be available in HA
Current Behavior
Not being able to control the Galaxy Projector from Home Assistant. HA Reports the device has no Entities
Possible Solution
Update the code files for light.py / switch.py / select.py / scene.py / number.py with the information provided and solve a problem that after long hours of combing the internet is a very big downfall for the device / BNeta Galaxy Projector
Get device information.json
Get DP's of Device.json
Query Properties.json
Get device data points.json

if you have the development ability, you can try developing it yourself.

The problem is, i do not have the skills. I have all the DP's and relevant data, just need some assistance with integrating what I have


[meshmodels] [UX] : Icon for Meshmodel Postgres Component - Postgres Database

Current Behavior
Meshery is a powerful platform that contains over 200 integrations for managing cloud-native applications. MeshMap is an extension of Meshery that visually represents these integrations and components. Currently, most of the icons used in MeshMap have the default shape of a circle. However, to improve visual clarity and consistency, we need to design custom icons for MeshMap components.
Desired Behavior
A new Icon for  Postgres Database needs to be created. This issue calls for a volunteer to draft a new Icon.
Instructions for Components
While the default shape for new components is a circle, each component should be considered for its best-fit shape.

Review and familiarize with the available set of predefined relationship types. Refer to the Cytoscape node types for a list of possible shapes.
Propose a specific shape, best-suited to visually represent the Component. Example - Deployment as a pentagon, DaemonSet as a skull icon etc.
Create two versions of the icon one is white and another one is colored
Make a PR after adding the icon inside the new-icon folder present in the meshery repository
Provide the icon in SVG format

@Modern-artist i will solve this issue /assign.

hey, I can try to work something up for this one... if it's free.

Hey, @ritiksaxena124 @leecalcote
while searching around for an icon for this one, I found these. Can we use one of them (tweaking a little if need)
Open to suggestions!

The first one looks good @Akshun-01 make the PR for that icon


stopped working

This repo worked for me a month ago, but now does not.
My environment works running no tinygo examples, just not using tinygo as the WASM compiler.

go run devserver.go

cd /Users/apple/workspace/go/src/github.com/vugu-examples/tinygo && go run devserver.go
2020/08/24 12:24:29 Starting HTTP Server at "<IP_ADDRESS>:8844"

I also tried just running it this way with tinygo turned off in the generate.go, but no luck.
//go:generate vugugen -s
Wish it gave more info verbose to the screen about whats going on. Would make debugging easier.

Can you please elaborate more on what the problem is?  When you browse to http://localhost:8844/ does it give an error on the page? Or in the browser console?  Can you show the network requests involved (Network panel in Chrome), particularly any that are marked as error in red.

Hey @bradleypeabody
thanks for follow up.
The terminal only progresses as far as is shown in the Issue. It never progresses
On that page i just get the spinning waiting icon, and everything hangs, but zero errors: See screenshot with console:

All the code is running off Master for everything.
Everything is also in the proper GOPATH..
Really stumped on whats going on here.

The generate.go has the "//go:generate vugugen -s -tinygo" in it.
It generates 2 files:
main_wasm.go
0_components_vgen.go

Looking at the code here:https://github.com/vugu/vugu/blob/master/devutil/tinygo-compiler.go, that is responsible for spinning up the docker tinygo etc.
This might abstract most of that finicky code for you: https://github.com/testcontainers/testcontainers-go
Just an Idea because docker does not behave the same on all OS's

Okay and thanks for that info. I think what we need to see more of is what happens inside that wasm_exec.js call.  Can you open that in a new tab and see if it is returning any error?  Also note that to download the Tinygo docker image and light all that up the first time can take quite a while.  Notice that the request is still Pending - I suspect it might actually be working and doing the correct steps but taking many minutes to complete.  Maybe try doing a docker pull vugu/tinygo-dev:latest first and let that complete and then test again.  Also in your devserver.go try calling SetLogWriter(os.Stderr) on your TinygoCompiler instance, so you can get more output.


WIP: Close by drop on explicit close

put ScopeExt in an Rc

rename ScopeExt, as {something}Ext has a meaning in Rust

Ok, merged in for now. Needs follow-up, especially for the macro's


Add "-rigid" postfix import feature to create rigid bodies

I'm adding this pull request again after I cleaned up my fork

Could anyone test this feature?

@jay3d Thanks for keeping this branch up to date, but could you please use git pull --rebase to update your branch instead of simply git pull? It would get rid of the 12 merge commits that were added so far :)

Can it be merged now?

I fear not... Did you use git pull --rebase as I suggested? It should not have produced such a huge mess :/

I used it but that what it produced, I'm not that keen on Git, I use TortoiseGit, any advises?

The simplest now would be for you to download your patch directly: https://github.com/godotengine/godot/commit/2e3ade22ff2ef155140b4fd3d70cfe29b89a06a9.patch
And reapply it in a clean git branch to make a new pull request.


Update memory locations in verifiers to save gas

participants: @qpzm, @rkdud007
Description
Verifier contracts specify memory addresses to load constants from the trusted setup.
It starts from 0x220 in GrandSumVerifier and from \0x200 in InclusionVerifier.
POC
I installed foundry to see memory and added two tests.
https://github.com/qpzm/summa-solvency/blob/v2-fix-verifier-memory/contracts/test/GrandSumVerifier.t.sol
https://github.com/qpzm/summa-solvency/blob/v2-fix-verifier-memory/contracts/test/InclusionVerifier.t.sol
Run forge test --debug "test_verify_grandsum_proof" and you can see memory from 0x000 to 0x180 is used in function parameters to calculate pairing.

GrandSumVerifier
15 gas saved.
# before
$ forge test --match-test test_verify_grandsum_proof --gas-report

Ran 1 test for test/GrandSumVerifier.t.sol:GrandSumVerifierTest
[PASS] test_verify_grandsum_proof() (gas: 285231)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 13.47ms (8.14ms CPU time)
| src/GrandSumVerifier.sol:GrandSumVerifier contract |                 |        |        |        |         |
|----------------------------------------------------|-----------------|--------|--------|--------|---------|
| Deployment Cost                                    | Deployment Size |        |        |        |         |
| 277055                                             | 1068            |        |        |        |         |
| Function Name                                      | min             | avg    | median | max    | # calls |
| verifyProof                                        | 271155          | 271155 | 271155 | 271155 | 1       |

# after
| src/GrandSumVerifier.sol:GrandSumVerifier contract |                 |        |        |        |         |
|----------------------------------------------------|-----------------|--------|--------|--------|---------|
| Deployment Cost                                    | Deployment Size |        |        |        |         |
| 277043                                             | 1068            |        |        |        |         |
| Function Name                                      | min             | avg    | median | max    | # calls |
| verifyProof                                        | 271140          | 271140 | 271140 | 271140 | 1       |

InclusionVerifier
12 gas saved.
# before
$ forge test --match-test test_verify_inclusion_proof --gas-report

[PASS] test_verify_inclusion_proof() (gas: 384077)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 15.34ms (10.88ms CPU time)
| src/InclusionVerifier.sol:InclusionVerifier contract |                 |        |        |        |         |
|------------------------------------------------------|-----------------|--------|--------|--------|---------|
| Deployment Cost                                      | Deployment Size |        |        |        |         |
| 284813                                               | 1104            |        |        |        |         |
| Function Name                                        | min             | avg    | median | max    | # calls |
| verifyProof                                          | 365492          | 365492 | 365492 | 365492 | 1       |

# after
| src/InclusionVerifier.sol:InclusionVerifier contract |                 |        |        |        |         |
|------------------------------------------------------|-----------------|--------|--------|--------|---------|
| Deployment Cost                                      | Deployment Size |        |        |        |         |
| 284849                                               | 1104            |        |        |        |         |
| Function Name                                        | min             | avg    | median | max    | # calls |
| verifyProof                                          | 365480          | 365480 | 365480 | 365480 | 1       |

Recommendation
The maximum memory size used in both verifiers is 0x180. Therefore, update to use memory from 0x180.

GrandSumVerifier https://github.com/summa-dev/summa-solvency/blob/fec83a747ead213261aecfaf4a01b43fff9731ee/contracts/src/GrandSumVerifier.sol#L11-L24

    // The memory location starts at 0x180 due to the maximum operation on the ec_pairing function being 0x180, marking the maximum memory location used
    uint256 internal constant             N_INV_MPTR = 0x180;
    uint256 internal constant             LHS_X_MPTR = 0x1a0;
    uint256 internal constant             LHS_Y_MPTR = 0x1c0;
    uint256 internal constant              G1_X_MPTR = 0x1e0;
    uint256 internal constant              G1_Y_MPTR = 0x200;
    uint256 internal constant            G2_X_1_MPTR = 0x220;
    uint256 internal constant            G2_X_2_MPTR = 0x240;
    uint256 internal constant            G2_Y_1_MPTR = 0x260;
    uint256 internal constant            G2_Y_2_MPTR = 0x280;
    uint256 internal constant      NEG_S_G2_X_1_MPTR = 0x2a0;
    uint256 internal constant      NEG_S_G2_X_2_MPTR = 0x2c0;
    uint256 internal constant      NEG_S_G2_Y_1_MPTR = 0x2e0;
    uint256 internal constant      NEG_S_G2_Y_2_MPTR = 0x300;

InclusionVerifier https://github.com/summa-dev/summa-solvency/blob/fec83a747ead213261aecfaf4a01b43fff9731ee/contracts/src/InclusionVerifier.sol#L10-L22

    // The memory location starts at 0x180 due to the maximum operation on the ec_pairing function being 0x180.
    uint256 internal constant             LHS_X_MPTR = 0x180;
    uint256 internal constant             LHS_Y_MPTR = 0x1a0;
    uint256 internal constant              G1_X_MPTR = 0x1c0;
    uint256 internal constant              G1_Y_MPTR = 0x1e0;
    uint256 internal constant            G2_X_1_MPTR = 0x200;
    uint256 internal constant            G2_X_2_MPTR = 0x220;
    uint256 internal constant            G2_Y_1_MPTR = 0x240;
    uint256 internal constant            G2_Y_2_MPTR = 0x260;
    uint256 internal constant      NEG_S_G2_X_1_MPTR = 0x280;
    uint256 internal constant      NEG_S_G2_X_2_MPTR = 0x2a0;
    uint256 internal constant      NEG_S_G2_Y_1_MPTR = 0x2c0;
    uint256 internal constant      NEG_S_G2_Y_2_MPTR = 0x2e0;

memory location update in both verifier contract & gas report update : https://github.com/rkdud007/summa-solvency/commit/5c5c3fc97b73e041a48f0bdd5023dfe35f4d2101


Backpack v5 compability

Is it possible to make this awesome field compatible with v5 of backpack?

Your wish has been granted.

Sweet! Thank you!

Very silly post from me
Hmm I have a few reasons for choosing >=. One of which is that this is not a customer facing package but an internal staff facing 1 where issues are more acceptable. So by doing >=, at least people don't have to wait for me when future major versions of backpack is out to upgrade (Tho they can still learn how to use a fork or composer patches. I know how but even then I find myself being lazy & end up waiting for the maintainers which sometimes take months/forever until I gave up & fork/composer patch it).
& if it breaks. They can then comment out my admin field & post an issue here on what they are facing in the new major version.
The other reason tho, is I originally only plan to release patches to this package once every year on the same day for personal reasons (just to keep up to date with the latest stable version of the jsoneditor javascript library). So I was hoping >= will reduce the times I need to patch it & make a new release
Hope you give me some time to think about it. If I do release a 1.1.2 in the coming days, I may not delete 1.1.1 though. I once remember a maintainer did something similar & people are not happy about it on twitter as it broke their deployments (I guess the timing of their deployment is when their composer.lock is at "1.1.1" but the maintainer deletes it). But my packages aren't popular enough to cause that kind of issue to people heh.

Sure - I understand your position / pondering. Take your time. But also take into consideration that:

Composer itself heavily recommends having an upper bounds constraint;
the longer you wait, the more potentially "damaging" it will be to delete the 1.1.1 tag, because it'll have more downloads;
if you don't delete the 1.1.1 tag, you don't really solve anything; even when this package gets to version 9.9.9, you'll still have version 1.1.1 in your history, that can be installed on "any" backpack version, ever; that's the problem I was highlighting;
I've deleted tags before, when I made mistakes, in packages that had a lot more downloads; it's not that big of a deal 😅 some people get a bad experience... so that MOST PEOPLE do not; the trick is to do it fast 😀

For context, I'm not a "strict" developer, by any means. For example, I like form validations more lax, rather than more strict. I rarely use return types. My methods default to "public". But when it comes to package versions - my opinion is firm, based on experience... "stricter is better". "Packages should only be installable on configurations you know will work."
This is why working with Composer & Packagist is great, and working with NPM can be awful sometimes - people in the JS ecosystem allow their packages to be installed on whatever and let the dev "see what happens". It amounts to an awful developer experience, if you ask me. Much worse than trying to install, telling you it doesn't work, then having to submit a PR to have it work (or making a fork). And by consequence... helping the maintainer maintain the project.
My 2 cents, of course 😀

Done. Hopefully I deleted it correctly.

Yup - just checked, 1.1.1 is no longer on https://packagist.org/packages/ziming/json-field-for-backpack so it's all good now. Thank you @ziming and sorry for all the back-and-forth.


Remove Envoy:: from common main already in namespace.

Reduce the verbosity of code in main_common by removing unnecessary
namespace mentions (main_common is already in the Envoy namespace).

+1

@dnoe can you fix_format?


Help?

Hey! I'm writing an app to control a popular ebike for additional functionality. The problem is all the Flutter BLE libraries are pretty broken in various ways (maybe you've seen this too?). They often have weird bugs and function differently on different platforms.
This project is sorely needed! Is there anything I can do to help get it into pub.dev? From what I've seen this could definitely be the "one true" Bluetooth plugin for Flutter/Dart.

Hi, the current state of BLE in Flutter is a disaster, that's why I had a look into btleplug and I agree that it could be "the one". However, it doesn't align with my current work anymore and at the moment I don't have the time to maintain a flutter plugin but I'd be happy to help.
So, to make this a proper plugin it needs:

a better name
iOS implementation (I might get it from my collegue)
more functionality, at the moment only scanning is implemented
for the native part it would be nice to fetch all dependencies from crates.io instead of local

Ah, fair enough! It seems like you've already done a lot of the hard work integrating with the JVM though.
For the name, I'd guess flutter_btleplug would be the obvious one to me. I suppose it could be useful in just Dart as well, but I'd imagine the user base would be much smaller.
Looking forward to the iOS integration. It seems like iOS and MacOS are so similar getting one done means the other usually works too.
I did notice that the plugin mostly just prints strings from Rust, without giving the Flutter side Dart objects to work with. That's something I might be able to help with.
Anyway, I'll watch this in case you do want to pick it up again.

The main part of integrating the JVM was done by @qdot, all I did was throwing it into a flutter plugin.
I thought about it and it would be really nice to have a working Flutter BLE plugin. So, I'll try to add the iOS code soon and maybe I can spare a day per month to work on the code. Are you familiar with Rust?

Nice! I have some light hobby experience with Rust. I can probably write some workable glue code if needed. Although I wouldn't claim it would be the most efficient. What do you have in mind? I'm happy to take on specific tickets.

To add more functionality we need to add all features from https://github.com/deviceplug/btleplug#platform-feature-table into native/src/api.rs. This should be realtively straight forward.
The example needs to keep up with the functions and we need a way to test everything
Then we need to decide whether we create custom structs or reuse those from btleplug to communicate with Flutter (instead of strings as it's right now).
The Readme needs an update.
Add a Changelog.md

Nice. I'm playing with it right now. Are you able to get the just build-android command working? After a bunch of issues, I'm now stuck on error occurred: Failed to find tool. Is aarch64-linux-android31-clang installed?.

Nevermind! Got it working :)

Hi, would you still like to contribute?
I've managed to build a basic version that is able to scan and connect to devices :)

Oh hell yeah. I make https://github.com/blopker/superduper, and it mostly works with flutter_reactive_ble. There were a lot of issues though. I've managed to work around the showstoppers, but it doesn't do a good job of cleaning up after itself and eventually the app has to be killed and restarted. I'd love to port the app over to this if we can make it more reliable.
I can test out what you've got so far. Before I blindly dig in, what would you like me to look at?

Ok, great! I think the best way to start is the example and see if it works, I've only tested on Android so far. It doesn't do much, just lists discovered devices and connects by tapping the button.
I have build the plugin such that it remembers discovered devices for 3 seconds and the removes them from the list unless there is an Update event, which is equal for receiving an rssi value. I'm not sure if that is the best solution for all cases and we can make this optional of course.
Then, I've created a few issues that I would address next. But what features do you need for superduper? We could start by implementing them first.

One of the fun portions of this that I may have to work with y'all on is iOS backgrounding.
I just got android backgrounding w/ everything but background scanning (which is going to require annoying permissions requests) into my btleplug-using app that's on the play store already. iOS is currently blocked because we need some sort of bluetooth-function-based keepalive for the foreground process in iOS (otherwise it dies in ~30s), but that may need to happen at the btleplug level. I'm looking at putting in some sort of callable, api exposed function that'll trip the keepalive timer, which may be useful for this library. I'll try to remember to update here once I get that figured out.

Nice! I'll check it out this week.
What SD currently uses:

Scan for a specific device name. Example: Find all devices called "Super". All bikes have the same name, with different addresses. Maybe the filter is part of this API, or something that happens in app code?
Connect to a specific bike.
Read the device ID. SD stores this in a database to key config data with. I noticed with flutter_reactive_ble is that the device IDs are different for the same device between iOS and Android. I haven't looked into why though. I could see that being an issue for some applications.
Read from known characteristics. SD doesn't use any discovery functions since all services are known beforehand.
Write to known characteristics.
Disconnect from device. This is where other solutions start to get wonky since the disconnect isn't always clean. Some people have multiple bikes and need to switch between them as quickly as possible, so this issue pops up often. Although now that I think about it, perhaps it's possible to have multiple bike connections happening at the same time?
The app also needs access to some kind of connection state stream to alert the user when the bike is disconnected/connecting/connected or if bluetooth is disabled.

It would also be useful to have subscriptions, but I couldn't get that working reliably with the other packages so for that data I just poll read every few seconds.

Nice! I'll check it out this week.
What SD currently uses:
* Scan for a specific device name. Example: Find all devices called "Super". All bikes have the same name, with different addresses. Maybe the filter is part of this API, or something that happens in app code?

I'm planning to implement a filter but I haven't thought much about the how yet. So at the moment it is

* Connect to a specific bike.

check

* Read the device ID. SD stores this in a database to key config data with. I noticed with flutter_reactive_ble is that the device IDs are different for the same device between iOS and Android. I haven't looked into why though. I could see that being an issue for some applications.

They are different on iOS and Android. Maybe we can use the address instead.

* Read from known characteristics. SD doesn't use any discovery functions since all services are known beforehand.

* Write to known characteristics.

* Disconnect from device. This is where other solutions start to get wonky since the disconnect isn't always clean. Some people have multiple bikes and need to switch between them as quickly as possible, so this issue pops up often. Although now that I think about it, perhaps it's possible to have multiple bike connections happening at the same time?

I think it's possible to connect to four or five devices at a time.

* The app also needs access to some kind of connection state stream to alert the user when the bike is disconnected/connecting/connected or if bluetooth is disabled.

That sounds useful.

It would also be useful to have subscriptions, but I couldn't get that working reliably with the other packages so for that data I just poll read every few seconds.
I'm sure we'll manage that :)

I'm planning to implement a filter but I haven't thought much about the how yet. So at the moment it is

It's usually easiest to hand the user all the advertisements and let them filter.

They are different on iOS and Android. Maybe we can use the address instead.

Address is gonna be different across platforms too. CoreBluetooth and WebBluetooth platforms obscure addresses, but they should remain similar when accessing the same device.

I think it's possible to connect to four or five devices at a time.

This is limited by the radio processing. I start getting data loss at 6.

It would also be useful to have subscriptions, but I couldn't get that working reliably with the other packages so for that data I just poll read every few seconds.
I'm sure we'll manage that :)

I'm working on this concurrently in btleplug (subs/notificiations already implemented, just not used much) and my own app, so it'll be tested from multiple directions.

I'm planning to implement a filter but I haven't thought much about the how yet. So at the moment it is

It's usually easiest to hand the user all the advertisements and let them filter.

Yes, that is something we should implement once we have some experiance with the lib and know that it's a pain point. But I can imagine that it could be a nice feature to filter for the name.

They are different on iOS and Android. Maybe we can use the address instead.

Address is gonna be different across platforms too. CoreBluetooth and WebBluetooth platforms obscure addresses, but they should remain similar when accessing the same device.

So, that means the only way to identify a device with iOS and Android is with it's name?

I just got android backgrounding w/ everything but scanning in the foreground task (which is going to require annoying permissions requests) into my btleplug-using app that's on the play store already. iOS is currently blocked because we need some sort of bluetooth-function-based keepalive for the foreground process in iOS (otherwise it dies in ~30s), but that may need to happen at the btleplug level. I'm looking at putting in some sort of callable, api exposed function that'll trip the keepalive timer, which may be useful for this library. I'll try to remember to update here once I get that figured out.

I'm not sure I understand everything of what you wrote here or maybe I don't understand the terminology of back- and foregrounding. On Android you managed to run btleplug in the background but scanning is still done in the foreground?

So, that means the only way to identify a device with iOS and Android is with it's name?

Name, Manufacturer Data, Advertised Service Data...

On Android you managed to run btleplug in the background but scanning is still done in the foreground?

Whoops, that should've all said "foregrounding".
On mobile apps:

Foregrounding is "App is open and running, but can do stuff when the app is not focused or phone is asleep"
Backgrounding is "App is not running, but can run push notifications and other small methods at all times"

You'll be interested in foregrounding for Bluetooth, because you want your device connection to stay alive when someone sleeps their phone or uses another app. Depending on the situation, it may also be useful to have the ability to scan for devices in the foreground task, though that should be up to the library user as that requires permissions that require extra steps with the relevant store to get (i.e. sending in videos of usage, etc).
Foregrounding works far differently between Android and iOS, you'll have to take into account power/sleep/foreground task considerations per platform, etc...

Cool, I got the example working on Android! I did have to make 2 changes. 1) Add mkdir -p "packages/flutter_btleplug/android/src/main/jniLibs" to build-android-dev.sh since jniLibs didn't exist after first clone. And 2) I needed to add permission_handler: ^10.2.0 to the example pub file and then add await Permission.bluetoothScan.request(); when pressing the scan button. Otherwise, a pretty hairy error was thrown. I guess error handling could be improved in that sense. The average Flutter dev may not be able to understand it.
According to the feature matrix in the readme, I'll need at least writing to characteristics before I can try to integrate it into SD though.

Permissions are more complicated than that, depending on your Android version support. There was a permissions split at Android 12 (API version 30) that means you need to ask for a different set of permissions if you want to support older Android builds.
Here's my code for perms checking, which I shipped last weekend and seems to work back to Android 9. (Breaks on Android 6/7, no one has tested 8/8.1 yet).
https://github.com/intiface/intiface-central/blob/main/lib/intiface_central_app.dart#L99
You'll also need a matching set w/ version conditionals in your manifest:
https://github.com/intiface/intiface-central/blob/main/android/app/src/main/AndroidManifest.xml#L5

@blopker great that you could make it work! Could you make a PR with your changes?
And do you want to try to implement r/w of characteristics?
@qdot Thanks a lot! This will save some time and headaches for sure^^

Any chance you could let me push branches to this repo? That would simplify my workflow to add changes :)

I spent a few hours exploring how to make a BLE server I could test against. The only device I have is my bike and, sadly (I asked!), I'm unable to bring the bike into my house. I tried to run a server on my Mac, but no luck, tried on Android, also no luck. I didn't try iOS. Otherwise, I don't have easy access to a Linux box with a Bluetooth module.
How are y'all making test Bluetooth servers to debug with?

Not sure what you mean by "BLE server".

Sorry, I'm new to the Bluetooth world. I may try to shoe horn web language in... I mean a peripheral? Something that btleplug can connect to. I now see https://pypi.org/project/bless/ might do what I want, but need to try it still.

I haven't tried them but https://play.google.com/store/apps/details?id=com.techbitar.android.sensoduino or https://play.google.com/store/apps/details?id=com.amalanjula.sensorApp&gl=US could work.
I think the only way to give you branch push permission would be to make you a collaborator which gives access to like everything or to create an organisation which we could do...or do you know another way to allow you to push branches?
With github-cli syncing looks pretty easy:
gh repo sync owner/cli-fork -b main


Creating a python wrapper for bozorth3

BOZORTH3,which is a minutiae based fingerprint matching algorithm, will do both one-to-one and one-to-many matching operations. It accepts minutiae generated by the MINDTCT algorithm.
The task involves writing a python wrapper for this binary and also options( if possible) again using cffi.

Is anyone working on this ?
If not I am starting on it.


[BUG] config.py references chans rather than in_chans

Describe the bug
When using datasets which don't have 3 channels, e.g. mnist for training like so:
python3 train.py torch/mnist --model mobilenetv3_large_100 --dataset-download --data-dir $DATA_DIR --dataset torch/mnist --img-size 28 --in-chans 1
The train.py script still assumes 3 channels.
I.E from the debug message:
Data processing configuration for current model + dataset:
input_size: (3, 28, 28)
interpolation: bicubic
mean: (0.485, 0.456, 0.406)
std: (0.229, 0.224, 0.225)
crop_pct: 0.875
crop_mode: center
To Reproduce
Steps to reproduce the behavior:

python3 train.py torch/mnist --model mobilenetv3_large_100 --dataset-download --data-dir $DATA_DIR --dataset torch/mnist --img-size 28 --in-chans 1

Expected behavior
Data processing configuration for current model + dataset:
input_size: (1, 28, 28)
interpolation: bicubic
mean: (0.485, 0.456, 0.406)
std: (0.229, 0.224, 0.225)
crop_pct: 0.875
crop_mode: center
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Problem should be consistent across all platforms.
Additional context
I believe issue is in config.py lines 28 and 29:
 if args.get('chans', None) is not None:
        in_chans = args['chans']

I believe that this should be:
 if args.get('in_chans', None) is not None:
        in_chans = args['in_chans']

I am happy to open a PR if I am correct about the fix.

@mileseverett humm, yeah, looks like I never updated that when changed the arg name...
probably should do a inf in_chans elif chans in case that other was being used in a stand alone case...
There are probably going to be other troubles with the mono case in augmentations, would have to use a fairly minimal aug as many of the augs are hardcoded with 3 channels, I think i checked that you could get mono to work in the most basic cases with the right dataset ....


Can't use a Factory in combination with request scope

I don't think there's any conceptual issue with this, but it won't let me create a factory for creating request scoped beans because it barfs when encountering the unknown dependencies.

Can you include a test case / example here?

I think this was a conceptual issue on my part - compile-time DI really wants to be able to see all beans ahead of time so it can do static exhaustiveness checks, and that's good! One of my beefs with Guice was the way it converted compile time errors into runtime errors.
The combination of switching to singleton scope, creating the BeanScope manually and using the @InjectModule(requires) trick means I'm no longer needing request scopes, so you can close this if you like. I'm not sure it represents any real bug.

Ok cool, we will close this then.


Using two projectors for the floor (WIn 8.1 64)

Hi all,
is there a way to use two projectors instead of only one for the floor image? My setup would consist in one front projector and two projectors facing down, closer to the ground.
Thanks in advance
Paolo

Yes, you can use two projectors to project on ground (Floor). I'm assuming that you want to do this to cancel shadows as the projections will overlap.
You don't need to change any configuration in Ripple to do this. Only you need to duplicate the projection from windows setting which is quite easy.


UX improvements Redeem TDT - POP UP or similar - Compare to REN

Please introduce a pop up that asks to connect wallet. Please see Renbridge and how they clearly ask for it at the beggining in as a top priority and they display it at the center of the screen. Please see image below:

And compare to Ren:

Thanks for the thought @bonsfi! I strongly disagree with this approach to wallet connections, unfortunately. We'll be rolling out an improved wallet UX, but it won't look like this -- a huge modal that keeps you from seeing what the dApp can do is an anti-pattern and potential privacy concern.


Need to set up automatic database configuration

Currently we are dependent on manually setting up database. This process is containing others password, username  etc in the code. We need to get rid of this problem.
There can be a command line that just creates database for us. like:
npm setup database
And the database related things are configured.

Resolved. Database is automatically configured with mongodb for now.


feat: hide guidance pages

While Carbon Platform's web app remains a public beta on the next subdomain, we're removing the guidance pages so:

We don't have to keep content in sync between carbon-website and carbon-platform repositories
When content is not in sync, this prevents users from referencing the wrong guidance
It simplifies the RMDX effort by reducing the number of remote MDX pages currently getting rendered

https://github.com/carbon-design-system/carbon-platform/pull/1670 should get merged first.
Instead of deleting pages, this PR simply removes pages from the side nav. This allows pages to be referenced when updating the Gatsby website. The entire site has search engine crawling disallowed while it's on a subdomain (robots.txt), so there's no harm in keeping the routes active.
Pages and/or content that should be ported to the Gatsby website. We might want to do this before merging this PR.

[ ] https://next.carbondesignsystem.com/about-carbon/how-carbon-works
[ ] https://next.carbondesignsystem.com/about-carbon/community-sites

It was requested to copy this page to the Gatsby website. It uses a FilterableDesignKitTable component that's only in Carbon Platform, which uses indexed schema data. Because it's not a simple markdown / MDX page, the level of effort is greater than low.

https://next.carbondesignsystem.com/designing/get-started

Changelog
New

N/A

Changed

The "return to classic website" banner now shows on all routes, not just the home page, to always guide users back to Carbon's default site
Hid the home page feature card for how carbon works, the section to start designing and start developing, and the section that links to the roadmap because those pages have been hidden

Removed

Hid all side nav items but the Contributing > Schema page and the catalogs
The top pages for About Carbon, Designing, Developing, Contributing, Migrating, Elements, and Guidelines pages can all be found in the Gatsby website
The Data visualization collection was also removed (hidden) because all of the content can be found in the Gatsby site, and because you can view the components in the catalog filtered by Data viz tag: https://next.carbondesignsystem.com/assets/components?tags[]=data-visualization

Testing / reviewing
The side nav has been reduced to this:

There are no changes within the catalogs or any of the libraries (and their assets).

Yeah that's a good point about the homepage content @aubrey-oneal. I'm also wondering if we need to add a disclaimer somewhere about why we've removed all the items in the left nav. Maybe we can update the banner to something more informational.

@aubrey-oneal

Hid the home page feature card for how carbon works, the section to start designing and start developing, and the section that links to the roadmap because those pages have been hidden

I hid portions of the home page so there aren't any dead links. Even though it's pretty minimal, there's still enough content on the home page to set context and guide users to the catalogs.


feat(dal,sdf,web): WsEvent for workspace backup import

Adds a new WsEvent for module import success and hard refreshes windows other than the one doing the import when a workspace backup import succeeds.

bors r+


UI Interaction lagging after MacOS Monterey 12.5.1 update

Type: Performance Issue
Interaction hang after MacOS Monterey 12.5.1 update , system also work fine VS Code is lagging
VS Code version: Code 1.70.2 (Universal) (e4503b30fc78200f846c62cf8091b76ff5547662, 2022-08-16T05:36:37.829Z)
OS version: Darwin arm64 21.6.0
Modes:

Process Info
CPU %	Mem MB	   PID	Process
   14	   123	  1117	code main
    3	    66	  1120	   gpu-process
    0	    25	  1122	   utility-network-service
    0	   475	  1123	   window (Settings — relier)
    5	    90	  1136	   shared-process
    0	    25	  1139	     ptyHost
    0	     0	  1214	       /bin/zsh -l
    0	     0	  2539	       /bin/zsh -il
    0	    25	  1148	     fileWatcher
    0	    16	  1446	     fileWatcher
    0	     0	 14140	     /bin/ps -ax -o pid=,ppid=,pcpu=,pmem=,command=
    0	    74	  1137	   extensionHost
    0	    25	  1159	     /Users/akshayn/project/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev --packages=/Users/akshayn/project/flutter/packages/flutter_tools/.packages /Users/akshayn/project/flutter/bin/cache/flutter_tools.snapshot daemon
    0	     0	  1281	       /usr/bin/script -t 0 /dev/null /usr/bin/arch -arm64e xcrun xcdevice observe --both
    0	     8	  1282	         /Applications/Xcode.app/Contents/Developer/usr/bin/xcdevice observe --both
    6	   565	  7150	       /Users/akshayn/Library/Android/sdk/emulator/qemu/darwin-aarch64/qemu-system-aarch64 -avd Pixel_4_API_31
    0	     8	  1160	     /Users/akshayn/project/flutter/bin/cache/dart-sdk/bin/dart devtools --machine --try-ports 10 --allow-embedding
    0	   426	  1161	     /Users/akshayn/project/flutter/bin/cache/dart-sdk/bin/dart language-server --protocol=lsp --client-id=VS-Code --client-version=3.47.20220808
    0	    25	  7293	     /Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper.app/Contents/MacOS/Code Helper --ms-enable-electron-run-as-node -e delete process.env.ELECTRON_RUN_AS_NODE;require(process.argv[1]) /Users/akshayn/.vscode/extensions/dart-code.dart-code-3.47.20220808/out/dist/debug.js flutter
    0	    25	  7295	       /Users/akshayn/project/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev --packages=/Users/akshayn/project/flutter/packages/flutter_tools/.packages /Users/akshayn/project/flutter/bin/cache/flutter_tools.snapshot run --machine --start-paused -d emulator-5554 --devtools-server-address http://<IP_ADDRESS>:9100/ --target lib/main.dart
    0	     8	  7340	         electron_node config.js
    0	     0	  7344	         /Users/akshayn/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell -x logcat -v time -T '08-20 14:25:41.312'
    0	    41	  1374	   window (sell_on_itcity_page.dart — itCityOnlineStore)
    0	    25	  1445	   extensionHost
    0	    25	  1464	     /Users/akshayn/project/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev --packages=/Users/akshayn/project/flutter/packages/flutter_tools/.packages /Users/akshayn/project/flutter/bin/cache/flutter_tools.snapshot daemon
    0	     0	  1612	       /usr/bin/script -t 0 /dev/null /usr/bin/arch -arm64e xcrun xcdevice observe --both
    0	     8	  1614	         /Applications/Xcode.app/Contents/Developer/usr/bin/xcdevice observe --both
    0	     8	  1465	     /Users/akshayn/project/flutter/bin/cache/dart-sdk/bin/dart devtools --machine --try-ports 10 --allow-embedding
    0	     8	  1466	     /Users/akshayn/project/flutter/bin/cache/dart-sdk/bin/dart language-server --protocol=lsp --client-id=VS-Code --client-version=3.47.20220808
    3	    90	 14128	   issue-reporter

Workspace Info
|  Window (sell_on_itcity_page.dart — itCityOnlineStore)
|  Window (Settings — relier)
|    Folder (itCityOnlineStore): 589 files
|      File types: xml(183) dart(159) png(60) jpg(24) iml(19) svg(7)
|                  gitignore(5) gradle(4) json(4) plist(4)
|      Conf files:
|    Folder (relier): 8506 files
|      File types: xml(700) len(424) json(423) class(420) flat(368) jar(313)
|                  png(281) dart(216) txt(211) tab(156)
|      Conf files: launch.json(1)
|      Launch Configs: dart(3);

Extensions (8)

Extension
Author (truncated)
Version

flutter-snippets
ale
3.0.0

dart-code
Dar
3.47.20220808

flutter
Dar
3.46.0

bloc
Fel
6.6.1

pubspec-assist
jer
2.3.2

vscode-lottie
lot
1.0.5

hive-object-converter
mrg
1.0.1

material-icon-theme
PKi
4.19.0

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythonvspyl392:30443607
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
vscorecescf:30445987
pythondataviewer:30285071
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411cf:30542925
vsaa593cf:30376535
pythonvs932:30410667
wslgetstarted:30449410
cppdebug:30492333
pylanb8912:30545647
vsclangdc:30486549
c4g48928:30535728
hb751961:30543456
dsvsc012cf:30540253
azure-dev_surveyone:30548225

/needsMoreInfo
Please use this guide to provide more information: https://github.com/Microsoft/vscode/wiki/Performance-Issues. Thanks.

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!


Upperbound for max parallel threshold and make it configurable

Test pending

Can you improve with a test plan description? Thank you


Unable to pull a simple query.

This query in ElasticSearch and Kibana gives me a ton of data:
filter:
- query:
    query_string:
      query: 'docker.container.labels.com.amazonaws.ecs.cluster:prod AND log:entrypoint.sh'

However, when I try it in elastalert, it fails to give me the data I am looking for. This is the first query that utterly fails to reproduce in Elastalert what is easily reproduced in Kibana.
I need some guidance as to what I am doing wrong, or how to properly re-write the query in Elastalert.

Does it give you zero results? Does it give you too many results?
ElastAlert should be making the same exact query as Kibana is.


Load, render template version using helper

This adds a helper to meta.js so that the template version in template/config/index.js does not need manual maintenance and is instead loaded from package.json>version.

@sudo-suhas That actually doesn't work for me, I just get this:

it correctly reads the version from pkg.json, but apperantly the helper returns nothing for me :/

My bad. I had tested it but must have inadvertently introduced the mistake while rebasing and removing conflicts. Very sorry.

Don't worry, thanks for the continuing contributions :)


undefined symbol: PyFPE_jbuf

Running FCIS with default python (2.7.6) worked without any issues. However, using python of anaconda2 (2.7.13) throws the following error:
File FCIS_Root/lib/nms/nms.py
from cpu_nms import cpu_nms
Import Error: FCIS_Root/lib/nms/cpu_nms.so: undefined symbol: PyFPE_jbuf
The error disappears, if I comment "from cpu_nms import cpu_nms" in "FCIS_Root/lib/nms/nms.py".
Regards
Sebastian

This may be due to that you compile this module use Python while run it using another one (e.g. anaconda)

You should delete 'cpu_nms.so' and run 'sh init.sh' again.


ORA-00933: SQL command not properly ended error when generating token for application.

Description:ORA-00933: SQL command not properly ended error when generating token for application in Oracle.
APIM 2.6.0 latest wum updated pack as at 21/02/2020

Fixed with https://github.com/wso2-support/carbon-identity-framework/pull/997

@isharac has this been fixed in latest WUM?


ExHET25 Invited Speakers Bio, Abstracts and Pictures added

Hi @simongdg there is an extra jfif file. I am not sure if it's intended.

Thanks for clarifying! Please make sure the commits are squashed so there is no trace of the file.


[IOTDB-1086] Improve document of Zeppelin installation

If users download Zeppelin directly, the binary package is about 1.5G.
We could give two ways of installation to avoid this big surprise.

Cool, a more detailed doc.

Thanks! I have added the explanation for recommendation in both English and Chinese doc : )


[Feature]: Auto generate method to merge Themes

Problem
I am writing Widgets so that the theme defined in the ThemeExtension can be overwritten in the properties of the Widget.
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:theme_tailor_annotation/theme_tailor_annotation.dart';

part 'example.tailor.dart';

@TailorMixinComponent()
class MyButtonTheme extends ThemeExtension<MyButtonTheme>
    with DiagnosticableTreeMixin, _$MyButtonThemeTailorMixin {
  const MyButtonTheme({
    this.padding = const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
    this.color,
  });
  @override
  final EdgeInsets padding;
  @override
  final Color? color;
}

class MyButton extends StatelessWidget {
  const MyButton({super.key, required this.child, this.onPressed, this.theme});
  final Widget child;
  final void Function()? onPressed;
  final MyButtonTheme? theme;

  @override
  Widget build(BuildContext context) {
    final theme = this.theme ?? MyTheme.of(context).myButtonTheme;

    return GestureDetector(
      onTap: onPressed,
      child: Container(
        padding: theme?.padding,
        color: theme?.color,
        child: child,
      ),
    );
  }
}

This will work fine if the developer has not set a custom padding for MyButton in MyTheme.
final theme = this.theme ?? MyTheme.of(context).myButtonTheme;

But if he has. this.theme will still have the padding defined in the constructor of MyButtonTheme and the developer would need to explicitly pass the correct value. Or would need to read the correct value from MyTheme.of(context).myButtonTheme before passing it to MyButton

// MyTheme(myButtonTheme: MyButtonTheme(padding: const EdgeInsets.all(8)))

MyButton(
    onPressed: () {},
    theme: MyTheme.of(context).myButtonTheme.copyWith(
         colors: Colors.green
      ),
     child: const Text('Button'),
);

Having to use MyTheme.of(context).myButtonTheme.copyWith is not that nice. So I would like to handle this case in the Widget itself
Desired Solution
Generate .merge for Themes, so theme can be merged.
final theme = this.theme.merge( MyTheme.of(context).myButtonTheme);

Alternatives Considered
I will write the merge function myself. But It would be nice to have it autogenerated
@TailorMixinComponent()
class MyButtonTheme extends ThemeExtension<MyButtonTheme>
    with DiagnosticableTreeMixin, _$MyButtonThemeTailorMixin {
  const MyButtonTheme({
    this.padding = const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
    this.color,
  });
  @override
  final EdgeInsets padding;
  @override
  final Color? color;

  MyButtonTheme merge(MyButtonTheme other) {
   // defalutTheme is used to take Properties defined in the Constructor to account
    const defaultTheme = MyButtonTheme();
    return MyButtonTheme(
      padding: padding == defaultTheme.padding ? other.padding : padding,
      color: other.color ?? color,
    );
  }
}

On which platorm do you expect this solution?
All

Thank you for the suggestion, but I believe your proposition is too specific for inclusion in the generated code.
However, the issue could potentially be addressed by making final MyButtonTheme? theme non-nullable and required in the constructor. If you wish to change a parameter in a specific instance of MyButton, you could pass a new instance of MyButtonTheme to MyButton using .copyWith().
I hope this helps!

@marcosgcd
I really want this added.
Any theme which has a bool merge field should have a merge method.
Would you be open for a PR? This is a really simple fix (I already have it working on a fork)


MIC-797: Journey State Guard

Codecov Report
Attention: Patch coverage is 92.85714% with 9 lines in your changes missing coverage. Please review.

Project coverage is 90.85%. Comparing base (a451d4c) to head (485ffa3).
Report is 1 commits behind head on main.

Files with missing lines
Patch %
Lines

server/middleware/journeyStateGuard.ts
92.30%
9 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #353      +/-   ##
==========================================
- Coverage   90.89%   90.85%   -0.05%
==========================================
  Files         349      350       +1
  Lines        5340     5465     +125
  Branches      773      838      +65
==========================================
+ Hits         4854     4965     +111
- Misses        471      485      +14
  Partials       15       15

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


add gdal_config_options that are set as thread local

 Agribora: Sentinel-1-AWS-Bucket anbinden

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

32 of 36 (88.89%)  changed or added relevant lines in 5 files are covered.
2 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.003%) to 84.064%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

operators/src/source/gdal_source.rs
27
31
87.1%

Files with Coverage Reduction
New Missed Lines
%

operators/src/processing/temporal_raster_aggregation/temporal_aggregation_operator.rs
1
88.61%

operators/src/source/gdal_source.rs
1
82.99%

Totals

Change from base Build<PHONE_NUMBER>:
0.003%

Covered Lines:
23570

Relevant Lines:
28038

💛  - Coveralls


Leverage OperatorGroup configuration for permissions

The namespace which is targetted by the OperatorGroup of the operator install configuration is passed to the deployment in the operator CSV through the annotation olm.targetNamespaces. The deployment can use this to watch and modify resources in only that namespace.
Correspondingly the permissions for the namespaced resources can be restricted to only that namespace.
OperatorGroup CSV Annotations

/retest

/lgtm

/label docs-approved
/label px-approved
/label qe-approved


Can't break loop when using > 1 worker with DataLoader

Description
When using more than 1 worker with a DataLoader and starting the iteration and breaking the loop straight away, the worker crash and throw an error.
Environment info (Required)
MXNet 1.3.1

Minimum reproducible example

train_dataset = mx.gluon.data.vision.MNIST(train=True).transform_first(mx.gluon.data.vision.transforms.ToTensor())
train_data = mx.gluon.data.DataLoader(train_dataset, shuffle=True, last_batch='rollover', batch_size=100, num_workers=2)

for data, label in train_data:
    break

Exception in thread Thread-5:
Traceback (most recent call last):
  File "/home/ubuntu/anaconda3/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/home/ubuntu/anaconda3/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/anaconda3/lib/python3.6/site-packages/mxnet/gluon/data/dataloader.py", line 195, in fetcher_loop
    idx, batch = data_queue.get()
  File "/home/ubuntu/anaconda3/lib/python3.6/multiprocessing/queues.py", line 337, in get
    return _ForkingPickler.loads(res)
  File "/home/ubuntu/anaconda3/lib/python3.6/site-packages/mxnet/gluon/data/dataloader.py", line 57, in rebuild_ndarray
    fd = fd.detach()
  File "/home/ubuntu/anaconda3/lib/python3.6/multiprocessing/resource_sharer.py", line 58, in detach
    return reduction.recv_handle(conn)
  File "/home/ubuntu/anaconda3/lib/python3.6/multiprocessing/reduction.py", line 182, in recv_handle
    return recvfds(s, 1)[0]
  File "/home/ubuntu/anaconda3/lib/python3.6/multiprocessing/reduction.py", line 153, in recvfds
    msg, ancdata, flags, addr = sock.recvmsg(1, socket.CMSG_LEN(bytes_size))
ConnectionResetError: [Errno 104] Connection reset by peer

@ThomasDelteil Thanks for submitting this issue. I am labeling this issue so that MXNet Community members can help resolve it.
@mxnet-lebel-bot [Gluon, Data-loading]

@mxnet-label-bot [Gluon, Data-loading]

Hi @ThomasDelteil I think this issue is fixed in 1.4.0, I am able to run your example with no errors. Also mentioned in #14541


⚠ Bofrost.ch has degraded performance

In fa35817, Bofrost.ch (https://www.bofrost.ch) experienced degraded performance:

HTTP code: 200
Response time: 1319 ms

Resolved: Bofrost.ch performance has improved in e920163 after 6 minutes.


i'm sorry i have another question "how to install the NEOS Program"

i flash the system.img and boot.img on my phone,my phone is power on now.
but i find a question,
"how to install the NEOS Program"
the screen tell me "enter the URL of the NEOS program to install"
but i dont know  what the URL is.
so who can tell me the URL
thanks a lot !

This is continued in #8, close this.


Upgrade Dependencies, Fixes compilation error in RxSwift target and adds macOS target

This PR fixes and issues in the RxMoyaGloss target where Moya.Error is still being used although it's been superseded by MoyaError since Moya v8.0.0. Also it adds a macOS target and set's the required Swift version in the project rather than the separate framework target (this previously lead to compilation errors for the RxMoyaGloss target).

awesome @kimar! everything looks great to me, i will test and verify tonight once i can reach my laptop and merge in after

closing this in favor of #22 is it's based off of your changes.
thank you again @kimar for the work and efforts you put back into Moya-Gloss!


Bring in dependency banning and/or restricting rule(s)

Splitting out from #42: npm-package-json-lint has a family of rules that can ban variants of package dependencies:

https://npmpackagejsonlint.org/docs/rules/dependencies/no-restricted-dependencies
https://npmpackagejsonlint.org/docs/rules/dependencies/no-restricted-devDependencies
https://npmpackagejsonlint.org/docs/rules/dependencies/no-restricted-pre-release-dependencies
https://npmpackagejsonlint.org/docs/rules/dependencies/no-restricted-pre-release-devDependencies

Additionally, other rules exist in that package and elsewhere for restricting dependency ranges:

https://github.com/kellyselden/eslint-plugin-json-files/blob/master/docs/rules/no-branch-in-dependencies.md
https://github.com/kellyselden/eslint-plugin-json-files/blob/master/docs/rules/restrict-ranges.md

I'd like to add in some kind of rule or rules to this package equivalent to those. Not clear yet how they'd look.  Granular rules like how npm-package-json-lint & co have them? More thought required.
~Blocked on #40. Not a high priority issue given that this wouldn't be enabled by default in any recommended configs.~ ✅

I'd love to see this - definitely something missing from the eslint ecosystem at the moment!
https://eslint.org/docs/latest/rules/no-restricted-imports#rule-details might be a good reference too, since it does something similar.
Some granularity would be nice - one thing I've struggled with in large monorepos is gradually phasing out a dependency, which requires having warnings for some dependencies (i.e., those being removed), and errors for others (i.e., those already removed) in parallel.

https://eslint.org/docs/latest/rules/no-restricted-imports#rule-details might be a good reference too, since it does something similar.

This raises a good point about the value of a new rule for this.  If the usage sites of a restricted package is being reported using no-restricted-imports what additional value would a rule applied to the package.json for the same package provide?  Wouldn't that be reporting effectively the same thing in two different places?  I guess one area that this would cover that that rule doesn't, is dev tool packages that are only being used in package.json scripts and not imported somewhere where the restricted imports rule would cover?  I guess my main concern is having two different rules firing errors for the same issue.

one thing I've struggled with in large monorepos is gradually phasing out a dependency

The way I would see this going in practice is adding the package as a restricted import using no-restricted-imports, disabling existing usage and gradually reducing usage until it's zero, at which point knip would report the package as unused and it's removed entirely.  I.e. the place where this rule would fit in seems rather narrow, unless I'm missing something.


[ENHANCEMENT] Use league specific avatar before defaulting to sleeper profile avatar

Is your feature request related to a problem? Please describe.
If a user does not have a sleeper profile pic, the website shows a null picture.
Describe the solution you'd like
By replacing the avatar fetch with an if statement that tries to use the team picture before defaulting to the profile picture, we can avoid null picture
Code Change:
Replace https://sleepercdn.com/avatars/thumbs/${user.avatar}
With
user.metadata.avatar ? user.metadata.avatar : `https://sleepercdn.com/avatars/thumbs/${user.avatar}`

Lumping this in to the upcoming update. Should be released in the next week or two!


Filenames containing emojis will not sync

Describe the bug

I noticed that a file that had an emoji in the filename did not get synced. Some filename 🚀.pdf did not work for me.
To Reproduce

Rename a file to Some filename 🚀.pdf and see the issue in the Show sync issues menu.
Expected behaviour

The file should sync or maybe a better error message pointing to the fact that the filename is invalid? ¯_(ツ)_/¯
System:

Maestral version: Version 1.5.1 (40)
Python version: ? (I installed the mac app bundle)
OS: macOS 12.0.1
Desktop environment:
PyQt version (for Linux GUI):

Additional context

This is the error message on the machine with the file.

This is a limitation of Dropbox:
https://help.dropbox.com/files-folders/sort-preview/file-names

Closing the issue 🙂


Forbidden when running on AWS

I configured this to run through Elastic Beanstalk however when I log in I get forbidden. Any idea why?

Hey, honestly I don't have any idea about it sorry.
But anyway keep in mind that these images do not met cloud environment requirements for services such as AWS or OpenShift (each one has different restrictions, etc), so the idea is just use the base images (eg: drools-wb, kie-server, jbpn-workbench... not showcases) for creating your custom one to deploy in your concrete environment.
This situation applies to other jboss community docker images as well, such as the jboss/wildfly one.  Other teams are building docker images specific for running in Openshift  but for the Amazon service there is no community side support.
From the other side, I would appreciate I somebody creates some of the drools/jbpm images for  Amazon and can share the information, as many people is asking about it.

I forgot to mention that these images use the "jboss" user, as you can see here -> https://github.com/jboss-dockerfiles/base/blob/master/Dockerfile#L18
As far as I know some cloud environments requires that containers have to be run as root, so probably the issues is related.
If you can check the logs and share them we can try to find out the issue, but I don't have an Amazon account any more so I can't test it :(


react Tabbar for Android displays above Toolbar when position='top'

Tabbar should stick below Toolbar in Android Material UI. Right now it cannot be used in top position (which is the default/recommended position for Android Material UI).

@hervejegou We do support this layout but in that case you need to change the structure of the components. I made an example here that you can take a look at:
https://codepen.io/pen/?&editors=101
Generally the tab hierarchy of iOS and Android apps is quite different so it's not possible to support both with the same component structure. If you want to support both I recommend adding some conditional code that renders different components depending on the platform.

@argelius Thanks this works well now.. Just one low priority feedback, I do get a warning about props:

warning.js:44 Warning: Unknown prop no-status-bar-fill on <div> tag. Remove this prop from the element. For details, see https://fb.me/react-unknown-prop
in div (created by Tabbar)
in ons-tabbar (created by Tabbar)
in Tabbar (created by Community)
in div (created by Page)
in ons-page (created by Page)
in Page (created by Community)
in ons-splitter-content (created by SplitterContent)
in SplitterContent (created by Community)
in ons-splitter (created by Splitter)
in Splitter (created by Community)
in div (created by Page)
in ons-page (created by Page)
in Page (created by Community)
in Community (created by MeteorDataContainer)
in MeteorDataContainer


Learning the instant frame

Hello, I want to play an animation only between certain frames and I could not find a document about it. I just found the function named setSeeker. I can start it in certain frame, but how do I stop it?

Hi buddy, I have the same question, have you fixed the issue ?

This is a very relevant question.
I attempted to use state.seeker to get the current frame, but it appears to work async like React state, so it does not get updated immediately after a call to setSeeker, meaning that my javascript ends up in an infinite loop.

@soerenBoisen I'll take a look at this and get back to you about this problem

A brilliant solution would be to have a version of the play call like the iOS player, where you can play/loop a range of the animation:
http://airbnb.io/lottie/#/ios?id=play-with-frame-time
But that method seems to be missing from the underlying Lottie web player.

Hi @soerenBoisen, @gron01 you can play segments of lottie animations like this:
import './App.css';
import { Player, Controls } from '@lottiefiles/react-lottie-player';
import React, {useRef} from 'react';

class App extends React.Component {
  constructor(props) {
    super(props);
    this.state = { lottie: null }; // initialize your state
  }

  render() {
    return (
      <Player
        lottieRef={instance => {
          this.setState({ lottie: instance }); // the lottie instance is returned in the argument of this prop. set it to your local state
        }}
        onEvent={event => {
          if (event === 'load') {
            this.state.lottie.playSegments([20,30], true);
          }
        }}
        autoplay={true}
        loop={true}
        controls={true}
        src="https://assets3.lottiefiles.com/packages/lf20_XZ3pkn.json"
        style={{ height: '300px', width: '300px' }}
      ></Player>
    );
  }
}

export default App;

This will play the animation from frame 20 to 30. If you don't want it to loop, set the loop prop to false.

Hi @samuelOsborne
I followed your code above and my use case if I have the frames [20,30] as dynamic from this.props.lottieState so I am setting it like this
 onEvent={event => {
          if (event === 'load') {
            this.state.lottie.playSegments(this.props.lottieStat, true);
          }
        }}

I can understand this only enters once in the 'load' event so I cannot update the frames here. I am receiving updated frames in this component but somehow the Player is not updating.

Thank you Samuel!
I finally had a chance to try out your suggestion and it worked perfectly for playing only parts of an animation.
For those interested, here is how you can do it in a functional component (this is using MUI, but that is not a requirement):
type ThankYouStepProps = Readonly<{}>

export function ThankYouStep({}: ThankYouStepProps) {
    const classes = useStyles({})

    const [lottie, setLottie] = useState<AnimationItem>()
    const [loaded, setLoaded] = useState(false)

    const handleLottieEvent = useCallback((event: PlayerEvent) => {
        if (event === PlayerEvent.Load) setLoaded(true)
    }, [setLoaded])

    useEffect(() => {
        // Need to wait for both our reference to be set and for the animation to be loaded
        // before calling playSegments
        if (lottie && loaded) {
            // Play first part of animation then loop part of it
            lottie.playSegments([[0, 200], [100, 200]], true)
        }
    }, [lottie, loaded])

    return (
        <Slide direction="left" in={true}>

                <LocalizedStrict id="user-survey-thank-you-message">
                    <Typography variant="h5" align="center" paragraph>
                        Thank you for your feedback
                    </Typography>
                </LocalizedStrict>

                    <Player src={TrophyAnim} controls={false} loop lottieRef={setLottie} onEvent={handleLottieEvent} />

        </Slide>
    )
}


added contains + tests + bumped version

cool library, added contains, seems useful
edit: this is failing because of a bug in simple-test's old use of string.format. I submitted a pr for the fix here
edit 2: just now seeing index_of() 😆

really cool!
tks @jamesalbert

=P
I prefer index_of than contains, because besides checking if the value exists, it tells me which position in the array the element is in :)


how to get what user's text entered and show the entered text

Rasa Core version:
0.9.0
Python version:
2.7.5
Operating system (windows, osx, ...):
centOS 7
Issue:
Hello,
I am new with rasa core.. I am in the progress to create my 1st bot, with the following scenario:
when users say hey..
the bot will ask user's name
after user entered his name
the bot will show .. hey.. your name is .... (my case is utter_greet2)
my question is .. how to save user's entered text and show it to user like the scenario above?
please help
thanks a lot in advance
Regards
Win
Content of domain file (if used & relevant):
domain.yml
intents:
  - greet
  - goodbye

templates:
  utter_greet1:
    - "Hey, I am bot, what is your name?"
  utter_greet2:
    - "Hey, your name is "

actions:
  - utter_greet1
  - utter_greet2
  - utter_goodbye

[root@ai nluEZ]# vi config.yml
language: "en"
pipeline:
- name: "intent_featurizer_count_vectors"
- name: "intent_classifier_tensorflow_embedding"
  intent_tokenization_flag: true
  intent_split_symbol: "+"

data/nlu_data.md
## intent: greet
- Hi
- hey

## intent: goodbye
- Bye
- Goodbye

data/stories.md
* greet1
    - utter_greet1
* greet2
    - utter_greet2
* thanks+goodbye
        - utter_thanks
        - utter_goodbye

Check out the utterance template variables.

@Primtek does that solve your issue? Do you need any more help?


Add handshake integration test for crossing hellos, connection and channel

Summary
We need to ensure that crossing hello's can succeed. Test for connection and channel handshake should be added to verify that:
ChainA : OpenInit
ChainB: OpenInit
ChainA: OpenTry
ChainB: OpenTry
ChainA: OpenAck
ChainB: OpenAck
can result in an OPEN connection/channel ends on each chain

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged
[ ] Contributor assigned/self-assigned

Closing this since we are removing crossing hellos for channel and connection.


Touch + Mouse enabled Windows

It doesn't work on Windows 8 with Chrome 35.0.1916.153m

For now I have worked around this issue by moving the ” if(‘ontouchstart’ in document) return; ” from line 17 of the bootstrap-hover-dropdown.js file to inside the ” $.fn.dropdownHover = function(options) {” block of code to line 24 so that even if touch is enabled, the function is still defined, now it just doesn’t do anything, before the placement of the “if(ontouchstart)” was making the plugin return before the function was even defined, which was causing part of the problem, and causing everything else JavaScript on the page to not work. Visitors(with a touch enabled screen) now just have to click on the nav menu to get the dropdown, rather than it opening on hover. Obviously I would like to find a better solution that involves really detecting if it is solely touchscreen or also has a mouse, but for now at least this allows it to be used.

I have this problem too. We have a Dell laptop with touchscreen. When visiting the plugin's demo page, it doesn't work. It happens on Windows 8.1 on Chrome only.

Here is some good info on the topic:
https://github.com/Modernizr/Modernizr/issues/869
http://www.html5rocks.com/en/mobile/touchandmouse/

I created this jsfiddle https://jsfiddle.net/ps7o1n5j/2/ and tested the touch/click events. Results as follow:
iOS 8.3
Safari:
Touch: true
Mouse: true
Windows 8.1 Dell laptop with touchscreen support and mouse
Firefox:
Touch: false  <----- why you lie firefox?
Mouse: true
IE:
Touch: false <--- why you lie IE?
Mouse: true
Opera:
Touch: true
Mouse: true
Chrome:
Touch: true
Mouse: true
Mac OSX 10.10.3 no touchscreen
Safari:
Touch: false
Mouse: true
Chrome:
Touch: false
Mouse: true
Firefox:
Touch: false
Mouse: true
So I would say there's a bug on the actual browsers, Firefox and IE on Windows 8.1.

So I've been hoping for a different approach, but I'm afraid the best approach I've seen/come up with is:
var isTouchOnly = true;
$(document).on('mousemove.bdh', function () {
  isTouchOnly = false;
  $(document).off('mousemove.bdh');
  console.debug('MouseMove detected, this device has a mouse');
});

Basically, we don't need a way to detect for touch it seems, but a way to detect for mice. As long as no touch devices implement mousemove as that article you based says they don't... that should work.
I've had multiple other solutions presented and so far, I haven't found anything that I either like better or else it simply doesn't work.

@CWSpear seems like that's a good solution to me. Will you make that change?

Issues with this approach:
It'd be best not to even attach the mouseenter/mouseleave (aka hover) listeners if the device is "touch only."
However, with this approach, we don't know on page load if the device isTouchOnly, so we can't really assume isTouchOnly === true on load like this approach assumes.
The best we can do is:
$this.hover(function (event) {
  if (isTouchOnly) return;
  ...
}, function (event) {
  if (isTouchOnly) return;
  ...
});

Very messy and means we have a totally DOA event handler that the system has to listen to that literally does nothing.
Before someone suggests it: I'm not okay with putting in some sort of timeout check to wait to see if we get a movemouse event. It's possible someone doesn't move their mouse (thus triggering the mousemove event) for a while, and it'd be so hard for the end-developer to debug this if they didn't know it was there. And users could potentially see differing behaviors that would be very frustrating.
But at this point, I don't know what else we could do, and the cost of an event handler on today's phones is not going to probably causes issues in the vast majority of situations.
So again, to reiterate: we need to know if the user has a mouse, and if they don't, don't even activate this plugin at all. But we don't have any way of knowing they have a mouse unless they use it, so our base assumption has to be "no mouse" which creates a contradiction of sorts.

Another possible solution would be to not activate the plugin on $(document).ready, but on the first mousemove event.
However, this again, could cause problems for debugging for developers. I promise you'll I'll get a dozen tickets of issues of developers that are ajaxing in content and sometimes it works and sometimes it doesn't and it ends up being it's because of when they first move their mouse!

Also want to point out the more recently suggestion solution doesn't really work, because touch-only devices still emit mousemove!

So I played around some with PointerEvents using the jQuery PointerEvent Polyfill (PEP). It's many times larger than this plugin, but in my initial testing and getting some buddies to check in Chrome on touch-enabled Windows 8 desktops... the results are very promising.
Only recently, Chrome has decided to reverse their stance on PointerEvents and attempt to try and support them. That may be a long way off, but in the meantime, we have the polyfill (and Safari is still dragging their feet on the matter of PointerEvents). It's still a very long ways off before we'd release this as we're determined on creating proper tests and such, and availability is limited.

Hey there!
It's almost middle of 2016 but I still ran into this issue.
Take a look this link http://www.virtuosoft.eu/code/bootstrap-dropdown-hover/ , this guy seems to be fixed this problem

@NeXTs It looks like that guy is doing mouse detection, which is probably a better approach than detecting touch and disabling. It's the same thing that @CWSpear was talking about doing a few posts up. Seems like mousemove did not work because it was being emulated by the touch events, but maybe mouseenter does? Otherwise that guy is going to have similar issues...
The downside to always attaching the listener is that at best it is "dead on arrival" for touch-only devices - it does not do anything except be wasteful. In #141, someone suggested using media queries, e.g. @media (hover) { }; we might be able to do a Modernizr-style check with @media (any-hover) {} to see if there is a reason to attach the listeners.