backpressure / pony mute can cause premature termination

Running a benchmark application on large machines (> 48 physical cores), shows that the pony runtime backpressure/actor mute feature in combination with ponyint_sched_mute does lead to premature termination (i.e. terminating the pony process before actual quiescence is reached) non deterministically.
With https://github.com/sblessing/ponyc/commit/789c2906b6e887d6998abd2a713bfad52d08d54b this behavior is not observable any more.
Also, pony's behavior is far "spikier" (and slower) with actor/sched mute than without.
Behavior with actor/sched mute (Pony going to 0 meant premature termination, no segfault):

Behavior without actor/sched mute:

This needs to be investigated more closely and in a way where it can be debugged/fixed. Backpressure/thread muting/scaling does not work correctly at the moment.

Can you explain where this demonstrates premature termination? I'm not sure what you mean by "premature termination" is the same thing that I take it to mean.

The program terminates although there is still work left.

How is to possible for a program to terminate and for the graph to continue?

Can you work on coming up with a specific application environment that is, ideally, reproducible to show the early termination problem?

Indeed, that would be ideal. The problem is that I can only observe it on large core count environments and its non-deterministic. The only thing I do know for sure is that the problem goes away with the above linked commit.

@sblessing : if you give me specific instructions on what to download/compile/run i can attempt to replicate here (i have 28 core machine)

Thanks, i do have a 48 core box available, and I haven't observed it there. You can checkout https://github.com/sblessing/chat-app and just run the pony implementation at pony/ with its default arguments.

Actor muting will have a performance impact on any application that triggers it. Testing has shown in has no real measurable impact on applications that do not trigger it.
Muting does prevent runaway memory growth that can otherwise result.
Something I've wanted to do with the muting is make it "more advanced" by allowing some actors to process more messages in a batch if they are regularly overloaded. However, I've never had a good example application that has shown value in any of the ways I've attempted to it was removed from the backpressure system before it was merged. Having a couple example applications such as this would go along way to being good for working on that. And for that specific bit, doesn't even need to be many.
What is really needed:

an application that shows worse performance with muting on
demonstrates stable memory usage with muting off

Does that chat app in question meet those two criteria @sblessing, it certainly seems like point 1 is there. What about point 2?

@SeanTAllen i'll try to give a useful answer on your question ASAP.

@sblessing yes, where an actor is unable to keep up with the messages it is being sent by other actors and memory grows and grows. so if the application in question reaches a stable point memory wise but performance is impacted than woo-hoo! i finally have a good test case for "phase 2" of backpressure work.

I am currently running a memory inspection with muting turned on and without muting turned on. I should be able to answer this later today.

@sblessing what is the expected output? what am i supposed to see if it terminates permaturely?

@KittyMac you would see a statistics output if everything worked correctly, and if not, you would see only the first benchmark header line.
That is,
OK:
Benchmark                                  i-mean          i-median           i-error          i-stddev
Chat App                               200.321 ms        213.985 ms        ±8.2943 %           47.9541
                                           j-mean          j-median           j-error          j-stddev              quality of service
Turns                                  171.579 ms          198.5 ms       ±1.42148 %           39.8198                         39.2816

None                108770
Invite              281920
Post                 74025
Compute             576829
Leave                72569
PostDelivery       1195146

Broken:
./pony
Benchmark                                  i-mean          i-median           i-error          i-stddev

@sblessing excellent. To confirm, for the error case the executable actually exits?  Or just it just hang.
When I attempt with stock pony I get the correct output as you describe.  But when I try on my fork of pony I get the second, with it hanging without exit, consistently.  If that's the expected error, then I will dig in and see if I can find the cause.

No in my case, it always exited. I never did hang.

Ok, I spent a bit looking;  will most probably spend a bit more time looking this weekend.
Here's what I've seen so far. These experiments are mostly on my fork, so take with a grain of salt.

when running against a debug ponyrt, I get an assert here

src/libponyrt/actor/actor.c:1225: ponyint_unmute_actor: Assertion `is_muted == 1` failed

In ponyint_unmute_actor(pony_actor_t* actor), right after an atomic fetch sub for &actor->is_muted.

Which implies to me the is_muted has an unexpected value going into that function.  Perhaps it was asked to be muted twice?  Anyway, I take it cautionary confirmation something screwy is indeed going on with actor muting.

if I remove the calls to ponyint_maybe_mute() in pony_sendv() and pony_sendv_single() (the ones where the actor will mute itself if it sends to an actor with full mailbox), the assert goes away and the program finishes every time.

The benchmark results running in stock pony:
Benchmark                                  i-mean          i-median           i-error          i-stddev
Chat App                               37.1577 ms        36.6524 ms       ±7.52943 %           8.07477
                                           j-mean          j-median           j-error          j-stddev              quality of service
Turns                                  33.6484 ms             26 ms       ±1.29468 %           7.11248                         7.21521

Post                227783
Ignore             1214301
PostDelivery       3275550
None                 67606
Invite               98959
Leave                82185
Compute             572043

The benchmark results running on my fork of pony:
Benchmark                                  i-mean          i-median           i-error          i-stddev
Chat App                               16.0832 ms        16.5816 ms        ±4.1761 %           1.93848
                                           j-mean          j-median           j-error          j-stddev              quality of service
Turns                                  11.2295 ms             11 ms       ±0.68923 %           1.26362                         1.28382

PostDelivery       3185236
None                 69046
Invite               98959
Post                226741
Leave                81787
Compute             572043
Ignore             1214301

@sblessing what exactly does "quality of service" entail?  Are higher scores better or worse?

@KittyMac I'm going to ignore any debugging from your fork. It's against an unknown codebase and looking for assertion problems that might be the result of a change you've made isn't something I'm going to undertake.
I don't take any cautionary tale from it other than "something is wrong in your fork". Might it exist elsewhere? Yes, but there's been tons of production usage of the muting code in the regular runtime and a much more limited set with your fork. If you could confine debugging to the standard pony runtime, that would be appreciated.

@KittyMac quality of service, lower is better, but thats not really the topic here :). I happy to discuss that offline.

I'm very dubious that the particulary assertion that was triggered in @KittyMac's fork exists in the stock ponyrt. I can believe that @sblessing is hitting an issue, but that assertion seems really really unlikely. here's the code for mute and unmute:
void ponyint_mute_actor(pony_actor_t* actor)
{
   uint8_t is_muted = atomic_fetch_add_explicit(&actor->is_muted, 1, memory_order_relaxed);
   pony_assert(is_muted == 0);
   DTRACE1(ACTOR_MUTED, (uintptr_t)actor);
   (void)is_muted;
}

void ponyint_unmute_actor(pony_actor_t* actor)
{
  uint8_t is_muted = atomic_fetch_sub_explicit(&actor->is_muted, 1, memory_order_relaxed);
  pony_assert(is_muted == 1);
  DTRACE1(ACTOR_UNMUTED, (uintptr_t)actor);
  (void)is_muted;
}

to get that assertion in unmute without hitting in mute actor would be incredibly unlike and mean that everything is completely borked somewhere. You'd need to make changes to the scheduler guarantees about an actor being run for the unmute assert to be triggered without the mute one being triggered.
That guarantee is that an actor is only being run by 1 scheduler thread at a time. And if that is violated then everything else in Pony is violated as well. You might get some interesting performance improvements but you'd also have safety go out the window.

My apologies, I usually work under the assumption that more information is better than less information.  I will curb myself going forward.

There's no need to apologize @KittyMac.

@KittyMac are you on ARM on X86?

This is on 28-core X86 machine.
I just tried reproduction using stock pony with mixed results:

With the normal hw_cpu_count, his issue doesn't reproduce for me.  But that's not surprising, as he said it needed a machine with > 48 cores.

So I tried artificially raising the hw_cpu_count to 112. The program then behaves for me exactly how @sblessing describes, every time.

I don't see the assertion I saw on my fork.

I have not had time to dig further.

@KittyMac good idea for tracking this with hw_cpu_count. I can confirm that it appears it happen every time on really large core/thread counts.
Also, for completeness, I am running on - but this won't be the issue.
Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   43 bits physical, 48 bits virtual
CPU(s):                          128
Vendor ID:                       AuthenticAMD
CPU family:                      23
Model:                           49
Model name:                      AMD EPYC 7702 64-Core Processor

@KittyMac as a bonus though of your assertion, i went back and looked at the muting code atomics with sylvan and we think there is a possible but on ARM, so you ended up probably being the result of the fix of a bug on ARM.

@SeanTAllen can you briefly explain the ARM bug?

@sblessing no because all i got when sylvan reviewed was "hmmm, that is likely to be subtly wrong on ARM"

I need to correct: with my commit above, disabling the muting, we see the problem far less often, but it still occurs.

@sblessing the plot thickens! are you using the cycle detector? is pony --noblock in use?

I do, and hence not using --ponynoblock. In general, using and not using --ponynoblock is quite problematic for the process of benchmarking. Using --ponynoblock causes actors not to be collected (at least for this application), or at least their finalizers not to be called. Not using --ponynoblock slows down the process considerably, because when lots of actors are in place, ponyrt takes a long time to terminate, even though all actors are blocked.
But this is a totally different topic.

@sblessing --ponynoblock does not cause actors to not be collected in general, it would however if you have cycles.
@jemc is slowly working on porting to use the verona runtime which doesn't need the cycle detector which is... very nice for performance. I will be happy when the pony runtime no longer has a cycle detector.
Anyway, trying to recap where we stand...

happens with cycle detector
more likely with backpressure
more likely with higher number of actors
seems to be deterministic for some combination of variables involving large number of cpu cores.

Am I leaving anything out at this point?

Yes, your list is complete. I do know about the actor GC in correlation with --ponynoblock (as this goes back a long way), but for this application in question, GC'ing with --ponynoblock caused actors which are clearly not referenced anymore, to be collected right after all actors in the system are blocked. We should discuss this on maybe a sync call or on a longer 1:1 discussion, then i can elaborate a bit more on that.
Also, I think it would be possible to have multiple cycle detectors :). This would improve the current behavior a lot.

Please open another issue for ", but for this application in question, GC'ing with --ponynoblock caused actors which are clearly not referenced anymore (and not involved in any cycle), to be collected right after all actors in the system are blocked (rather than interleaved with normal execution)." so we can discuss. Based on the logic for gc'ing actors when noblock is used, I find this hard to understand.

@sblessing can you try using --ponynoscale and let me know if you see the same results? or rather, it will change things, I'm wondering if without scaling if the problem goes away (would require many runs as it will change the behavior of the runtime substantially in some cases).


Publish_MarketData input parameter not available con MT4

I can't see the input parameter Publish_MarketData when I drag the expert to the chart.
DWX_ZeroMQ_Server_v2.0.1_RC8

added extern to variable Publish_MatketData in line 42 to solve it.

added extern to variable Publish_MatketData in line 42 to solve it.

Hi,
Thanks for raising this issue. After the latest update the Publish_MarketData variable is set automatically on subscribing to symbols. So you don't have to set it manually yourself.

Hi,
Thanks for raising this issue. After the latest update the Publish_MarketData variable is set automatically on subscribing to symbols. So you don't have to set it manually yourself.


[0.6.1] cherry picks

So far, I cherry picked:

#1269
#1278
#1290
#1291
#1294
#1295
#1307
#1309
#1312
#1319
#1321

TODO:

[x] #1296
[ ] #1322

LGTM

Please also cherry-pick this commit before the release: https://github.com/vallsv/silx/commit/d20134f2af3b0358a6f2c3ece06b2eb4a12c250e


Design & Layout improvements

[x] add shake animation to login form
[x] improve topbar layout
[x] add margin between topbar and page
[x] improve size of dialogs
[x] groupmenu width
[x] fixed login & signup width

Add tooltips for:

[x] groupDetail page for leave group button
[x] topBar for logout button

Current coverage is 97.38% (diff: 100%)

Merging #148 into master will not change coverage

@@             master       #148   diff @@
==========================================
  Files            85         85
  Lines          1186       1186
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits           1155       1155
  Misses           31         31
  Partials          0          0

Powered by Codecov. Last update 61c36ad...40a25db

login shaking results in a width >100%, so the horizontal scrollbar flashes multiple times
i fixed it by letting loginContent shake instead of loginContainer
just dont get it commited, but i guess you can change it on your own :D
everthing else seems fine ;)


Errors not shown when using multiple validators with async validator

I have an input that accepts a mobile number and I have the following validators set:
'mobile_no': FormControl<String>(
      asyncValidatorsDebounceTime: 1000,
      validators: [
        Validators.required,
        Validators.pattern(MOBILE_NO_PATTERN),
      ],
      asyncValidators: [checkMobile],
    ),

The MOBILE_NO_PATTERN value is r'^(09)\d{9}$'
The checkMobile async validator sends a request to the server to check if the mobile number already exists in the database.
When I enter (by typing quite quickly) an invalid mobile number, the async validator is triggered (because at some point while typing, the mobile number matches the pattern). The async validator returns valid but the value is not validated again for the pattern.
I tried specifying a longer async debounce timeout but the unexpected behavior still occurs.
I am using reactive_forms ^10.6.0

Hi @dcbacarro,
Thanks for using Reactive Forms and for the issue. Could you show me the implementation of the checkMobile function?

You're welcome @joanpablo. It really made it easier to create forms with this package in Flutter.
Here's the implementation of the checkMobile function based on the documentation:
Future<Map<String, dynamic>?> checkMobile(
    AbstractControl<dynamic> control) async {
  final error = {'unique': false};
  try {
    final res = await validateMobile(control.value);
    if (res!.data!['invalid'] == true) {
      control.markAsTouched();
      return error;
    }
  } catch (e, stack) {
    if (ENABLE_SENTRY) await Sentry.captureException(e, stackTrace: stack);
    control.markAsTouched();
    return error;
  }

  return null;
}

Have you tried the complex example that is in the example folder of the Reactive Forms project? In that example, we show a very similar use case, but with an email. Can you check this example and let us know if it has the desired behavior?

Have you tried the complex example that is in the example folder of the Reactive Forms project? In that example, we show a very similar use case, but with an email. Can you check this example and let us know if it has the desired behavior?

Okay, I'll have a look at the complex example. Will get back to you later. Thanks @joanpablo.

I think the complex example is the same with the example shown in the readme. Am I right? If so, as I mentioned in my comment here, that is where I based my implementation :)

Perfect meantime let me recap, to see if I understand your issue:
1- Type correct phone number
2- Patter validation return OK
3- Async Validation Trigger the request (this operation take some time)
4- Type another character and Pattern Validation marks the control as invalid
5- The Async Validation responds and marks the control as Valid.
6- The result of the control is marked as valid even when the phone number is wrong.
Is that the use case?

Perfect meantime let me recap, to see if I understand your issue: 1- Type correct phone number 2- Patter validation returns OK 3- Async Validation Trigger the request (this operation take some time) 4- Type another character and Pattern Validation marks the control as invalid 5- The Async Validation responds and marks the control as Valid. 6- As a result, the control is marked as valid even when the phone number is wrong.
Is that the use case?

Yes, correct. #5 and #6 only occurs when the user types quite quickly. I'll have a screen recording of the behavior. Please wait for a moment. :)

Hi @joanpablo, here's the recording. Please notice that when I type normally, the validations are working properly. Also when I type after the loading animation disappears the validation for the pattern does not appear but it appears on blur.

.

Hi @dcbacarro,
Can you update to the last version of Reactive Forms and see if the issue persists?
The complex example in the example folder works perfectly as expected and is quite similar to your use case. I will try to reproduce your issue with your Pattern mobile number, and see what happend.
But could you update the version?

Sure, I'll try to update to the latest version. I'll let you know if the issue still persists after updating. Thanks @joanpablo.

Hi @dcbacarro,
I was able to reproduce the issue, and a solution is coming :).
I still need to create several tests before releasing the solution. I need to be sure nothing else is broken with the changes. So I hope that by the end of today I could release a new version with this issue solved.
Thanks for the issue.

Hi @joanpablo, I have updated the version to v10.6.7 and this issue still occurs. As a workaround for now, I call updateValueAndValidity() on the control upon blur.

Hi @dcbacarro,
I was able to reproduce the issue, and a solution is coming :).
I still need to create several tests before releasing the solution. I need to be sure nothing else is broken with the changes. So I hope that by the end of today I could release a new version with this issue solved.
Thanks for the issue.

Really looking forward to this. Thank you very much @joanpablo!

Hi again @dcbacarro,
I have just released the version v10.6.8 that solved the issue. Please check it, and let me know if everything is working correctly.
I will close the issue but if you have not solved the issue please re-open it, or create a new one.
Thanks again.

Thanks @joanpablo. Confirming that this issue is fixed now. Cheers!


Speed improvements for StackedChainNER

This set of commits reduces the runtime of the StackedChainNER on an example document with about 8300 words from about 1000ms to about 667ms (using a lightly processed version of Barack Obama's wikipedia page as the target document, averaged across 50 runs). This requires no change on the user's part, and the current serialized models are compatible.

It adds a new method to TriePhraseLexicon to let it reuse the lemmatised form of a token (as previously it lemmatised it once for each lexicon), and shifts StackedChainNer to use that method.
It merges the three for loops over tokens at the end of StackedChainNer.initFeatures into a single for loop, and the three for loops at the start of StackedChainNer.initSecondaryFeatures into a single for loop.
It adds an extra CircularBuffer class to cc.factorie.util (because I couldn't figure out an appropriate Scala collection with the right performance characteristics) which is the top n most recent elements held in an array. It's useful for replacing the tokens.foreach(t => t.prevwindow... ) operation that is common in the NER, to save doing a potentially complicated operation many times.
initFeatures is modified to use the CircularBuffer to store the feature added to NEXTWINDOW & PREVWINDOW so simplifyDigits(token).toLowercase is called once per token, instead of 8 times as in the previous code. It's not used on the initSecondaryFeatures prev/next window features as that operation isn't expensive enough to justify the extra code IMO, and it does make it harder to figure out what's happening.
The call to addNeighboringFeatureConjunctions was swapped to a new method addNeighboringFeaturesFast. The addNeighboringFeatureConjunctions method has lots of extra logic which is unnecessary when called with the arguments used by StackedChainNer (as it doesn't make conjunctions, only adds the neighbouring features which match the regex). addNeighboringFeatureConjunctions is supposed to subsume the earlier addNeighboringFeatures method, but the behaviour of the two of them has diverged (I added a comment noting some of this divergence), so the new addNeighboringFeaturesFast follows addNeighboringFeatureConjunctions to preserve compatibility with existing trained models. addNeighboringFeatures should probably be deprecated, it has no usages inside of factorie.

This looks good to me. I support deprecation of addNeighboringFeatures.

Can we then just remove it, and rename addNeighboringFeaturesFast to take its place?

On Oct 28, 2015, at 4:12 PM, Emma Strubell<EMAIL_ADDRESS>wrote:
This looks good to me. I support deprecation of addNeighboringFeatures.
—
Reply to this email directly or view it on GitHub https://github.com/factorie/factorie/pull/338#issuecomment-151976526.

Sure. I try and avoid changing the semantics of methods when I make these patches to ensure I don't break anyone else's code. I can swap the old one out if you want.

I have a commit which renames the method and removes the old one if you want me to push that?

@Craigacp go ahead and rename/remove

Done.

:+1:


MSL: Support OpPtrEqual, OpPtrNotEqual, and OpPtrDiff.

MSL: Support OpPtrEqual, OpPtrNotEqual, and OpPtrDiff.

Add CompilerMSL::emit_binary_ptr_op() and to_ptr_expression() to emit binary pointer op. Compare matrix addresses without automatic transpose() conversion, to avoid error taking address of temporary copy.
Add Compiler::add_active_interface_variable() to also track active interface vars in the entry point for SPIR-V 1.4 and above.
For OpPtrAccessChain that ends in array element, use Element as offset to existing index, otherwise it will access into array dimension that doesn't exist.
Dereference pointer function call arguments. Ultimately, this dereferencing is actually backwards, and in future, we should aim to properly support passing pointer variables between functions, but such a refactoring was beyond the scope here.
Use [] to declare array of pointers, as array<T*> is not supported in MSL.
Add unit test shaders.

This passes all 29 associated CTS unit tests in MoltenVK.
Implements part of #2004.

@cdavis5e Please review too.
@HansKristian-Work Can you add @cdavis5e as a named contributor to this repo, so they can be tagged for review requests, please?

@cdavis5e Please review too.
@HansKristian-Work Can you add @cdavis5e as a named contributor to this repo, so they can be tagged for review requests, please?

I don't seem to have permission to do that. You could send a mail to the webmaster I think to resolve this.

@cdavis5e Please review too.
@HansKristian-Work Can you add @cdavis5e as a named contributor to this repo, so they can be tagged for review requests, please?

I don't seem to have permission to do that. You could send a mail to the webmaster I think to resolve this.

@KhronosWebservices @outofcontrol James...can you add @cdavis5e as a named contributor to this repo so they can be requested for code reviews, please, and thanks?

@billhollings, @cdavis5e  has been invited.

@billhollings, @cdavis5e has been invited.

Thanks!


TSC.EXE and Node TSC order folders differently

It appears that tsc.exe and nodejs tsc differ in the folder ordering.
tsc.exe is ordering folders descending (Z-A), While the nodejs tsc orders folders ascending(A-Z)
TypeScript Version:  2.4.1
On the attached project
TscOrder.zip
using the tsc.exe
"C:\Program Files (x86)\Microsoft SDKs\TypeScript\2.4\tsc.exe" --project tsconfig.json  --listFiles
I get as response
./c/a.ts
./c/b.ts
./c/c.ts
./b/a.ts
./b/b.ts
./b/c.ts
./a/a.ts
./a/b.ts
./a/c.ts

while using tsc nodejs version
tsc --project tsconfig.json  --listFiles
I get this, as response
./a/a.ts
./a/b.ts
./a/c.ts
./b/a.ts
./b/b.ts
./b/c.ts
./c/a.ts
./c/b.ts
./c/c.ts

Both are the same version 2.4.1
Expected behavior:
ordering folders ascending (A-Z)
Actual behavior:
ordering folders is descending (Z-A)

I see the same behavior. The difference likely stems from that, IIRC, the NodeJS version uses a third party package to perform the globbing.
If your code depends on this behavior you should fix that.

The NodeJS version works just fine. The TSC.EXE version has the problem. IIRC TSC.EXE is based on Chakra.
I could fix this if

I could build a fixed TSC.EXE, but I didn't found anywhere instructions on how I can do that
or
I could configure VS 2017 to use the NodeJS version, but again I could find anything how I can do that. Perhaps is not possible.

Just checked with TSC.EXE version 2.5 RC and the problem remains :(
What makes the files to order normally (ascending), but the directories in descending order is a big mystery.
The last working version of TSC.EXE is 2.1

I still say that any application which depends on this ordering is very questionably designed.

@aluanhaddad That is probably right. But having from the same source two different outputs, using the same version of the compiler, is more questionable.
I wonder what kind of design will be recommended when I want a file to be placed last, without having a long list of references, that you will need to update each time when a file is added, renamed or split

Is there an actual difference in behavior when compiling, or just when displaying the list of files?

Produces different output since it processes files in different order.
(if you have the --out switch, which merges the output to one file)
That has the immediate effect of different errors ie "Class ..something.. used before it's declaration"
and has many side effects, ie initialization functions running in different order, which may not throw a run-time error, but produce different behaviour

Is there an actual difference in behavior when compiling, or just when displaying the list of files?

the order of input files is what decides the output order with using --out and for checking use before declaration.

Thanks, for confirming. I think I have a fix, but I'll check with @minestarks to verify my C++ is fine.

I merged the PR into our internal repo, so this should show in the nightlies soon.

Just checked with TSC.EXE version 2.6 RC and the problem remains :(

@panost  source control is hard... my change didn't make it into the release branch. :(


OpenAPI 3.1 to Swagger 2.0 conversion

I could deduce that in the upcoming version, we will be able to convert OpenAPI 3 specs to 2, but didn't specifically see 3.1.
Will 3.1 to 2.0 be possible? Obviously, some things can't be converted from 3 to 2, but that's acceptable for my use case.
Context: We have a very detailed 3.1 spec and want to use it to develop a custom connector for Logic Apps/Power Automate.
Unfortunately, the custom connector editor only accepts Swagger 2.0.

Hi @Swimburger,
We're working on release a V2 that will support 3.1 -> 2.0 downcasting.

@MaggieKimani1 any timeline when this will be available?

Hi @JedWe,
Please refer to the ongoing conversation here: https://github.com/microsoft/OpenAPI.NET/issues/795

closing as duplicate


Redesign / Refactor / Cleanup

This redesign / refactor / cleanup will include:

Namespacing of util.rb so that it doesn't pollute Object
Removal of global vars
Cleanup of trailing whitespace
No superfluous return statements
Various ruby idiom updates
Begin test suite

PR to follow once completed :).

Didn't remove the global vars yet, but that could be later.


Android: onUserLocationChange keeps occurring even when user location has not changed and not with type Location

Summary
<MapView
    style={styles.map}
    region={this.state.region}
    onRegionChangeComplete={this.onRegionChange}
    onUserLocationChange={this.onUserLocationChange}
    showsUserLocation={true}
>

this.onUserLocationChange event keeps occurring and never stops even user location is not changed. This only happens on Android, iOS triggers the event only once.
Tried all available values for userLocationPriority. Even though with 'passive', events stopped, events were still triggered 6 or 7 times back to back in the beginning. Rest of the option triggers events every couple of seconds.
I see update interval options userLocationUpdateInterval and userLocationFastestInterval. But shouldn't this event only trigger when user location changes?
The event should receive parameter of type Location as per docs. But received is not of type Location. Type mismatch applies to both iOS and Android.
Environment info
react-native info output:
System:
    OS: macOS Mojave 10.14.6
    CPU: (4) x64 Intel(R) Core(TM) i7-5557U CPU @ 3.10GHz
    Memory: 25.05 MB / 8.00 GB
    Shell: 3.2.57 - /bin/bash
  Binaries:
    Node: 11.14.0 - /usr/local/bin/node
    npm: 6.9.0 - /usr/local/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
  SDKs:
    iOS SDK:
      Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
    Android SDK:
      API Levels: 23, 24, 25, 26, 27, 28, 29
      Build Tools: 23.0.1, 24.0.2, 25.0.1, 25.0.2, 25.0.3, 26.0.1, 26.0.2, 28.0.3, 29.0.3
      System Images: android-25 | Google APIs Intel x86 Atom_64, android-26 | Android TV Intel x86 Atom, android-26 | Google APIs Intel x86 Atom, android-26 | Google APIs Intel x86 Atom_64, android-27 | Google APIs Intel x86 Atom, android-28 | Google APIs Intel x86 Atom, android-P | Google APIs Intel x86 Atom
  IDEs:
    Android Studio: 3.4 AI-183.6<IP_ADDRESS>92245
    Xcode: 11.3.1/11C504 - /usr/bin/xcodebuild
  npmPackages:
    react: ^16.9.0 => 16.9.0
    react-native: ^0.61.5 => 0.61.5
  npmGlobalPackages:
    react-native-cli: 2.0.1

Library version: 0.27.1
Steps to reproduce

Assign onUserLocationChange event with MapView as shown above
print coordinate when event is called
Notice that even though user location has not changed event keeps occurring.

Describe what you expected to happen:
onUserLocationChange event should be called only once when user location changes. This behavior is intact on iOS but on Android, it's not.
The event should receive parameter of type Location as per docs. But received is not of type Location.
Reproducible sample code
<MapView
    style={styles.map}
    region={this.state.region}
    onRegionChangeComplete={this.onRegionChange}
    onUserLocationChange={this.onUserLocationChange}
    showsUserLocation={true}
>

onUserLocationChange = (coordinate) => {
    console.log(coordinate);
}

I'm having the exact same issue, is there a solution/workaround to this?

same issue faced by me. any solution ?

You can get the user location by looking at event.nativeEvent.coordinate
const handleUserLocationChange = ({ nativeEvent }) => {
    console.log(nativeEvent.coordinate);
  };

(Found by checking typescript definitions)

@abumalick that’s correct. It’s also
Listed in the readme here https://github.com/react-native-maps/react-native-maps/blob/master/docs/mapview.md#events

any fix for this? Even to this date this is still a bug

I have same issue, interested to know the possible solution.

Hi, I have a workaround for the above issue, we can have a custom icon on the map. After clicking on the custom icon trigger a method. In the method get the current location coordinates using Geolocation and fire animateToRegion and pass the coordinates.
Step 1: Declare mapRef
const mapRef = useRef(null);

Step 2: Assing mapRef to MapView
<View style={{flex: 1}>
<MapView
       ref={mapRef}
       ...........
 />
<TouchableOpacity
  onPress={currentLocationHandler}>
  <MaterialIcons
    name="my-location"
    size={24}
    color="black"
  />
</TouchableOpacity>
</View>

Step 3: currentLocationHandler method
const currentLocationHandler = () => {
<!-- Get location coordinates using GeoLocation npm package -->
    let currentRegion = {
      latitude: latitude from geolocation,
      longitude: longitude from geolocation,
      latitudeDelta: 0.001,
      longitudeDelta: 0.001,
    };
    mapRef.current.animateToRegion(currentRegion, 3 * 1000);
}

I hope above steps help you to solve the issue

why this issue is closed? I do have the same problem:

my logcat:
02-06 17:46:32.353 27164 27189 W BugleRcsEngine: [73] ayqe.x: Unable to send diagnostic log 02-06 17:46:32.356 27164 27182 I BugleRcsEngine: [66] aymr.run: SystemBindingManager: SystemBinding enabled: true 02-06 17:46:32.357 27164 27182 I BugleRcsEngine: [66] ayms.b: System Binding updated 02-06 17:46:32.358 27164 27194 W BugleRcsEngine: [78] ayqe.x: Unable to send diagnostic log 02-06 17:46:32.362 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:32.362 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:32.362 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:32.362 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:32.362 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:32.362 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:32.362 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>308, 02-06 17:46:32.362 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:32.364 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.368 27164 27195 W BugleAction: Null config in BugleSharedPrefs 02-06 17:46:32.368 27164 27195 W BugleAction: Failed to get msisdn from Bugle 02-06 17:46:32.368 27164 27195 I Bugle   : RcsAvailabilityUtilForProvisioningEngineV2: updateAvailabilityAsync, hint: NO_HINT 02-06 17:46:32.368 27164 27195 I BugleRcsProvisioning: RcsAvailabilityUpdaterLocal: updateAvailabilityAsync: scheduling updateRcsAvailability call, hint: NO_HINT, enableWelcomePopupWithoutGoogleTos: false, reshowSuccessPopup: false 02-06 17:46:32.369 27164 27190 I BugleDataModel: TransactionManagerImpl: tx:  ParticipantsColumnSetter#updatePhenotypeColumn  started 02-06 17:46:32.369 27164 27195 W BugleAction: Failed to get msisdn from RcsProfileService 02-06 17:46:32.369 27164 27195 W BugleAction: boqd: Jibe SDK Service not available. Is the Jibe SDK service running? Did you call connect() and wait for the notification before calling an API function? 02-06 17:46:32.369 27164 27195 W BugleAction:   at bopv.b(PG:2) 02-06 17:46:32.369 27164 27195 W BugleAction:   at com.google.android.rcs.client.profile.RcsProfileService.g(PG:1) 02-06 17:46:32.369 27164 27195 W BugleAction:   at com.google.android.rcs.client.profile.RcsProfileService.getMsisdn(PG:1) 02-06 17:46:32.369 27164 27195 W BugleAction:   at aiqz.aD(PG:16) 02-06 17:46:32.369 27164 27195 W BugleAction:   at aiqz.M(PG:2) 02-06 17:46:32.369 27164 27195 W BugleAction:   at agzr.g(PG:1) 02-06 17:46:32.369 27164 27195 W BugleAction:   at agzn.call(Unknown Source:2) 02-06 17:46:32.369 27164 27195 W BugleAction:   at brjm.a(PG:1) 02-06 17:46:32.369 27164 27195 W BugleAction:   at brhr.a(PG:2) 02-06 17:46:32.369 27164 27195 W BugleAction:   at bwaw.a(PG:1) 02-06 17:46:32.369 27164 27195 W BugleAction:   at bvzz.run(PG:4) 02-06 17:46:32.369 27164 27195 W BugleAction:   at bway.run(PG:1) 02-06 17:46:32.369 27164 27195 W BugleAction:   at bfab.run(PG:1) 02-06 17:46:32.369 27164 27195 W BugleAction:   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137) 02-06 17:46:32.369 27164 27195 W BugleAction:   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637) 02-06 17:46:32.369 27164 27195 W BugleAction:   at bezh.run(PG:2) 02-06 17:46:32.369 27164 27195 W BugleAction:   at bezn.run(PG:4) 02-06 17:46:32.369 27164 27195 W BugleAction:   at java.lang.Thread.run(Thread.java:1012) 02-06 17:46:32.370 27164 27195 W Bugle   : SubscriptionMetadataUtils get: invalid subId = -2 02-06 17:46:32.370 27164 27195 I Bugle   : TelephonyManagerFactory: Returning per-subscription TelephonyManager (>= N) subscription{id:-1} 02-06 17:46:32.376 27164 27195 I BugleBackup: Registering preference change listener for "buglesub_-1". 02-06 17:46:32.376 27164 27195 W Bugle   : SubscriptionMetadataUtils get: invalid subId = -2 02-06 17:46:32.381 27164 27196 I BugleRcsEngine: [80] baha.g: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:897] 02-06 17:46:32.384 27164 27195 W Bugle   : SubscriptionMetadataUtils get: invalid subId = -2 02-06 17:46:32.385 27164 27195 W Bugle   : SubscriptionUtilsAsOfLMR1: getSelfRawNumber: subInfo is null for subscription{id:-1} 02-06 17:46:32.395 27164 27190 I BugleDataModel: TransactionManagerImpl: tx:  ParticipantsColumnSetter#updatePhenotypeColumn  ended 02-06 17:46:32.395 27164 27195 I BugleBackup: Registering preference change listener for "buglesub_1". 02-06 17:46:32.397 27164 27194 W BugleRcsEngine: [78] azxd.b: [SR]: Single Registration is disabled. Skipping Single Registration capability check for subId: 1, OS.isAtLeastS:[true], enableSingleRegistrationProvisioning:[false] 02-06 17:46:32.397 27164 27190 D CompatibilityChangeReporter: Compat change id reported: 160794467; UID 10103; state: ENABLED 02-06 17:46:32.397 27164 27189 W BugleRcsEngine: [73] azxd.b: [SR]: Single Registration is disabled. Skipping Single Registration capability check for subId: 1, OS.isAtLeastS:[true], enableSingleRegistrationProvisioning:[false] 02-06 17:46:32.397 27164 27189 I BugleRcsEngine: [73] baha.d: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:897] 02-06 17:46:32.398 27164 27189 I BugleRcsProvisioning: RcsAvailabilityUpdaterLocal: RcsAvailability configuration availability and enabled status: simId: redacted-pii:sim_id[chars:20,last3:897], SipConnectionType: DUAL_REG, isConfigurationAvailableAndEnabled: false 02-06 17:46:32.398 27164 27189 I BugleRcsProvisioning: RcsAvailabilityUpdaterLocal: updateRcsAvailability, currentAvailability: 1, newAvailability: 9, hint: NO_HINT 02-06 17:46:32.398 27164 27194 I BugleRcsEngine: [78] baha.d: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:897] 02-06 17:46:32.398 27164 27194 I BugleRcsProvisioning: RcsAvailabilityUpdaterLocal: RcsAvailability configuration availability and enabled status: simId: redacted-pii:sim_id[chars:20,last3:897], SipConnectionType: DUAL_REG, isConfigurationAvailableAndEnabled: false 02-06 17:46:32.398 27164 27194 I BugleRcsProvisioning: RcsAvailabilityUpdaterLocal: updateRcsAvailability, currentAvailability: 1, newAvailability: 9, hint: NO_HINT 02-06 17:46:32.399 27164 27195 W BugleAction: No default number, returning empty msisdn 02-06 17:46:32.399 27164 27196 I BugleTransport: isChatAvailable: RcsAvailability is DISABLED_SIM_ABSENT (RCS is disabled due to SIM absent) 02-06 17:46:32.400 27164 27189 I BugleRcsEngine: [73] baha.g: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:897] 02-06 17:46:32.400 27164 27189 I BugleTransport: isChatAvailable: false, enabledTransport: 1 02-06 17:46:32.412 27164 27189 I RcsClientLib: Connecting RcsEngineLifecycleService 02-06 17:46:32.413 27164 27189 I RcsClientLib: shouldUseCarrierServicesJibeService: true, CarrierServices rcs service found: true 02-06 17:46:32.415 27164 27164 I RcsClientLib: com.google.android.rcs.client.lifecycle.RcsEngineLifecycleService connected 02-06 17:46:32.426 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.430  1384  1399 I CarrierServices: [33] RcsEngineImpl.triggerStopRcsStack: Stop Registration for redacted-pii:phone_number[chars:0,last2:] 02-06 17:46:32.431  1384  2599 I CarrierServices: [51] dnz.handleMessage: RCS engine STOP RCS stack 02-06 17:46:32.435 27164 27209 I RcsClientLib: Disconnecting RcsEngineLifecycleService 02-06 17:46:32.448  1384  2599 I CarrierServices: [51] dkk.f: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:897] 02-06 17:46:32.461 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.499 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.539 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.577 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.611 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.665 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.700 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.735 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.790 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.823 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.874 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.910 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.943 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:32.997 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.034 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.068 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.106 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.157 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.194 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.228 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.281 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.281 25883 26506 D EGL_emulation: app_time_stats: avg=39.84ms min=18.69ms max=59.53ms count=26 02-06 17:46:33.291 25883 26229 D EGL_emulation: app_time_stats: avg=39.62ms min=16.86ms max=67.15ms count=26 02-06 17:46:33.296   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:33.313 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:33.313 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:33.313 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:33.313 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:33.313 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:33.313 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:33.313 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>296, 02-06 17:46:33.313 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:33.316 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.331 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.365 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.399 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.448 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.482 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.515 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.566 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.600 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.649 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.683 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.732 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.765 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.816 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.848 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.900 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.927 24525 24643 W SystemServiceRegistry: No service published for: wifirtt 02-06 17:46:33.934 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:33.984 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.017 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.067 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.101 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.126 25883 27212 D TrafficStats: tagSocket(244) with statsTag=0xffffffff, statsUid=-1 02-06 17:46:34.129   367 27213 I resolv  : GetAddrInfoHandler::run: {101<PHONE_NUMBER>41 10163 0} 02-06 17:46:34.150 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.183 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.233 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.265 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.296   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:34.302 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:34.302 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:34.302 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:34.302 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:34.302 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:34.302 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:34.302 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>296, 02-06 17:46:34.302 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:34.306 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.306 25883 26506 D EGL_emulation: app_time_stats: avg=39.40ms min=15.63ms max=51.43ms count=26 02-06 17:46:34.323 25883 26229 D EGL_emulation: app_time_stats: avg=39.70ms min=16.85ms max=51.56ms count=26 02-06 17:46:34.353 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.387 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.438 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.469 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.521 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.552 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.602 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.637 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.687 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.715   575  1107 D WifiNl80211Manager: Scan result ready event 02-06 17:46:34.715   575  1107 D WifiNative: Scan result ready event 02-06 17:46:34.723 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.749   575  1107 E LocationManagerService: non-monotonic location received from passive provider 02-06 17:46:34.756   575   592 E GnssUtilsJni: IGnss injectLocation() failed. 02-06 17:46:34.769 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.803 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.854 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.886 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.919 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:34.971 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.004 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.053 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.087 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.137 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.169 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.219 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.253 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.300   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:35.303 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.310 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:35.310 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:35.310 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:35.310 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:35.310 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:35.310 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:35.310 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>299, 02-06 17:46:35.310 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:35.312 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.313 25883 26506 D EGL_emulation: app_time_stats: avg=40.26ms min=9.07ms max=52.81ms count=25 02-06 17:46:35.325 25883 26229 D EGL_emulation: app_time_stats: avg=40.05ms min=13.74ms max=67.50ms count=25 02-06 17:46:35.344 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.377 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.426 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.459 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.509 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.543 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.595 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.625 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.674 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.707 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.756 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.790 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.840 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.873 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.975 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:35.979 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.027 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.060 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.109 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.135 25883 27214 D TrafficStats: tagSocket(299) with statsTag=0xffffffff, statsUid=-1 02-06 17:46:36.136   367 27215 I resolv  : GetAddrInfoHandler::run: {101<PHONE_NUMBER>41 10163 0} 02-06 17:46:36.142 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.190 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.223 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.272 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.304   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:36.308 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.323 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:36.323 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:36.323 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:36.323 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:36.323 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:36.323 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:36.323 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>304, 02-06 17:46:36.323 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:36.325 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.326 25883 26506 D EGL_emulation: app_time_stats: avg=40.46ms min=4.08ms max=101.34ms count=25 02-06 17:46:36.340 25883 26229 D EGL_emulation: app_time_stats: avg=42.30ms min=16.73ms max=111.56ms count=24 02-06 17:46:36.356 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.390 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.440 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.473 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.522 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.557 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.607 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.640 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.691 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.723 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.772 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.805 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.856 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.892 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.922 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:36.972 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.004 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.054 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.102 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.139 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.171 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.221 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.255 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.305 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.310   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:37.324 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:37.324 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:37.324 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:37.324 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:37.324 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:37.324 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:37.324 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>308, 02-06 17:46:37.324 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:37.325 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.357 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.358 25883 26506 D EGL_emulation: app_time_stats: avg=39.70ms min=18.90ms max=51.00ms count=26 02-06 17:46:37.373 25883 26229 D EGL_emulation: app_time_stats: avg=39.72ms min=15.97ms max=51.23ms count=26 02-06 17:46:37.390 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.439 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.473 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.522 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.557 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.606 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.639 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.672 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.722 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.755 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.805 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.838 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.889 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.925 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:37.970 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.004 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.056 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.090 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.139 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.140 25883 27216 D TrafficStats: tagSocket(375) with statsTag=0xffffffff, statsUid=-1 02-06 17:46:38.140   367 27217 I resolv  : GetAddrInfoHandler::run: {101<PHONE_NUMBER>41 10163 0} 02-06 17:46:38.173 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.224 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.257 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.307 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.309   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:38.324 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:38.324 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:38.324 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:38.324 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:38.324 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:38.324 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:38.324 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>308, 02-06 17:46:38.324 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:38.325 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.358 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.373 25883 26229 D EGL_emulation: app_time_stats: avg=39.99ms min=14.45ms max=52.06ms count=25 02-06 17:46:38.390 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.390 25883 26506 D EGL_emulation: app_time_stats: avg=39.67ms min=18.70ms max=51.34ms count=26 02-06 17:46:38.439 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.472 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.479 27164 27192 W Bugle   : TextClassifierLibManagerImpl: Reclaiming memory at level: 80 02-06 17:46:38.521 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.554 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.602 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.636 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.685 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.721 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.768 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.802 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.822   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:38.822   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:38.822   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:38.822   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:38.839 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.886 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.920 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:38.936 24525 24643 W SystemServiceRegistry: No service published for: wifirtt 02-06 17:46:38.970 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.030 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.051 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.100 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.105 27164 27203 V ClearcutMetricXmitter: Transmission is done. 02-06 17:46:39.105 27164 27178 V ClearcutMetricXmitter: Transmission is done. 02-06 17:46:39.134 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.183 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.217 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.268 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.300 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.330   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:39.350 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.392 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.393 25883 26506 D EGL_emulation: app_time_stats: avg=41.77ms min=20.98ms max=59.98ms count=24 02-06 17:46:39.407 25883 26229 D EGL_emulation: app_time_stats: avg=41.33ms min=14.97ms max=68.28ms count=25 02-06 17:46:39.409 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.414 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:39.414 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:39.414 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:39.414 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:39.414 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:39.414 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:39.414 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>326, 02-06 17:46:39.414 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:39.464 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.490 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.524 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.572 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.605 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.657 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.693 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.724   575  1107 D WifiNl80211Manager: Scan result ready event 02-06 17:46:39.724   575  1107 D WifiNative: Scan result ready event 02-06 17:46:39.738 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.771 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.775   575  1107 E LocationManagerService: non-monotonic location received from passive provider 02-06 17:46:39.780   575   592 E GnssUtilsJni: IGnss injectLocation() failed. 02-06 17:46:39.820 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.853 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.903 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.937 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:39.986 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.019 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.053 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.102 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.135 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.151 25883 27220 D TrafficStats: tagSocket(123) with statsTag=0xffffffff, statsUid=-1 02-06 17:46:40.161   367 27221 I resolv  : GetAddrInfoHandler::run: {101<PHONE_NUMBER>41 10163 0} 02-06 17:46:40.185 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.219 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.269 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.301 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.311   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:40.317 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:40.317 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:40.317 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:40.317 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:40.317 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:40.317 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:40.317 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>310, 02-06 17:46:40.317 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:40.318 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.351 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.384 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.435 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.436 25883 26506 D EGL_emulation: app_time_stats: avg=38.62ms min=16.19ms max=52.05ms count=27 02-06 17:46:40.440 25883 26229 D EGL_emulation: app_time_stats: avg=38.26ms min=13.63ms max=53.65ms count=27 02-06 17:46:40.456   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:40.457   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:40.457   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:40.457   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:40.457   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:40.470 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.504 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.555 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.589 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.639 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.675 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.721 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.753 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.803 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.836 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.886 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.927 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:40.969 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.003 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.052 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.087 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.137 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.171 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.204 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.253 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.302 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.313   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:41.318 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:41.318 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:41.318 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:41.318 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:41.318 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:41.318 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:41.318 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>312, 02-06 17:46:41.318 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:41.321 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.338 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.371 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.423 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.456 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.457 25883 26506 D EGL_emulation: app_time_stats: avg=39.26ms min=17.13ms max=51.51ms count=26 02-06 17:46:41.473 25883 26229 D EGL_emulation: app_time_stats: avg=39.70ms min=16.97ms max=67.99ms count=26 02-06 17:46:41.504 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.540 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.588 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.605   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:41.605   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:41.620 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.670 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.703 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.752 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.789 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.834 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.868 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.918 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:41.952 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.003 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.036 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.085 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.118 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.169 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.177   367 27222 I resolv  : GetAddrInfoHandler::run: {101<PHONE_NUMBER>41 10163 0} 02-06 17:46:42.201 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.235 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.284 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.321   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:42.329 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:42.329 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:42.329 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:42.329 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:42.329 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:42.329 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:42.329 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>320, 02-06 17:46:42.329 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:42.331 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.344 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.361 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.410 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.443 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.493 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.493 25883 26506 D EGL_emulation: app_time_stats: avg=39.83ms min=12.47ms max=50.91ms count=26 02-06 17:46:42.507 25883 26229 D EGL_emulation: app_time_stats: avg=39.76ms min=15.60ms max=53.34ms count=26 02-06 17:46:42.525 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.574 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.607 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.656 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.690 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.740 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.772 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.824 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.857 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.907 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.940 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:42.989 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.025 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.074 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.105 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.168 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.189 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.237 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.269 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.319 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.322   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:43.332 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:43.332 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:43.332 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:43.332 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:43.332 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:43.332 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:43.332 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>321, 02-06 17:46:43.332 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:43.334 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.349 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.399 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.432 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.483 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.517 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.518 25883 26506 D EGL_emulation: app_time_stats: avg=39.40ms min=14.05ms max=62.90ms count=26 02-06 17:46:43.524 25883 26229 D EGL_emulation: app_time_stats: avg=39.10ms min=16.36ms max=52.40ms count=26 02-06 17:46:43.567 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.588   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:43.588   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:43.588   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:43.588   414   495 W TransactionTracing: Could not find layer id -1 02-06 17:46:43.600 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.634 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.684 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.717 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.766 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.799 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.849 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.899 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.933 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:43.960 24525 24643 W SystemServiceRegistry: No service published for: wifirtt 02-06 17:46:43.965 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.015 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.048 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.098 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.131 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.180   367 27223 I resolv  : GetAddrInfoHandler::run: {101<PHONE_NUMBER>41 10163 0} 02-06 17:46:44.182 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.216 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.266 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.298 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.323   575   592 W AlarmManager: Unrecognized alarm listener com.android.server.location.gnss.GnssLocationProvider$$ExternalSyntheticLambda10@415ff10 02-06 17:46:44.329 25883 26350 I ReactNativeJS: '✅ ~  e?.nativeEvent?.coordinate', { heading: 90, 02-06 17:46:44.329 25883 26350 I ReactNativeJS:   speed: 0, 02-06 17:46:44.329 25883 26350 I ReactNativeJS:   isFromMockProvider: false, 02-06 17:46:44.329 25883 26350 I ReactNativeJS:   altitude: 0, 02-06 17:46:44.329 25883 26350 I ReactNativeJS:   longitude: -3.7175367, 02-06 17:46:44.329 25883 26350 I ReactNativeJS:   accuracy: 5, 02-06 17:46:44.329 25883 26350 I ReactNativeJS:   timestamp:<PHONE_NUMBER>322, 02-06 17:46:44.329 25883 26350 I ReactNativeJS:   latitude: 37.577955 } 02-06 17:46:44.330 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.347 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.397 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.430 25883 26514 I Counters: exceeded sample count in FrameTime 02-06 17:46:44.481 25883 26514 I Counters: exceeded sample count in FrameTime

focusMapOnUserLocation it's being triggered even when the user location not changed
const focusMapOnUserLocation = () => {
try {
mapRef.current?.animateToRegion({
latitude: geoPosition.latitude,
longitude: geoPosition.longitude,
latitudeDelta: 1,
longitudeDelta: 1,
}, 2000);
console.log('focusMapOnUserLocation')
} catch (e) {
console.log(e);
}
}
<MapView
                ref={mapRef}
                provider={PROVIDER_GOOGLE}
                style={styles.map}
                scrollDuringRotateOrZoomEnabled={false}
                zoomEnabled={false}
                zoomTapEnabled={false}
                zoomControlEnabled={false}
                pitchEnabled={false}
                rotateEnabled={false}
                scrollEnabled={false}
                showsBuildings={true}
                loadingEnabled={true}
                showsUserLocation={true}
                region={geoPosition}
                // onUserLocationChange={() => {
                //     focusMapOnUserLocation();
                // }}

            />


usage

in which case we need this? thanks

Hi @masterchen,
This library is a completely optional addon to MQTTnet (i.e. it is never required).  You would WANT to use this if:

Your primary use case is validating/processing the MQTT messages on your server
Your server is not primarily sending data to clients via MQTT
You appreciate encapsulating your message processing logic in controllers in a way similar to AspNetCore and WebAPI

You can do everything that this addon does directly by using MQTTnet delegates yourself, but I created this addon because I like the organization that Controllers provide as your logic grows.


Ansible failing to work on fresh Pi install

Issue..
Running  ansible-galaxy collection install -r requirements.yml returns no response...
Then running  ansible-playbook main.yml returns:
ERROR! no action detected in task. This often indicates a misspelled module name, or incorrect module path.
The error appears to have been in '/home/pi/Downloads/internet-pi-master/main.yml': line 6, column 7, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
pre_tasks:
- name: Load configuration.
^ here

remove "ansible.builtin." from all the yml files

@bartemyev-inx - That fix is not guaranteed to work with this or future versions of the playbook.
The problem is likely that you're running an outdated version of Ansible. Check with ansible --version—you need to have at least Ansible 2.9 (I installed Ansible 4.0 with pip3 install ansible).


Something is wrong with the paths, may it be due to using a SDD with Jetson Xavier NX?

Something is wrong with the paths, may it be due to using a SDD with Jetson Xavier NX?
I run the docker and it works, but to run the imagenet I have to add the path of the files:
./imagenet.py ../../data/images/jellyfish.jpg ../../data/images/test/output_0.jpg
But then I thried the posenet and, even with the full path, or even adding the network it doesn't work:
root@shemesu-desktop:/jetson-inference/python/examples# ./posenet.py "../../data/images/humans_*.jpg" ../../data/images/test/pose_humans_%i.jpg
poseNet -- loading pose estimation model from:
-- model        networks/Pose-ResNet18-Body/pose_resnet18_body.onnx
-- topology     networks/Pose-ResNet18-Body/human_pose.json
-- colors       networks/Pose-ResNet18-Body/colors.txt
-- input_blob   'input'
-- output_cmap  'cmap'
-- output_paf   'paf'
-- threshold    0.150000
-- batch_size   1
[TRT]    poseNet -- failed to load topology json from 'networks/Pose-ResNet18-Body/human_pose.json'
Segmentation fault (core dumped)
OR
root@shemesu-desktop:/jetson-inference/python/examples# ./posenet.py --network="resnet18-body" "../../data/images/humans_*.jpg" ../../data/images/test/pose_humans_%i.jpg
poseNet -- loading pose estimation model from:
-- model        networks/Pose-ResNet18-Body/pose_resnet18_body.onnx
-- topology     networks/Pose-ResNet18-Body/human_pose.json
-- colors       networks/Pose-ResNet18-Body/colors.txt
-- input_blob   'input'
-- output_cmap  'cmap'
-- output_paf   'paf'
-- threshold    0.150000
-- batch_size   1
[TRT]    poseNet -- failed to load topology json from 'networks/Pose-ResNet18-Body/human_pose.json'
Segmentation fault (core dumped)
I'm running it in L4T 32.5.1 in a Jetson Xavier NX with SDD drive.
Thanks,

Hmm... is the SSD formatted as NTFS/FAT as opposed to ext3/ext4?   If so, that may explain why the symbolic links aren't working for you.


Added unit-testing for legacy

I've added unit-testing for sop/legacy module.

I have not tried to run, but this looks pretty good to me, definitely very good for the first tests! Thank you @afshinmessiah!


Enable users to connect via Matrix

That would be really great...

Another great issue @pshirshov :)
To enhance overall experience, we should support Matrix.
Regarding how to connect Matrix to an Airy instance, we can look at the Matrix documentation.
We can also look at the Matrix general GitHub page to understand how to successfully offer users the ability to connect with this source.


feat: add conjunction search if text filter

created 2 PR, one for 6 branch, one for next branch #1151

@paveljanda can you look at it please?


Unit in Kwh instead of meter, points, steps

System Health details
System Information

version
core-2023.11.3

installation_type
Home Assistant OS

dev
false

hassio
true

docker
true

user
root

virtualenv
false

python_version
3.11.6

os_name
Linux

os_version
6.1.59

arch
aarch64

timezone
Europe/Paris

config_dir
/config

Home Assistant Community Store

GitHub API
ok

GitHub Content
ok

GitHub Web
ok

GitHub API Calls Remaining
5000

Installed Version
1.33.0

Stage
running

Available Repositories
1348

Downloaded Repositories
29

Home Assistant Cloud

logged_in
false

can_reach_cert_server
ok

can_reach_cloud_auth
ok

can_reach_cloud
ok

Home Assistant Supervisor

host_os
Home Assistant OS 11.1

update_channel
stable

supervisor_version
supervisor-2023.11.3

agent_version
1.6.0

docker_version
24.0.6

disk_total
27.9 GB

disk_used
15.4 GB

healthy
true

supported
true

board
odroid-n2

supervisor_api
ok

version_api
ok

installed_addons
Samba share (12.1.0), Samba Backup (5.2.0), Grafana (9.1.1), Mosquitto broker (6.4.0), Terminal & SSH (9.8.1), Spotify Connect (0.12.6), Studio Code Server (5.14.2), ESPHome (2023.11.4), Network UPS Tools (0.12.2), Z-Wave JS (0.4.1), Wmbusmeters (W-MBus to MQTT) (1.12.0), Piper (1.4.0), Music Assistant BETA (2.0.0b75), Zigbee2MQTT (1.33.2-1), Whisper (1.0.0), openWakeWord (1.8.2), ZeroTier One (0.17.3), MariaDB (2.6.1)

Dashboards

dashboards
1

resources
18

views
22

mode
storage

Recorder

oldest_recorder_run
November 22, 2023 at 20:05

current_recorder_run
November 25, 2023 at 16:55

estimated_db_size
967.42 MiB

database_engine
mysql

database_version
10.6.12

Spotify

api_endpoint_reachable
ok

Checklist

[X] I have enabled debug logging for my installation.
[X] I have filled out the issue template to the best of my ability.
[X] This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
[X] This issue is not a duplicate issue of currently previous issues..

Describe the issue
The card displays wrong unit for the data:

steps in kWh
Distance in kWh
heart point in kWh
calories in kWh
active minutes in kWh

Any idea what must be changed ?
There is no posibilty to modify at entity level.
Regards
Reproduction steps

...
d
Debug logs
d

Diagnostics dump
No response

Hi @Merangle, I can't replicate this issue with the latest version. What version are you on? That also doesn't look like the stock HA device information page. Could you send a screenshot of that page as well please?

hello
here are the requested screenshots
Regards
Le dim. 26 nov. 2023 à 12:16, YorkshireIoT @.***> a
écrit :

Hi @Merangle https://github.com/Merangle, I can't replicate this issue
with the latest version. What version are you on? That also doesn't look
like the stock HA device information page. Could you send a screenshot of
that page as well please?
—
Reply to this email directly, view it on GitHub
https://github.com/YorkshireIoT/ha-google-fit/issues/142#issuecomment-1826755429,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEUYG2XKUNPXC4SFWBS7GQ3YGMQHZAVCNFSM6AAAAAA72WJVTGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRWG42TKNBSHE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Closing this issue down due to lack of information. Please re-open if it's still a problem


Ability to easily update Pygame and Pygame Gui and  make snakewm 'debuggable' within snakeware

As I am developing an app for snakeware I realised that my app was not compatible with the version of pygame gui that snakware uses. (My bad!) The app is several thousand lines of code already. If there was a way to update pygame and pygamegui in sankeware that would get this app into snakeware.
I have successfully built a snakeware ISO with the required pygame gui version (0.5.7) but snakewm won't load when I boot into the iso.
I am a noob when it comes to build root but if there is a way to debug snakewm within snakeware that would be a good first step.
Thanks.

If there was a way to update pygame and pygamegui in sankeware that
would get this app into snakeware.

Pygame is included by upstream Buildroot, so Updating Buildroot will update
Pygame as well. For Pygame-Gui, the Buildroot package is at
snakeware/external/package/python-pygame-gui1. The .mk file contains the
metadata and download link, while the .hash file contains the md5 and sha256
hashes.
You can get all that info from https://pypi.org/pypi/pygame_gui/json, but you'll
need a JSON parser to deal with the data. If you use Firefox it automatically
detects JSON and provides a neat interface to search through it. Otherwise, try
using jq2.
The data you're looking for is under releases["0.5.7"]

I have successfully built a snakeware ISO with the required pygame
gui version (0.5.7) but snakewm won't load when I boot into the iso.

This is probably something else. If you can send what you did to me (via
something like git format-patch), I could take a look, but I don't have a
snakeware dev env set up right now, so that'll take an hour or two.

I am a noob when it comes to build root but if there is a way to
debug snakewm within snakeware that would be a good first step.

A clean way to debug snakeware would definitely be nice. I'm not entirely sure
how that could be done, but maybe we could add a debug compile flag we can pass
to buildroot to make it redirect all Python text output to a file. (Or a serial
port to view via Qemu's virtual serial support)

Thanks for your help. I've been in touch with users named 'admicos' and 'Turtle1331' on Discord. Admicos showed me how to run python files using "os.system('sh')" command then running "python3 filename.py" to execute the app. This allowed me to open my app in snakeware and when it crashed it threw me back into a console. Real great way to help we move forwards.
Through this method I realised pygamegui 0.5.7 needs pygame 1.9.4 to run. This was becoming quite a task for me so I started re-writing parts of my code to work under pygamegui 0.5.6. This way I am able to test my app in snakeware with great result. This is just a temporary solution for now.
I hope to open a pull request and upload what I'm doing but I have no idea how to properly use github so that will take a while. As for biuldroot, that too is beyond me for now.
I am working on a text editor for snakeware and it is going great. I have a 'proof of concept' version ready with features that I disabled as I am re-writing the app to incorporate pygamegui 0.5.6 needs and window resizing. As I complete more of the re-writing I will release it somehow. For now I will upload it to the Discord chat under snakeware-dev. In that chat I  also uploaded videos of features that work under pygamegui 0.5.7 (without window resizing) if anyone want to see for themselves.
Thanks agian for the help.

It might be possible to do this with a package manager, but snakeware is... unique. I may be able to write it myself, which would be fun, but debugging would be harder.


Ensure build.sh getFirstTagFromOpenJDKGitRepo works in the workspace root git directory

Some of the sbin/build.sh functions had specific dependency on being the the correct directory, but also didn't locate correctly to getJdkVersion().
Signed-off-by: Andrew Leonard<EMAIL_ADDRESS>

https://ci.adoptopenjdk.net/view/work-in-progress/job/andrew-jdk8u-mac-x64-hotspot/9/console
https://ci.adoptopenjdk.net/view/work-in-progress/job/andrew-jdk8u-linux-arm-hotspot/7/

run tests

Tester failed due to an error generating the config
02:49:24  checking for cpio... /bin/cpio
02:49:24  checking build system type... Invalid configuration `have': machine `have' not recognized
02:49:24  configure: error: /bin/bash /home/adoptopenjdk/workspace/build-scripts-pr-tester/build-test/jobs/jdk8u/jdk8u-linux-x64-openj9/workspace/build/src/common/autoconf/build-aux/config.sub have failed
02:49:24  configure exiting with result code 1
02:49:24  No configurations found for /home/adoptopenjdk/workspace/build-scripts-pr-tester

@andrew-m-leonard If this is a WIP can you mark it as a draft PR so no-one accidentally tries to merge it?

Clean arm32 build: https://ci.adoptopenjdk.net/view/work-in-progress/job/andrew-jdk8u-linux-arm-hotspot/10/
Grinder sanity.openjdk: https://ci.adoptopenjdk.net/view/Test_grinder/job/Grinder/5001/

Mac: https://ci.adoptopenjdk.net/view/work-in-progress/job/andrew-jdk8u-mac-x64-hotspot/13/console
Grinder: https://ci.adoptopenjdk.net/view/Test_grinder/job/Grinder/5003/

arm JDK8 looking good tonight. Nice work!!!


Make it clearer that CF is needed

Loads of CF-related errors in the logs, make sure that its clearer that you need to wait for it.

fixed in #17a53c4


The error does not return if the file name does not end on json, yaml etc.

configLoader := multiconfig.NewWithPath("1111")
err := configLoader.Load(c)

On a second thought I'm removing the bug label.
This is somewhat API issue here - NewWithPath does not return errors so you can't simply fail here if unexpected extension is detected (moreover the ifs could be improved to test for ".toml" instead of "toml" and so on).
Way of fixing this would be adding ErrorLoader and registering it when no valid extension is found, but it would change the behaviour the function currently has. And from the looks I think the silent failure is by design. 🤔

Hi, yes this is not a bug, where we are creating a default loader with the given filename with a best effort. If someone needs more granular work, could use MultiLoader and get the errors.
You can see more real-world usages here


Cannot create standard registry user

Problem description
Since upgrading our Guardian instance to v2.20.1 (released on 10 January 2024) I cannot set up a standard registry user - whether it be the built-in "demo" StandardRegistry or a new one.
Step to reproduce
Steps to reproduce the behavior:

On the Guardian login screen go to "Demo Admin Panel" and click "Standard Registry".
Enter an operator ID and operator key or click "Generate" to generate a new ID-key pair, then click Next.
Enter valid values in all four fields (geography, law, tags and ISIC) and click "Connect" (Screenshot 1).
See the error that appears when the process reaches the "Publish VC Document" point (Screenshot 2). The exact text of the error is given in Screenshot 3.

Expected behavior
One should be able to create a standard registry user.
Screenshots
Screenshot 1:

Screenshot 2:

Screenshot 3:

Subscribing to this issue since I'm also having the same problem.

Hey Rita. Envision suggested to me a few hours ago that I should create another w3 space and then regenerate the IPFS_STORAGE_KEY and IPFS_STORAGE_PROOF. I did it and it solved the problem. Super weird, though - my previous space, key and proof were all perfectly valid and functioning.

Hi @AlexIvanHoward, thanks for reaching out. That's weird, my IPFS provider is set to local instead of web3storage; I can try and switch it to web3storage and see if it makes any difference, I guess.


Add Uganda holidays

Add all Ugandan Public Holidays.

PHPStan is failing, could you take a look?

Thanks, but already merged a PR for Uganda


⚠ TorrentLeech has degraded performance

In 487249a, TorrentLeech ($TL) experienced degraded performance:

HTTP code: 200
Response time: 7158 ms

Resolved: TorrentLeech performance has improved in 653708c.


The speakers' performance vary from checkpoints

Some speakers perform well in epoch A, while others perform well in epoch B, and the speaker set is not overlapped. How to handle this problem?
I proposed two potential solutsion:

merge the parameters of the speaker with best performance into one model;
load multiple checkpoints for this project, each one corresponds to different speakers.

As for now, I tend to use the second solution, since I'm note sure about the detailed parameters inside the model.

Now, I found out this improvement may be the outfitting of the existing speakers and does not extend the generalization ability.


Fail to import library

I installed bootstrap-sass by npm.
$ npm install bootstrap-sass
Then, put the import on my sass file.
@import 'bootstrap';
When I run the compile task this import fails. I have the bootstrap-sass folder in the node-modules one. Should I use a relative path to it? or copy the bootstrap folder from node-modules to my sass folder?.

Sass @import isn't as clever as npm's require(). You'll need to give sass the relative path to bootstrap-sass within your node_modules folder. Something like:
@import "../node_modules/bootstrap-sass/assets/stylesheets/_bootstrap";.

If MHanslo's suggestion didn't solve your problem, let us know.


The version changed too much

How to understand the relationship of versions between jinzhu/gorm and go-gorm/gorm?

jinzhu/gorm is v1, go-gorm/gorm is v2.
According to: https://github.com/go-gorm/gorm/issues/2886#issuecomment-640548687


get_location functionality

One of the main things I'm interested in when working with lipd objects is the location of records. Currently its possible to get at this info in a somewhat hacky way via the get_timeseries method call, but this returns lots of extraneous info as well. It would be nice to have a specific method (get_location or get_position or something) to pull all the latitude/longitude information from a lipd object into a dataframe alongside the associated dataset name.

Will be done in #45

Done in c882a5f