fix(Admin Translations) Add translated fields

Replaces hardcoded string in the AA with I18n and adds the french translations.

Pull request checklist
Please check if your PR fulfills the following requirements:

[x] Make sure you are requesting to pull a topic/feature/bugfix branch (right side). Don't request your master!
[x] Make sure you are making a pull request against the develop branch (left side). Also you should start your branch off our develop.
[x] Check the commit's or even all commits' message styles matches our requested structure.
[x] Check your code additions will fail neither code linting checks nor unit test.

Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

Issue Number: N/A
What is the new behavior?

Does this introduce a breaking change?

[ ] Yes
[x] No

Other information

@tsubik there are still a bunch of models to translate, as well as enums and places with hardcoded strings (still didn't check how it work with globalized attributes).
I'll try to finish it during the week.

@tsubik there are still a few places missing: some JS, some partials and some weird spots that I may have missed.
But let's merge it and ask feedback from Sophie. There shouldn't be much more left, and I'll address it in another PR (also, I'm going crazy doing this :P)

Oh.. and there's also the translations of the enums. Any suggestion on how to do that?

For enums if we need to add translations we could add simple PORO models for each enum (example here https://github.com/Vizzuality/heco-invest/blob/develop/backend/app/models/concerns/enum_model.rb, https://github.com/Vizzuality/heco-invest/blob/develop/backend/app/models/open_call_status.rb) to encapsulate some logic. In locale files I already see one enum translated https://github.com/wri/fti_api/blob/develop/config/locales/en.yml#L37


Segfault compiling e2e/regression/lowering_config.mlir test on Windows

iree-compile --iree-input-type=mhlo --iree-hal-target-backends=llvm-cpu tests/e2e/regression/lowering_config.mlir crashes with a segfault on Windows.
Spotted when adding a Windows CI build: https://github.com/iree-org/iree/actions/runs/3397642741/jobs/5649990603, and then reproduced locally.
When run under a debugger, I'm not seeing a breakpoint get hit, or a stacktrace, just this error logged:
LLVM ERROR: IO failure on output stream: invalid argument
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.

The last pass to run is // -----// IR Dump After mlir::iree_compiler::IREE::VM::OrdinalAllocationPass (iree-vm-ordinal-allocation) //----- //: https://gist.github.com/ScottTodd/d971ab4e10fa73ebedbc35789921f67b
So maybe crashing in here: https://github.com/iree-org/iree/blob/e64babedb0bb323d5ff29c3b0b535ae0eff677a9/compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeModuleTarget.cpp#L228-L239

I'm seeing this code path: https://github.com/llvm/llvm-project/blob/129177eaf0ecb202a6f44ab8d23ad51fe00d15f6/llvm/lib/Support/raw_ostream.cpp#L685-L700
Are there unicode characters in the output that we don't generate in other tests?

weiiird, can you find where we open that path in a debugger and see what the memory contents are? maybe a missing nul terminator on the string?

Tried that, didn't see much interesting :/

Lowering config is just supposed to help with the compilation. So if there is no issue with executable translation here then I dont think there is a problem with lowering config as such... Happy to help more (feel free to re-assign), but I dont have a windows build....

This appears to be fixed now, at least on my local machine. I'll send a PR that re-enables the test on CI.


Add programmatic API documentation & some syntax highlighting

Added documentation to the best of my ability of the LiveScript programmatic API. I wouldn't be surprised if I missed a few things.
Brief description of other changes:

My editor automatically removes trailing whitespace. That accounts for the majority of changed (not added/removed) lines.
I corrected a few of the categories under "Usage" for clarity.
I added syntax highlighting to a single <pre> containing HTML, starting at line 259.

If you want a different format for the type annotations/API documentation, I can change it easily enough. Also, please tell me if I made any mistakes/omissions in the API.
This is the first in a planned series of PRs I want to contribute addressing various things in the website.
@gkz, could you take a look at this?

You can add ?w=1 to the URL to ignore whitespace-only changes.

@quarterto Thanks for the tip ;)

Looks pretty nice! Seems to me the "nullable" question mark should be on the type side (ex :: String?).
I do however think we've reached the limits of a "single page doc"...

Thanks!


WIP: NodeStageVolume: return OK if same device already mounted

CSI spec requires StageVolume to be idempotent, so we have
to check for same volume mount and capability match and
return OK if already mounted.
Resolves: #386

let's note that green CI status does not mean this change is verified.
I believe changed code part is not covered by current testing performed by CI (i.e. sanity and e2e).
Some other (temporary) changes are needed to force driver to go into changed code path.

I tried to test that code path, using modified NodeStageVolume so that after mounting, k8s should retry mounting, but attempts failed:

when I mount and return error instead of OK, k8s ignores error value and goes on with Publish
when I mount and call long sleep in function, simulating missing reply, k8s waits for some time and then goes on with Publish
Finally, I gave up on that idea and used another hack: I inserted code mounting same directory before running code we try to test. This at least gives possibility to see how the new code detects existing mount. That seems to work, and result is "return OK" in the middle just as planned.

Change of this PR went into #393 where work continues combined with other changes.
Closing this PR


[EFI-74] Added Azure Key Vault options

Added Azure Key Vault options

Thinking we should have seperate doc on configuring Azure like we do for Hashicorp? As knowing to create a elliptic curve key with the SECP256K1 is very important. Otherwise it's just not going to work.


maybe the DJL_VERSION in the build.gradle & pom.xml  of examples should be updated

Description
(A clear and concise description of what the bug is.)
Expected Behavior
(what's the expected behavior?)
Error Message
(Paste the complete error message, including stack trace.)
How to Reproduce?
(If you developed your own code, please provide a short script that reproduces the error. For existing examples, please provide link.)
Steps to reproduce
(Paste the commands you ran that produced the error.)

What have you tried to solve it?

Environment Info
Please run the command ./gradlew debugEnv from the root directory of DJL (if necessary, clone DJL first). It will output information about your system, environment, and installation that can help us debug your issue. Paste the output of the command below:
PASTE OUTPUT HERE

DJL_VERSION  is updated to 0.6.0-SNAPSHOT:
https://github.com/awslabs/djl/blob/master/examples/build.gradle#L13


Add check for localStorage writeability

Issue:
Running the library as a third-party (eg. inside an iFrame) when third-party cookies are disabled (as is starting to be default setting in browsers) or cookies disabled, also disables access to localStorage. This can be worked around by providing a custom storage in configuration, but it still breaks because the check for setting saveNoncesInLocalStorage breaks at typeof window['localStorage'] !== 'undefined' due to access issues.
Fix:
Do the check inside try/catch.

@robke007 Could this also be merged?


Memory limit of KB exceeded for buffered query

Hi,
Maybe this is not really an issue rather a question.
On regular time we need to pull big data sets out of the db. But then we run against  "Memory limit of 40960 KB exceeded for buffered query"
What is the better way to solve this? I could just increase the size of the memory limit. But are their any other tricks, so i can avoid that. for example take out in sections.
Also keeping in mind performance wise.
Thans

Which driver are using PDO_SQLSRV or SQLSRV? Would be great if you can post a repo of the scenario you have in mind.

At this moment i am using SQLSRV with the query option of SQLSRV_CURSOR_CLIENT_BUFFERED
I have two general scenarios at this moment, one is to export the data via a client portal site to excel.
Other one is to display the result set on screen depending on search criteria, essential one big HTML table.

@jansor with SQLSRV_CURSOR_CLIENT_BUFFERED you must increase the buffer size, the other option is to stream data, please see https://docs.microsoft.com/en-us/sql/connect/php/retrieving-data-as-a-stream-using-the-sqlsrv-driver and https://docs.microsoft.com/en-us/sql/connect/php/sqlsrv-send-stream-data

@jansor do you need any further assistance?


Add Dependency Group Support

Description
pipenv and poetry now support dependency grouping. this should be added to this template
Possible Solution
No response
Additional context
No response
Additional context
No response

closed by #235


images/

on google colab it's telling me that i cannot have "/" in the title

just create folder with name "images", the author added "/" just to describe it as a folder

it's with the slash in the code. i tried removing it from the folder's name, from the code and from both. it didn't help

the whole path has to be inserted. that's what i was missing


I don't know why I can't leave comments on other places in the code

You may be running into github's limit on the number of lines above or below an actual change that's being made in the PR.

I applied your suggestions @jkrick. Good call on np.nanargmin. The HST logic is different but there were similar problems in the docstrings (probably from me copy/pasting in #356).
I think this is ready but I'll wait a bit to see if @afaisst wants to review.

Rebased on top of main to pull in recent changes.

Changes approved by @afaisst. Merging now.


Incorrectly triggered linting rule about the setting/task not invoked inside the task definition

steps
sbt version: 1.2.8 (regression from 1.1.6)
problem
The following code in build.sbt fails to load:
TaskKey[Unit]("check") := {
  sys.error("error")
  ()
}

The error message is not very helpful:
error: The setting/task `X / y` is not being invoked inside the task definition.

problem:  Settings/tasks missing `.value` are not initialized and their dependency is not registered.
solution: Replace `X / y` by `(X / y).value` or remove it if unused.

  sys.error("error")
           ^

expectation
Build load successfully
notes

Removing () fixes the problem.
Inserting if (true) before the sys.error call, makes it load successfully too.
sbt 1.3.0-RC2 prints the same error message the first time the project is loaded, but then loads it successfully.

@rtimush Thanks for the report!


Simplify user test

Removing testing is never ideal but I don't think these checks are important and I have opened issue #1336 to track reimplementing these checks in the future.

@Gundersanne Thanks for the review. I added a comment and linked to the issue.

This 8-4 test failure is unrelated to the fix here. I will fix this failure in a separate PR.


Input size error on unet

Hi,
I have implemented a unet-like architecture on a ZCU104 and it works great when using input resolution which are powers of two (2^n). In a previous issue I was told that the only constraint should be that the input resolution had to be a multiple of 16, so does anyone know what might be wrong? The problem arises when:
inputTensors = runner.get_input_tensors()

returns 256x256 while the input in this case is 192x192, so the reshape fails.
imageRun[j, ...] = img[(count + j) % n_of_images].reshape(input_ndim[1:])
ValueError: cannot reshape array of size 36864 into shape (256,256,1)

The total number of elements on the img[(count + j) % n_of_images] & input_ndim[1:] should be the same while applying the reshape, you need to use resize instead of reshape.
But according to your description, you should more hope that the input size of the network becomes 192x192. This requires regenerating a new xmodel with the corresponding size. You need to use the corresponding tool to generate a new xmodel whose input size is 192x192.

Thank you for answering.
Using resize instead of reshape is not possible as you can see from the error below:
imageRun[j, ...] = img[(count + j) % n_of_images].resize(input_ndim[1:])
ValueError: cannot resize this array: it does not own its data

I tried regenerating by running the full pipeline again, but I still run into the same error as mentioned above.

Hi, @jonassundseth
To circumvent your issue you can call resize from numpy (not as an attribute of a ndarray) which will detect this issue and copy the data automatically:
np.resize(img[(count + j) % n_of_images], input_ndim[1:])
For details, you can find on stackoverflow. But this way will change the size of your input

Hi @jonassundseth
Since we haven't received your reply for a long time, we assume you have solved this issue and I'm going to close it. If you still have any questions, please feel free to reopen it. Thank you very much.


Add auth-token to apiClient to allow updating it seamlessly

Summary

For OH clients to continue with OpenhouseCatalog session after renewed token has been fetched without disrupting the existing ApiClient Connections, we need to provide a way where the auth-token can be added/updated to ApiClient without recreating the ApiClients.
Hence, auth-token is now added to ApiClient default headers which is read by ApiClient and added to request header for every client call. Since, Api Client interface allows to update the default header, it can be set on same instance without disrupting any running sessions.
Change log:

Remove header setting in webClient
Add Method to set auth-token as bearer token header in API client
Add interface in catalog to support updating the token in ApiClient default header

Changes

[ ] Client-facing API Changes
[x] Internal API Changes
[ ] Bug Fixes
[x] New Features
[ ] Performance Improvements
[ ] Code Style
[ ] Refactoring
[ ] Documentation
[ ] Tests

For all the boxes checked, please include additional details of the changes made in this pull request.
Testing Done

Tested in local docker env and was able to perform basic crud operation using OH catalog with the jar containing changes.
This certifies that the auth-token in ApiClient default header is taking effect.
Need to test further: When auth-token is updated in ApiClient, it should work seamlessly. Test needs to be done Azkaban.

[x] Manually Tested on local docker setup. Please include commands ran, and their output.
[ ] Added new tests for the changes made.
[ ] Updated existing tests to reflect the changes made.
[ ] No tests added or updated. Please explain why. If unsure, please feel free to ask for help.
[ ] Some other form of testing like staging or soak time in production. Please explain.

For all the boxes checked, include a detailed description of the testing done for the changes made in this pull request.
Additional Information

[ ] Breaking Changes
[ ] Deprecations
[ ] Large PR broken into smaller PRs, and PR plan linked in the description.

For all the boxes checked, include additional details of the changes made in this pull request.

"Hence, auth-token is now added to ApiClient default headers which is read by ApiClient and added to request header for every client call."
Can you rephrase this sentence in the description? Explain in logical terms what the code change does, not necessarily implementation details.


tests: error_hook divide by 0 with non-optimized code

This change makes the test tests/ztest/error_hook/ pass on stm32 mcu based M0+
nucleo_g071rb
Fixes https://github.com/zephyrproject-rtos/zephyr/issues/35540
Signed-off-by: Francois Ramu<EMAIL_ADDRESS>

log of this part:
START - test_catch_fatal_error
case type is 0
E: ***** HARD FAULT *****
E: r0/a1:  0x00000000  r1/a2:  0x00000000  r2/a3:  0x00000000
E: r3/a4:  0x200005e8 r12/ip:  0x0800b6f1 r14/lr:  0x080009e5
E:  xpsr:  0x41000000
E: Faulting instruction address (r15/pc): 0x080007c8
E: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
E: Current thread: 0x20000100 (unknown)
Caught system error -- reason 0 1
Fatal error expected as part of test case.
case type is 1
E: ***** HARD FAULT *****
E: r0/a1:  0x00000000  r1/a2:  0x00000000  r2/a3:  0x00000000
E: r3/a4:  0x20001bd4 r12/ip:  0x0800b6f1 r14/lr:  0x0800b657
E:  xpsr:  0x00000000
E: Faulting instruction address (r15/pc): 0x20001bd4
E: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
E: Current thread: 0x20000100 (unknown)
Caught system error -- reason 0 1
Fatal error expected as part of test case.
case type is 2
E: ***** HARD FAULT *****
E: r0/a1:  0x00000000  r1/a2:  0x00000000  r2/a3:  0x00000000
E: r3/a4:  0x20003000 r12/ip:  0x0800b6f1 r14/lr:  0x08000a01
E:  xpsr:  0x41000000
E: Faulting instruction address (r15/pc): 0x080007f8
E: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
E: Current thread: 0x20000100 (unknown)
Caught system error -- reason 0 1
Fatal error expected as part of test case.
case type is 3
E: r0/a1:  0x00000004  r1/a2:  0x00000000  r2/a3:  0x00000000
E: r3/a4:  0x00000000 r12/ip:  0x0800b6f1 r14/lr:  0x0800b6d3
E:  xpsr:  0x01000000
E: Faulting instruction address (r15/pc): 0x08000a0e
E: >>> ZEPHYR FATAL ERROR 3: Kernel oops on CPU 0
E: Current thread: 0x20000100 (unknown)
Caught system error -- reason 3 1
Fatal error expected as part of test case.
case type is 4
E: r0/a1:  0x00000003  r1/a2:  0x00000000  r2/a3:  0x00000000
E: r3/a4:  0x00000000 r12/ip:  0x0800b6f1 r14/lr:  0x0800b6d3
E:  xpsr:  0x01000000
E: Faulting instruction address (r15/pc): 0x08000a0e
E: >>> ZEPHYR FATAL ERROR 3: Kernel oops on CPU 0
E: Current thread: 0x20000100 (unknown)
Caught system error -- reason 3 1
Fatal error expected as part of test case.
 PASS - test_catch_fatal_error in 0.178 seconds

Hi @FRASTM ,  here is the log after I tested it in k64f_fdrm(cortex-m4):
before applying:
DEBUG   - DEVICE: case type is 2
DEBUG   - DEVICE: E: ***** USAGE FAULT *****
DEBUG   - DEVICE: E:   Division by zero
DEBUG   - DEVICE: E: r0/a1:  0x00000000  r1/a2:  0x00000000  r2/a3:  0x00000001
DEBUG   - DEVICE: E: r3/a4:  0x00000000 r12/ip:  0x0000ab15 r14/lr:  0x00000a3f
DEBUG   - DEVICE: E:  xpsr:  0x61000000
DEBUG   - DEVICE: E: Faulting instruction address (r15/pc): 0x0000085a
DEBUG   - DEVICE: E: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
DEBUG   - DEVICE: E: Current thread: 0x200000a0 (unknown)
DEBUG   - DEVICE: Caught system error -- reason 0 1
DEBUG   - DEVICE: Fatal error expected as part of test case.

after applying:
DEBUG   - DEVICE: case type is 2
DEBUG   - DEVICE: E: ***** BUS FAULT *****
DEBUG   - DEVICE: E:   Precise data bus error
DEBUG   - DEVICE: E:   BFAR Address: 0x20002b80
DEBUG   - DEVICE: E:   NXP MPU error, port 3
DEBUG   - DEVICE: E:     Mode: User, Data Address: 0x20002b80
DEBUG   - DEVICE: E:     Type: Read, Master: 0, Regions: 0x8100
DEBUG   - DEVICE: E: r0/a1:  0x00000000  r1/a2:  0x00000000  r2/a3:  0x00000000
DEBUG   - DEVICE: E: r3/a4:  0x20002b80 r12/ip:  0x0000ab1d r14/lr:  0x00000a47
DEBUG   - DEVICE: E:  xpsr:  0x21000000
DEBUG   - DEVICE: E: Faulting instruction address (r15/pc): 0x00000850
DEBUG   - DEVICE: E: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
DEBUG   - DEVICE: E: Current thread: 0x200000a0 (unknown)
DEBUG   - DEVICE: Caught system error -- reason 0 1
DEBUG   - DEVICE: Fatal error expected as part of test case.

It seems like it might change something in other ARM-cortex soc which using "sdiv" instead of  __divsi3 function.
I think this change is good, but still have little concern about affecting the test result of other boards.
Do you think would it be better to adding a #ifdef to apply this only for nucleo_g071rb or M0+ series?  Thank you!

yes I agree to restrain this to the M0+ soc series CPU_CORTEX_M0PLUS
The question is should this be combined with SOC_FAMILY_STM32 ?

Change for M0+ stm32 devices and limiting the impact on the testcase application.

No change applied on the cortex M0, as the test did not failed

Thanks @FRASTM.
I can also only test on a STM32G0.
The test now passes, but I don't think the fault happens in the division, but already before.
For me it happens at instruction 0x080007fe.
`080007FA   LDR            R3, =b.1                      ; [PC, #40] [0x08000824] =0x200003E8
080007FC   MOVS           R2, #0
080007FE   STR            R2, [R3, #0]`
The test also passes, due to the fault, if the division is replaced by an addition.

As an alternative the test passes without this modifications if I add the following sketch in arch/arm/core/aarch32/cortex_m/fault.c:
#if defined(CONFIG_CPU_CORTEX_M0PLUS)
void __aeabi_idiv0(void)
{
	printk("Div zero\n");
	k_panic();
}
#endif /* CONFIG_CPU_CORTEX_M0PLUS */

But I am not sure whether it is preferable to cause a fault or return 0.

So I think there are two possibilities to resolve this:

Accept that this targets don't cause a fault and instead return 0:
Add CONFIG_CPU_CORTEX_M0PLUS (and probably CONFIG_CPU_CORTEX_M0) to targets that skip the division test.
Overwrite the __aeabi_div0 from the standard library to trigger a fault.

I think @str4t0m is right, the exception trigger is due to the access to the variable "volatile int b", although the testcase passes.
Excuse me, @FRASTM, could you please apply the solution of what @str4t0m has recommended? Both of them look better from my point of view.
Sorry, @hakehuang , thanks so much for your help with verifying this.

Test passed on nucleo_g071rb (cortexM0+) without changing the testcase itself when adding this code to the  arch/arm/core/aarch32/cortex_m/fault.c:
#if defined(CONFIG_CPU_CORTEX_M0PLUS)
void __aeabi_idiv0(void)
{
	printk("Div zero\n");
	k_panic();
}
#endif /* CONFIG_CPU_CORTEX_M0PLUS */

Hi, @FRASTM, sounds great. I suggest just skip them and make some descriptions for them.

@enjiamai, do you mean changing the arch/arm/core/aarch32/cortex_m/fault.c instead of tests/ztest/error_hook/src/main.c for the any CONFIG_CPU_CORTEX_M0PLUS ?

@enjiamai, do you mean changing the arch/arm/core/aarch32/cortex_m/fault.c instead of tests/ztest/error_hook/src/main.c for the any CONFIG_CPU_CORTEX_M0PLUS ?

I prefer to modify the testcase to skip it, like this:
diff --git a/tests/ztest/error_hook/src/main.c b/tests/ztest/error_hook/src/main.c
index f6d8e91fbf..0c0c74c284 100644
--- a/tests/ztest/error_hook/src/main.c
+++ b/tests/ztest/error_hook/src/main.c
@@ -112,7 +112,8 @@ __no_optimization static void trigger_fault_divide_zero(void)
  * test will still apply on the physical board.
  */
 #if (defined(CONFIG_SOC_SERIES_MPS2) && (CONFIG_QEMU_TARGET)) || \
-       (CONFIG_BOARD_QEMU_CORTEX_A53) || (CONFIG_SOC_QEMU_ARC)
+       (CONFIG_BOARD_QEMU_CORTEX_A53) || (CONFIG_SOC_QEMU_ARC) || \
+       (CONFIG_CPU_CORTEX_M0PLUS)
        ztest_test_skip();
 #endif
 }

I think it would be a lower risk. IMO.
Then we can check if M0+ has something like "Configurable Fault Status Register" to configure and make a change/fix after the v2.6 release. (Sorry I don't really understand ARM very much)

Sorry for bugging you, @erwango @hakehuang @ABOSTM if you have a chance to verify on other M0+ boards, thank you so much!

in NXP frdm_kw41z
*** Booting Zephyr OS build v2.6.0-rc1-202-g6f8ddc4c50b5  ***
Running test suite error_hook_tests
===================================================================
START - test_catch_fatal_error
case type is 3
E: r0/a1:  0x00000004  r1/a2:  0x0000000f  r2/a3:  0x00000000
E: r3/a4:  0x200003d8 r12/ip:  0x00000003 r14/lr:  0x00000b15
E:  xpsr:  0x21000000
E: Faulting instruction address (r15/pc): 0x00004a4c
E: >>> ZEPHYR FATAL ERROR 4: Kernel panic on CPU 0
E: Current thread: 0x20000140 (unknown)
Caught system error -- reason 4 1
Fatal error expected as part of test case.
case type is 4
E: r0/a1:  0x00000003  r1/a2:  0x0000000f  r2/a3:  0x00000000
E: r3/a4:  0x200003d8 r12/ip:  0x00000004 r14/lr:  0x00000b21
E:  xpsr:  0x21000000
E: Faulting instruction address (r15/pc): 0x00004a44
E: >>> ZEPHYR FATAL ERROR 3: Kernel oops on CPU 0
E: Current thread: 0x20000140 (unknown)
Caught system error -- reason 3 1
Fatal error expected as part of test case.
 PASS - test_catch_fatal_error in 0.69 seconds
===================================================================
START - test_catch_assert_fail
ASSERTION FAIL [a != ((void *)0)] @ ../src/main.c:41
        parameter a should not be NULL!
Caught assert failed
Assert error expected as part of test case.
 PASS - test_catch_assert_fail in 0.14 seconds
===================================================================
START - test_catch_assert_in_isr
ASSERTION FAIL [a != ((void *)0)] @ ../src/main.c:41
        parameter a should not be NULL!
Caught assert failed
Assert error expected as part of test case.
 PASS - test_catch_assert_in_isr in 0.14 seconds
===================================================================
Test suite error_hook_tests succeeded
===================================================================
PROJECT EXECUTION SUCCESSFUL

Hi, @FRASTM,  any update or idea for this? thanks!

Sorry, I do not catch what is expected as a conclusion :  Skip the test for M0+ is also possible to "PASS", of course or something else

And, by the way, skipping the test is not good; Cortex-m0+ should be supported fully. So I'd be in favor of the current solution, if it works.

Hi, @ioannisg ,  the original testcase failed is due to an excepted exception did not be triggered on M0+ based nucleo_g071rb.
I guess on this board the "trigger fault of divided by zero" might not be configured, but not very sure.
The current solution will trigger an exception but not due to "divided by zero".  That's why I suggest just skip and make some descriptions for it.

OK I see, now what you mean @enjiamai. I had a closer look now. Of course, Cortex-M baseline instruction set does not seem to have the divide instructions, so they do not have the corresponding exception either.
See: https://stackoverflow.com/questions/41856638/divide-by-zero-exception-on-m0-devices
It is up to the compiler to trigger an undefined instruction. But we should not be testing the compiler here. We should be testing Zephyr :) So I think we can just skip the test case for Cortex-M baselines. This includes Cortex-M0 and Cortex-M23. So better to use ARMV6_M_ARMV8_M_BASELINE Kconfig for this.
You can add a test case, where ARM cores explicitly insert an Undefined Instruction, and you verify the fault. But not in the test case for divide-by-zero, IMHO.

Further analysing #35540 I believe that that __aeabi_idiv is correctly called.

@str4t0m that's all compiler stuff, which we should not test, IMHO.
Strictly speaking we should not even test the hardware here :) But at least for the Cortex-M Mainline, we do set in the core initialization the DIV0 trap, so having the test here, has some value :)

@galak that's one more low-hanging fruit for the 2.6 release.

Strictly speaking we should not even test the hardware here :) But at least for the Cortex-M Mainline, we do set in the core >initialization the DIV0 trap, so having the test here, has some value :)

Excuse me, @ioannisg , one more question :)
Do you means beside skip it, we can also apply the solution of modifying the arch/arm/core/aarch32/cortex_m/fault.c like this?
#if defined(CONFIG_ARMV6_M_ARMV8_M_BASELINE) && defined(CONFIG_TEST)
void __aeabi_idiv0(void)
{
	printk("Div zero\n");
	k_panic();
}
#endif /* CONFIG_ARMV6_M_ARMV8_M_BASELINE  && CONFIG_TEST */

Thank you!

skip this case with ARMV6_M_ARMV8_M_BASELINE

It would be better if Cortex-M23 can be added to the comments, thank you.

CM32 is part of the Baseline Cortex-M, anyways.

changing comment to include cortex-M23

Commit message is not clear:

On the Cortex M0+, M0, M23 the div-by-zero is not mapped
as an exception but triggers a HardFault.

Hardfault is an exception.

It's not a dedicated exception, e.g. due to a divide-by-zero trap. Maybe add this detail in the commit body, if we're to be a bit more pedantic

I still think it is ambiguous as hardfault is an exception (as defined by ARM), even if it is not a dedicated one.

I am not sure to understand why we want to skip the test for ARMV6_M_ARMV8_M_BASELINE:
As I understand with such Arch, there is no dedicated exception, because there is no division instruction.
But I also understand that in this case Zephyr generate an Hardfault.

This depends on the compiler, not Zephyr. So I argued that we do not need to be testing this.
In theory we could have a compiler that does not generate an undefined instruction that leads to a HF.

Ok thanks for the clarification I understand you point, but it means behavior is compiler dependent !!!
That sounds weird and dangerous from application point of view.
And if no fault is generated, the consequences of retuning 0 for the div instead of fault are unpredictable and potentially harmful :-(

Ok thanks for the clarification I understand you point, but it means behavior is compiler dependent !!!
That sounds weird and dangerous from application point of view.
And if no fault is generated, the consequences of retuning 0 for the div instead of fault are unpredictable and potentially harmful :-(

I do not know the details of GCC spec about this, so it was only a wild assumption that there could be a compiler without generating Undefined Instruction. My point was that Zephyr testing suite should not be verifying the compiler behavior; we should verify the software we write.
There is nothing about the software we write, here, for Cortex-M Baseline. We rely on the compiler generating an UDF instruction.
For Mainline, it is a different story. there is an ARM configuration register bit that controls whether we catch DIV0 traps as UsgFaults or not. Therefore, the value of this test here, is to guard that we do not alter that selected configuration (so it is about "software we write").

Ok, I am not fully convinced, as even is it is compiler and not the "software we write" there is still undetermined behavior.
But I will follow the majority.

This divide_by_zero testcase at first actually generate UDF in userspace, then it was modified by adding a __no_optimization (in order to address #33403).
Maybe we can add testcases that show the behavior of both without __no_optimization and non-userspace in the future.


Pie Charts in Facts view

Some facts like architecture have a pie chart in their facts view that displays the distribution of the different values. It would be nice to have this pie chart for all facts. I still can't figure out, when a pie chart is displayed and when not.

A pie chart is displayed for a fact when the fact is in the GRAPH_FACTS configuration setting in default_settings.py
I agree that it would be nice to re-implement pie charts for all facts it would not make sense for ip address, MAC address and UUID facts as well as all the JSONified facts which we can't effectively browse through yet. Each one of them will probably be unique for each host.

Agreed, it doesn't make sense for facts that are unique for each host. But lots of other facts would be cool with pie charts, for example puppet version, operating system, ..

Those fact names simply need to be added to the GRAPH_FACTS setting in default_settings.py

The plan when we made this compromise was to be very generous with PRs adding facts to graph in default_settings.py

You can list out all the facts you want graphed in the GRAPH_FACTS setting in your default_settings.py


build

:test_tube: Add vitest config
:recycle: Change test scripts for core

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


testing

Add travisCI testing to notebooks

we can set up testing for the notebooks following: http://minrk-nbconvert.readthedocs.io/en/latest/execute_api.html

the testing is started, but there seem to be issues with numpy versions (or something!) I can run the test locally, but so far no luck on travis https://travis-ci.org/ubcgif/em_examples


improve the code style of [import group ordering]

improve the coding sytle of [import group ordering].
the better ordering:
1.the standard library
2.the third library
3.package form ourselves project
best regards

Thanks! @sayicui


Playbook Template Generator can't work with multiple versions of the az module

Tried to run the Template Generator, but I have two versions of the az.accounts module installed, cfr

The 2.3.0 was already installed by myself, the 2.7.2 was installed by the script
When running the script, I ran the following error:

I removed the old version, but it would be great if the script was updated to import the latest versions.
@sreedharande

Seems like the issue was because the old version was in my user profile. A fix would be to require an import of the latest version


FIX Changes for CMS 5 release

Issue https://github.com/silverstripe/cow/issues/227 - Modules added to recipes aren't included in changelogs for their first release
Issue https://github.com/silverstripe/cow/issues/236 - Some recipe constraints not getting updated
There are separate commits for the separate issues

Having two different changes for two different issues in one PR is a bit unwiedly in terms of our processes... which issue do I assign back to you? How could I accept one issue's changes but not the other's? etc.
I'll just live with it this time around but please try to keep the different fixes for separate issues in separate PRs in the future.

I'm okay with the changes in the first commit now

@GuySartorelli Have made updated and confirmed locally that the tagged composer.json files outputted correctly


[Feature Request] Add link from runner to request

When using runner for whole collection there is no way to move to actual request. You can see response, but can not edit request without manual search.
This is useful when you have status 400/500 and want to quick look whats wrong with request.
Thank you.

Closing this feature request as it has already been incorporated into Bruno. Also, closing your other issue as it has also been implemented into Bruno.
https://github.com/usebruno/bruno/assets/84461672/62e29c63-b8ac-4e91-b29c-0a4dcb53db69


fix: bottom bars weren't tappable with custom offset

Closes #28

Oh yes, this is correct. Sorry for my mistake in the last PR.

No worries at all, thanks for helping out


Error setting key NotificationId with value 1

Please check all of the platforms you are having the issue on (if platform is not listed, it is not supported)

[ ] iOS
[ ] Android
[ ] UWP
[ ] watchOS
[ ] tvOS
[ ] Tizen
[X ] .NET Standard

Feature Library

[ ] Core
[ ] BluetoothLE
[ ] Beacons
[ ] Locations
[ ] HTTP Transfers
[X ] Notifications
[ ] Sensors

Version of Library
Shiny.Core v<IP_ADDRESS>0
Version of OS(s) listed above with issue
iOS13.4
Steps to Reproduce

Setup ShinySetup with Notification enabled
Grant System Notification Permission
Attempt to send notification

Expected Behavior
Receive Local Device Notification
Actual Behavior
Exception: Error setting key NotificationId with value 1
Stack Trace;
at Shiny.Settings.AbstractSettings.Set[T] (System.String key, T value) [0x000b8] in d:\a\1\s\src\Shiny.Core\Settings\AbstractSettings.cs:143
at Shiny.SettingsExtensions.IncrementValue (Shiny.Settings.ISettings settings, System.String name) [0x0001f] in d:\a\1\s\src\Shiny.Core\Settings\SettingsExtensions.cs:24
at Shiny.Notifications.NotificationManager.Send (Shiny.Notifications.Notification notification) [0x00021] in d:\a\1\s\src\Shiny.Notifications\Platforms\iOS\NotificationManager.cs:163
at Shiny.Notifications.Extensions.RequestAccessAndSend (Shiny.Notifications.INotificationManager notifications, Shiny.Notifications.Notification notification) [0x0009a] in d:\a\1\s\src\Shiny.Notifications\Extensions.cs:23
at NoaTra.App.OnStart () [0x00082] in C:\Users\notauser\source\repos\NoaTra\NoaTra\NoaTra\App.xaml.cs:147
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.b__7_0 (System.Object state) [0x00000] in /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/src/Xamarin.iOS/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/AsyncMethodBuilder.cs:1021
at Foundation.NSAsyncSynchronizationContextDispatcher.Apply () [0x00000] in /Library/Frameworks/Xamarin.iOS.framework/Versions/<IP_ADDRESS>/src/Xamarin.iOS/Foundation/NSAction.cs:178
at (wrapper managed-to-native) UIKit.UIApplication.UIApplicationMain(int,string[],intptr,intptr)
at UIKit.UIApplication.Main (System.String[] args, System.IntPtr principal, System.IntPtr delegate) [0x00005] in /Library/Frameworks/Xamarin.iOS.framework/Versions/<IP_ADDRESS>/src/Xamarin.iOS/UIKit/UIApplication.cs:86
at UIKit.UIApplication.Main (System.String[] args, System.String principalClassName, System.String delegateClassName) [0x0000e] in /Library/Frameworks/Xamarin.iOS.framework/Versions/<IP_ADDRESS>/src/Xamarin.iOS/UIKit/UIApplication.cs:65
at NoaTra.iOS.Application.Main (System.String[] args) [0x00001] in C:\Users\notauser\source\repos\NoaTra\NoaTra\NoaTra.iOS\Main.cs:17

This error does not happen if I specify an Id for the Notification object. The documentation says specifying an Id is optional but it seems it bombs if you do not specify an Id. Or somehow, it is not able to write using ISettings

Please submit a reproducible sample as I'm not able to reproduce this.

Not response to inquery


Fail run llama2 on ollama0.1.8

I have same problem.
I reinstall ollama(from 0.1.3 to 0.1.8 ). But when I run ollama run llama2, it shows: Error: llama runner process has terminated
Memory: 8 GB 1600 MHz DDR3
Graphics: Intel HD Graphics 6000 1536 MB
And ~/.ollama/logs/server.log like below:

[GIN] 2023/11/08 - 18:37:15 | 200 |      27.403µs |       <IP_ADDRESS> | HEAD     "/"
[GIN] 2023/11/08 - 18:37:15 | 200 |    3.545476ms |       <IP_ADDRESS> | POST     "/api/show"
2023/11/08 18:37:15 llama.go:384: starting llama runner
2023/11/08 18:37:15 llama.go:386: error starting the external llama runner: fork/exec /var/folders/1w/bfjzbwc53hbgzsk1spq8f_5w0000gn/T/ollama1055606081/llama.cpp/ggml/build/metal/bin/ollama-runner: bad CPU type in executable
2023/11/08 18:37:15 llama.go:384: starting llama runner
2023/11/08 18:37:15 llama.go:442: waiting for llama runner to start responding
{"timestamp":1699439835,"level":"WARNING","function":"server_params_parse","line":847,"message":"Not compiled with GPU offload support, --n-gpu-layers option will be ignored. See main README.md for information on enabling GPU BLAS support","n_gpu_layers":0}
{"timestamp":1699439835,"level":"INFO","function":"main","line":1191,"message":"build info","build":1009,"commit":"9e232f0"}
{"timestamp":1699439835,"level":"INFO","function":"main","line":1196,"message":"system info","n_threads":2,"total_threads":4,"system_info":"AVX = 0 | AVX2 = 0 | AVX512 = 0 | AVX512_VBMI = 0 | AVX512_VNNI = 0 | FMA = 0 | NEON = 0 | ARM_FMA = 0 | F16C = 0 | FP16_VA = 0 | WASM_SIMD = 0 | BLAS = 1 | SSE3 = 1 | VSX = 0 | "}
llama.cpp: loading model from /Users/jialtang/.ollama/models/blobs/sha256:8daa9615cce30c259a9555b1cc250d461d1bc69980a274b44d7eda0be78076d8
llama_model_load_internal: format     = ggjt v3 (latest)
llama_model_load_internal: n_vocab    = 32000
llama_model_load_internal: n_ctx      = 2048
llama_model_load_internal: n_embd     = 4096
llama_model_load_internal: n_mult     = 256
llama_model_load_internal: n_head     = 32
llama_model_load_internal: n_head_kv  = 32
llama_model_load_internal: n_layer    = 32
llama_model_load_internal: n_rot      = 128
llama_model_load_internal: n_gqa      = 1
llama_model_load_internal: rnorm_eps  = 5.0e-06
llama_model_load_internal: n_ff       = 11008
llama_model_load_internal: freq_base  = 10000.0
llama_model_load_internal: freq_scale = 1
llama_model_load_internal: ftype      = 2 (mostly Q4_0)
llama_model_load_internal: model size = 7B
llama_model_load_internal: ggml ctx size =    0.08 MB
llama_model_load_internal: mem required  = 3615.73 MB (+ 1024.00 MB per state)
llama_new_context_with_model: kv self size  = 1024.00 MB
llama_new_context_with_model: compute buffer total size =  153.35 MB
2023/11/08 18:37:15 llama.go:399: signal: segmentation fault
2023/11/08 18:37:15 llama.go:407: error starting llama runner: llama runner process has terminated
2023/11/08 18:37:15 llama.go:473: llama runner stopped successfully

But before reinstalling I can do ollama run llama2 in ollama(0.1.3)
So how can I fix it?

I have the same issue in my macOS. Did you solve it?

@jpmcarvalho
Hi. I try to reinstall the ollama(0.1.7). It worked.

And my machine is:
Processor: IntelCorei7
Memory: 8GB
Graphic: Intel HD Graphics 6000 1536 MB

Hi folks, I'm so sorry you hit this bug on Intel Macs. This should be fixed as of 41434a7. A new release should be out early tomorrow but in the meantime you can try the prerelease version here https://github.com/jmorganca/ollama/releases/tag/v0.1.10. Again thanks for creating an issue and your patience!


Add test examples for reach-router

What:
Added some test examples for the reach-router npm package.
Why:
There currently aren't any examples on how to use react-testing-library with reach-router, and after figuring out @kentcdodds asked to have some examples added to the repo :)
How:
I used the template/testing scenarios as seen in the react-router.js examples file to set up some basic tests for react router. Basic rendering and navigation is all that was done for these examples.
Checklist:

[N/A ] Documentation
[x ] Tests
[x ] Ready to be merged
[x ] Added myself to contributors table

This is actually my first PR ever, so hopefully everything in there is good enough! Thanks for the super easy to follow "first-time contributors" guide!

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Data & type is same but not matching in metaPropertyList.go

https://github.com/AssetMantle/modules/blob/127e749d9f72167957645cea061ba269cc17757e/schema/lists/utilities/metaPropertyList_test.go#L28

fixing comparison mechanism


Can't connect with "(using password: NO)" error even though password is specified.

Which version and edition of Flyway are you using?
4.2.0
If this is not the latest version, can you reproduce the issue with the latest one as well?
(Many bugs are fixed in newer releases and upgrading will often resolve the issue)
That is the version my team is using.
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Command line.
Which database are you using (type & version)?
MySQL 8.0
Which operating system are you using?
Windows 10 x64
What did you do?
(Please include the content causing the issue, any relevant configuration settings, the SQL statement that failed (if relevant) and the command you ran.)
Conf file lines:
flyway.url=jdbc:mysql://localhost:3306/?useSSL=false
flyway.user=root
flyway.password={redacted but definitely present}
Command line:
bash sql/flyway -X -password={redacted but definitely present} -schemas=consumer_attribution_shadow -locations=filesystem:sql/sql_consumer_attribution_shadow migrate
What did you expect to see?
Not necessarily a successful connection but I expected Flyway to at least use the password it was given.
What did you see instead?
DEBUG: Java 1.8.0_171 (Oracle Corporation)
DEBUG: Windows 10 10.0 amd64
DEBUG: Loading config file: C:\Users\r624121\Documents\cmb-vbps-attribution\sql\conf\flyway.conf
DEBUG: Unable to load config file: C:\Users\r624121\flyway.conf
DEBUG: Unable to load config file: C:\Users\r624121\Documents\cmb-vbps-attribution\flyway.conf
DEBUG: Using configuration:
DEBUG: flyway.locations -> filesystem:sql/sql_consumer_attribution_shadow
DEBUG: flyway.outOfOrder -> true
DEBUG: flyway.cleanDisabled -> true
DEBUG: flyway.password -> *******************
DEBUG: flyway.placeholders.consmr_attribution_contract_cud_arn -> arn:aws:lambda:@@awsRegion:@@awsAccount:function:chp-vbps-consmr-attribution-contract-cud-@@awsEnv
DEBUG: flyway.schemas -> consumer_attribution_shadow
DEBUG: flyway.placeholders.consmr_attribution_attribution_cud_arn -> arn:aws:lambda:@@awsRegion:@@awsAccount:function:chp-vbps-consmr-attribution-attribution-cud-@@awsEnv
DEBUG: flyway.url -> jdbc:mysql://localhost:3306/?useSSL=false
DEBUG: flyway.user -> root
DEBUG: flyway.jarDirs -> C:\Users\r624121\Documents\cmb-vbps-attribution\sql\jars
DEBUG: Adding location to classpath: C:\Users\r624121\Documents\cmb-vbps-attribution\sql\drivers\mariadb-java-client-1.4.5.jar
ERROR: Unexpected error
org.flywaydb.core.internal.dbsupport.FlywaySqlException:
Unable to obtain Jdbc connection from DataSource (jdbc:mysql://localhost:3306/?useSSL=false) for user 'root': Could not connect: Access denied for user 'root'@'localhost' (using password: NO)
SQL State  : 28000
Error Code : 1045
Message    : Could not connect: Access denied for user 'root'@'localhost' (using password: NO)
    at org.flywaydb.core.internal.util.jdbc.DriverDataSource.getConnectionFromDriver(DriverDataSource.java:419)
    at org.flywaydb.core.internal.util.jdbc.DriverDataSource.getConnection(DriverDataSource.java:381)
    at org.flywaydb.core.internal.util.jdbc.JdbcUtils.openConnection(JdbcUtils.java:51)
    at org.flywaydb.core.Flyway.execute(Flyway.java:1418)
    at org.flywaydb.core.Flyway.migrate(Flyway.java:971)
    at org.flywaydb.commandline.Main.executeOperation(Main.java:148)
    at org.flywaydb.commandline.Main.main(Main.java:103)

Caused by: java.sql.SQLInvalidAuthorizationSpecException: Could not connect: Access denied for user 'root'@'localhost' (using password: NO)
at org.mariadb.jdbc.internal.util.ExceptionMapper.get(ExceptionMapper.java:121)
at org.mariadb.jdbc.internal.util.ExceptionMapper.throwException(ExceptionMapper.java:69)
at org.mariadb.jdbc.Driver.connect(Driver.java:110)
at org.flywaydb.core.internal.util.jdbc.DriverDataSource.getConnectionFromDriver(DriverDataSource.java:416)
... 6 more
Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Could not connect: Access denied for user 'root'@'localhost' (using password: NO)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.authentication(AbstractConnectProtocol.java:500)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.handleConnectionPhases(AbstractConnectProtocol.java:448)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connect(AbstractConnectProtocol.java:359)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:701)
at org.mariadb.jdbc.internal.util.Utils.retrieveProxy(Utils.java:471)
at org.mariadb.jdbc.Driver.connect(Driver.java:105)
... 7 more

Use the latest Flyway and MySQL driver versions and things will work as expected.


Update CONTRIBUTING.md - Correcting a sentence  to improve readability

Correcting sentence to make it more readable.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Correcting a sentence to improve readability


Improve logging in the adding of iterators in the AccumuloStore

There is no logging when iterators are added to scanners when retrieving elements from the Accumulo store. This makes it very hard to debug potential issues with data that is returned from queries as you can't tell what iterators were added.
Debug level logging should be added so that it is clear what iterators were added and how they were configured.

Merged into develop.


Feathers 2 is depricated, but create-nuxt-app installs it.

Hi, I went to try out nuxt w/ Feathers and noticed create-nuxt-app is using a year old version that has been depricated in the npm output:
npm WARN deprecated<EMAIL_ADDRESS>Feathers v3 is out and this module has moved to @feathersjs/configuration. See https://docs.feathersjs.com/migrating.html for more information.
npm WARN deprecated<EMAIL_ADDRESS>Feathers v3 is out and has moved to @feathersjs/feathers. See https://docs.feathersjs.com/migrating.html for more information.
npm WARN deprecated<EMAIL_ADDRESS>Feathers v3 is out and this module has moved to @feathersjs/commons. See https://docs.feathersjs.com/migrating.html for more information.

featherjs 3 template has been released in create-nuxt-app 2.4.0


Fix/SocialCardShare

Fixed The share Link of the Social Card now it redirects to /user/[slug] instead of /profile/[slug]
issue: #46

Thank you for contributing! 🚀


:beetle: Fix group filter update issue.

Description
This fixes a crash when a user loads the site, who has an old cache.
Related Issues
None
Checklist
I, the author of this PR checked the following requirements for good software quality:

[x] The code is properly formatted (I ran the formatter)
[x] The code is written with our software quality standards (I ran the linter)
[x] The code is written using our code style
[x] Extensive in source documentation has been added
[ ] Unit and/or integration tests have been added
[ ] All texts have been internationalized with at least the following languages:

[ ] English
[ ] German

[ ] I tried addressing all new accessibility problems displayed in the console and documented if they can't be fixed
[ ] I attached performance measurements to prevent performance degradation
[x] I added the changes to the next release section of the changelog

I, the reviewer checked the following things:

[x] I ran the software once and tried all new and related functionality to this PR
[x] I looked at all new and changed lines of code and commented on possible problems
[x] I read the added documentation and checked if it is understandable and clear
[ ] I checked the added tests for completeness
[ ] I checked the internationalized strings for spelling errors
[ ] I checked the performance metrics for problems or unexplained degradation
[x] I checked that the changes are noted in the changelog

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 7 (14.29%)  changed or added relevant lines in 2 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.05%) to 17.843%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

frontend/src/components/ManageGroupDialog.tsx
0
1
0.0%

frontend/src/store/DataSelectionSlice.ts
1
6
16.67%

Files with Coverage Reduction
New Missed Lines
%

frontend/src/store/DataSelectionSlice.ts
1
38.67%

Totals

Change from base Build<PHONE_NUMBER>:
-0.05%

Covered Lines:
264

Relevant Lines:
1164

💛  - Coveralls


runtime(filetype): recommended indent options for go and gdscript

Updates the ftplugin files of to use the officially recommended indentation styles for Golang and GDScript.
go
Go officially recommends using tabs over spaces, and their formatter enforces tabs for indents https://go.dev/doc/effective_go

We use tabs for indentation and gofmt emits them by default. Use spaces only if you must.

gdscript
Godot also officially recommended using tabs over spaces https://docs.godotengine.org/en/stable/tutorials/scripting/gdscript/gdscript_styleguide.html#formatting

Use Tabs instead of spaces for indentation. (editor default)

EDIT: (ftplugin maintainers have been contacted)

Did you contact the maintainers listed at the top of these files?

I wouldn't do it for gdscript even though I did it in vim-godot. It is not makefile where you have to use tabs, so I would leave it up to the end user to setup what they prefer: tabs or spaces.

I wouldn't do it for gdscript even though I did it in vim-godot. It is not makefile where you have to use tabs, so I would leave it up to the end user to setup what they prefer: tabs or spaces.

I agree that users should have their choice, they can still configure gdscript to use spaces. I'm following the precedence set by other ftplugin files such as python, zig and others.
https://github.com/vim/vim/blob/700cf8cfa1e926e2ba676203b3ad90c2c2083f1d/runtime/ftplugin/python.vim#L121-L124
https://github.com/vim/vim/blob/700cf8cfa1e926e2ba676203b3ad90c2c2083f1d/runtime/ftplugin/zig.vim#L25-L31
If the official recommendation of a language is either tabs or spaces, I think the default of an editor should be what they recommend,  or do you disagree @habamax?
For GDScript and Go, I believe that almost all users would end up using these exact settings in their configuration. I personally don't have strong opinions on tabs vs spaces or 2 vs 4 spaces, I use what the formatter defaults to or what my colleagues use -- which is why it is painful to be forced to worry about indentation settings when Vim doesn't do the expected path for me.

@dbarnett as you are the maintainer listed on go.vim, what are your thoughts on this?

If the official recommendation of a language is either tabs or spaces, I think the default of an editor should be what they recommend, or do you disagree @habamax?

Then it also should be tabstop=4. I don't mind making it "the way godot recommends it", I have setlocal noet ts=4 sw=0 in my after/ftplugin/gdscript.vim. What I am not very fond of is a recommended style variable that needs to be documented separately.

Then it also should be tabstop=4. I don't mind making it "the way godot recommends it", I have setlocal noet ts=4 sw=0 in my after/ftplugin/gdscript.vim. What I am not very fond of is a recommended style variable that needs to be documented separately.

Good point, I can add tabstop=4.  As for the variable, I can remove that too. If I add those changes would you approve this PR (for gdscript.vim)? Or are there any other issues you have with these changes?

Good point, I can add tabstop=4. As for the variable, I can remove that too. If I add those changes would you approve this PR (for gdscript.vim)? Or are there any other issues you have with these changes?

We can keep the variable I think, that is my personal dislike :).
Could you additionally create PR to https://github.com/habamax/vim-gdscript so next time I update it here it wouldn't override this change?

@zeertzjq maintainer of gdscript.vim https://github.com/vim/vim/pull/15264#issuecomment-2228127820 and gomod.vim https://github.com/vim/vim/pull/15264#discussion_r1679041055 approve. Given that the go.vim file was last updated 10 years ago, I'm not sure how likely it will be to get a reply from them. What could be done if the maintainer can't be reached?

That is why it is better to have separate PRs for different things :).

That is why it is better to have separate PRs for different things :).

Haha yep I started to realise that separate PRs for this might have been the smart decision.
I'll give it a few days, but might have to remove the go.vim changes from this PR. Still curious what can be done to update ftplugin files if the maintainer can't be reached, since I will likely open up a separate PR for the go.vim change if that happens.

Still curious what can be done to update ftplugin files if the maintainer can't be reached, since I will likely open up a separate PR for the go.vim change if that happens.

Since we seem to have approval, I'll go ahead and merge it and add a note for go runtime file then.

Great change, thank you!
I see tabstop=4 was added to gdscript, can the same be added for go as well? Or was there a reason behind not adding it?

Great change, thank you! I see tabstop=4 was added to gdscript, can the same be added for go as well? Or was there a reason behind not adding it?

The Godot editor set a precedence by having a tab size of 4 by default, so I set the options that mimic exactly what you would see in the Godot editor.
With Go there isn't much to suggest they have a preference for tab size, the official go playground has a tab size of 8. But the official 'tour of go' tutorial has a tab size of 4.

Great change, thank you! I see tabstop=4 was added to gdscript, can the same be added for go as well? Or was there a reason behind not adding it?

The Godot editor set a precedence by having a tab size of 4 by default, so I set the options that mimic exactly what you would see in the Godot editor.
With Go there isn't much to suggest they have a preference for tab size, the official go playground has a tab size of 8. But the official 'tour of go' tutorial has a tab size of 4.

Makes sense. Although I assume most people would prefer a tab size of 4 by default, we can't be sure as long as the playground has it set to 8.


pull request for e2e test at 12/26/2016 12:26:11

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


How do I get the output of open pose for dataset ambiguous?

Hello
How do I get the output of open pose for dataset ambiguous? Are they stored where I use them?

We are not providing the openpose results. Instead, you might need to run openpose on Ambiguous-HOI by your self.


[WIP] support block sparse with bf16 and dim=128

I'm trying to extends block sparse with bf16 and d-dim=128.
After a quick test, I've found some thing may not correct in the case dim=128.
Specifically, there is a diff non negligible for q_grad.
Forwad diff
Mismatched elements: 1195 / 131072 (0.912%)
Max absolute difference: 0.0004883
Max relative difference: 0.000977

q grad
Mismatched elements: 116949 / 131072 (89.2%)
Max absolute difference: 0.1819
Max relative difference: 844.

k grad
Mismatched elements: 11990 / 131072 (9.15%)
Max absolute difference: 0.0004883
Max relative difference: 0.3

v grad
None

Above result was produced by comparer standard flash-attention with sparse flash-attention with block-mask full of 1.
@tridao Can you plz give me some suggestions on this problem, thanks in advance.

Hi @tridao , can you give me some help with this problem when you available, thank you very much.
One can reproduce my result with script below,
from flash_attn.flash_blocksparse_attn_interface import convert_blockmask
from flash_attn.flash_blocksparse_attn_interface import flash_attn_cuda

import numpy as np
import torch

def run():
    shape = (1, 1024, 1, 128)
    dropout = 0.0
    scale = shape[-1] ** (-0.5)
    is_causal = False

    q = torch.randn(shape, dtype=torch.float16).to(device="cuda:0")
    q.requires_grad = True
    batch_size, seqlen, num_head, head_dim = q.shape
    qt = q.reshape((batch_size * seqlen, q.shape[2], q.shape[3]))
    cu_seqlens = torch.arange(0, (batch_size + 1) * seqlen, step=seqlen, dtype=torch.int32, device=q.device)
    blockmask = torch.full((seqlen//16, seqlen//256), 1, dtype=torch.int32).to(device="cuda:0")
    blockmask = convert_blockmask(blockmask, is_causal)

    out, lse = flash_attn_cuda.fwd_block(qt, qt, qt, cu_seqlens, cu_seqlens, blockmask, seqlen, seqlen, dropout, scale, is_causal, False, None)
    dout = torch.full_like(out, 1)
    dq = torch.empty_like(qt)
    dk = torch.empty_like(qt)
    dv = torch.empty_like(qt)
    flash_attn_cuda.bwd_block(dout, qt, qt, qt, out, lse, dq, dk, dv, cu_seqlens, cu_seqlens, blockmask, seqlen, seqlen, dropout, scale, is_causal, None)

    dout1 = torch.full_like(out, 1)
    out1 = torch.empty_like(out)
    dq1 = torch.empty_like(qt)
    dk1 = torch.empty_like(qt)
    dv1 = torch.empty_like(qt)
    lse1, _ = flash_attn_cuda.fwd(qt, qt, qt, out1, cu_seqlens, cu_seqlens, seqlen, seqlen, dropout, scale, False, False, False, 1, None)
    flash_attn_cuda.bwd(dout1, qt, qt, qt, out1, lse1, dq1, dk1, dv1, cu_seqlens, cu_seqlens, seqlen, seqlen, dropout, scale, False, is_causal, 1, None, None)

    def print_diff(a, b, name="OK"):
        print("--"*10)
        try:
            np.testing.assert_allclose(a, b)
            print(name, "OK")
        except Exception as e:
            print(name, e)

    print_diff(out.cpu(), out1.cpu(), "out")
    print_diff(dq.cpu(), dq1.cpu(), "dq")
    print_diff(dk.cpu(), dk1.cpu(), "dk")
    print_diff(dv.cpu(), dv1.cpu(), "dv")

run()

The result may looks like,
--------------------
out
Not equal to tolerance rtol=1e-07, atol=0

Mismatched elements: 653 / 131072 (0.498%)
Max absolute difference: 0.001953
Max relative difference: 0.0375
 x: array([[[-0.04132 , -0.74    , -1.903   , ...,  1.183   ,  1.513   ,
         -0.1615  ]],
...
 y: array([[[-0.04132 , -0.74    , -1.903   , ...,  1.183   ,  1.513   ,
         -0.1615  ]],
...
--------------------
dq
Not equal to tolerance rtol=1e-07, atol=0

Mismatched elements: 100766 / 131072 (76.9%)
Max absolute difference: 6.688
Max relative difference: 91.7
 x: array([[[ 8.3876e-04, -4.6158e-03, -1.2978e-02, ...,  1.0178e-02,
          1.2520e-02,  3.6573e-04]],
...
 y: array([[[ 8.378e-04, -4.616e-03, -1.298e-02, ...,  1.018e-02,
          1.252e-02,  3.660e-04]],
...
--------------------
dk
Not equal to tolerance rtol=1e-07, atol=0

Mismatched elements: 61343 / 131072 (46.8%)
Max absolute difference: 0.000557
Max relative difference: 5.45
 x: array([[[-0.0046  , -0.00811 , -0.02122 , ...,  0.009705,  0.012436,
         -0.00582 ]],
...
 y: array([[[-0.0046  , -0.00811 , -0.02122 , ...,  0.009705,  0.012436,
         -0.00582 ]],
...
--------------------
dv
Not equal to tolerance rtol=1e-07, atol=0

Mismatched elements: 128 / 131072 (0.0977%)
Max absolute difference: 0.000977
Max relative difference: 0.000949
 x: array([[[1.023 , 1.023 , 1.023 , ..., 1.023 , 1.023 , 1.023 ]],

       [[1.014 , 1.014 , 1.014 , ..., 1.014 , 1.014 , 1.014 ]],...
 y: array([[[1.023 , 1.023 , 1.023 , ..., 1.023 , 1.023 , 1.023 ]],

       [[1.014 , 1.014 , 1.014 , ..., 1.014 , 1.014 , 1.014 ]],...

It seems that there is something wrong with dq.

Thanks @kuizhiqing. For bf16 I'd expected the numerical error to be larger than fp16 (by the nature of bf16).
In this simple example, bf16 error is 8 times higher than fp16:
In [1]: import torch

In [2]: a = torch.randn(1000, device='cuda', dtype=torch.float16)

In [3]: (a + 0.3 - 0.3 - a).abs().max()
Out[3]: tensor(0.0010, device='cuda:0', dtype=torch.float16)

In [4]: b = torch.randn(1000, device='cuda', dtype=torch.bfloat16)

In [5]: (b + 0.3 - 0.3 - b).abs().max()
Out[5]: tensor(0.0078, device='cuda:0', dtype=torch.bfloat16)

I usually compare (FlashAttention in bf16 - standard attention in fp32) vs (standard attention in bf16 - standard attention in fp32).
I'm pretty busy this week (focusing oh PhD thesis) but I'll have more time after Friday to review in details.
Thanks again for your help!


Rename DOCKER.md to README.md

Renaming this file to README will show the instructions just as people enter the docker folder.

Hi @pedroleaoc , I think this is a good idea.  Did you have a reason for keeping this as a draft PR ?

Hi @pedroleaoc , I think this is a good idea. Did you have a reason for keeping this as a draft PR ?

If I remember well, I guess I just didn't want to send a PR before discussing the idea with you.


How can I get the markdown and html from the editor ?

var editor = $(".editor").ghostDown();
console.log(editor.getMarkdown());

Was this ever solved? I'm currently only able to get the original value of the editor from:
console.log(Codemirror.getValue());

It doesn't include the changes made through the editor.

So I figured out the issue that I was having and I thought I would make a quick post on how to go about this. @ricomonster had the right idea but the problem isn't that you need to instantiate a new CodeMirror object it's that you don't have access to the one that currently exists. If you put his code into the page the console log statement will just print the original value because the page edits the original CodeMirror object and your new CodeMirror object is left alone. Instead look inside the jquery.ghostdown.js file for the following
this.editor = CodeMirror.fromTextArea(this.element.find('textarea')[
    mode: 'markdown',
    tabMode: 'indent',
    lineWrapping: true
 });

This is the object that you want to have access to so you can just make this object global by putting this right after the statement:
window.theEditor = this.editor

After you add that line in you can open your js console and type:
window.theEditor.getValue()

And you will be able to get the markdown that you are looking for

@ricomonster thnks it's work for me :+1:

i get error like this

Uncaught TypeError: $(...).ghostDown is not a function(…)

@creativefull Try the suggestion by @thornycrackers

@16patsle ok thanks bro


Cannot find "no_padding" option in C# ?

Hey @SergeiAlonichau and @ankane, I'm trying to get parity with HuggingFace tokeniser from the BlingFire C# bindings:
    public int[] TestTokenise(string input_str)
    {
        string tokeniserModelPath = "D:/Models/tokenizers/gpt2.bin";
        tokenizerHandle = BlingFireUtils.LoadModel(tokeniserModelPath);
        BlingFireUtils.SetNoDummyPrefix(tokenizerHandle, false);
        Debug.Log($"About to tokenize {input_str}");
        byte[] inBytes = System.Text.Encoding.UTF8.GetBytes(input_str);
        int[] ids = new int[128];
        int outputCount = BlingFireUtils.TextToIds(tokenizerHandle, inBytes, inBytes.Length, ids, ids.Length, 0);
        Debug.Log($"Found {outputCount} tokens [{string.Join(",",ids)}]");
        return ids.Take(outputCount).ToArray();
    }

I'm getting different tokens than what @ankane had earlier:

From your discussion, I think I'd need to set no_padding to true, but I do not find this option in the C# interface. Any clue where I should look?
Originally posted by @stephane-lallee in https://github.com/microsoft/BlingFire/issues/82#issuecomment-929989834

you need to resize the ids array down to outputCount elements, see C# example: https://github.com/microsoft/BlingFire/blob/master/nuget/test/Program.cs .
        var outputCount = BlingFireUtils.TextToIds(h1, inBytes, inBytes.Length, Ids, Ids.Length, 0);
        Console.WriteLine(String.Format("return length: {0}", outputCount));
        if (outputCount >= 0)
        {
            Array.Resize(ref Ids, outputCount);
            Console.WriteLine(String.Format("return array: [{0}]", string.Join(", ", Ids)));

...
Python API's have this parameter, but not C#.

Hey @SergeiAlonichau !
Thanks for helping on this. Then the culprit is not this parameter, I thought no_padding was doing something else.
The problem is that the non-zero ids I'm getting from Transformers are different than the ones I'm getting from BlingFire:
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("gpt2")
sequence = "This is a test. Another test."
input_ids = tokenizer.encode(sequence, add_special_tokens=False)
print(input_ids)

Output --> [1212, 318, 257, 1332, 13, 6023, 1332, 13]
While from BlingFire the output I get with this code is:
var tokenizerHandle = BlingFireUtils.LoadModel("D:/Models/tokenizers/gpt2.bin");
BlingFireUtils.SetNoDummyPrefix(tokenizerHandle, false);
byte[] inBytes = System.Text.Encoding.UTF8.GetBytes(input_str);
int[] ids = new int[128];
int outputCount = BlingFireUtils.TextToIds(tokenizerHandle, inBytes, inBytes.Length, ids, ids.Length, 0);
Debug.Log($"[{string.Join(",",ids)}]");

Output --> [770, 318, 257, 1332, 13, 6023, 1332, 13, 0, 0, 0, ....]

Use this API after the model is loaded
https://github.com/microsoft/BlingFire/blob/d9d5cea9cb7f5abbe650ef348c4010dce0658043/nuget/lib/BlingFireUtils.cs#L221 to control if a special space added in front of the input or not, this corresponds to : add_prefix_space=True/False from Huggingface tokenizers.
AutoTokenizer.from_pretrained("roberta-base", add_prefix_space=True/False)


Add version output and document REVISION env var

Fixes #12.
This PR introduces an action output named version that has the newly bumped version (equal to env.REVISION). Additionally, added both the new output and the env.REVISION variable to the README.md for increased visibility.

super nice, thanks!


Custom Markers cause extreme lag and slow down on android

Is this a bug report?
Yes
Have you read the Installation Instructions?
Yes
Environment
"expo": "^32.0.0",
"react": "16.5.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-32.0.0.tar.gz",
Expo SDK32 utilises
"react-native-maps": 0.22.1
"react-native-svg": 8.0.10
Steps to Reproduce
This has only been an issue since updating Expo SDK from 30 to SDK 32. In that time expo updated rn maps from 0.21.0 to 0.22.1.  My main page is a full screen mapview with about 10-100 custom markers. If the map initialises with more than 10 markers the entire app runs extremely slow on android (only appears to effect android).
Behavior
In previous versions my app functioned well on android and iOS. After updating expo and rn maps even navigating away from the map will cause delays of 5-10 seconds to register a click. Spinner animations become clunky and the map becomes almost unusable as complex gestures aren't registered. Below is an example of a circle marker (I use more complex markers but even this will result in the same slow down). To compare, changing the SVG image to a png in the image prop fixes the lag problem but would be unusable in all but the most basic use cases.
Reproducible Demo
The following marker causes extreme lag on android. In fact any child in the Marker component cases lag.
<MapView.Marker
          coordinate={{latitude: marker.latLng.lat, longitude: marker.latLng.lng}}
          key={marker.id + moment().unix()}
          anchor={{x: 0.5, y: 0.5}}
           onPress={()=> this.props.showModal({marker}, 'markerModal')}
          >
            <Svg height={20} width={20}>
              <Svg.Circle
                cx="10"
                cy="10"
                r={2}
                fill={this.markerType(marker)}
              />
            </Svg>
          </MapView.Marker>

The following in an example of what works without lag but in some use cases I need to show custom text and direction arrows so this isn't enough
        <MapView.Marker
          coordinate={{latitude: marker.latLng.lat, longitude: marker.latLng.lng}}
          key={marker.id + moment().unix()}
          anchor={{x: 0.5, y: 0.5}}
          onPress={()=> this.props.showModal({marker}, 'markerModal')}
          image={require('../../assets/icons/circle.png')}
          />

Use Marker.Animated instead

Use Marker.Animated instead

Marker.Animated doesn't appear to fix the issue

Use Marker.Animated instead

Marker.Animated doesn't appear to fix the issue

Apologies for the vague response, what worked for me was building a pure component using Marker.Animated and setting tracksViewChanges to false, I was then able to drag the map around with 12 markers without extreme lag. Another thing that improved performance a bit was using MapView.Animated instead of MapView and placing the markers once the map was ready.

@Deprofets, can you make an example of your component?
Tks

any news?

I have the same problem, if you use custom markers, the map will very lag.
Set tracksViewChanges={false} will resolve the lag, but will cause the markers not working properly.
This is really a big problem, please help.
Thanks!

I do not remember where I copied it from - but this is working quite well for us:
import React, {PureComponent} from "react"
import {MapView} from "expo"
import isEqual from "lodash.isequal"
import PropTypes from "prop-types"

export default class MapMarker extends PureComponent {
    state = {
        tracksViewChanges: true,
    }
    componentWillReceiveProps(nextProps) {
        if (!isEqual(this.props, nextProps)) {
            this.setState(() => ({
                tracksViewChanges: true,
            }))
        }
    }
    componentDidUpdate() {
        if (this.state.tracksViewChanges) {
            this.setState(() => ({
                tracksViewChanges: false,
            }))
        }
    }

    render() {
        return (
            <MapView.Marker
                tracksViewChanges={this.state.tracksViewChanges}
                {...this.props}
            >{this.props.children}</MapView.Marker>
        )
    }
}

MapMarker.defaultProps = {
    children: null,
};

MapMarker.propTypes = {
    children: PropTypes.any,
};

Then just use this MapMarker within your maps

Thanks very much, @wodka
This solution doesn't resolve the lag completely but makes the map much better.
Hope someone can fix this issue completely.

@skidr0w and @wodka save me. It works

Then just use this MapMarker within your maps

Can you provide further explanation with how this was used within an example?

Hello! I use maps for tracking user positions with custom markers.
I have been inspired by @wodka 's and @HerbertLim solutions and decided to check some theory:
this is my Marker before changes:

and result is:

then ive tried to add tracksViewChanges={false} prop and result:

Seems like my component  didnt rendered (Wrapped Image with styled-components). But why  did appear? The difference is the prop imageUrl which to re-renders it component.
So I decided to add this prop for  just for test:

And it works! Even when coordinates changes - its working as before any changes.
But as for me, this a workaround and it stinks.

Adding the custom MapMarker class didn't make any noticeable Android performance improvements for me, sadly.  Plus I had issues with marker icons not appearing correctly.

Custom Marker is lagging very slow and its looks like CPU usage is growing steadily (i can feel the heat in phone). I tried with tracksViewChanges={false} once did update is done. But still can see lag, Zoom in/out are pretty hang and dead slow after using for a while.

@Balasnest This is a persistent issue. I'm curious if there's a way to provide native markers, those work well in my other app. I think large sums of markers simply won't work well with react-native-maps.

Experiencing the same issue. We have around 100-200 custom markers at a given time (rendered with custom jsx), but the issue starts to be apparent already at around 10-20 markers

@RWOverdijk key={marker.id + moment().unix()} This creates new marker everytime instead of re-render. I think we should use key={marker.id} this as a key.

@balasnest You can use the icon prop. I have no idea what youre trying with the key there but I know its wrong.

Hi, i have similar issue, and i juste add five marker on maps, and the cpu goes up to 200%

@GH974 This needs a thorough fix and will take time to figure out. I have attempted to fix it but found it hard to figure out a good way to handle this. The approach I think should be taken is the one mapbox takes, too. Markers are to be handled natively instead of repositioning over the bridge.
Like I mentioned before, use the icon prop on your marker. This will do just that, but it's not a custom view and expects an image. The cpu will not spike though, and that's more important than having fancy custom views for markers 😄
Either that or use tracksViewChanges={false} and be smart about when you enable it (initially, or when markers have changed).

In my case, as far as I maintain number of markers within 300, usually lower than 200, there is no performance issue both in Android and iOS. It is likely that rendering performance of Android 8 is poorest.
I use Expo and there were no problem until latest version of SDK v35, where react-native-maps version ranged from 0.22.1 to 0.25.
Let me show you my component rendering a marker. When region is changed, my app gets new marker via API and renders again. While getting response from API, isLoading props become true. I used getDerivedStateFromProps() method to decrease number of rendering each time region is changed. Hope this helps.
export default class MarkerWithView extends Component {
  state = {
    tracksViewChanges: false,
  }

  static getDerivedStateFromProps(props, state) {
    if (props.isLoading) {
      return {
        tracksViewChanges: true
      }
    } else {
      return null;
    }
  }

  shouldComponentUpdate(nextProps, nextState) {
    if (nextProps.isLoading) {
      return false;
    } else {
      return true;
    }
  }

  componentDidUpdate(prevProps) {
    if (!this.props.isLoading && this.state.tracksViewChanges) {
      if (isIos) {
        setTimeout(() => {
          this.setState({tracksViewChanges: false})
        }, 300)
      } else {
        this.setState({tracksViewChanges: false})
      }
    }
  }

  render() {
    ...
    return (
      <MapView.Marker
        tracksViewChanges={this.state.tracksViewChanges}
      >
        <View style={[styles.markerContainer]}>
        ...
        </View>
      </MapView.Marker>
    )
  }
}

@RWOverdijk thanks it works if i add in icon props.

https://stackoverflow.com/questions/59716959/react-native-maps-custom-markers-cause-extreme-lag-and-slow-down-on-android/59716960

@Balasnest You can use the icon prop. I have no idea what youre trying with the key there but I know its wrong.

I have some custom markers defined as below:
import React, { useEffect, useRef, memo, useCallback } from 'react'
import { Animated } from 'react-native'
import { Marker } from 'react-native-maps'
import { Icon } from 'native-base'

const AnimatedIcon = Animated.createAnimatedComponent(Icon)
const scaleDuration = 200

export default memo(({ style, selected, ...markerProps }) => {
  const scale = useRef(new Animated.Value(1)).current

  const scaleTo = useCallback(
    value => {
      Animated.timing(scale, {
        toValue: value,
        duration: scaleDuration,
        useNativeDriver: true,
      }).start()
    },
    [scale]
  )

  useEffect(() => {
    scaleTo(selected ? 1.2 : 1)
  }, [scaleTo, selected])

  const transformStyle = { transform: [{ scale }] }

  return (
    <Marker.Animated
      {...markerProps}
      // don't track changes to increase perfs
      tracksViewChandges={false}
      tracksInfoWindowChanges={false}
    >
      <AnimatedIcon
        type="MaterialCommunityIcons"
        name="map-marker-circle"
        fontSize={30}
        style={[style, transformStyle]}
      />
    </Marker.Animated>
  )
})

And using index as the marker key seems improve perfs on android. It may be just a feeling, bit it seems too be the case.
Any idea why ? You seem to say it won't improve perfs ?

I resolved this issue by turning on and off tracksViewChanges as @skidr0w said. #1031 was helpful to me.
Now my customMarker class looks like this:
state = {
  tracksViewChanges: false,
}

componentDidUpdate(prevProps) {
    if (prevProps.coordinate !== this.props.coordinate // set true only when props changed
        || prevProps.value !== this.props.value
        || prevProps.level !== this.props.level) {
        this.setState({tracksViewChanges: true})
    } else if (this.state.tracksViewChanges) {
       // set to false immediately after rendering with tracksViewChanges is true
        this.setState({tracksViewChanges: false})
    }
}

render() {
  return (
    <MapView.Marker
        coordinate={coordinate}
        style={{ zIndex: isFocused ? FOCUSED_MARKER_ZINDEX : zIndex }}
        onPress={onPressMarker}
        tracksViewChanges={this.state.tracksViewChanges}
    >
      ...
   </MapView.Marker>
}

Now google map at android response very very fast.
I am using Svg to draw marker at Android and View to draw one at iOS.

@HerbertLim Is this still relevant with the latest version?

I resolved this issue by turning on and off tracksViewChanges as @skidr0w said. #1031 was helpful to me.
Now my customMarker class looks like this:
state = {
  tracksViewChanges: false,
}

componentDidUpdate(prevProps) {
    if (prevProps.coordinate !== this.props.coordinate // set true only when props changed
        || prevProps.value !== this.props.value
        || prevProps.level !== this.props.level) {
        this.setState({tracksViewChanges: true})
    } else if (this.state.tracksViewChanges) {
       // set to false immediately after rendering with tracksViewChanges is true
        this.setState({tracksViewChanges: false})
    }
}

render() {
  return (
    <MapView.Marker
        coordinate={coordinate}
        style={{ zIndex: isFocused ? FOCUSED_MARKER_ZINDEX : zIndex }}
        onPress={onPressMarker}
        tracksViewChanges={this.state.tracksViewChanges}
    >
      ...
   </MapView.Marker>
}

Now google map at android response very very fast.
I am using Svg to draw marker at Android and View to draw one at iOS.

@HerbertLim Is this still relevant with the latest version?

@shanelarson , I have not tested recently but I thought this issue still remains especially in Android 8. Thank you for your testing. At which Android did you test?

@HerbertLim Thank you for the quick response. I tested on Android 9.

Hello All,
want to share my experience on same problem. I also had problem, that there is lot of markers on the map, IOS map becomes very laggy and slow. When I set      tracksViewChanges={false} it doesn't help. Only when I set marker image under image prop on marker it was working smooth.
I created PureComponent, and this is how my marker looked like when it was laggy:
 <Marker
          coordinate={coordinate}
          identifier={marker.id}
          tracksViewChanges={false}
          anchor={{ x: 0.5, y: 1 }}
          icon={markerIcon}
          >
                {Platform.OS === "ios" && (
                    <View
                        key={marker.id}
                        style={styles.markerWrapper}
                    >
                        <MarkerSVGIcon />
                    </View>
                )}
</Marker>

Icon prop was for Android, as for some reason it was not working for IOS,  and View was for IOS.
With such setup it was not working well, and I have tried different approaches mentioned in this issue, however nothing helped.
Then I tried to add one view prop for IOS:     shouldRasterizeIOS={true}
As per Docs this prop is requesting to convert view to Bitmap before rendering.
After this, my map started working very well, without lags. So final Marker code which is working without lags is:
<Marker
                coordinate={coordinate}
                identifier={marker.id}
                tracksViewChanges={false}
                anchor={{ x: 0.5, y: 1 }}
                icon={markerIcon}
            >
                {Platform.OS === "ios" && (
                    <View
                        key={marker.id}
                        shouldRasterizeIOS={true}
                        style={styles.markerWrapper}
                    >
                        <MarkerSVGIcon />
                    </View>
                )}
            </Marker>

This will be useful for people who need to put extra info in their marker body. Hope it will help anyone.

Hello,
I have a similar issue here:
Bug report

Summary

I implement lots of markers with images from a server inside them. However, when the user moves the map, it lags a lot both the map and the aplication.
Environment info

React Native with Expo 37.0.0
react-native info output:
# paste it here

Library version: 'https://github.com/expo/react-native/archive/sdk-37.0.0.tar.gz'
Steps to reproduce

Open the map;

Describe what you expected to happen:
The map and the app should flow considerably fast.
Reproducible sample code

Create custom marker:

function VisibleMarkers({ visibleAlerts, setAlert }) {     return visibleAlerts.map((alert: AlertData, index: number) =>         <AlertMarker             key={index}             alertInfo={alert}             onClick={setAlert}         />); }
2. Insert it inside a MapView component:
`

<VisibleMarkers
visibleAlerts={visibleAlerts}
setAlert={(alert) => {
                    navigation.navigate('AlertOpenedScreen', {
                        alert: alert,
                        timeline: true,
                    })
                }}
            />
        </MapView>
        <MapLegend alertTypes={possibleAlertTypes} />
    </View>

`

Working solution for iOS and Android:
https://dev.to/ajmal_hasan/react-native-map-optimisation-59na

I strongly agree with setting tracksViewChanges={false} after the markers have been rendered.
This may be a bit off topic, but I would also suggest setting showsIndoors={false} on MapView as it makes the map very slow if you zoom in enough. Some low-end devices will even crash.

Is there any solution for needing constantly animating markers, like a car tracking app?


Private Mendix Platform - self-signed certificates for Svix

@muhong0 Done! Shall I publish the PR or wait for the go ahead?

@katarzyna Kołtun It's OK, please publish it, thanks


Settings-Archive-Admin-App Sprint 1

Description:
Build the Screen to match the Figma design.
Integrate Screen with the Backend

@raoularavel I want to work on this issue


nc4nix: apply patch to fix invalid lock entries, update nextcloud packages

Description of changes
Closes #239011
See also https://github.com/helsinki-systems/nc4nix/pull/7 for more context.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Very important fix, thank you. I would like to test it in the coming days.

It looks good so far. See no issues in the generated stable releases, only one app memories is missing after applying the patch

Maybe because the unstable release is lower than the stable release? https://apps.nextcloud.com/apps/memories

@onny that's intended, we skip it on purpose because it's not compatible with v27 (see also my fix for nc4nix).


Fix errors in cargo fetch usage guide

While working on distro packaging guidelines for Rust software in Arch Linux with another team member (hey @grawlinson) we ran into a disagreement about when and how cargo fetch should be used. After a little bit of clamor it became apparent that one of us was working from fiddling around and testing and the other by reading the documentation. It's unfortunate but in this case the docs seem to be wrong.
See commit messages for further details.

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.
Please see the contribution instructions for more information.

Thanks for the PR!
I think the original is correct in regards to not accessing the network.  Can you say more about why you think it is not the case?
As for the --target flag, yea I think it would be good to fix that.  The man pages use a tool to generate all the different formats from a template.  The original template source is https://github.com/rust-lang/cargo/blob/master/src/doc/man/cargo-fetch.md, and instructions for running the tool is at https://github.com/rust-lang/cargo/tree/master/src/doc#building-the-man-pages.  In this case, it uses a general template for --target that is not appropriate for cargo fetch.  What I would do is just remove {{> options-target-triple }} and replace it with a simple description customized for cargo fetch.

Glad to see some good come out of our discussion, @alerque 😉

@ehuss I don not believe this should have been closed, the documentation is still wrong on this point.

@alerque This was closed due to inactivity. Did you see the comment above at https://github.com/rust-lang/cargo/pull/9785#issuecomment-898693577? The --target docs have been fixed in #10398. The other change did not appear to be correct. If you can provide a reproduction, it would be good to open an issue explaining the issue you are running into.


"RangeError: Invalid WebSocket frame: invalid payload length" error on server

Following error occurs randomly on server side (0.13.0-0.13.5) with latest haxe client (0.13.1):
RangeError: Invalid WebSocket frame: invalid payload length 126
    at Receiver.getInfo (/node_modules/ws/lib/receiver.js:213:16)
    at Receiver.startLoop (/node_modules/ws/lib/receiver.js:127:22)

As suggested on help channel this might be related to server and client incompatibility, this is why I believe haxe client is missing something.

Thanks for reporting @serjek, seems to be related with https://discuss.colyseus.io/topic/351/invalid-websocket-frame-invalid-payload-length-126
Not sure what's the cause of it though

This seems to be happening in native environments somehow (the issue reported on the forum was React Native)
Do you see this error on a specific platform @serjek?

Indeed, client is react native running in iOS simulator (13.3). Where do I start debugging this?

I'm inspecting the _onMessage (source) on ReactNative / iOS and getting really strange results. room.send() is not working because the first byte received on the server is 146 instead of 13. I'm using the colyseus.js client though.
 [
  146,  13, 164,
  116, 121, 112,
  101
]

Also, the state is not being broadcasted back to the client.

Sorry, this error I've seen is probably because I had a cached version of<EMAIL_ADDRESS>on my environment. I'll try to reproduce the one you mentioned.

I'd appreciate if you can share something that is possible to reproduce, I've been trying to send a lot of messages back and forth and couldn't reproduce the error it myself. 😢

hey sure, I will try to nail down the problem. To think of it, I believe this more like is an edge case related to hot reload feature in RN: when you reload the application it still retains old socket connections and it might happen that there are some stale messages still passing through old socket which can cause the error.

Most likely it's related to how colyseus tries to preserve session/client. Got it reproduced after app reload:
first error:
trying to send data to inactive client dyrkfWqF4
after app reload:
Invalid WebSocket frame: invalid payload length 126

Apparently it's not an edge case as my server error log is full of these errors after I opened public beta. Still investigating what might be a problem here.

here are bytes that are coming from client [138, 254]. @endel any ideas what this might be? Problem is that server immediately closes connection after that so, may be server can be configured so that it don't drop connection if some rubbish sometimes is coming from client?

seem to be react native issue: facebook/react-native#30020