Project Catalogue entries without Publications

The following 17 projects present in the Catalogue are missing their publication information
Unique Key	Date added	Project Title	Publications	Authors	Organs	Technologies	Cell count	ENA	Arrayexpress	GEO	EGA	dbGaP	HCA Data Portal URL
6768e2c1-38ce-4b07-87d5-552d52f01a30	30/11/2021	Single-cell RNA sequencing of urinary cells reveals distinct cellular diversity in COVID-19- associated AKI			bladder organ	10x 3' v2				GSE180595
2b38025d-a5ea-4c0f-b22e-367824bcaf4c	21/10/2021	Mapping the temporal and spatial dynamics of the human endometrium in vivo and in vitro			uterus	10x 3' v2, 10x 3' v3	55000	ERP128125, ERP127889	E-MTAB-10287, E-MTAB-10283				https://data.humancellatlas.org/explore/projects/2b38025d-a5ea-4c0f-b22e-367824bcaf4c
fde199d2-a841-4ed1-aa65-b9e0af8969b1	20/09/2021	Cells of the human intestinal tract mapped across space and time			large intestine, small intestine, vermiform appendix	Visium Spatial Gene Expression, 10x 5' v2	428000		E-MTAB-9543, E-MTAB-9536, E-MTAB-9532, E-MTAB-9533, E-MTAB-10386
4c886170-3f73-4661-832f-ab10409e84a9	21/06/2021	COVID-19 tissue atlases reveal SARS-CoV-2 pathology and cellular targets.			lung, kidney, liver, heart	10x 3' v3	106792			GSE171668
a0b4a252-c768-44df-a82a-399413a75ec1	17/06/2021	Integrative analysis of cell state changes in lung fibrosis with peripheral protein biomarkers.			lung	Drop-seq	233638
0061c7e8-7b90-4296-be53-ca1de3bd6651	16/06/2021	A single-cell and spatial atlas of autopsy tissues reveals pathology and cellular targets of SARS-CoV-2			lung, kidney, liver, spleen, trachea, lymph node, muscle tissue, nasal cavity mucosa, oral epithelium, brain	10x 3' v3, 10x 5' v2, RNAscope	220023			GSE171668, GSE163530
e9f36305-d857-44a3-93f0-df4e6007dc97	16/06/2021	Spatial multi-omic map of human myocardial infarction			heart	Visium Spatial Gene Expression	12184
1538d572-bcb7-426b-8d2c-84f3a7f87bb0	16/06/2021	The local and systemic response to SARS-CoV-2 infection in children and adults			blood, respiratory tract	10x immune profiling	468214			GSE168215
60ea42e1-af49-42f5-8164-d641fdb696bc	11/06/2021	A Protocol for Revealing Oral Neutrophil Heterogeneity by Single-Cell Immune Profiling in Human Saliva			saliva	Smart-seq2	1145	SRP271375					https://data.humancellatlas.org/explore/projects/60ea42e1-af49-42f5-8164-d641fdb696bc
910fc0b2-3054-47b2-97f0-549f23e29d72	11/06/2021	Single cell analysis of emergent haematopoiesis in the human fetal bone marrow			bone marrow	Smart-seq2, CITE-seq, 10x 3' v2, 10x 3' v1		ERP123145, ERP125305	E-MTAB-9389, E-MTAB-9801
1ce3b3dc-02f2-44a8-96da-d6d107b27a76	11/06/2021	Single-cell analysis reveals the continuum of human lympho-myeloid progenitor cells			umbilical cord	Smart-seq2	420	SRP110699		GSE100618			https://data.humancellatlas.org/explore/projects/1ce3b3dc-02f2-44a8-96da-d6d107b27a76
cc95ff89-2e68-4a08-a234-480eca21ce79	02/06/2021	Census of Immune Cells			blood, bone marrow	10x 3' v2	528092	ERP122984					https://data.humancellatlas.org/explore/projects/cc95ff89-2e68-4a08-a234-480eca21ce79
005d611a-14d5-4fbf-846e-571a1f874f70	02/06/2021	Assessing the relevance of organoids to model inter-individual variation			skin of body, stem cell, brain	10x 3' v2	19916	ERP114427					https://data.humancellatlas.org/explore/projects/005d611a-14d5-4fbf-846e-571a1f874f70
9c20a245-f2c0-43ae-82c9-2232ec6b594f	27/05/2021	Transcriptomic classification of human retinal cell types with single-nuclei RNA-seq.			eye	10x 3' v3	230800						https://data.humancellatlas.org/explore/projects/9c20a245-f2c0-43ae-82c9-2232ec6b594f
fc232d87-7b10-47f7-9197-b2c6cf210dea	27/05/2021	Human Developmental Cell Atlas Sweden			brain, lung, heart	10x 3' v3					EGAS00001004375
b176d756-62d8-4933-83a4-8b026380262f	27/05/2021	Single-cell transcriptional landscape of human embryonic limb development			hindlimb	10x 3' v2	27426	ERP119958	E-MTAB-8813
116965f3-f094-4769-9d28-ae675c1b569c	27/05/2021	Single cell profiling of human induced dendritic cells generated by direct reprogramming of embryonic fibroblasts			skin of body, embryo, immune system	10x 3' v2	6263	ERP120400					https://data.humancellatlas.org/explore/projects/116965f3-f094-4769-9d28-ae675c1b569c

Acceptance criteria

[ ] The reason why the projects are displaying publication information is determined for all projects

2 main reasons:

No DOI
Other (There is DOI, but publication info is not being loaded)

[ ] Actions to solve this issue are taken

Probably this will need re-assessing as with the promotion to production of a fix for projects that were not correctly showing the contributor information, the Catalogue no longer displays projects that do not have a DOI in Ingest. So this ticket might as well not be longer needed

I'm going through the projects, and some have disappeared from the catalogue because they are missing the DOI
My plan is to add it and hopefully they will be displayed correctly in the catalogue

Showing up in the project catalogue:

[ ] ingest Single-cell RNA sequencing of urinary cells reveals distinct cellular diversity in COVID-19- associated AKI - uuid is wrong, there is a submission but no wrangler assigned --> who is working on this? the catalogue is not checked so it's never going to show up
[x] ingest Mapping the temporal and spatial dynamics of the human endometrium in vivo and in vitro
[x] ingest Cells of the human intestinal tract mapped across space and time - HCA paper, set priority?
[ ] ingest COVID-19 tissue atlases reveal SARS-CoV-2 pathology and cellular targets.
[ ] ingest Integrative analysis of cell state changes in lung fibrosis with peripheral protein biomarkers.
[ ] ingest A single-cell and spatial atlas of autopsy tissues reveals pathology and cellular targets of SARS-CoV-2
[ ] ingest Spatial multi-omic map of human myocardial infarction
[ ] ingest The local and systemic response to SARS-CoV-2 infection in children and adults
[ ] ingest A Protocol for Revealing Oral Neutrophil Heterogeneity by Single-Cell Immune Profiling in Human Saliva
[ ] ingest Single cell analysis of emergent haematopoiesis in the human fetal bone marrow
[ ] ingest Single-cell analysis reveals the continuum of human lympho-myeloid progenitor cells
[ ] ingest Census of Immune Cells
[ ] ingest Assessing the relevance of organoids to model inter-individual variation
[ ] ingest Transcriptomic classification of human retinal cell types with single-nuclei RNA-seq.
[ ] ingest Human Developmental Cell Atlas Sweden
[ ] ingest Single-cell transcriptional landscape of human embryonic limb development
[ ] ingest Single cell profiling of human induced dendritic cells generated by direct reprogramming of embryonic fibroblasts

@jacobwindsor to send his list of projects and we identify why the above behaviours.

how long does it take for the projects to show up in the catalogue after the doi has been added to ingest?

I have fixed the issue with those not shown because of missing DOIs in this PR

List of uuids without DOIs:
cc95ff89-2e68-4a08-a234-480eca21ce79
9c20a245-f2c0-43ae-82c9-2232ec6b594f
116965f3-f094-4769-9d28-ae675c1b569c
b176d756-62d8-4933-83a4-8b026380262f
fc232d87-7b10-47f7-9197-b2c6cf210dea
1ce3b3dc-02f2-44a8-96da-d6d107b27a76
60ea42e1-af49-42f5-8164-d641fdb696bc
fde199d2-a841-4ed1-aa65-b9e0af8969b1
2b38025d-a5ea-4c0f-b22e-367824bcaf4c

FYI @idazucchi @gabsie you can see this list yourself by opening the developer tools on the project catalogue.Any projects which aren't shown due to an error are shown their with the error and the UUID.
@idazucchi the script runs at 11:00PM every night so the day after you will see it in the catalogue.

@idazucchi The fix is now in production

2 extra projects to take a look at, for @jacobwindsor cc @idazucchi


Domain in user profile is squatted - please fix

Ahoy Stefano,
I clicked on the link in your bio, it appears your domain has been squatted and defaced.
BR //

this account seems very dead to me

It was Active in May 2019, maybe the owner is on a hiatus.


Handle command output with erroneous trailing separators

What does this PR do?
For such commands, we would silently ignore the last result https://github.com/DataDog/integrations-core/blob/21a90b00f603b00250c4baa6534e47ee5529ed3c/aerospike/datadog_checks/aerospike/aerospike.py#L519-L521
Motivation
See e.g. sets/NAMESPACE/SET of https://docs.aerospike.com/docs/reference/info#sets

Is there any test covering the new metric?

Yes, see first failing commit


UI screenshots in README not up to date(?)

Hi,
in the main README, it looks like  the screenshots following this text:
"Example of UI elements (grouping is not included in the package):"
are maybe not up to date with the features in the current release.
At least SHF Idx is no longer created by the spot-price.yaml - nor are the Cheapest period start & hours helpers.

Updated the screenshot to match current sensors.


hugo: 0.64.1 -> 0.65.1

Motivation for this change
https://github.com/gohugoio/hugo/releases/tag/v0.65.0
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

This change is

Thanks!


Default redis-host to <IP_ADDRESS>

Resolves #322

If only REDIS_HOSTS is defined, then this change has the affect of using both REDIS_HOST and REDIS_HOSTS, such that an unexpected default REDIS_HOST <IP_ADDRESS> connection is opened.


cancel parent context if timeout on sending to results channel

This is related to extendio issue 303. If the client needs to consume the results of the worker pool, then they will need to ensure that the results channel is consumed. However, if for some reason the client is miscoded, ie provides a results channel but doesn't consume it, then the worker pool will simply deadlock.
The deadlock should be avoided and can be by introducing a timeout on the result channel send by the worker. If this timeout occurs, then a parent cancel function should be invoked. To achieve this, the client will need to specify a time duration value representing the required timeout (with a sensible default) and pass in the parent context along with its associated cancel function obtained from context.WithCancel.
Or perhaps, the client only needs to send a parent context that has timeout built into it (context.WithTimeout). Try this option too to see what's best.
In order to complete this, we need a way to detect the execution result of the pool itself. We can do this by introducing a new channel that the pool writes to after it completes. The client then reads the result from this channel after progressing past the wait group. Each worker can send an addition reason back to the pool to indicate the nature of its finish notification. Ordinarily, the worker will finish as there are no more jobs. In this case it will return a nil error. If there is a timeout on sending to the output channel, then it will cancel it's parent, then end it loop sending back a timeout error. With this in place, we can then write meaningful test cases that can discriminate the reason for the end of the worker pool processing and assert accordingly.
The pool result channel must buffered, so that it wont be blocked attempting to write to it. It must also write this result before invoking Done on the wait group.

Another very subtle thing about using WithTimeout, is that the timer starts as soon as this function returns. This means that only the worker can start the timer when it just posted the output to the output channel. My initial thought about building the timeout into the parent context is therefore the incorrect choice, because only the worker knows when the output has been sent, the parent has no idea and nor should it and there is a disconnect between with the parent would start the time and when the worker sends the output. Many things can happen in between these points and it would be silly to try and account for this time delay into the send timeout.
So the crux of this point is that the parent sends in its context, the associated cancel function and an output write time duration value. The worker will receive all of these, create its own child context from the parent using WithTimeout and in the select statement, if the timeout is triggered, it invokes the parent cancel function which will trigger a full cancellation of the whole worker pool.
The worker seeing the timeout, will immediate exit its run loop and send its finished notification to the pool. The pool will at this point not be in its drain phase, so will not read this notification yet. First it will react to the cancellation triggered by the worker. At this point it will close the forwarding jobs channel.
If one worker experiences a timeout on the output send, then all others will experience the same timeout. However, all the other workers will see the cancellation and exit their run loop. If the worker is already executing its job at the time the cancellation comes in, those other workers will not immediately see this cancellation, so there could be a reaction delay if the job is long running (relatively).
The producer will be running under the same parent context, so will also stop producing jobs.

the following test ....
		FEntry(nil, &poolTE{ // Intermittent
			// timeout on error
			//
			given:           "finish by cancel",
			should:          "receive and process all",
			now:             2,
			interval:        8000,
			outputsChSize:   OutputsChSize,
			after:           time.Second / 5,
			outputChTimeout: time.Second * 10,
			finish:          finishWithCancel,
			summarise:       summariseWithConsumer,
			assert:          assertCancelled,
		}),

fails intermittently:
 ✘ plastikfan@Janus  ~/dev/github/go/snivilised/lorax λ   feat/cancel-parent-on-send-timeout ±  task t
[1695289322] Async Suite - 1/9 specs - 7 procs SSSSSSSP
------------------------------
• [FAILED] [0.882 seconds]
WorkerPool stream of jobs [It] 🧪 ===> given: 'finish by cancel', should: 'receive and process all'
/home/plastikfan/dev/github/go/snivilised/lorax/boost/worker-pool_test.go:359

  Captured StdOut/StdErr Output >>
                ➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '✨ producer' (count: '1') (running: '✨ producer')
                ➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '🧊 worker pool' (count: '2') (running: '🧊 worker pool/✨ producer')
  >>>> ✨ producer.run ...(ctx:*internal.specContext.WithCancel)
  ===> 🧊 WorkerPool.run ...(ctx:*internal.specContext.WithCancel)
                ➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '💠 consumer' (count: '3') (running: '✨ producer/🧊 worker pool/💠 consumer')
                🧭🧭🧭 [[ WaitGroupAssister(🍂 pipeline).Wait ]] - gr-name: '👾 test-main' (count: '3') (running: '✨ producer/🧊 worker pool/💠 consumer')
  <<<< 💠 consumer.run ...(ctx:*internal.specContext.WithCancel)
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👹 ogre}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👹 ogre}'
  ===> 🧊 (#workers: '0') WorkerPool.run - new job received
  ===> 🧊 WorkerPool.spawned new worker: '(❤)WORKER-ID-0:95382ae3-e83c-45b3-b107-1506ac7c61d7' 🎀🎀🎀
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:901c1018-43bd-480c-b03e-4063e43c9d91) [Seq: 1]
        ---> 🚀 worker.run((❤)WORKER-ID-0:95382ae3-e83c-45b3-b107-1506ac7c61d7) ...(ctx:*internal.specContext.WithCancel)
        ---> 🚀 worker.run((❤)WORKER-ID-0:95382ae3-e83c-45b3-b107-1506ac7c61d7)(input:'{👹 ogre}')
                >>> 💤 CancelAfter - Sleeping before requesting cancellation (200ms) ...
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👺 gobby}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👺 gobby}'
  ===> 🧊 (#workers: '1') WorkerPool.run - new job received
  ===> 🧊 WorkerPool.spawned new worker: '(💙)WORKER-ID-1:ad2eaee8-054f-4d8e-ac5c-745c8690deee' 🎀🎀🎀
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:126e3622-c361-48d3-85d5-934a1e675b3d) [Seq: 2]
        ---> 🚀 worker.run((💙)WORKER-ID-1:ad2eaee8-054f-4d8e-ac5c-745c8690deee) ...(ctx:*internal.specContext.WithCancel)
        ---> 🚀 worker.run((💙)WORKER-ID-1:ad2eaee8-054f-4d8e-ac5c-745c8690deee)(input:'{👺 gobby}')
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:💩 poo}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:💩 poo}'
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:abfae9d3-e153-40d2-ba26-41b01fc971a4) [Seq: 3]
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:💀 skeletor}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:💀 skeletor}'
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:24652992-7606-4982-aabf-03c9b77b1d57) [Seq: 4]
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👾 xenomorph}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👾 xenomorph}'
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🧙 gandalf}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🧙 gandalf}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👿 nick}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👿 nick}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👹 ogre}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👹 ogre}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🦄 pegasus}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🦄 pegasus}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🧙 gandalf}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🧙 gandalf}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👺 gobby}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👺 gobby}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:💀 skeletor}'
                >>> CancelAfter - 🛑🛑🛑 cancellation submitted.
                >>> CancelAfter - ➖➖➖ CANCELLED
  <<<< 💠 consumer.run - done received 💔💔💔
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '💠 consumer' (count: '2') (running: '✨ producer/🧊 worker pool')
  <<<< 💠 consumer.run - finished (QUIT). 💠💠💠
  >>>> ✨ producer.item - done received ⛔⛔⛔
  >>>> ✨ producer.item, 🔴 item NOT posted: '{Recipient:💀 skeletor}'
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '✨ producer' (count: '1') (running: '🧊 worker pool')
  >>>> ✨ producer.run - finished (QUIT). ✨✨✨
  ===> 🧊 (#workers: '2') WorkerPool.run - done received ☢☢☢
  !!!! 🧊 WorkerPool.drain - waiting for remaining workers: 2 (#GRs: 14); 🧊🧊🧊
        ---> 🚀 worker.invoke ⏰ output timeout: '10s'
        ---> 🚀 worker.invoke((❤)WORKER-ID-0:95382ae3-e83c-45b3-b107-1506ac7c61d7)(cancel) - done received 💥💥💥
        ---> 🚀 worker.run((❤)WORKER-ID-0:95382ae3-e83c-45b3-b107-1506ac7c61d7)(input:'{💩 poo}')
        ---> 🚀 worker.invoke ⏰ output timeout: '10s'
        ---> 🚀 worker.invoke((❤)WORKER-ID-0:95382ae3-e83c-45b3-b107-1506ac7c61d7)(cancel) - done received 💥💥💥
        ---> 🚀 worker.run((❤)WORKER-ID-0:95382ae3-e83c-45b3-b107-1506ac7c61d7)(finished) - done received 🔶🔶🔶
        <--- 🚀 worker.run((❤)WORKER-ID-0:95382ae3-e83c-45b3-b107-1506ac7c61d7) (SENT FINISHED - error:'<nil>'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker-result-error(<nil>) finished, remaining: '1' 🟥
        ---> 🚀 worker.invoke ⏰ output timeout: '10s'
        ---> 🚀 worker.invoke((💙)WORKER-ID-1:ad2eaee8-054f-4d8e-ac5c-745c8690deee)(cancel) - timeout on send 👿👿👿
        <--- 🚀 worker.run((💙)WORKER-ID-1:ad2eaee8-054f-4d8e-ac5c-745c8690deee) (SENT FINISHED - error:'timeout on send'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker ((💙)WORKER-ID-1:ad2eaee8-054f-4d8e-ac5c-745c8690deee) 💢💢💢 finished with error: 'timeout on send'
  !!!! 🧊 WorkerPool.drain - worker-result-error(timeout on send) finished, remaining: '0' 🟥
  ===> 🧊 WorkerPool.run - drain complete with error: 'timeout on send' (workers count: '0'). 📛📛📛
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '🧊 worker pool' (count: '0') (running: '')
  <--- WorkerPool.run (QUIT). 🧊🧊🧊
  <--- orpheus(alpha) finished Counts >>> (Producer: '16', Consumer: '0'). 🎯🎯🎯
  🎈🎈🎈🎈 remaining count: '0'
  << Captured StdOut/StdErr Output

  Timeline >>
  STEP: 👾 WAIT-GROUP ADD(producer) @ 09/21/23 10:42:03.178
  STEP: 👾 WAIT-GROUP ADD(worker-pool)
   @ 09/21/23 10:42:03.178
  STEP: 👾 WAIT-GROUP ADD(consumer) @ 09/21/23 10:42:03.178
  STEP: 👾 NOW AWAITING TERMINATION @ 09/21/23 10:42:03.179
  [FAILED] in [It] - /home/plastikfan/dev/github/go/snivilised/lorax/boost/worker-pool_test.go:229 @ 09/21/23 10:42:04.058
  << Timeline

  [FAILED] Expected
      <*errors.errorString | 0xc000036070>:
      timeout on send
      {s: "timeout on send"}
  to be nil
  In [It] at: /home/plastikfan/dev/github/go/snivilised/lorax/boost/worker-pool_test.go:229 @ 09/21/23 10:42:04.058
------------------------------

Summarizing 1 Failure:
  [FAIL] WorkerPool stream of jobs [It] 🧪 ===> given: 'finish by cancel', should: 'receive and process all'
  /home/plastikfan/dev/github/go/snivilised/lorax/boost/worker-pool_test.go:229

Ran 1 of 9 Specs in 0.889 seconds
FAIL! -- 0 Passed | 1 Failed | 1 Pending | 7 Skipped

Ginkgo ran 2 suites in 1.541050302s

There were failures detected in the following suites:
  boost ./boost

Test Suite Failed
task: Failed to run task "t": exit status 1

... and this is what we see when the same test suceeds:
 plastikfan@Janus  ~/dev/github/go/snivilised/lorax λ   feat/cancel-parent-on-send-timeout  task t
[1695289302] Async Suite - 1/9 specs - 7 procs SSSSSSSP
------------------------------
• [0.998 seconds]
WorkerPool stream of jobs 🧪 ===> given: 'finish by cancel', should: 'receive and process all'
/home/plastikfan/dev/github/go/snivilised/lorax/boost/worker-pool_test.go:359

  Captured StdOut/StdErr Output >>
                ➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '✨ producer' (count: '1') (running: '✨ producer')
                ➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '🧊 worker pool' (count: '2') (running: '✨ producer/🧊 worker pool')
                ➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '💠 consumer' (count: '3') (running: '💠 consumer/✨ producer/🧊 worker pool')
  <<<< 💠 consumer.run ...(ctx:*internal.specContext.WithCancel)
  ===> 🧊 WorkerPool.run ...(ctx:*internal.specContext.WithCancel)
                🧭🧭🧭 [[ WaitGroupAssister(🍂 pipeline).Wait ]] - gr-name: '👾 test-main' (count: '3') (running: '✨ producer/🧊 worker pool/💠 consumer')
                >>> 💤 CancelAfter - Sleeping before requesting cancellation (200ms) ...
  >>>> ✨ producer.run ...(ctx:*internal.specContext.WithCancel)
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:😺 garfield}'
  ===> 🧊 (#workers: '0') WorkerPool.run - new job received
  ===> 🧊 WorkerPool.spawned new worker: '(❤)WORKER-ID-0:787906a4-c3ac-401f-9dbb-a44cec36b750' 🎀🎀🎀
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:ca1d896d-e3d7-48d4-b814-77126941973e) [Seq: 1]
        ---> 🚀 worker.run((❤)WORKER-ID-0:787906a4-c3ac-401f-9dbb-a44cec36b750) ...(ctx:*internal.specContext.WithCancel)
        ---> 🚀 worker.run((❤)WORKER-ID-0:787906a4-c3ac-401f-9dbb-a44cec36b750)(input:'{😺 garfield}')
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👺 gobby}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👺 gobby}'
  ===> 🧊 (#workers: '1') WorkerPool.run - new job received
  ===> 🧊 WorkerPool.spawned new worker: '(💙)WORKER-ID-1:219127f7-34f7-4d1d-9215-9f5ba87fca2f' 🎀🎀🎀
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:1d8b94aa-1d7a-412e-b55f-6aa2b0d68eae) [Seq: 2]
        ---> 🚀 worker.run((💙)WORKER-ID-1:219127f7-34f7-4d1d-9215-9f5ba87fca2f) ...(ctx:*internal.specContext.WithCancel)
        ---> 🚀 worker.run((💙)WORKER-ID-1:219127f7-34f7-4d1d-9215-9f5ba87fca2f)(input:'{👺 gobby}')
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👽 paul}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👽 paul}'
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:758a74cb-8bae-4e95-a92c-f0af2de72672) [Seq: 3]
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👾 xenomorph}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👾 xenomorph}'
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:46befeb7-64b2-46f9-9f08-6c81cbc6fa9b) [Seq: 4]
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👾 xenomorph}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👾 xenomorph}'
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:💀 skeletor}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:💀 skeletor}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👹 ogre}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👹 ogre}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🦄 pegasus}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🦄 pegasus}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🧛♀ dracula}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🧛♀ dracula}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:💩 poo}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:💩 poo}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:💀 skeletor}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:💀 skeletor}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👿 nick}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👿 nick}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🧙 gandalf}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🧙 gandalf}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👾 xenomorph}'
                >>> CancelAfter - 🛑🛑🛑 cancellation submitted.
                >>> CancelAfter - ➖➖➖ CANCELLED
  <<<< 💠 consumer.run - done received 💔💔💔
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '💠 consumer' (count: '2') (running: '✨ producer/🧊 worker pool')
  <<<< 💠 consumer.run - finished (QUIT). 💠💠💠
  >>>> ✨ producer.item - done received ⛔⛔⛔
  >>>> ✨ producer.item, 🔴 item NOT posted: '{Recipient:👾 xenomorph}'
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '✨ producer' (count: '1') (running: '🧊 worker pool')
  >>>> ✨ producer.run - finished (QUIT). ✨✨✨
  ===> 🧊 (#workers: '2') WorkerPool.run - done received ☢☢☢
  !!!! 🧊 WorkerPool.drain - waiting for remaining workers: 2 (#GRs: 14); 🧊🧊🧊
        ---> 🚀 worker.invoke ⏰ output timeout: '10s'
        ---> 🚀 worker.invoke((❤)WORKER-ID-0:787906a4-c3ac-401f-9dbb-a44cec36b750)(cancel) - done received 💥💥💥
        ---> 🚀 worker.run((❤)WORKER-ID-0:787906a4-c3ac-401f-9dbb-a44cec36b750)(finished) - done received 🔶🔶🔶
        <--- 🚀 worker.run((❤)WORKER-ID-0:787906a4-c3ac-401f-9dbb-a44cec36b750) (SENT FINISHED - error:'<nil>'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker-result-error(<nil>) finished, remaining: '1' 🟥
        ---> 🚀 worker.invoke ⏰ output timeout: '10s'
        ---> 🚀 worker.run((💙)WORKER-ID-1:219127f7-34f7-4d1d-9215-9f5ba87fca2f)(finished) - done received 🔶🔶🔶
        <--- 🚀 worker.run((💙)WORKER-ID-1:219127f7-34f7-4d1d-9215-9f5ba87fca2f) (SENT FINISHED - error:'<nil>'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker-result-error(<nil>) finished, remaining: '0' 🟥
  ===> 🧊 WorkerPool.run - drain complete OK (workers count: '0'). ☑☑☑
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '🧊 worker pool' (count: '0') (running: '')
  <--- WorkerPool.run (QUIT). 🧊🧊🧊
  <--- orpheus(alpha) finished Counts >>> (Producer: '16', Consumer: '0'). 🎯🎯🎯
  🎈🎈🎈🎈 remaining count: '0'
  << Captured StdOut/StdErr Output
------------------------------
 SUCCESS! 1.004574502s
[1695289302] I18n Suite - 0/0 specs - 7 procs  SUCCESS! 6.9192ms

Ginkgo ran 2 suites in 1.654060903s
Test Suite Passed
Detected Programmatic Focus - setting exit status to 197

Actually, to be clear about the above, we DO want an error to be returned, but the test case is coded for a none error, which clearly is fixable. The problem here is the intermittency.

But sometimes we see this:
  <<<< 💠 consumer.run - done received 💔💔💔
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '💠 consumer' (count: '1') (running: '🧊 worker pool')
  <<<< 💠 consumer.run - finished (QUIT). 💠💠💠
        ---> 🚀 worker.invoke ⏰ output timeout: '10s'
        ---> 🚀 worker.run((💙)WORKER-ID-1:d5594858-424a-4ef7-b06b-9edeed55090b)(input:'{👹 ogre}')
        ---> 🚀 worker.invoke ⏰ output timeout: '10s'
        ---> 🚀 worker.run((❤)WORKER-ID-0:20245a9a-3414-4317-a8a2-13563842bf52)(finished) - done received 🔶🔶🔶
        <--- 🚀 worker.run((❤)WORKER-ID-0:20245a9a-3414-4317-a8a2-13563842bf52) (SENT FINISHED - error:'<nil>'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker-result-error(<nil>) finished, remaining: '1' 🟥
        ---> 🚀 worker.invoke ⏰ output timeout: '10s'
        ---> 🚀 worker.run((💙)WORKER-ID-1:d5594858-424a-4ef7-b06b-9edeed55090b)(finished) - done received 🔶🔶🔶
        <--- 🚀 worker.run((💙)WORKER-ID-1:d5594858-424a-4ef7-b06b-9edeed55090b) (SENT FINISHED - error:'<nil>'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker-result-error(<nil>) finished, remaining: '0' 🟥
  ===> 🧊 WorkerPool.run - drain complete OK (workers count: '0'). ☑☑☑
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '🧊 worker pool' (count: '0') (running: '')
  <--- WorkerPool.run (QUIT). 🧊🧊🧊
  <--- orpheus(alpha) finished Counts >>> (Producer: '17', Consumer: '1'). 🎯🎯🎯
  🎈🎈🎈🎈 remaining count: '0'

... there is no timeout on send, but also no done received. I think we need to fix 2 problems here, first how the pool handles workers termination notifcations and the consumer shouldnt be consuming.

In the unit tests, we need to mak eit clear what the interval relates to. At the moment having a variable called interval is non specific. We need a producer and consumer interval, so make it much clearer.

Need to turn the intervals into durations as they are currently just an int.

after refactoring the test durations, we have this failing test (the same one as indicated before), but now:
		FEntry(nil, &poolTE{ // Intermittent failure
			// timeout on error
			//
			given:  "finish by cancel",
			should: "receive and process all",
			now:    2,
			intervals: durations{
				consumer:        time.Second * 10,
				finishAfter:     time.Second * 2,
				outputChTimeout: time.Second * 1,
			},
			outputsChSize: OutputsChSize,
			finish:        finishWithCancel,
			summarise:     summariseWithConsumer,
			assert:        assertCancelled,
		}),

which results in failure (no error is returned, even though we expect a timeout):
  >>>> ✨ producer.run - finished (QUIT). ✨✨✨
        ---> 🚀 worker.invoke ⏰ output timeout: '1s'
        ---> 🚀 worker.invoke((💙)WORKER-ID-1:869d76ab-4ee5-4244-afe9-51dd3e77d4a0)(cancel) - done received 💥💥💥
        ---> 🚀 worker.run((💙)WORKER-ID-1:869d76ab-4ee5-4244-afe9-51dd3e77d4a0)(finished) - done received 🔶🔶🔶
        <--- 🚀 worker.run((💙)WORKER-ID-1:869d76ab-4ee5-4244-afe9-51dd3e77d4a0) (SENT FINISHED - error:'<nil>'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker-result-error(<nil>) finished, remaining: '1' 🟥
        ---> 🚀 worker.invoke ⏰ output timeout: '1s'
        ---> 🚀 worker.invoke((❤)WORKER-ID-0:bcb359d0-3363-41c1-b758-7d528c358923)(cancel) - done received 💥💥💥
        ---> 🚀 worker.run((❤)WORKER-ID-0:bcb359d0-3363-41c1-b758-7d528c358923)(input:'{👿 nick}')
        ---> 🚀 worker.invoke ⏰ output timeout: '1s'
        ---> 🚀 worker.invoke((❤)WORKER-ID-0:bcb359d0-3363-41c1-b758-7d528c358923)(cancel) - done received 💥💥💥
        ---> 🚀 worker.run((❤)WORKER-ID-0:bcb359d0-3363-41c1-b758-7d528c358923)(finished) - done received 🔶🔶🔶
        <--- 🚀 worker.run((❤)WORKER-ID-0:bcb359d0-3363-41c1-b758-7d528c358923) (SENT FINISHED - error:'<nil>'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker-result-error(<nil>) finished, remaining: '0' 🟥
  ===> 🧊 WorkerPool.run - drain complete OK (workers count: '0'). ☑☑☑
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '🧊 worker pool' (count: '1') (running: '💠 consumer')
  <--- WorkerPool.run (QUIT). 🧊🧊🧊
  <<<< 💠 consumer.run - done received 💔💔💔
                🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '💠 consumer' (count: '0') (running: '')
  <<<< 💠 consumer.run - finished (QUIT). 💠💠💠
  <--- orpheus(alpha) finished Counts >>> (Producer: '24', Consumer: '0'). 🎯🎯🎯
  🎈🎈🎈🎈 remaining count: '0'
  << Captured StdOut/StdErr Output

  Timeline >>
  STEP: 👾 WAIT-GROUP ADD(producer) @ 09/21/23 16:04:05.001
  STEP: 👾 WAIT-GROUP ADD(worker-pool)
   @ 09/21/23 16:04:05.001
  STEP: 👾 WAIT-GROUP ADD(consumer) @ 09/21/23 16:04:05.001
  STEP: 👾 NOW AWAITING TERMINATION @ 09/21/23 16:04:05.001
  [FAILED] in [It] - /home/plastikfan/dev/github/go/snivilised/lorax/boost/worker-pool_test.go:237 @ 09/21/23 16:04:15.004
  << Timeline

  [FAILED] Expected
      <nil>: nil
  not to be nil
  In [It] at: /home/plastikfan/dev/github/go/snivilised/lorax/boost/worker-pool_test.go:237 @ 09/21/23 16:04:15.004
------------------------------

Summarizing 1 Failure:
  [FAIL] WorkerPool stream of jobs [It] 🧪 ===> given: 'finish by cancel', should: 'receive and process all'
  /home/plastikfan/dev/github/go/snivilised/lorax/boost/worker-pool_test.go:237

Ran 1 of 9 Specs in 10.013 seconds
FAIL! -- 0 Passed | 1 Failed | 1 Pending | 7 Skipped

What this shows us is:

there is no timeout error
the consumer is not consuming (<--- orpheus(alpha) finished Counts >>> (Producer: '24', Consumer: '0'). 🎯🎯🎯)
we have set a consumer interval of 10 seconds (Ran 1 of 9 Specs in 10.013 seconds)
output channel timeout of 1 second ( ---> 🚀 worker.invoke ⏰ output timeout: '1s')

With these attributes, one would expect that the worker should bail after 1 seconds attempting to send the result to the output channel, but it doesn't. The thing that controls the test run length is the consumer interval, so our worker is not timing out

this looks to have been fixed by issue #91 - ie using the atomic.AddInt32 function to increment and decrement the wait group counter, instead of using the unsafe ++/-- operators.
With fix:
✘ plastikfan@Hydra   λ   master ●  task t
[1698955014] Async Suite - 1/9 specs - 7 procs SSPSSSSS
------------------------------
• [1.540 seconds]
WorkerPool stream of jobs 🧪 ===> given: 'finish by stop', should: 'timeout and abort'
/Users/plastikfan/dev/github/snivilised/lorax/boost/worker-pool_test.go:447

  Captured StdOut/StdErr Output >>
  		➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '✨ producer' (count: '1') (running: '✨ producer')

  		➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '🧊 worker pool' (count: '2') (running: '✨ producer/🧊 worker pool')

  >>>> ✨ producer.run ...(ctx:*internal.specContext.WithCancel)
  		➕➕➕ [[ WaitGroupAssister(🍂 pipeline).Add ]] - gr-name: '💠 consumer' (count: '3') (running: '✨ producer/🧊 worker pool/💠 consumer')

  >>>> ✨ producer.run - default (running: true) ...
  		🧭🧭🧭 [[ WaitGroupAssister(🍂 pipeline).Wait ]] - gr-name: '👾 test-main' (count: '3') (running: '💠 consumer/✨ producer/🧊 worker pool')

  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👺 gobby}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👺 gobby}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👾 xenomorph}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👾 xenomorph}'
  >>>> ✨ producer.run - default (running: true) ...
  		>>> 💤 StopAfter - Sleeping before requesting stop (200ms) ...
  ===> 🧊 WorkerPool.run ...(ctx:*internal.specContext.WithCancel)

  ===> 🧊 (#workers: '0') WorkerPool.run - new job received
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👻 caspar}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👻 caspar}'
  	---> 🚀 worker.run((❤)WORKER-ID-0:61272c25-a5f7-44cd-b3bc-58ab89c54754) ...(ctx:*internal.specContext.WithCancel)

  >>>> ✨ producer.run - default (running: true) ...
  <<<< 💠 consumer.run ...(ctx:*internal.specContext.WithCancel)
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👽 paul}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👽 paul}'
  ===> 🧊 WorkerPool.spawned new worker: '(❤)WORKER-ID-0:61272c25-a5f7-44cd-b3bc-58ab89c54754' 🎀🎀🎀
  >>>> ✨ producer.run - default (running: true) ...
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:2dd2cdef-8e7b-4d2c-9b12-d04fdd7f00aa) [Seq: 1]
  ===> 🧊 (#workers: '1') WorkerPool.run - new job received
  	---> 🚀 worker.run((❤)WORKER-ID-0:61272c25-a5f7-44cd-b3bc-58ab89c54754)(input:'{👺 gobby}')
  ===> 🧊 WorkerPool.spawned new worker: '(💙)WORKER-ID-1:36dd5aa8-d85f-408a-9f48-89c17c0e4227' 🎀🎀🎀
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:ee186a27-243a-49f6-bc14-7628a5d08b44) [Seq: 2]
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:💩 poo}'
  	---> 🚀 worker.run((💙)WORKER-ID-1:36dd5aa8-d85f-408a-9f48-89c17c0e4227) ...(ctx:*internal.specContext.WithCancel)

  	---> 🚀 worker.run((💙)WORKER-ID-1:36dd5aa8-d85f-408a-9f48-89c17c0e4227)(input:'{👾 xenomorph}')
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:💩 poo}'
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:966167da-9539-4094-b532-eca516d52fc8) [Seq: 3]
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🧛 dracula}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🧛 dracula}'
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🧛 dracula}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🧛 dracula}'
  >>>> ✨ producer.run - default (running: true) ...
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:ea92a4b1-af8a-40f5-b900-f9496ffb688a) [Seq: 4]
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👺 gobby}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👺 gobby}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🐉 smaug}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🐉 smaug}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:🤖 rusty}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👿 nick}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👿 nick}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:👹 ogre}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:👹 ogre}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:💀 skeletor}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:💀 skeletor}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.run - default (running: true) ...
  >>>> ✨ producer.item, 🟠 waiting to post item: '{Recipient:😺 garfield}'
  >>>> 🧲 producer terminating ...
  	---> 🚀 worker.invoke ⏰ output timeout: '1ms'
  	---> 🚀 worker.run((❤)WORKER-ID-0:61272c25-a5f7-44cd-b3bc-58ab89c54754)(input:'{👻 caspar}')
  <<<< 💠 consumer.run - new result arrived(#1): '			---> 🍉🍉🍉 [Seq: 1] Hello: '👺 gobby''
  ===> 🧊 WorkerPool.run - forwarded job 🧿🧿🧿(JOB-ID:99fb7485-4f27-4670-afde-76eb0a10fdcf) [Seq: 5]
  ===> 🧊 (#workers: '2') WorkerPool.run - new job received
  >>>> ✨ producer.item, 🟢 posted item: '{Recipient:😺 garfield}'
  >>>> ✨ producer.run - termination detected (running: false)
  		🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '✨ producer' (count: '2') (running: '💠 consumer/🧊 worker pool')

  >>>> ✨ producer.run - finished (QUIT). ✨✨✨
  		>>> StopAfter - 🍧🍧🍧 stop submitted.
  	---> 🚀 worker.invoke ⏰ output timeout: '1ms'
  	---> 🚀 worker.invoke((💙)WORKER-ID-1:36dd5aa8-d85f-408a-9f48-89c17c0e4227)(cancel) - timeout on send 👿👿👿
  	<--- 🚀 worker.run((💙)WORKER-ID-1:36dd5aa8-d85f-408a-9f48-89c17c0e4227) (SENT FINISHED - error:'timeout on send'). 🚀🚀🚀
  <<<< 💠 consumer.run - done received 💔💔💔
  		🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '💠 consumer' (count: '1') (running: '🧊 worker pool')

  <<<< 💠 consumer.run - finished (QUIT). 💠💠💠
  ===> 🧊 (#workers: '2') WorkerPool.run - done received ☢☢☢
  !!!! 🧊 WorkerPool.drain - waiting for remaining workers: 2 (#GRs: 13); 🧊🧊🧊
  !!!! 🧊 WorkerPool.drain - worker ((💙)WORKER-ID-1:36dd5aa8-d85f-408a-9f48-89c17c0e4227) 💢💢💢 finished with error: 'timeout on send'
  !!!! 🧊 WorkerPool.drain - worker-result-error(timeout on send) finished, remaining: '1' 🟥
  	---> 🚀 worker.invoke ⏰ output timeout: '1ms'
  	---> 🚀 worker.invoke((❤)WORKER-ID-0:61272c25-a5f7-44cd-b3bc-58ab89c54754)(cancel) - done received 💥💥💥
  	---> 🚀 worker.run((❤)WORKER-ID-0:61272c25-a5f7-44cd-b3bc-58ab89c54754)(input:'{👽 paul}')
  	---> 🚀 worker.invoke ⏰ output timeout: '1ms'
  	---> 🚀 worker.run((❤)WORKER-ID-0:61272c25-a5f7-44cd-b3bc-58ab89c54754)(finished) - done received 🔶🔶🔶
  	<--- 🚀 worker.run((❤)WORKER-ID-0:61272c25-a5f7-44cd-b3bc-58ab89c54754) (SENT FINISHED - error:'<nil>'). 🚀🚀🚀
  !!!! 🧊 WorkerPool.drain - worker-result-error(<nil>) finished, remaining: '0' 🟥
  ===> 🧊 WorkerPool.run - drain complete with error: 'timeout on send' (workers count: '0'). 📛📛📛
  		🚩🚩🚩 [[ WaitGroupAssister(🍂 pipeline).Done ]] - gr-name: '🧊 worker pool' (count: '0') (running: '')

  <--- WorkerPool.run (QUIT). 🧊🧊🧊

  <--- orpheus(alpha) finished Counts >>> (Producer: '16', Consumer: '1'). 🎯🎯🎯
  🎈🎈🎈🎈 remaining count: '0'
  << Captured StdOut/StdErr Output
------------------------------
 SUCCESS! 1.570343s

The remining work to do on this is to check the deactivated tests to ensure they all execute properly.

We may be able to improve the design of this feature. We should not have to pass in the parent cancel function to the child.

This should be addressed in a fresh issue.


Use the correct parameter to create a public repository in Bitbucket Server for the v2 templates

Same as https://github.com/backstage/backstage/pull/6037, but for the backstage.io/v1beta2 templates. I didn't recognize that the other code was only used in the old scaffolder templates and not in the new ones. I've only tested it via Postman, but after testing it in Backstage, we noticed that I fixed it in the wrong file...

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[x] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

@freben btw, code owners seems to be broken 😉 maybe related to #5137

@Fox32 Broken how? I presume that PRs that were open at the time that the merge happened, may be in a limbo state of sorts

@Fox32 Broken how? I presume that PRs that were open at the time that the merge happened, may be in a limbo state of sorts

Hmm, normally that doesn't happen. The state is updated intermediately - like #6036 which was updated (and can now be merged 🤔 )


Change shadcn cli command to use latest.

When i am using a command like
npx shadcn add "https://icons.pqoqubbw.dev/c/moon.json
it is prompting to install older version of shadcn
but when i do
npx shadcn@latest add "https://icons.pqoqubbw.dev/c/connect.json
It works fine.

fixed, thank you for pointing that out! ada82733f76ede52b5e6b5e9e7202ff59acae1f1


Quaternion mark const helpers const

This is necessary if you want to call these methods on const Quaternions (depending on compiler warnings).

Coverage remained the same at 100.0% when pulling 07da783e45e8d0c3ea9c8917ee26eef295c2e0dd on pr-quaternion_const into e7c95fa027675f38f14b06344bf9855883013727 on master.

Makes totally sense, also adds to in code documentation.


Experiment: Nessie

Disclaimer:
This is an experiment, I would not expect it to be approved, but I updated the src/malebolgia.nim to make diff clear. Please burn after reading.
Motivation:
Intrigued by the fact that spawn is expensive, I tried to reduce the lock time.
The initial idea was to use the same concept of parMap, means lock array ranges to worker, but ended creating an array of locks.
Unexpected Outcome:
One expensive call of spawn was signal, not lock, I tried to reduce the number of signal calls too.
Results
My benchmark, was the same as I did for #18
parMap with bulkSize2, 5 tasks, 3 threads executed 1000 times
While this isn't always faster than #19, times are steady.
As expected, T0E0 would take more time, because pool will be notified only after the channel is full, or we run waitAll.
This also means T1E0-T0E1 is almost constant, but I was expecting less, since pool will look for T0 and T1 at the same time.
Benchmark Flaws
I did not force our thread pool, channel can have 16 tasks, I only added 3.
Suggestion
Revise the signalling strategy.

Tbh I have no idea what this array of locks tries to accomplish. The standard solution to speed things up further is work stealing. I implemented a variation of it in malebolgia_push but it was not faster on my benchmarks and more complex.

cause 100% of cpu usage with unused threads

That's bad but what is worse is that as soon as you remove the possibility of running things directly on the calling thread you invite deadlocks for recursive fork&join algorithms.

Tbh I have no idea what this array of locks tries to accomplish.

Let's say Master had another name like Global
Let's say its lock is Important
Then we name it GlobalImportantLock
to abbreviate, we call it GIL...
That is obviously a joke, but you got the problem.
Instead, let's say we have 16 locks/slots (lets call it LockPool)
We can only feed to lockable emptySlot
We can only work in lockable taskSlot
Now we ask if lock[i] is lockable (tryAcquire) cost from 20~2000ns
While acquire cost from 25~infinity (we never know when/who will release it)
While we are feeding the slots we could signal (20~2000ns) without lock. I would do it every 4 items.
When we run out of slots to feed, we have to signal it with GIL Lock. But even here we could think: If we get lock to wait ok, or else, someone is trying to say what we are waiting for. Let's retry instead.
From other side (workers) is the same.
We have to ThreadPool because the cost of wait for thread creation (52781~76092ns)
New we have a LockPool because of the cost of wait for acquire.
I tried to implement it in the file malebolgia_gilson.nim. with some optmization like try check value instead of lock, since false positive and move next is less expensive than tryAcquire.

As I said, it seems to me that you want to implement work stealing. It can be done lockfree and has the potential to produce much better performance numbers. My attempts failed so far but all the production thread pools in Rust, C#, etc use it.

Closing it, it was an experiment anyway.
I spotted a bug on that, since I'm not using a queue, acquireSlot/acquireTask always return first available, means it could return i=0 even if another task i=1 was scheduled before.

Once again, please give us work stealing! ;-)


Compact mode sizing applied only first time for the popup controls

Describe the bug
I have created the PopUp host, which has the ComboBox and TextBox controls. I have created the popup only first time. I have used the same host for next time. I have added  the compact.xaml resource dictionary  in MainPage Grid's resources. CompactMode sizing applied only first time for ComboBox and TextBox. At second time standard sizing applied.
Steps to reproduce the bug

Run the attached sample.
Click the ShowPopUp button
PopUp opens, and compact sizing applied for TextBox and ComboBox.
Click the close button in PopUp. Popup closed.
Again click on ShowPopUp button.

Expected behavior
Compact sizing should applied for TextBox and ComboBox.
Screenshots
First time:

Second time:

Version Info
OS version(s) : Windows 10
NuGet package version:
Microsoft.WinUI 3.0.0-preview4.210210.4
Additional context
Sample:
PopUp_Demo.zip

Hi Team,
Any update on this?

Any update on this?


[Question] Is platform dependency taken care?

I believe Proto Buffers Compiler (protoc) is platform dependent. This plugin will download the appropriate protoc (according to the platform) and compile .proto files to .java files?

The plugin jar actually contains protoc binaries (2.4.1 - 3.0.0) for Linux, Mac/OSX, and Windows. At runtime it detects the platform and executes the corresponding binary


Far better console logging

Improved console logging, using the Jethro module.
Console logging within the module itself is very annoying. Using a third party module allows the user to turn logging off and put their own in place and manually subscribe to the events if they choose. The choice of console logging should be on the user, not enforced upon them.

I am using Winston, and I think it would be better to have the choice of the logging module.


Add datatree + bump xmip

@jbusecke looks like xmip on conda-forge needs updating before we can add it. Maybe some issue with the last merge? https://github.com/conda-forge/cmip6_preprocessing-feedstock/issues/14

Yeah sorry about this. I will modify this to datatree only, and make a separate PR for xmip (not as important rn).

/condalock


identify songs by hash to not re-fingerprint files?

does it make sense instead of checking by the filename (which is not reliable.. because the files may be moved, or renamed..), use some kind of hash without the metadata?.
ie: would this [1] work?. I think It would, but only for mp3s.., what about other formats?.
[1] https://github.com/sptim/mp3hash

Let's weigh the options..
if we add the feature we will:

dont refingerprint same songs
we shall not need to lookup for the same hashes in the DB during recognition

we will have to do additional CPU job, but it will only depend on how often do we add new songs.


Refine detection of compiler and existence of std threading classes

Implemented the handling of the case where the compiler is not MinGW. Currently, the code will wrongly display a warning that the compiler is MinGW and has std::threads based on pthread, which would be completley wrong under MSVC.
Removed the silent inclusion of the standard threading headers - leave that to the user. Otherwise, on non-mingw platforms, if the user is to avoid #ifdef __MINGW32__, they would have to include the standard threading header via this (platform-specific) library, and would get a warning that they are not using a mingw compiler and std threading classes probably already exist.

This does clarify the purpose of the library, specifically t. However, I think the warning should be refined. Specifically, if the standard thread header is not to be included, and if a standard threading library exists, the warning ought to make clear that std:: will still lack the desired threading classes.
Note also that the following code in "mingw.condition_variable.h", which removes all ambiguity involved in selecting mingw_stdthread::cv_status or std::cv_status, will break under the proposed revision.
#if defined(__MINGW32__ ) && !defined(_GLIBCXX_HAS_GTHREADS)
enum class cv_status { no_timeout, timeout };
#else
using std::cv_status;
#endif

Reverting it to enum class cv_status { no_timeout, timeout }; will solve the problem, but will reintroduce ambiguity. I suppose, however, that users employing this library despite the existence of a standard implementation can be expected to employ the proper namespace.


Set --text-accent-hover

Related to #14, the text accent color (inline links) should also reflect the hover style for interactive elements. I have a local snip with this change which seems to work.
.theme-light {
  --text-accent-hover: rgb(151, 46, 43);
}

.theme-dark {
  --text-accent-hover: rgb(24, 147, 242);
}

@jakobo - apologies for the lack of updates. Unfortunately I just don't have time to keep up with this as much as I'd like to. I have updated the theme to be compatible with the 1.0 release of obsidian. This is a complete rewrite and because I don't have much time for updates, I've tried to simplify things and have really made this mostly a UI theme rather than adjusting any text.


Shadows do not appear

Hello! I'm currently experiencing a problem where no matter what I do, shadows do not appear. I've tried both client side and server side decoration, enabled and disabled the decorations plugin, added wayfire-plugins-extra and tried without, tried different versions of wayfire altogether (I'm currently using the July 30th, 2023 git branch), etc.
Still however, shadows and glow never work. I've never gotten it to work no matter the config. Is there some dependency needed or config I'm missing?

You can test it using one of the configs in the testconfig folder with wayfire --config ....
Check the output for errors and whether the plugin was found correctly.

Hello again, what ended up happening is when I built using meson, I needed to use the
--prefix=/usr

option to make sure it went into my /usr/lib/wayfire plugin folder, got it working.
There is another problem though, for some applications like kitty (terminal emulator), the shadows only apply once the window is moved. for others like firefox, the shadows never appear. Any idea why?

Ah yes, that was the signal issue that I meant, see the edit above. I don't remember the details but I had a discussion about it on the wayfire IRC a month ago and haven't worked on it since then.

That seemed to fix everything, I'll keep an eye out for future updates as well. Thanks so much!


[terra-section-header] Fix default header defect

Summary

Fixes defect in default section header (non-interactive) by removing div with role=button

Closes #
Deployment Link

https://terra-core-deployed-pr-#.herokuapp.com/
Testing

Additional Details

Thank you for contributing to Terra.
@cerner/terra

Fails

:no_entry_sign:
Please include a CHANGELOG entry for each changed package this PR. Looks like a CHANGELOG is missing for:

terra-section-header

  Generated by :no_entry_sign: dangerJS against db07e90da9f48697f82db8866c725b930ab70722

Can you update A11y guide for section-header as well here from A11yMVB branch.

@sugan2416  @supreethmr
do you know when this will get released?

"Terra Section header" will be released today.


Dependency Injection

I can't for the life of me get the actions to pass through to the components. The context comes through just fine but when checking the props the actions are always null. Any advice on what to check to see why that is happening?

Can we some sample code? May be a sample repo.
Otherwise it's hard to tell what going on here.
On 2016 ජන 19, අඟහ at පෙ.ව. 4.54 Brandon Mikeska<EMAIL_ADDRESS>wrote:

I can't for the life of me get the actions to pass through to the
components The context comes through just fine but when checking the props
the actions are always null Any advice on what to check to see why that is
happening?
—
Reply to this email directly or view it on GitHub
https://github.com/mantrajs/mantra-sample-blog-app/issues/16.

Here ya go: https://github.com/brandonmikeska/mantra-example

See here: https://github.com/brandonmikeska/mantra-example/blob/master/client/containers/login.js#L15
You mapped sendVerificationCode as login in the composer.
But in the component you've used it as sendVerificationCode, but it should be login.
See: https://github.com/brandonmikeska/mantra-example/blob/master/client/components/authentication/login.jsx#L6

Hmm so I fixed it but yet the props are still empty.

Hey @brandonmikeska I was looking for login examples with Mantra and I think I've found your problem.
In routes.jsx you need to import Login from the container not the component.
See https://github.com/brandonmikeska/mantra-example/blob/master/client/configs/routes.jsx#L7
I think it needs to be:
import Login from '../containers/login.js';

I then get a userObject error in the actions, but this.props is no longer empty.
In essence at the moment the router is going straight to the component and bypassing all of your container code.

Thanks @adamdawkins!!!!


checkpointBuildTools.prepareCheckpointBuild: stop at installPhase

Description of changes
Switch off phases following installPhase, including fixupPhase, installCheckPhase, distPhase and postPhases of the checkpoint build artifact.
Add postInstallCheck to hello to test the existence of main program and to serve as a better test target of tests.checkpointBuildTools.
Cc: @messemar

Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[X] Tested, as applicable:

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

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

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

[X] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review run on x86_64-linux 1

@ofborg build tests.checkpointBuildTools

@ofborg build tests.checkpointBuildTools

Result of nixpkgs-review pr 295594 run on x86_64-linux 1

11 packages built:

hello (tests.config.allowPkgsInPermittedInsecurePackages)
tests.checkpointBuildTools
tests.pkgs-lib
tests.testers.nixosTest-example
tests.testers.runNixOSTest-example
tests.testers.testBuildFailure.helloDoesNotFail
tests.trivial-builders.concat
tests.trivial-builders.linkFarm
tests.trivial-builders.references
tests.trivial-builders.writeShellApplication
tests.trivial-builders.writeStringReferencesToFile


When I use  [dataSource]="dataSource" in our table then geting this issue
core.js:1449 ERROR Error: Uncaught (in promise): Error: Template parse errors:
Can't bind to 'dataSource' since it isn't a known property of 'table'.

Have you checked the Material table example?

I am using simple table tag those who have used in "material2-master\src\material-examples\table-pagination"
then i am getting following error
Uncaught (in promise): Error: Template parse errors:
Can't bind to 'dataSource' since it isn't a known property of 'table'.

Please change your issue so that it does follow the issue template. It gives the team the information needed to investigate.

Closing this issue as it does not follow the issue template. Please file a new issue that follows the template, which gives the team the information needed to investigate

The example is from version 6 and you are probably still using version 5. See this Stackoverflow thread.


0.70.3

First of all, thanks for the awesome job of releasing this gem.  It was a great start to help integrate wholesaler functionality for my client's e-commerce site.
I've made some significant updates to make the gem 0.70.x compatible.  Given the needs for my client, I did some extensive update to make the gem to work with 0.70.  I'm aware of other branches and all my changes include one or another of other people's updates, although my updates all came from me.
I've added the ability for wholesale accounts to be updated.  Otherwise, I've cleaned up and refactored the codebase to be 0.70.x compatible.  I also did my best to not influence the current features based on my client's needs but tried to limit it to minor feature updates and small bug fixes.  All the tests are passing except for the  weird testmail paths errors.
Please let me know what you think.

Awesome work @tavon! Thanks! I'll pull this locally and review everything tonight.
Keep it up!!


use python3.8 for backend image

use python3.8 for backend image

Seems better https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/202


need better pdf reader/ocr [FEATURE]

the document loader(pdf) is not accurately reading pdf, need to have an better ocr to be added along with pdf loader, something like document ai

agree +1. it be best for Flowise to adopt Unstructured lib for superior pdf/doc ingestion.

+1 it really needed

+1

+1

+1

+1


Multiple lines

Hi, I had in mind to add the availability of having an NPC name with more lines.
So I initially forked the project and started working on it. After that I realized that maybe it was better to have it in a different repository so that I can use it myself as a library in my plugins.
So I made Hologram-Lib, a library that allows you to create holograms (even with items and animations) with packets using ProtocolLib.
If interested I can do a PR to implement my library to create the npcs.

You cannot make the player name longer then 16 characters or the clients will disconnect

It has nothing to do with the title or even with what I wrote

You cannot make the player name longer then 16 characters or the clients will disconnect

Hey, very cool project! Altough it isn't really related to npcs, I still think that it might be useful if it is directly implemented into the lib. But I'm not exactly sure yet about the best way it could be integrated.

Yes I had started thinking about it, and the first thing is that I myself use a method in the HologramPool that every 2 ticks does the same job as NpcPool and should share same seeing players etc. So I had in mind to implement the holograms for each npc without the pool, and make public the 'show' and 'hide' methods of the holograms since they are protected at the moment.


🐞 BUG: orderBy Int type in connection query sorts by only the indifferent values!

Here's what the bug is, and how you can reproduce the same!
As per Order by Related Fields issue, users yet cannot sort postsConnection by orderBy: upvotes_DESC when this is the schema 👇
type Post {
  id: ID!
 ...
  upvotes: [Upvote]!
 ...
}

So, I created upvotesNumber field which accepts an Int. Every time I mutate an upvote from backend, I increment or decrement the field.
But to sort postsConnection by upvotesNumber, the orderBy introduces a severe bug.
query {
  postsConnection (
    orderBy: upvotesNumber_DESC,
    first: 1
  ) {
    edges {
      node {
        id
        title
        createdAt
        upvotesNumber
      }
    }
    pageInfo {
      endCursor
    }
  }
}

Suppose I have 3 posts. 1st post has 2 upvotes, i.e upvotesNumber: 2, 2nd post has 1 upvote, and the third post has 0 upvotes.
In this case, I get the correct postsConnection order and all three posts are fetched using the after argument.
But, if two or more than two posts have the same upvotesNumber value, then those posts won't render in postsConnection!
Consider, 1st post has 1 upvote, 2nd post also has 1 upvote, third has none...
then the same query will return return 1st and 3rd post but will skip the 2nd even if I use the correct after value that endCursor gives.
Same happens when 2nd and 3rd posts have 0 upvotes and 1st post has 1. Then, the query will return 1st and 2nd post, but would skip the three.
Expected behavior
I expect it to render all posts correctly just as it renders when I order it by createdAt_DESC.
createdAt_DESC works very well. I want to sort the posts by upvotesNumber even if they are the same!
Versions (please complete the following information):

Prisma Server: v1.26.0
prisma CLI: prisma/1.26.4 (darwin-x64) node-v11.4.0
OS: OSX Mojave
other dependencies: prisma-client, prisma-binding, etc.

Additional context
This makes me unable to use Prisma. I'm a novice. This might be the way how Prisma works or I might be doing it wrong. Please help 🙏
Resources I read before posting this bug report
Order by Multiple Fields
Order by Related Fields
Load More on Upvote bug

I was unable to reproduce this with 1.31. The cursor is not skipping values.
Can you please tell me which connector are you using? I am using the mongoDB connector.

I am using the postgres connector.

Thanks for reply, how do I find out what connector am I using?

@KumarAbhirup
I was using the latest version 1.31, maybe try that.

okay, sorry to be silly, but any guide on how do I update the docker container?

Since you will also need to upgrade to the new datamodel if you upgrade to 1.31, refer to this video: https://www.youtube.com/watch?v=48m1Gnmu19Q

Thanks bro 👍 will soon give an update on whether the bug persists. :-)

Neat 👌 upgrading to 1.31 fixes the issue ☕


ROCm Support Integration

This pull request introduces support for ROCm (Radeon Open Compute) in addition to CUDA for GPU acceleration. The changes primarily focus on enabling the build and execution of ROCm-specific code paths alongside existing CUDA paths.
In this PR, I use tensor_core_tiled_layout as proof of concept, but it generalizes to other kernels (for example, fp6_llm or sparse_marlin) with minimum effort. Feedback are welcome
co-author : @lcskrishna
Features:
ROCm Support Integration:

setup.py: Added detection for ROCm and adjusted the logic for compiling GPU extensions based on the availability of CUDA or ROCm.

Conditional Compilation for ROCm:

torchao/csrc/cuda/tensor_core_tiled_layout/tensor_core_tiled_layout.cu: Introduced conditional compilation directives to include ROCm-specific headers and adjust constants and operations for ROCm.

These changes ensure that the codebase can compile and run efficiently on both CUDA and ROCm platforms, leveraging the best available GPU acceleration technology.
Usage
With ROCm pytorch nightly docker , simply run PYTORCH_ROCM_ARCH=gfx942 python setup.py install
Next

[ ] AMD specific unit tests (tensor_core_tiled_layout)
[ ] workload and platform specific optimization (tensor_core_tiled_layout)

@msaroufim can we have the CI flow to test the change? thanks

I gave you triage access @petrex - what might help is also merging some simple PR since after that you shouldn't need me to trigger CI for you


Fixed compilation warning in snprintf() with 64-bit int

It's not guaranteed that int64_t is always long long. It's better to use PRI defines.

I think this should also be fixed in to_string_base().
Thanks for catching this though.

Thanks for letting me know. My compiler was kind of lazy and didn't give me warning for that one :) Fixed it.


🎨 Usage of a prefix

I want to use a v for my version tags but this is currently not possible. One solution would be to extend the options and add a regex or extend the check to also expect v as possible parameter.

I have the exact same issue. I don't want to change the repo's tag formatting. Support for tag prefixes would allow me to use this github action.

@undergroundwires Are you accepting pull requests? I can try to implement this.


The content was recently updated, and now it was covered in another PR, so I'll pass on this one, but thanks for the effort! :coffee:


Are you requesting a new package or reporting an issue on an existing one?
I am reporting an issue on an existing package
If reporting an issue on an existing one, what is the name of the package?
libcap
What changes are you requesting?
When I install libcap, I would expect to find its headers files in $DEVBOX_PACKAGES_DIR/include/
Additional context
I am compiling an Erlang project and I get this error:
...
c_src/exec.hpp:22:10: fatal error: sys/capability.h: No such file or directory
   22 | #include <sys/capability.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.

I don't have that header file in my include dir
carloratm@localhost> find -L $DEVBOX_PACKAGES_DIR -iname capability.h
carloratm@localhost>

The file is present in the nix store
carloratm@localhost> find -L /nix/store/*libcap* -iname capability.h
/nix/store/n0r5z0w1j3m0z8980hgg2rjkh617v1md-libcap-2.66-dev/include/sys/capability.h
carloratm@localhost>

Any  idea?
Kind Regards

Reading #1543 I suspect it is happening because libcap is a split package, but I am not sure

Per discussion on Discord -- this issue can be resolved by installing the dev output:
devbox add flake:nixpkgs#libcap^out,dev


Insert Question 4 and Two User Stories

I did not complete the 'estimated hours' section for the user stories.

Changes approved


Unable to install Nuget package on Visual Studio 2013 Ultimate due to nuget package not being compatible with plain old .NET 4.0

I just tried to install Topshelf into a new project and it refused to install stating that its bound to a version of .Net that the just created project is not compatible with.  It gives me .NET version 4.5.2 as its minimal required version. I can change the project version - and have - but I know from prior painful experience that this can create issues down the line in regards to testing, external libs, etc.
Was this a mistake on your side? The documentation states that .Net 3.5 is all that is needed.  Are the docs incorrect?  If so that makes topshelf much less usable in enterprise environments, so I hope not.

Topshelf v4 is only compatible with the currently supported version of .NET, which is 4.5.2.
If you need to use an earlier version, use the most recent 3.x release.

so topshelf isno longer XP/server 2003 compatible..sad.

You can always use the v3 packages with earlier versions of .NET.
Eventually you have to drop support for the old stuff, or it makes the project too complicated and fractured.

anyways your plugin rocks! :) so easy to use. hated MS approach.


How can I get this to work and look like find_files?

find_files is great because it:

ignores the .git folder
only searches the current directory without the need for tags
displays all paths relative to the current directory

Is it possible to configure telescope-frecency to just be a strictly better version of find_files? The default installation searches all directories in the system. If I add workspace = CWD I get:

Which has the following disadvantages:

File paths are not shown relative to the current folder
The workspace folder name is repeated for every entry, which takes up space and could be a problem if the folder name is large.
It doesn't ignore the .git folder

I've looked through the help manual but can't find any simple config options to remedy the above. I can of course write a custom function for path_display to make it relative to the CWD, but seeing as find_files already has this there must be something existing I can use? I an also add my own exclusion list for number 3 above but again I'm wondering if I can just reuse the one from find_files?
Many thanks

It seems this occurs because it is on Windows. Later I will try to reproduce after preparing Windows env.

Thanks. Is there any way I can help?

I tested the latest telescope & telescope-frecency on Neovim 0.9.5, and could not reproduce this.

I wrote this into C:\Users\foo\AppData\Local\nvim-frecency\init.lua.
minimal init.lua
local lazypath = vim.fn.stdpath "data" .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
  vim.fn.system {
    "git",
    "clone",
    "--filter=blob:none",
    "https://github.com/folke/lazy.nvim.git",
    "--branch=stable", -- latest stable release
    lazypath,
  }
end
vim.opt.rtp:prepend(lazypath)

require("lazy").setup({
  {
    "nvim-telescope/telescope.nvim",
    dependencies = { "nvim-lua/plenary.nvim", "nvim-telescope/telescope-frecency.nvim" },
    config = function()
      local telescope = require "telescope"
      telescope.setup {}
      telescope.load_extension "frecency"
      local builtin = require "telescope.builtin"
      vim.keymap.set("n", "<C-p>", builtin.find_files)
      vim.keymap.set("n", "<C-f>", function()
        telescope.extensions.frecency.frecency { workspace = "CWD" }
      end)
    end,
  },
})

And launch Neovim with $NVIM_APPNAME.
set NVIM_APPNAME=nvim-frecency
cd C:\Users\foo\AppData\Local
nvim

Type <C-f> to run telescope-frecency.

@Kurren123 Are you using the latest telescope-frecency? And what version of Neovim do you use?

@Kurren123 Report a reproducible process for this if you still see the problem. Feel free to reopen here.


Problems installing IJulia with Julia 0.4 on Ubuntu

I've been trying to install IJulia with Julia 0.4 on Ubuntu 14.04, but I've been unable to get it to work. Attempting to run:
Pkg.add("IJulia")

gives:
INFO: Building IJulia
INFO: Precompiling module JSON...
INFO: Precompiling module Conda...
INFO: Recompiling stale cache file /home/rdeits/.julia/lib/v0.4/Conda.ji for module Conda.
WARNING: Module BinDeps uuid did not match cache file
========================================================================[ ERROR: IJulia ]========================================================================

LoadError: __precompile__(true) but require failed to create a precompiled cache file
while loading /home/rdeits/.julia/v0.4/IJulia/deps/build.jl, in expression starting on line 2

=================================================================================================================================================================

========================================================================[ BUILD ERRORS ]=========================================================================

WARNING: IJulia had build errors.

 - packages with build errors remain installed in /home/rdeits/.julia/v0.4
 - build the package(s) and all dependencies with `Pkg.build("IJulia")`
 - build a single package by running its `deps/build.jl` script

=================================================================================================================================================================
INFO: Package database updated

I've purged julia, deleted ~/.julia, and all the julia-related files from .ipython, and reinstalled julia 0.4 from the staticfloat PPA, and I'm getting the same result.
After this failure, I can complete the build, by restarting Julia and running Pkg.build("IJulia"). However, the installation doesn't actually seem to be functional. Running notebook() gives me the jupyter web interface, and I can create a new Julia 0.4 notebook, but executing any cell in that notebook just results in no output whatsoever from the kernel.
As additional info: I can successfully install IJulia on Julia 0.3, but I still get no response from the kernel. Here's what the output looks like:

Any advice or suggestions? I'm happy to help try to debug this, but I'm not really sure where to start.

Dup of https://github.com/JuliaLang/julia/issues/13915 and https://github.com/JuliaLang/julia/issues/13200. The workaround is to just try again.


[App Configuration] Migrate documentation comments to TSDoc

Tags syntax: https://tsdoc.org/pages/tags/alpha/

@deyaaeldeen  - just checking, to test this I'm just doing 'npm run docs'?

Another note @deyaaeldeen - I'm getting 'AbortController' in my docs output, which is in a totally separate package. I note there is a --excludeExternals flag for typedoc - should we be using it?

to test this I'm just doing 'npm run docs'?

I would say run rushx lint and see if the linting report has complains about comments.

'm getting 'AbortController' in my docs output, which is in a totally separate package. I note there is a --excludeExternals flag for typedoc - should we be using it?

That is a good point and it is supported by v0.15.0 that we use. I opened https://github.com/Azure/azure-sdk-for-js/issues/12986.


fix: Smarter calculation of AT-SPI extents for the window

This fixes the case where the window bounds aren't set at the adapter level, but the window's root object does have the bounds property. This currently happens in GTK 4 with Newton. Maybe I should extend the Newton AT protocol so the compositor can provide the window bounds, but this oculd also happen in other implementations with AT-SPI, and as always, we should make our code as resilient as practical.
This also handles the possible case where there are both kinds of bounds on the window; in that case, the adapter-level window size always constrains the node-level bounds, while the node-level bounds could possibly provide their own origin in window coordinates.

On the AT-SPI side: I think allowing implementors to set the root node's bounds in (presumably) screen space would add confusion since on most cases nodes are expected to have their bounds relative to the root window. Even then, which window bounds are we talking about? Are the decorations included or not?
On the Newton side: this seem to contradict a previous change (#278). As you described in your latest blog post, letting applications claim they have the focus is dangerous because focus is something global to the desktop and therefore multiple applications could fight over it. I think window bounds have pretty much the same characteristics. What if, for instance, an application claim that its window size is much bigger than it actually is? The window could then cover up a window from another application, with all the security implications.

The intent is that if the root node object includes the bounds property, those bounds are specified relative to the inner window bounds set at the adapter level. For the actual AT-SPI adapter, both bounds are set by the application itself, but the node bounds could be provided by cross-platform code while the adapter-level window bounds are provided by a platform-specific component. In the case of Newton, currently the adapter-level window bounds aren't provided at all, though that could change. In either case, the node bounds property is never specified in screen coordinates, so it's consistent. Also, notice that the node bounds are constrained by the adapter-level window bounds, so a Newton application can't claim that the window is bigger than it actually is.

I still don't get why this would be useful, maybe I'm missing some context... I assume your Newton work is depending on this, so let's merge and see how it goes.


ACC-264.1 (Level A)Kyma-dashboard_Tab Strip Additional information read.

1.1 Internal Message Details
Internal Message:
Test Plan:	ACC SAP Kyma runtime 2024
Message Priority:	Medium
Affected Check Point:	ACC-264.1
Affected UI:	Search Field
Short text:	ACC-264.1 (Level A)Kyma-dashboard_Tab Strip Additional information read.
1.2 Application Details
Application Name	Kyma-dashboard
Application URL:	https://canary.cockpit.btp.int.sap/cockpit#/globalaccount/7304343e-1ce0-412b-a955-5948bab9d2c8/subaccount/e0ec1134-2770-40a2-910b-2b8e32ec8f60/subaccountoverview
User:	SSO
Technology:	SAP UI5
UI5 Version:	1.124.1
1.3 Test Environment Details:
GitHub	https://github.com/kyma-project/busola/issues
Web browser:	Google Chrome - Version 127.0.6533.73 (Official Build) (64-bit)
Operating System:	Windows 11 Enterprise Version 22H2
Screen Reader:	JAWS 2024.2405.83 ILM 64 bit for Windows
2. Screen Flow
•	Login into the application using the URL provided.
•	URL: https://canary.cockpit.btp.int.sap/cockpit#/globalaccount/7304343e-1ce0-412b-a955-5948bab9d2c8/subaccount/e0ec1134-2770-40a2-910b-2b8e32ec8f60/subaccountoverview.
•	Activate ‘Console URL:Link to dashboard’ in overview page.
•	Activate ‘Namespaces overview’ left navigation section.
•	Activate ‘Deployments’ item.
3. Issue
Synopsis: Additional information read.
Observed Behavior:
On accessing all ‘Tab’ items throughout the application, ‘Group’ is additionally read.
Expected Behavior:
Additional reading should be avoided.

Kindly refer to attached error and issue processing document for more details.
Regards,
Huda

ACC-264.1 (Level A)Kyma-dashboard_Search Field Additional information read1.docx
Issue processing-09.2021 (1).docx

Uploading ACC-264.1 (Level A)Kyma-dashboard_Search Field Additional information read1.docx…

ACC-264.1 (Level A)Kyma-dashboard_Search Field Additional information read1.docx


[tests-only][full-ci] test: split share link tests for apiSharingNgLinkShare/linksShare.feature

Description

Added test coverage for splitting share link tests for apiSharingNgLinkShare/linksShare.feature
Separated the scenarios related to update, remove and create share link in their respective files.

Related Issue

Part of: https://github.com/owncloud/ocis/issues/9046

Motivation and Context

How Has This Been Tested?

Locally
CI

Screenshots (if appropriate):
Types of changes

[ ] 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)
[ ] Technical debt
[x] Tests only (no source changes)

Checklist:

[ ] Code changes
[ ] Unit tests added
[ ] Acceptance tests added
[ ] Documentation ticket raised:

> Line 256: Link is not correct for apiSharingNgLinkShare/createLinkShare.feature:1656
  + Actual link   : https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSharingNgLinkShare/createLinkShare.feature#1656
  - Expected link : https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSharingNgLinkShare/createLinkShare.feature#L1656

Errors were found in the expected failures file - see the messages above!


Bump CATs release to 0.0.6

Description
The PR intends to bump cf-acceptance-tests-release to 0.0.6.
Motivation and Context
This will add minor changes and fix some existing issues in CATs.
How Has This Been Tested?
This has been tested by triggering build pipeline on the cf-acceptance-tests-release repo, though the CATs are not expected to be fully passing yet.
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 code has security implications.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

dup: https://github.com/SUSE/kubecf/pull/186


can't access diagrams api

There seems to be no way to build a plugin with UML diagrams support. Specifying
type IU
plugins [ 'com.intellij.diagram' ]

(Plugin ID taken from plugins/uml/lib/uml-support.jar!/META-INF/plugin.xml)
gives an error:

Error:Cannot find builtin plugin com.intellij.diagram for IDE: ~/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/ideaIU/2016.2/ed0e4e1f81b55ba0671088eb640580d2f562a547/ideaIU-2016.2

use just uml


Add cgroup namespace to info command

Codecov Report

Merging #355 (f0d49f5) into main (d209d75) will decrease coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #355      +/-   ##
==========================================
- Coverage   69.08%   69.06%   -0.03%
==========================================
  Files          47       47
  Lines        7033     7033
==========================================
- Hits         4859     4857       -2
- Misses       2174     2176       +2


Adds a StoreJSON function to the LocalVectoreStore, with unit-test

Hello @RussellLuo ,
Per issue: #1, here is my contribution to include a StoreJSON function on the LocalVectoreStore which allows the serialization of the data to the file-system for starters. Let me know if this looks good or you'd like any changes.
Thanks for the input and allowing this contribution!
Cheers,
-Deckarep

Please see latest changes.

Looks great, I'm going to merge this PR. Thank you very much for the contribution!


Number fields placeholder is not showing

there has been reports about placeholder not working for number fields (they already implement the HasPlaceholder interface)

tested and all seems to be fine


WESM Simplified Polygon Output

version: 0.1.dev28+gf5aee55
Python: 3.12.5 custom env
coincident.search.search(dataset='3dep' outputs simplified polygons from simplify_footprint() in src/coincident/search/wesm.py
Hasn't been a major issue except when I was looking at use case workunit == "CO_WestCentral_2019" where the simplified polygon via the 'coincident' search is drastically different than the actual WESM polygon.
Could implement an argument for toggling simplify() and some of it's parameters?

To speed up the initial search, I actually just created a separate parquet file of convex hulls rather than simplified polygons of all geometries! I wanted to be able to query the remote WESM.gpkg efficiently, but couldn't figure out a way. So opted for a 2 stage search to 1. find workunit/feature id based on the fast convex hull search then 2. use the feature id to just get the single detailed polygon from the remote WESM (which is fast).
https://github.com/uw-cryo/coincident/blob/dad5b63a2fe431ad2667a54d4a221029cda751de/src/coincident/search/wesm.py#L63
But yes, some of them are odd, so using simplify_footprint is probably a better approach!
https://github.com/uw-cryo/stv-aux-data/blob/main/WESM-chulls.geojson

I just learned from https://github.com/mapbox/geojson.io/blob/main/API.md that you can point to public geojson files on github (which renders much nicer than GitHub's default!
https://geojson.io/#id=github:uw-cryo/stv-aux-data/blob/main/WESM-chulls.geojson
Or any public URL: https://geojson.io/#data=data:text/x-url,https://raw.githubusercontent.com/uw-cryo/stv-aux-data/main/WESM-chulls.geojson

in #4 I've switched to just initially searching WESM working bounding boxes . Remote querying the native resolution polygons of the WESM.gpkg is very slow via ogr/geopandas, so the options are really to 1. pre-fetch the entire 1.8GB file or be 2. clever about searching.
Could be good to add a documentation page showing the differences of bbox, convex_hull, and actual polygon.


parameters should be property

I think that experiment's parameters should be property, so I do not need to do: npt_exp.get_parameters()['dropout'], but I can simply do: npt_exp.parameters['dropout'].
What do you think: @pitercl @jakubczakon ?

I think they should be different than property in they are a separate entity that is defined at the start and doesn't change -> those are the parameters of your experiment after all.
Now, I do like the idea of easier access via .parameters especially since in the neptune-lib there was .get_experiment but later simply you would call .parameters. I think there were reasons against, it but I don't remember right now. @lukasz-walkiewicz ?

get_parameters makes a http call to Neptune so it is ensured that returned value is up-to-date. Making it a property called just parameters would lead to potential misleadings that it's a cheap operation.


BugFix LiveQuery - update readme.md

BugFix LiveQuery
Update README.md -> Reorganization of sessions and inclusion of documentation about LiveQuery

I appreciate if you can do a review in the text. My native language is not English and may have some error in my changes in README.md

Wow, great work!

Thank You.
I have not had time to update the sample application. I'll try to do.
But following the guidance of the documentation has no error.

Brilliant!


[Feature request] Would like to add a new option to not show the context during live-preview

Sometimes the contextual content is a distraction for the preview content and it affects the concentration during live-preview, so I would like to add an option to show only the content included in the link and not the context of the link content.

This is a duplicate of #70; any progress will be posted there.


npm run example 报错

`> root@ example D:\pwork\imove

concurrently "lerna run watch --parallel" "cross-env APP_ROOT=example umi dev" "imove -d"

[2] server starts successfully at 3500!
[0] lerna notice cli v3.22.1
[0] lerna info Executing command in 4 packages: "npm run watch"
[0] @imove/compile-code: ><EMAIL_ADDRESS>watch D:\pwork\imove\packages\compile-code
[0] @imove/compile-code: > watch 'npm run build' ./src
[0] @imove/core: ><EMAIL_ADDRESS>watch D:\pwork\imove\packages\core
[0] @imove/core: > watch 'npm run build' ./src
[0] @imove/json-schema-editor: ><EMAIL_ADDRESS>watch D:\pwork\imove\packages\json-schema-editor
[0] @imove/json-schema-editor: > watch 'npm run build' ./src
[0] @imove/plugin-store: ><EMAIL_ADDRESS>watch D:\pwork\imove\packages\plugin-store
[0] @imove/plugin-store: > watch 'npm run build' ./src
[0] @imove/compile-code: > Watching run
[0] @imove/compile-code: > Watching build'
[0] @imove/compile-code: > Watching ./src
[0] @imove/compile-code: D:\pwork\imove\node_modules\watch\main.js:73
[0] @imove/compile-code:     if (err) throw err;
[0] @imove/compile-code:              ^
[0] @imove/compile-code: [Error: ENOENT: no such file or directory, stat 'D:\pwork\imove\packages\compile-code\run'] {
[0] @imove/compile-code:   errno: -4058,
[0] @imove/compile-code:   code: 'ENOENT',
[0] @imove/compile-code:   syscall: 'stat',
[0] @imove/compile-code:   path: 'D:\pwork\imove\packages\compile-code\run'
[0] @imove/compile-code: }
[0] @imove/compile-code: npm ERR! code ELIFECYCLE
[0] @imove/compile-code: npm ERR! errno 1
[0] @imove/compile-code: npm ERR<EMAIL_ADDRESS>watch: watch 'npm run build' ./src
[0] @imove/compile-code: npm ERR! Exit status 1
[0] @imove/compile-code: npm ERR!
[0] @imove/compile-code: npm ERR! Failed at the<EMAIL_ADDRESS>watch script.
[0] @imove/compile-code: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
[0] @imove/compile-code: npm ERR!      C:\Users\mei\AppData\Roaming\npm-cache_logs\2021-01-11T06_05_16_838Z-debug.log
[0] lerna ERR! npm run watch exited 1 in '@imove/compile-code'
[0] lerna ERR! npm run watch stdout:
[0]
[0] ><EMAIL_ADDRESS>watch D:\pwork\imove\packages\compile-code
[0] > watch 'npm run build' ./src
[0]
[0]
[0] lerna ERR! npm run watch stderr:
[0] > Watching run
[0] > Watching build'
[0] > Watching ./src
[0] D:\pwork\imove\node_modules\watch\main.js:73
[0]     if (err) throw err;
[0]              ^
[0]
[0] [Error: ENOENT: no such file or directory, stat 'D:\pwork\imove\packages\compile-code\run'] {
[0]   errno: -4058,
[0]   code: 'ENOENT',
[0]   syscall: 'stat',
[0]   path: 'D:\pwork\imove\packages\compile-code\run'
[0] }
[0] npm ERR! code ELIFECYCLE
[0] npm ERR! errno 1
[0] npm ERR<EMAIL_ADDRESS>watch: watch 'npm run build' ./src
[0] npm ERR! Exit status 1
[0] npm ERR!
[0] npm ERR! Failed at the<EMAIL_ADDRESS>watch script.
[0] npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
[0]
[0] npm ERR!      C:\Users\mei\AppData\Roaming\npm-cache_logs\2021-01-11T06_05_16_838Z-debug.log
[0]
[0] lerna ERR! npm run watch exited 1 in '@imove/compile-code'
[0] lerna WARN complete Waiting for 3 child processes to exit. CTRL-C to exit immediately.
[0] lerna run watch --parallel exited with code 1
[1] Starting the development server...
[1] i Compiling Webpack
[1] √ Webpack: Compiled with some errors in 1.85s
[1]  ERROR  Failed to compile with 1 errors14:05:20
[1]
[1] This relative module was not found:
[1]
[1] * ../../../packages/core/dist/core.esm.js in ./example/src/pages/index.tsx`

@SmallStoneSK  @iloveyou11  win下面的错误

@SmallStoneSK  @iloveyou11  win下面的错误

use https://github.com/jasongin/nvs check  this issue @iloveyou11

use https://github.com/jasongin/nvs check  this issue @iloveyou11

node 版本
v12.16.3

node 版本
v12.16.3

Have anything news & how to fix @meijinyi

Have anything news & how to fix @meijinyi

@meijinyi @t2hv33
Commit f62098b920043db18abd36adc560d12b64970920 has fixed it.
Watch command needs to use double quotes in Windows environment.

@meijinyi @t2hv33
Commit f62098b920043db18abd36adc560d12b64970920 has fixed it.
Watch command needs to use double quotes in Windows environment.


DEBUG RES ERROR : code(102) The requested API does not exist

Please add API 6.2.3 thanks

Hi,
i have the same error. I had selected API 6.2.2 with DSM 6.2.2
Thanks

Ask the author of the syno package

I temporarily made a workaround. Try reinstalling and testing.

For me now it works fine thanks


Fix local install command.

The local install command needs to provide the npm package name to be installed.

Thanks!


Tiny typo fix in README.md

Tiny typo fix.
For some reason, however, Github editor goes mad about the last, Ethereum line, even though I have not changed anything

Thanks @schamberg97 for supporting this project!!!

It’s nothing 😇 Thanks for an amazing project 😌


Dataset

Hi，Great work，I‘d like to reproduce it. Could you put CMC datasets on Google Drive？thank U.

Hi @Colintsl, thank you for your interest in our work.
We will try to push the dataset to OneDrive or GoogleDrive permanently, in the meanwhile you can try to download the dataset from MEGA CLOUD, NZ. as mentioned in the README file (the download speed is slow).
https://mega.nz/file/LKxAyZiT#wa-aMQmgk9guNkjj1olaPeUf-LgPS5P9iYBmZSLFnp8

Google Drive is ready, you can download it from now
https://drive.google.com/file/d/1eliDg_DTHqgW10ww7aQWvicAwP3hlVEo/view?usp=sharing

The Mesa cloud is not  free, but I have now solved the problem and successfully reproduced the work using your data. Thank you.
I now want to run the code on my own scenario now. There are 3 cameras in the scene, collecting videos from 3 perspectives, but there is no calibration information for the cameras.
Could you help me know what data-related work I should do to adapt the input of the code?
I observed that :

there is .npz format information in the dataset, and there are also .mat format data under .../ms_glmb_ukf/cmc/
there are some parameters for the camera and dataset in gen_model.py
the  data input is actually a sequence of numbered PNG format images, not direct MP4.

I want to know what I should do for input adaptation. I already have three MP4 format video files. Currently, my plan is to first extract frame images into PNG format and then process them into. npz,. mat format, but I don't know how to do it specifically? Can you tell me about the tools or processes you handle? Thank you very much.
Additionally, do you have any suggestions for directly processing video streams with code? The paper mentions the advantage of being able to adapt to the camera。Does this requires knowledge of the camera's intrinsic parameters and the extrinsic relationships with other cameras? because I saw in gen_model.py that some configuration parameters are specifically set for a certain dataset, such as WILDTRACK.


UTIL_CustomSettingsFacade test methods should default unspecified values

When calling e.g. getContactsSettingsForTests and specifying a single value, all other values for that setting are set to null. It would be nice to set them to default values so those don't have to be specified for tests that are expecting defaults.
We still need a way to specify a null value, so the design will have to include that possibility.

**lurch: add

Tracking W-008897

We just pass it an object, right?

Salesforce has determined that this issue will not be explored further.


How to set nodejs4.3

AWS Lambda is suggesting nodejs version 4.3, how can I set this in the skill prior to deploy?

See https://github.com/axis-tip/alexa-skill-meezan/blob/master/.travis.yml
Basically, I believe you have to do something like:
deploy:
  provider: lambda
  function_name: (your function name)
  role: (your role name)
  handler_name: handler
  runtime: nodejs4.3
  zip: build/package.zip
  access_key_id: (your access key)
  secret_access_key:
    secure: (your encrypted deploy key)

@cameronhunter this can probably be closed, since I think I answered it correctly (I have this working for my skill).
If you want a PR to the .travis.yml to close this please let me know.