"anchor -V" & "anchor --version" not accurately updating after "AVM use X.XX.XX" command

"anchor -V" & "anchor --version" not accurately updating after "AVM use X.XX.XX" command... "avm list" is still displaying the proper update. Possibly recommend the use of "avm list" in place of "anchor -V" when the AVM is in use.

This is extraordinarily maddening and confusing with long build times.

It's likely you have another conflicting anchor binary somewhere, e.g from the npm package. See which anchor.

This error persisted on window WSL after removing the NPM package.

Ok, then it may be something else. anchor --version is always correct, avm list can be incorrect if you have a conflicting anchor binary so it shouldn't be relied upon in place of anchor --version.

How do I identify and remove conflicting binaries?
On Sun, Mar 6, 2022 at 12:23 PM Tom Linton @.***> wrote:

Ok, then it may be something else. anchor --version is always correct, avm
list can be incorrect if you have a conflicting anchor binary so it
shouldn't be relied upon in place of anchor --version.
—
Reply to this email directly, view it on GitHub
https://github.com/project-serum/anchor/issues/1559#issuecomment-1060032892,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABHLFUXCG532QWS4XVN7BUTU6UH55ANCNFSM5QAY7S2A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

Try which anchor or find / -name anchor -type f or uninstall everything and make sure running anchor shows command not found, then reinstall avm.

What is the exact uninstall command? Not seeing it in the docs
On Sun, Mar 6, 2022 at 1:10 PM Tom Linton @.***> wrote:

Try which anchor or find / -name anchor -type f or uninstall everything
and make sure running anchor shows command not found, then reinstall avm.
—
Reply to this email directly, view it on GitHub
https://github.com/project-serum/anchor/issues/1559#issuecomment-1060039822,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABHLFUTGEG6WZGJVSVVOXN3U6UNMTANCNFSM5QAY7S2A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

cargo uninstall avm

What about for node?
On Sun, Mar 6, 2022 at 1:20 PM Tom Linton @.***> wrote:

cargo uninstall avm
—
Reply to this email directly, view it on GitHub
https://github.com/project-serum/anchor/issues/1559#issuecomment-1060041366,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABHLFUURNRRGMHWVW53W3GTU6UOS3ANCNFSM5QAY7S2A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>


fix: [lw-11753] do not show address suggestion dropdown if there are …

…no addresses
Checklist

[x] JIRA - LW-11753
[ ] Proper tests implemented
[ ] Screenshots added.

Proposed solution
Explain how does this PR solves the problem stated in JIRA ticket.
You can also enumerate different alternatives considered while approaching this task.
Testing
Describe here, how the new implementation can be tested.
Provide link or briefly describe User Acceptance Criteria/Tests that need to be met
Screenshots
Attach screenshots here if implementation involves some UI changes

Allure Report
allure-report-publisher generated test report!

processReports: ❌ test report for 200010c5

passed
failed
skipped
flaky
total
result

Total
31
1
4
0
36
❌


[4/n] Refactor preference dataset with transforms design

Context
Following the RFC in https://github.com/pytorch/torchtune/pull/1186, we will use the unified message_transform -> template -> tokenization data pipeline in all our datasets. This PR updates PreferenceDataset to follow this pipeline. We can't use SFTDataset here because chosen and rejected messages are treated separately.
Covers #1214
Changelog

Refactor PreferenceDataset and stack_exchange_paired_dataset
Add ChosenRejectedToMessages message transform
StackExchangedPairedTemplate -> QuestionAnswerTemplate
Update tests

Test plan

Added unit tests
TODO: launch a DPO run with stack exchange paired

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

Project coverage is 68.66%. Comparing base (9fd5d01) to head (a41479b).
Report is 1 commits behind head on main.

Files
Patch %
Lines

torchtune/datasets/_preference.py
91.66%
1 Missing :warning:

torchtune/datasets/_stack_exchange_paired.py
90.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1276      +/-   ##
==========================================
- Coverage   70.49%   68.66%   -1.84%
==========================================
  Files         251      253       +2
  Lines       11596    11690      +94
==========================================
- Hits         8175     8027     -148
- Misses       3421     3663     +242

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

I've included a couple examples of preference datasets below below, see here for a good list, too.
Chat Format
Anthropic HH-RLHF (processed)

Instruct-format

These datasets are nice examples of processed datasets which are ready for consumption in a standard format. This is one of the things I was unclear about - it seems like we currently have a prompt template for supporting each specific dataset type OOTB? Do you think this scales in a sensible way, or are we just being deliberate with the datasets we provide OOTB to ensure there's sufficient examples for users to specify their own? For example, with preference datasets with standard chat/instruct formats as above, would it be possible for the user specify a standard template we provide (such as ChatML?) rather than having to write one for their specific usecase?
Continuing on from above RE the default datasets we provide, I would also prefer the default exemplar preference dataset to be chat/instruct style. Chat/instruct style preference datasets are the standard for open source preference/DPO-trained models; I think it's a far more common use case (the stack exchange paired dataset is pretty specific), and one of the motivators for this refactor is to unify chat+instruct preference datasets, right? I'd like to make sure there's at least one example of a chat/instruct dataset which allows users to replicate e.g. instruct models tuned with DPO in torchtune.
Sorry to make you explain probably obvious things here - I'm trying to get the full picture of how an end-user would configure one of these datasets with the current example.
Thank you so much for helping out with this, I'm really enjoying seeing your datasets refactor masterplan fall into place so neatly.

To further motivate my points above, my grand plan for alignment in torchtune is for a user to roughly follow the fine-tuning steps used by e.g. Llama2 or InstructGPT. The dataset in the the PPO config I provide is the chat-style HHRLHF dataset above - I want to demonstrate an end-to-end journey for what I anticipate will be the most common use-case for someone using torchtune for alignment: from SFT, to reward modelling, and finally RLHF using PPO. If I were to write a tutorial for this, I would love to show users how to follow this process with minimal changes to our configs (in an ideal world, without modifying any code at all!!).

@SalmanMohammadi Thanks for sharing these examples. I suppose I generalized a bit based off of stack exchange paired but as you mention it is rather niche, although already present in our library. I'm happy to add one or both of the datasets you recommended as builders, both of those seem to share the same message_transform and that might be more generalizable than the one I put for stack exchange.

it seems like we currently have a prompt template for supporting each specific dataset type OOTB?

Not exactly, the prompt template is not required. A lot of the exemplar datasets have it just to show plenty of different examples of how you would configure a custom dataset. Users can use any or no prompt template when making their own builders.

I'm happy to add one or both of the datasets you recommended as builders

Could we please add a builder for https://huggingface.co/datasets/RLHFlow/HH-RLHF-Helpful-standard?row=1*, which is a chat-style preference dataset?
Let me know if you'd rather see this as a followup.


[Candidate 2v2 Freezing Bursa ZH v1] AI causes big stalls on map

Observed behavior
AI causes big stalls on map. Occasionally drops down to 5 FPS for a short period. Tested with China Infantry Hard Army vs GLA, SWG Hard Armies. Perhaps is a pathing issue.
Expected behavior
Map has no big stalls when playing with AI.
Screenshots

hmm didnt happened on me i cant test this on my pc . what is ur system

Replay for latest map version in GitHub. Fast Forward to 08:15 for biggest stalls.
freezingbursa_stalls.zip

The lowest it drops on my machine was 5 FPS near the end of the match.

well i dont know if there is  a fix for this soo :(

TimberOwl: Cannot be fixed.


Add code coverage to CI

Closes #172.
Running this in all dev branches seems overkill. It also takes ~8 minutes to run.

Running this in all dev branches seems overkill. It also takes ~8 minutes to run.

I think it's worth it because if you have codecov set up, it tells you if your PR has enough diff coverage. I had this in https://github.com/CosmWasm/cosmwasm/pull/1286 where the tool made me add more tests to pass the codecov checks.

Looks like a good start. I'd add a codecov config as otherwise you hardly have visibility of the results.

Nice. I'll copy / adapt it from cosmwasm.

Also have a look at https://github.com/CosmWasm/cosmwasm/blob/main/codecov.yml, especially the first line avoids annoying comments from the bot.


Upgrading 3.0.0 to 3.1.0 is a breaking change, major not minor update.

Just for your information when upgrading to 3.1.0 from 3.0.0 I got a breaking change in my build system, hence yous should of bumped it to 4.0.0.
v.3.0.0
working
v3.1.0
    Cannot find module 'node:http' from 'index.js'

    Require stack:
      node_modules/node-fetch/src/index.js
      test/contract/consumer-test.js

      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:299:11)
      at Object.<anonymous> (node_modules/node-fetch/src/index.js:9:1)

As you can see from the stacktrace, we are importing node-fetch into a test in the jest framework (jest version 25.1.0).

We did not account for ppl to use build steps. that is why it was not a major change.
v3 was released with a breaking change of requiring node v12.20 at which point node: prefixes is supported in esm but not in commonjs.
The recommended way to load node-fetch@3 is via import fetch from 'node-fetch'
even if you are using commonjs then it should use: import('node-fetch').then(...)
Read more here of how to prevent bundlers to rewrite it: https://github.com/node-fetch/node-fetch/issues/1279#issuecomment-915063354
Another recommendation is that you change the target to output esm
As of now, i'm closing this as a duplicate of https://github.com/node-fetch/node-fetch/issues/1367#issuecomment-966970192

@basickarl,  just for curiosity... what build tool where you using?

Also in the other issue i linked to, they are blocked from using a newer node version by aws
aws use node 14.17
and node: was added in commonjs in NodeJS v14.18
so another quick solution on your part could simply be to update the node version.

@basickarl, just for curiosity... what build tool where you using?

Good old Jest! (Jest does transpiling behind the scenes, we do have config files which Jest read, but nothing major though.).


[Bug]: The style method is deprecated

Is there an existing issue for this?

[X] I have searched the existing issues and checked the recent builds/commits of both this extension and the webui

Is EasyPhoto the latest version?

[X] I have updated EasyPhoto to the latest version and the bug still exists.

What happened?
The style method is deprecated
Steps to reproduce the problem
start sd
What should have happened?
Easyphoto is used normally
Commit where the problem happens
webui:[v1.7.0]
What browsers do you use to access the UI ?
Google Chrome
Command Line Arguments
--theme=dark --skip-prepare-environment --xformers --listen --api --enable-insecure-extension-access

List of enabled extensions

Console logs
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:254: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  instance_images = gr.Gallery().style(columns=[4], rows=[2], object_fit="contain", height="auto")
/root/stable-diffusion-webui/modules/gradio_extensons.py:55: GradioDeprecationWarning: `width` is deprecated in `Interface()`, please use it within `launch()` instead.
  res = original_BlockContext_init(self, *args, **kwargs)
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:523: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  gallery = gr.Gallery(template_gallery_list).style(
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:539: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  uploaded_template_images = gr.Gallery().style(
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:589: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  scene_id_gallery = gr.Gallery(
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:1167: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  photo_infer_output_images = gr.Gallery(label="Output", show_label=False).style(
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:1207: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  face_id_outputs = gr.Gallery(
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:1314: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  scene_id_gallery = gr.Gallery(
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:1809: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  output_images = gr.Gallery(
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:1962: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  cloth_gallery = gr.Gallery(tryon_cloth_gallery_list).style(
/root/stable-diffusion-webui/extensions/sd-webui-EasyPhoto/scripts/easyphoto_ui.py:2206: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  tryon_output_images = gr.Gallery(label="Output", show_label=False).style(

Additional information
No response

same to me

same to me,A111 webui:[v1.8.0] python:3.10.6 torch:2.1.2+cu121


How to obtain training and test set?

I have executed the cvs_to_numpy.py code after downloading fer2013.csv from https://www.kaggle.com/c/challenges-in-representation-learning-facial-expression-recognition-challenge/data.
Now, it creates two files:
data_kike.npy and labels_kike.npy.
From this, please tell me how to get the 4 files:

data_set_fer2013.npy
data_labels_fer2013.npy
test_set_fer2013.npy
test_labels_fer2013.npy

I assume validation data should be obtained here http://www.socsci.ru.nl:8180/RaFD2/RaFD.
But data_kike.npy and labels_kike.npy are data_set_fer2013.npy data_labels_fer2013.npy.

@atulapra how you fixed your problem?

@NikAndrush I did not train the model. I used pre-trained weights I found elsewhere.

@atulapra Does the pre-trained weights work well? It seems not very good in my computer

@gaodlike with my pretrained model efficiency is nearly 75-80%

@atulapra can you send any link? I can't find(

@innagorda You can find the model files in my repo here.


Link the tickmarks color on activation and deactivation of the accounts to green and red correspondingly.

In the Users tab, the Activate/Deactivate column has one green tickmark only for both activated and deactivated accounts. I would like to update the HTML code such that for deactivated accounts, the color changes to red. Also, I am a GSSOC'21 Participant and would request you to add the same label.

Okay. Assigning to you.


adding check for former edX employee

This should check the before entry in people.yaml to see if the PR was created while a former employee was at edX.
Do we have data to test this in staging?

I've add new test data and changed the tests, but I'm not sure if they are actually useful tests.


⚠ WSINGRESOS - RECIBOPAGO has degraded performance

In 3c80370, WSINGRESOS - RECIBOPAGO (https://srvshyweb.yucatan.gob.mx/cgi-bin/wspd_cgi.sh/WService=wsingresos/internet/servicios/wsRecibosPagosWeb.r) experienced degraded performance:

HTTP code: 200
Response time: 2225 ms

Resolved: WSINGRESOS - RECIBOPAGO performance has improved in 98a5157.


compromised package?

Everytime I run causalpy (0.10.0)
Python 3.9.9
causalpy.pymc_experiments.RegressionDiscontinuity
some variant of
try_march_fhia3q6t.exe
shows up in c:\Users\User\AppData\Local\Temp
something to do with CyberMark?

Just reinstalled and same

WTH, how did you install?

@drbenvincent How did you upload to pypi?

I was doing this https://github.com/pymc-labs/CausalPy/blob/main/CONTRIBUTING.md#actual-release-to-pypiorg-manual, manually using my (very secure) pypi username and password.
Recently @lucianopaz made some changes. To be honest I'm not yet up to speed on how all that works. Could that have lead to a problem? https://github.com/pymc-labs/CausalPy/blob/main/CONTRIBUTING.md#actual-release-to-pypiorg-manual
https://github.com/pymc-labs/CausalPy/blob/09958f784d0c954df8f4f2512bb39471190a0f48/.github/workflows/ci.yml#L44

There's also a PR from @lucianopaz for release automation https://github.com/pymc-labs/CausalPy/pull/163/files but that's not been merged yet.

OK, I think it's very unlikely that our package is compromised then and I would expect @thistleknot's PC to be compromised. To say for sure though, we would need to know which file (.tar.gz or the wheel) was actually downloaded and just unpack that and check.

Installed via pip install causalpy
On Thu, Mar 9, 2023 at 2:57 AM Thomas Wiecki @.***>
wrote:

OK, I think it's very unlikely that our package is compromised then and I
would expect @thistleknot https://github.com/thistleknot's PC to be
compromised. To say for sure though, we would need to know which file
(.tar.gz or the wheel) was actually downloaded and just unpack that and
check.
—
Reply to this email directly, view it on GitHub
https://github.com/pymc-labs/CausalPy/issues/172#issuecomment-1461802374,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABHKKOWKGR3J4JFCVOQXTE3W3GZQFANCNFSM6AAAAAAVURJ4P4
.
You are receiving this because you were mentioned.Message ID:
@.***>

But I'll try downloading the .gz and installing that way?
On Thu, Mar 9, 2023 at 6:02 AM Joshua Laferriere @.***>
wrote:

Installed via pip install causalpy
On Thu, Mar 9, 2023 at 2:57 AM Thomas Wiecki @.***>
wrote:

OK, I think it's very unlikely that our package is compromised then and I
would expect @thistleknot https://github.com/thistleknot's PC to be
compromised. To say for sure though, we would need to know which file
(.tar.gz or the wheel) was actually downloaded and just unpack that and
check.
—
Reply to this email directly, view it on GitHub
https://github.com/pymc-labs/CausalPy/issues/172#issuecomment-1461802374,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABHKKOWKGR3J4JFCVOQXTE3W3GZQFANCNFSM6AAAAAAVURJ4P4
.
You are receiving this because you were mentioned.Message ID:
@.***>

Normally I wouldn't think it's a package, but I read recently that a lot of
python packages are compromised, so that's why I reached out.  I'm not sure
where it came from.  Could have hijacked my pip for all I know, but it only
happens when I load that package.
On Thu, Mar 9, 2023 at 6:03 AM Joshua Laferriere @.***>
wrote:

But I'll try downloading the .gz and installing that way?
On Thu, Mar 9, 2023 at 6:02 AM Joshua Laferriere @.***>
wrote:

Installed via pip install causalpy
On Thu, Mar 9, 2023 at 2:57 AM Thomas Wiecki @.***>
wrote:

OK, I think it's very unlikely that our package is compromised then and
I would expect @thistleknot https://github.com/thistleknot's PC to be
compromised. To say for sure though, we would need to know which file
(.tar.gz or the wheel) was actually downloaded and just unpack that and
check.
—
Reply to this email directly, view it on GitHub
https://github.com/pymc-labs/CausalPy/issues/172#issuecomment-1461802374,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABHKKOWKGR3J4JFCVOQXTE3W3GZQFANCNFSM6AAAAAAVURJ4P4
.
You are receiving this because you were mentioned.Message ID:
@.***>

We definitely appreciate you reaching out @thistleknot. If you install with pip install git+https://github.com/pymc-labs/CausalPy.git then it will download from GitHub rather than pipy. Obviously kill your previous environment and start a new one. We know the GitHub repo itself is ok, the possibility is just if the package on pipy is compromised or not.

I checked both packages manually and there was no .exe file in them.

This is actually a theano, aesara, pytensor issue. When pytensor is imported, it calls into try_march_flag to set the default compilation flags. This produces an executable file that is run and removed afterwards. This might be the culprit of the avast blocker.

Thanks for explaining @lucianopaz that makes sense!


Feat: Allow setting API key in user settings

Is your feature request related to a problem? Please describe.
There is no option to set per-user API keys. It would be nice to set individual limits and track costs for the users.
Describe the solution you'd like
An input field in the settings, available to users, to set an API key for the default OpenAI-compatible endpoint.
Describe alternatives you've considered
Using one key for all users (neither comfortable nor secure).
Additional context
I would love to see a solution to this in the future, making this project even more awesome!

+1，只有管理能填apiurl和key，用户是免费用的。可以让用户自己填key，用自己的key对话。这样相当于比nextchat多一个上传文件了

@max00346 wouldn't it be simpler to just allow passing a user_id to the proxy?

@max00346 wouldn't it be simpler to just allow passing a user_id to the proxy?

yes thanks, that would be even better!

cc: @tjbck can you pass the user id to the openai endpoint?
This should help here + in abuse detection.

Implemented as manifold pipe function in dev, more examples will be added to our community platform.

function-openai_manifold-export-1719090778471.json

cc: @tjbck can you pass the user id to the openai endpoint?
This should help here + in abuse detection.

There's an example of a moderation filter already in the Discord, we'll be sure to get that on the community site when integration is available. I'll be whipping all the present authors into getting uploaded 💪


Lexer don't use the extensions ?

Extension Name: markedAlert
Extension Version: latest
Project Version: latest
Device: Desktop
OS@version (or Browser): macOS@latest, <EMAIL_ADDRESS>(aarch64)
Node And NPM Version<EMAIL_ADDRESS><EMAIL_ADDRESS>
Description
Hello there,
I basically need to use the lexer, then the parser. My code looks like this :
import { Marked } from 'marked'
import markedAlert from 'marked-alert'

const marked = new Marked()
marked.use(markedAlert())

Later in the code, I use these functions :
marked.lexer(markdown)

// elsewhere
marked.parser(tokens)

The markedAlert extension is not used, and alerts just look like a blockquote. I don't think it's a bug, I think it's more something I don't understand with how marked works. I've read the doc and unfortunately all the things I've tried didn't work.
If I use marked.parse(markdown), the alert is rendered.
To Reproduce (⚠ read below)
https://stackblitz.com/edit/github-j7rreh?file=app.vue
It's a nuxt app, there's an app.vue file with the JS and the HTML for rendering.
Thanks !!

Expected Behavior
Actual Behavior
Additional Information

Hi @mathieunicolas,
Thanks for providing the code and details!
It looks like markedAlert isn’t applying because the lexer and parser methods don't automatically integrate all extension settings when used separately. marked.parse(markdown) works because it applies both the lexer and parser steps, using the extensions together by default. Here’s how to manually integrate markedAlert in this context:
import { Marked } from 'marked'
import markedAlert from 'marked-alert'

const marked = new Marked()
const tokens = marked.lexer(markdown)

// Get the walkTokens function and extensions from markedAlert
const { walkTokens, extensions } = markedAlert()

// Convert 'blockquote' tokens to 'alert' tokens
marked.walkTokens(tokens, walkTokens)

// Configure parser options to recognize alert tokens
const parserOptions = {
  extensions: {
    renderers: extensions.reduce((acc, { name, renderer }) => {
      acc[name] = renderer
      return acc
    }, {}),
  },
}

// Now parse the tokens with the custom options
const html = marked.parser(tokens, parserOptions)

console.log(html)

Let me know if this resolves the issue!

Hi @bent10, thank you very much !
It definitely resolves the issue ! Is it something that occurs with all extensions, or is it something related to markedAlert ?
Do you think it should be covered in the marked doc ?
Thanks again !

You're welcome, @mathieunicolas!
Yup, this kind of issue can arise with other extensions as well, especially those that rely on both lexer and parser transformations (like marked-alert). When extensions don’t automatically apply across all methods, manual integration, like we did here, becomes necessary.
As for the documentation, this would indeed be a valuable addition! Many users rely on marked’s modular methods (lexer and parser), so it would help to clarify how extensions interact with each of these functions separately. You might consider opening an issue or PR in the marked repo to propose adding a section on this topic.
Thanks for the follow-up!


kProcessor interface

kDataFrame.hpp:
create an interface for all the public functions
classes:

kDataframeIterator(not _kDataframeIterator)
kDataframe
dbgIterator
kDataframeMQF-MAP-PHMAP

Algorithms.hpp:

parseSequences(allversions)
countKmersFromFile and string
3)load KMC
transform and transform in place
filter 2 versions
aggregate 2 versions
merge
union and intersect and Diff
you decide about the kmerdecocer fns
index and index mega and index priorityqueue
inner join

defaultColumn.hpp:

Column
vectorColumn: it is a template make a version for int,bool,double,uint32_t
mixVectors
4)QueryColorColumn
prefixtrie
dedupicated column it a template make a version for:
a) deduplicatedColumn<vector<uint32_t>, mixVectors>
b) deduplicatedColumn<vector<uint32_t>, prefixTrie>
c) deduplicatedColumn<vector<uint32_t>, insertColorColumn>

Please note that functions with anonymous functions as input can't be wrapped like:

aggregate
filter
merge
transform

There's a file called extend_algorithms that we can add custom versions of the functions in it with unique names. The currently implemented functions in that file are extracted from the kDifferentialExpression usecase.

@mr-eyes   Did you push the branch implementing the wrapper?

I want to make sure that I understand correctly! you finished the wrapper for those functions but it cant take python  lambda functions and has to use functions from extend algorithms.

Yes, passing lambda function in Python wrapper isn't supported.
On Sun, Aug 29, 2021, 1:35 PM Mostafa Shokrof @.***>
wrote:

I want to make sure that I understand correctly! you finished the wrapper
for those functions but it cant take python lambda functions and has to use
functions from extend algorithms.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dib-lab/kProcessor/issues/86#issuecomment-907776730,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABWVPKDMGPMI6D3GJIYAK63T7ILQXANCNFSM5CEO2JEA
.


Flawed saveEventually architecture (does not execute saves in order)

I know this is more high-level than a bug report typically should be, but I am convinced that there is a fundamental flaw in how the saveEventually() mechanic works which cascades into a bunch of issues.
Root Cause(s)

I would expect that saveEventually() calls should synchronously add operations to a queue, and then that queue in the background executes the operations in their original order where one operation must finish before the next.  I have not inspected the open source code, but there is ample evidence that this is not in fact how it is implemented.
Note: the original order does not need to be respected IF there is no overlapping parent/child relationships in the graphs of the objects being saved, but if this optimization is being attempted to be utilized, there must be a bug in the parent/child traversal checking algorithm for the issues below to occur, plus it seems error-prone because there would be circumstances where appropriate parent/child data has not been included in a query, and therefore it is not possible to know there is a parent/child relationship even though it should be factored in.

Resultant Issues

Deadlocks can happen in what should be benign places.  While Richard Ross's commit da2df65ad25b89aa3d8962215eb466f4f1cb9181 did fix some deadlock issues (thank you!), I have sporadically still seen deadlocks strike.  One notable time, the stack trace showed that the two threads deadlocking were callbacks from basically sequential X.saveEventually() and Y.saveEventually() calls.  This strikes me as bizarre because as I discussed above, I would expect these calls to do nothing more than synchronously adding objects to a queue, and logically code for Y saving itself should not be executing before X has completely finished saving itself.  (Again if there is logic which is only meant to allow this when it's "safe", clearly that logic is broken, because here it wasn't safe).
Data sometimes does not get persisted to the backend.  Another issue I've seen is that when calling X.saveEventually() then Y.saveEventually(), even though the changes are reflected in local storage, the changes to Y never get persisted to the database.  I've tried putting the app into the background, restarting it multiple times, etc., to increase the chances of the save happening, but it just never does.  Note that unlike the deadlocks that are sporadic, for this issue I DO have a project that can reproduce this with 100% consistency that I am happy to share with Parse employees.  My guess is that this is due to some broken logic detecting parent/child relationships which prevents the second save from persisting because the object being saved is involved in the first save (i.e. object X has a pointer to object Y).
This is much more minor than issues #1 and #2 but is just further evidence of the architectural issue.  As noted in https://developers.facebook.com/bugs/781962138589388/, if you call X.removeObject(a, "array"), X.saveEventually(), X.addObject(b, "array"), and X.saveEventually(), Parse cannot handle it.  This again points at the fact that these operations should be queued but then executed in order, which is not happening.  This may seem innocuous because you can wait for the result, but it actually defeats the entire point of the saveEventually() architecture, which is that you can fire-and-forget and have a responsive app instead of always waiting for saves to finish asynchronously before allowing continued user engagement.

Resultant Impact
I don't want to be melodramatic, but these issues have a catastrophic impact on our app.  Places in our UI where we want users to be able to select multiple options in rapid succession can cause deadlock and/or missing data (i.e. does not get persisted to backend).  Our only workaround right now is to show a Saving indicator as we sit there and wait for a saveInBackground() call to return, and this makes a terrible user experience, and severely discourages them from performing multiple actions in quick succession and has a big impact on our engagement and retention.  We're an early startup at small scale now, but we very quickly need to scale up to a large number of users, and with these major issues we simply cannot keep realistically using Parse.
I know this is a thorny and difficult piece of code to diagnose/debug/re-architect, but the current way it's architected just does not work and to a large degree defeats the whole purpose of the saveEventually() architecture, which is to fire and forget and not wait for callbacks.  Without this working, one cannot really build a responsive app that is acceptable in the modern app world if you have to constantly wait for background saves to finish before allowing the user to safely progress.  Please prioritize this highly and give it the due attention it deserves!

Related: #359, #32.
Currently, the order of save eventually commands is persisted on a per-object basis (every PFObject has an internal _eventuallyTaskQueue that is respected for operations).
As much as I'd like to expand that to allow for atomic operations based on object graph, I don't think that's a feasible goal. There's no good algorithm we currently have that can detect if two objects are in a relationship with each other (see: collectDirtyChildren: and friends), so the only solution for that would be to put it in its own queue.
If memory serves, point number 3 is actually not possible for a different reason - every operation you perform on an object creates an instance of PFFieldOperation, and attempts to merge it with the previous operations. As we don't have a way to merge an 'add' and 'remove' operation together on the back-end in a single operation (see the REST API for Updating Objects), and thus we can't support that flow in SDK. FWIW, when the initial bug on Facebook developers came in (https://developers.facebook.com/bugs/667066373397539/), we did have a discussion on whether or not our back-end could be updated to support it, and we decided at that time there weren't enough people with that use-case to go ahead and attempt to support it right now.
There are certainly architectural issues with LDS, and we have been having serious internal discussions on the best way to move forward and attempt to fix them, but seeing as backwards compatibility is a huge thing to have to maintain, some of these implementations may take a while to ever be seen.
We have also discussed eventually depreciating saveEventually mostly for the reasons you have outlined above - it really doesn't work how most people would expect. I wish I had a better solution for you, although one might be to build up your own version of the eventually without respect to operations (which seems to be the primary issue you're running into), which can guarantee proper ordering of operations.

Thanks for the explanation Richard.  Would it be remotely feasible to consider having a global task queue instead of on a per-object basis?  I'm obviously not an expert on this, but my sense is that this would solve a lot of issues.  In theory it sacrifices a bit of performance because save requests aren't being parallelized that theoretically could be, but conceptually this feels to me like it greatly simplifies and reduces the risk of deadlocks, parent/child dirtying, etc.  (Personally, I would advocate that far ahead of actually taking the object graph into account)

FWIW, we had a test repo for problem 2 and it was fixed in 1.8.4 (#150). This was a very simple test case though, so I'm curious if yours is still exhibiting this problem with the latest SDK @rdbayer?

@rdbayer A global task queue is certainly one option to consider. I'm not certain that it is the best route to go with right now, but I will bring it up with the rest of the team to get their thoughts.


Intersection Ray with Occlusion Mesh

I am using the OcclusionMesh described here #91. Now I would like to check the intersection between a ray and that mesh to spawn a model at the intersection location. Since the OcclusionMesh consists of a list of meshes, I didn't see an easy way to check for an intersection. What would be the best way to check such an intersection?

My recommendation would be to use the recent v0.3.2.preview-2 NuGet build! This adds support for scene understanding into StereoKit's core, so the OcclusionMesh class is no longer needed.
The docs for the relevant methods won't be up until I publish v0.3.2 later in the week, but you can see some relevant sample code over here! Look for World.Raycast, and World.RaycastEnabled :)

Awesome, thanks!


getting to -Wall

This is the big one, phew.  I had to make lots of small decisions and went pretty boiler-plate.  Also added a few new undefineds.
#40

Overall these look like great changes!  Thanks for putting in the work for all of this!


[Demmo,ignore]Arrays : Two Sum

explanation
Given an array,print of number that is equal to target.
example
hey,@rudrakshi99,I want to add this imp ques in the Algo -Tree/Code/C++

present at #203


Working at 4k resolution isn't possible

Describe the bug
after loading the binary and maximizing the window, Ghidra (UI) completely shits the bed and it becomes unusable, which sucks.
To Reproduce
Steps to reproduce the behavior:
run in 4k
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
https://imgur.com/a/kNz2QFc
https://imgur.com/a/Tceevpo
Attachments
If applicable, please attach any files that caused problems or log files generated by the software.
Environment (please complete the following information):

OS: Windows 10 1809 (Build 17763.379)
Java Version: 11.0.2   1.8.0_171-b11
Ghidra Version: 9.0.2

Additional context
Add any other context about the problem here.

I guess this is related to #1

works for me

Thanks @williballenthin.  What JDK are you using?  OpenJDK, Oracle JDK, Amazon JDK?

Thanks @williballenthin.  @ValonK, you could try the Oracle JDK to see if that fixes it for you.  Note that it's up to you to ensure that you meet the licensing requirements for use of the JDK...it can vary from vendor to vendor.

Hi, I've encountered the same problem, weirdly with other Java applications as well. Most of the time it seems to be some breakage with java 1.8+ rendering and multimonitor setups.
Examples of other software having the same behavior:
https://github.com/chatty/chatty/issues/27
https://github.com/fesch/Structorizer.Desktop/issues/536
In Ghidra, the rendering works just fine for me, until I do the very specific thing of hovering over a button, creating a tooltip that crosses the outside of the window frame, like this:

Immediately after any tooltip crosses the window, every repaint garbles the screen.
Searching for a solution after giving up last time I've found that this seems to work for me: https://github.com/fesch/Structorizer.Desktop/issues/536#issuecomment-397363031
I've added the following lines to support\launch.properties:
VMARGS=-Dsun.java2d.noddraw=true
VMARGS=-Dsun.java2d.d3d=false

It seems to run fine now after setting these VM args.

I had the same issue with Ubuntu 19.04, setting
VMARGS=-Dsun.java2d.xrender=true

did the trick for me

@seritools thanks fixes the problem for me

is setting nodraw to true necessary if d3d is set to false?  The documentation for nodraw seems to indicate it may not be necessary.

Just checked - VMARGS=-Dsun.java2d.d3d=false seems to be enough 👍

Thanks...I'm just trying to narrow down what our default settings should be moving forward, and I can't actually test any of this myself.


gs not added to jump list?

What I did
Jump from buffer A to B with gs, then press Ctrl-O.
Expected behavior
Cursor goes back to A.
Actual behavior
Cursor goes to the last location in jumplist in buffer B.

There is a separate jumplist for each window (:h jumplist). Our behavior is consistent with the rest of Vim, if you switch windows, e.g. with ctrl-w, it never adds the position in the source window to the target window's jumplist.


feat(cookies): extract CookieStore from NextResponse

Also removes the non-spec getValue() in favor of get()?.value. This is needed to land: https://github.com/vercel/next.js/pull/41526

Codecov Report

Merging #180 (f33692b) into main (94ad6e1) will decrease coverage by 3.45%.
The diff coverage is 85.16%.

@@            Coverage Diff             @@
##             main     #180      +/-   ##
==========================================
- Coverage   87.91%   84.45%   -3.46%
==========================================
  Files          14       22       +8
  Lines        1704     1840     +136
  Branches      213      181      -32
==========================================
+ Hits         1498     1554      +56
- Misses        192      263      +71
- Partials       14       23       +9

Impacted Files
Coverage Δ

packages/runtime/src/server/body-streams.ts
36.44% <68.96%> (-26.20%)
:arrow_down:

packages/runtime/src/edge-runtime.ts
94.11% <72.72%> (-2.92%)
:arrow_down:

packages/jest-environment/src/index.ts
97.95% <75.00%> (-2.05%)
:arrow_down:

packages/runtime/src/server/create-handler.ts
80.88% <75.00%> (-13.43%)
:arrow_down:

packages/cookies/src/cookie-store.ts
75.17% <75.17%> (ø)

packages/cookies/src/request-cookies.ts
81.30% <81.30%> (ø)

packages/cookies/src/serialize.ts
90.90% <90.90%> (ø)

packages/user-agent/src/index.ts
97.72% <97.72%> (ø)

jest.setup.js
100.00% <100.00%> (ø)

packages/cookies/src/cached.ts
100.00% <100.00%> (ø)

... and 14 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Closing in favor of #181 as discussed by @Schniz


Feature/5603 update pytest on ui settings

For #5603
Updated labels in File > Preferences > Settings. It now states 'Pytest' where it stated 'Py Test'.

[x] Pull request represents a single change (i.e. not fixing disparate/unrelated things in a single PR)
[x] Title summarizes what is changing
[x] Has a news entry file (remember to thank yourself!)
[x] ~Appropriate comments and documentation strings in the code~
[x] ~Has sufficient logging.~
[x] ~Has telemetry for enhancements.~
[x] ~Unit tests & system/integration tests are added/updated~
[x] ~Test plan is updated as appropriate~
[x] ~package-lock.json has been regenerated by running npm install (if dependencies have changed)~
[x] ~The wiki is updated with any design decisions/details.~

Thanks for the review, @DonJayamanne !
I can't seem to find python.testing.pyTestEnabled in the file you mentioned.
Is it the mentions of python.UnitTesting.* I need to update to python.testing.* ?
https://github.com/james-flynn-ie/vscode-python/blob/627477d5f32822495ee82e941a06fbf418bee745/src/client/application/diagnostics/checks/updateTestSettings.ts#L49

Thanks for the comments @DonJayamanne !
Is this what you had in mind for the file?  040e7f6
If so, I can add the other label updates within that same function.

If so, I can add the other label updates within that same function.

Yes the current change is correct, please proceed with the changes.

Also please modify doesFileNeedToBeFixed to check if the old labels exist.

I.e. add return contents.indexOf('python.unitTest.') > 0 || contents.indexOf('python.pyTest') > 0 ;

I've added the extra replace functions and updated the doesFileNeedToBeFixed function, as requested, @DonJayamanne 👍


Error when installing Liberty - No candidates found for 8.5.+ version.

When running installLiberty task I get the following error:
Execution failed for task ':starter-microservice-persistence:installLiberty'.

No candidates found for 8.5.+ version.

I am running this via the ci.gradle plugin using the config: type = "javaee7"

Out of interest, is your task specifying 8.5.+ or just relying on the default. This makes a difference as there is a version listed that should match 8.5.+

My task is relying on the default, I am not explicitly setting 8.5.+ as the version.

I see docs/install-liberty.md has:

The default value is 8.5.+

I think we should change the text to say:

The default value is to use the latest stable Liberty release.

Which has always been an 8.5.5.x release, but in the future will be yy.0.0.F where F is the fixpack number for the year (yy).
src/main/java/net/wasdev/wlp/ant/install/WasDevInstaller.java has version = "8.5.+"; so we need to change that to programmatically find the newest version in the index.yml. And we need to consider: the test case: src/test/java/net/wasdev/wlp/ant/install/InstallUtilsTest.java:51

@katheris I think you mentioned that it's only when there's an empty <install/> element that this becomes a problem. We should ensure that just installs the latest too.

I've just seen this same problem trying to build sample.ferret via the maven plugin.

@katheris and @davidcurrie Make sure to use 1.2 version of wlp-anttasks or liberty-maven-plugin.

@jgawor if using <install/> in a maven pom, then 8.5+ is going to be used as the default. It's only since your change in 1.3-SNAPSHOT https://github.com/WASdev/ci.ant/commit/6a3f132ea2a47f495dacca74a147bb1b33912eb1 that 16.+ is looked for instead.


Android app can't authenticate to a development-mode Zulip instance

The Android app authenticates via the api_fetch_api_key view, which calls django.contrib.auth.authenticate with a username and password.  Of the AUTHENTICATION_BACKENDS enabled by default in development mode, none have an authenticate method that takes username and password arguments, so django.contrib.auth.authenticate fails without consulting any backends.

It's easy enough to configure password auth in the development environment, but I agree it'd be nice to have a mechanism for the Android app to auto-auth into the development environment too.
@lfaraone do you think the right fix here is to modify the Android app or would it make sense to modify the server to e.g. accept any password for in the mobile auth endpoint for fetch_api_key if DevAuthBackend is enabled?

Quick Note, will be submitting a Pull Request in next week or so for the Android App where we have added the server url on the login page same approach as the iOS app, will this solve the issue??

@MarkCupitt Nope.  This issue is about getting development-mode Zulip to correctly authenticate after the app connects, not about getting the app to connect to the right Zulip instance in the first place.

This was resolved via DevAuthBackend authentication support being made available for the mobile apps.


Standardize README for poutils projects ?

cc @JulienPalard and @vpoulailleau ! What do you think about making a standard looking README for our poutils projects ? Or even better I think, making an org ?
Cheers

🏓 @JulienPalard @vpoulailleau :) I have some freetime so I would be able to work on it 🔥

I'm OK for both!
For READMEs, we should agree on a table of content, but I assume current READMEs give almost the same kind of information.
For the organization, I never did the transfer of one of my projects to a organization. But once the organization is created, I'm OK to do the transfer.
That depends also on @JulienPalard 's choice for the projects he created.

For the org what about the AFPy org?
For the standard README it's probably a good idea, and we should not create a new standard but try to pick something existing and nice looking.

For the org what about the AFPy org?

I was thinking a new one but the afpy one is fine! I'll check if I have all the rights necessary

For the standard README it's probably a good idea, and we should not create a new standard but try to pick something existing and nice looking.

Sure! We can look around for nice open source packages and find a readme we like

https://discuss.afpy.org/t/migration-des-outils-de-traductions-vers-afpy-sur-github/73

https://github.com/AFPy/Potodo/pull/107


remove neutron fips alert

Waiting to see resolution in #886

This should be updated with the stuff I just merged on master.


Special badge of R-multiverse?

Currently, the badge used to indicate the package version on R-multiverse is the same as the normal R-universe badge and is labeled "r-universe".
It would be great and easier for users to understand if this were displayed as "r-multiverse".

Sorry, I obviously missed this!
https://r-multiverse.org/contributors.html#how-to-create-a-badge


[spirv] Support reduction + elementwise op with dynamic shapes

What happened?
When a reduction and an elementwise op with dynamic shapes are in a single dispatch, the vulkan fails to compile. The first pass that fails is PadDynamicAlloc.
Steps to reproduce your issue
The input file is here: https://gist.github.com/okkwon/9d56fd368ab61aaec5bf5f18345fda6b
The command to reproduce is:
iree-compile iree_input.mlir --iree-input-type=xla --iree-flow-fuse-reduction-broadcast-elementwise --iree-vm-bytecode-module-output-format=flatbuffer-binary --iree-hal-target-backends=vulkan-spirv -o=compiled.vmfb

Here is the afterall dump: https://gist.github.com/okkwon/680b255bc70ce30777944eacc7ea4fc9
What component(s) does this issue relate to?
Compiler
Version information
No response
Additional context
No response

closing as obsolete -- no actions planned now


put() has inconsistent results if you run from Python Console vs in a file.

On version gcsfs==2022.11.0
Consider the following code snippet:
import gcsfs
source = 'abc'  # this is a folder - abc/file.txt, abc/subfolder/file.txt
target = 'my_bucket/folder'
fs = gcsfs.GCSFileSystem(consistency="md5")
fs.touch(target + "/.placeholder", truncate=True)  # to create a folder first.
fs.put(source, target, recursive=True)

If I run this in IPython, I end up with my_bucket/folder/file.txt and my_bucket/folder/subfolder/file.txt.
But if I put the exact same code in a python file and run that, I end up with my_bucket/folder/abc.

Are you sure it is a difference between the execution environment, or might it just be that you get this the second time you run the code?
cc @ianthomas23 https://github.com/fsspec/filesystem_spec/pull/1148 may fix this

It sounds like it could well be one of the behaviours that https://github.com/fsspec/filesystem_spec/pull/1148 is making consistent. It is not necessarily 'fixing' such behaviour as sometimes different behaviour is expected depending on what is in the target location as occurs with command cp for example.
@AkshitaB It would be helpful to repeat your test but with the fs.put repeated at the end, and check what is in the target after the first and second calls to fs.put. This could be done either in a python file or interactively.

Thanks for looking into this!
@martindurant I ensured that the bucket was empty before each run, so I don't think it's an issue with the behavior being different the second time.
@ianthomas23 I tried repeating the put command in both scenarios, and it made no difference. With the Python console, I still end up with subfolders and files (copied again), and with the python file, I end up with the parent folder.


Should the lib directory be part of this repo?

Hey Kyle,
Should the lib directory be part of this repo? Currently it's not there.

Yes it probably should.


MRG: Add raw PSD to parse_folder

Closes #5237.
Also shifts our docs from mne.report namespace to the root namespace as mne.Report already lives there.
Copying the truncated testing raw file to desktop and doing:
import mne
report = mne.Report(raw_psd=True)
report.parse_folder('/Users/larsoner/Desktop')
report.save('/Users/larsoner/Desktop/report.html')

I get:

@jona-sassenhagen happy?

Looks nice already! I'll take a closer look tomorrow!

besides my nitpickS LGTM

Comments addressed. @jasmainak do you have time to look again?

@jasmainak merge if you're happy

Do we also want to plot the PSD from the command line? If so, it should be exposed in the command line arguments.

I'm not sure it's worth exposing every param via command line. Especially this one since people may well want to use non-default args (like start and end values)...

@larsoner what did you decide about the dpi settings? If I remember correctly, it was @dengemann who wrote that part of the report

Other than these two comments, it's good to go from my end.

I reverted the DPI changes you commented on

okay, thanks @larsoner for the PR and the clarifications !


Can`t kill mobs

Can`t kill some mobs when connecting with one client, they deal zero damage to you and vice versa.

is this bug was introduced in hw10?
I think it must be fixed in the branch where it is was introduced. What do you think?
If agree then change the label of issue.


Nested Properties

I've been looking for a plugin like this to automate MathLinks for over a month now.
How do we indicate nested properties?

Hi, can you share an example? The one I use now for managing in-text
properties is called "Meta Bind Plugin"
On Sat, Apr 6, 2024 at 4:55 PM LynetteCullens @.***>
wrote:

I've been looking for a plugin like this to automate MathLinks for over a
month now.
How do we indicate nested properties?
—
Reply to this email directly, view it on GitHub
https://github.com/ransurf/live-sync-inline-to-yaml/issues/5, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ATIO6ZJTFZ75HQUMA6HQE3DY4CDQDAVCNFSM6AAAAABF2Z6SDGVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIZDSNBWGUZDKMQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

That worked PERFECTLY. Thank you SO much. I'm using MathLinks, and I got tired of copying and pasting.
Here are my Results

glad it worked for you! seems like a lot of extra space haha, maybe some CSS can help fix the height? or maybe you find it okay?


feat(Topology/Group): add nhds_inv

We can experiment with simp attr later, adjusting the GroupWithZero version at the same time.
bors merge


Describing a file upload

Would be good to be able to describe a file upload in some way mapping onto https://swagger.io/docs/specification/2-0/file-upload/

Good one. Right now I myself have this need to, but due to lack of time, I just added it into the description field.
* @summary Upload a file
* @description multipart/form-data, file (file, max. 10MB)

How to specify request content type  as multipart/form-data for exemple


Dependencies Load from Unexpected Paths

Expected Behavior
I expect that Gradle will try to resolve dependencies based on their location in the files cache.
Current Behavior
Gradle attempts to load transitive dependencies from their parent's folder. Here is a screenshot of the debugger output:

In this example, Gradle is looking for mchange-commons-java in a directory that only contains files for c3p0.
Context (optional)
No response
Steps to Reproduce
Upgrade from Gradle 6 to 8, Spring Boot 2 to 3 and Java 11 to 17. After upgrade Gradle attempts to resolve some dependencies in the wrong location.
Gradle version
8.1
Build scan URL (optional)
No response
Your Environment (optional)
Environment is running in Intellij IDE on MacOS with the following configs:

Sorry that you're having trouble with Gradle!
We appreciate the effort that went into filing this issue, but we must ask for more information.
As stated in our issue template, a minimal reproducible example is a must for us to be able to track down and fix your problem efficiently. Our available resources are severely limited, and we must be sure we are looking at the exact problem you are facing.
If we have a reproducer, we may be able also to suggest workarounds or ways to avoid the problem.
The ideal way to provide a reproducer is to leverage our reproducer template. You can also use Gradle Project Replicator to reproduce the structure of your project.
This issue will be closed after 7 days unless you provide more information.


Use renderer.setAnimationLoop for main frame loop

Overview
This PR replaces the driver of the current frame loop, window.requestAnimationFrame(), with the THREE.js renderer.setAnimationLoop() method. This is achieved by replacing the useRaf() call and deferring the initialization of the frame loop until after the default renderer has been created. useRaf() was removed since it is no longer used.
I've tested these changes locally with npm link under the following scenarios:

With my recent svelte hack project, which makes use of useFrame() in multiple components, as well as useRender() in order to have the pmndrs/postprocessing library render the scene.
With the demos within the routes section of threlte-xr, specifically the in-progress <Teleport> component requires useFrame() to work during a VR session.

If this approach doesn't make sense or should be tweaked I'll be happy to update this!
Advantages

Allows the use of useFrame() and useRender() while within a VR or AR session 🎉

Caveats

Any calls within userland to setAnimationLoop() will stop the main frame loop. This seems like an uncommon / not recommended usage of threlte, but thought it should be mentioned.
When within an XR session $frameloop must be set to "always", or the headset will not render new frames as the user moves their head. I do this automatically when starting an XR session within threlte-xr but not sure if it should be called out more.

Thanks @michealparks for your contribution! ❤
I have one concern/note:
With the addition of useRender for Threlte 6 we introduced custom render pipelines. A custom pipeline might use a custom renderer:
const webGpuRenderer = new WebGPURenderer()

useRender(({ scene, camera }) => {
  webGpuRenderer.render(scene, camera.current)
})

I'm wondering if there are any side effects in this scenario and whether we need to implement a setRenderer method.
I assume the "backend" for setAnimationLoop is requestAnimationFrame or the XR equivalent, so we're good but I didn't check in detail.

Ah! Yep, I had forgotten that case. Does it make sense to allow users to optionally pass a renderer into the <Canvas> component? I'm thinking that might be an easy entry point resulting in few changes since createRenderer() is called there. That would also probably allow users to set WebGPU renderers without having to call useRender()?

I assume the "backend" for setAnimationLoop is requestAnimationFrame or the XR equivalent, so we're good but I didn't check in detail.

Yep, it seems as though the backend is sending the callback arg to both requestAnimationFrame() and xr.requestAnimationFrame().
I additionally just thought of checking WebGPURenderer to ensure that it also has setAnimationLoop. It does, and it seems (from my quick reading of THREE's issues) that the team is moving toward adopting this class as a common renderer, with multiple backends, like WebGL, WebGPU, etc.

[...] and it seems (from my quick reading of THREE's issues) that the team is moving toward adopting this class as a common renderer, with multiple backends, like WebGL, WebGPU, etc.

It only makes sense, I'm glad they're making the move. For now, I think we should not provide the option to pass a renderer in <Canvas> because the resulting types would affect the overall ecosystem. useThrelte().renderer would then be WebGLRenderer | Renderer | … or we would have to provide a generic useThrelte which I would like to prevent. We can think about that path as soon as they make the move to a unified backend so that useThrelte().renderer is just THREE.Renderer.
because rAf is essentially the "backend" for setAnimationLoop I don't see why we cannot just go for it as it is currently in your PR, what do you think?

because rAf is essentially the "backend" for setAnimationLoop I don't see why we cannot just go for it as it is currently in your PR, what do you think?

Yep, I think so! This should be good to go as is.

@michealparks I took the liberty to reset the package.json file to its state before your PR. Don't worry about the versioning, we're running changesets which is doing that for us based on the changeset that you provided with your PR already, so all good! 👍
Thanks again for your contributions and really looking forward to the XR package!

Yay! Glad to assist, and expect it soon!


refactor: convert @obj and @deriving(abstract) to use optional record fields

Resolves #151
BREAKING: Requires optional record fields support from<EMAIL_ADDRESS>Potentially disruptive (but hopefully not): Drops peer-dependency for bs-platform. It seems pretty likely that most people would be moved to at least rescript@9 (which was just a re-name) or melange by this point.

@jeddeloh There are more fields that are typed as option<'a> which I haven't converted yet for the result-style types.
i.e. QueryResult, MutationResult, etc.
let result = Query.use()

switch result {
| {data: {me: {todos}}, _} => Array.joinWith(todos, ", ")
| {data: ?None, _} => "<nothing here>"
}

This feels a bit strange to type I think, but curious as to your thoughts on the matter. There's also the possibility of the field being present vs being explicitly undefined--which seems to be handled the same way today by the compiler but I don't think there's any guarantee of that saying the same.

{data: ?None} seems pretty good to me? If the property really isn't guaranteed to be there, it's probably best to model it as such. At least this way the actual data case is a bit cleaner without the Some()?

FYI I checked this out and I didn't have to make any code changes in a consuming application, so while technically breaking it shouldn't be disruptive to anyone.

{data: ?None} seems pretty good to me? If the property really isn't guaranteed to be there, it's probably best to model it as such. At least this way the actual data case is a bit cleaner without the Some()?

Ah I should've used an example that was actually applicable--https://github.com/apollographql/apollo-client/blob/main/src/core/types.ts#L142
data is typed as always being returned--errors is typed as optional which seems dubious to me. I'll have to try it in a vanilla project.

Yeah, that typescript for ApolloQueryResult seems impossible. At some point I know Apollo was planning on the ability to return partial data. Is the T somehow partial and returns an empty object or something when there's no data?

I was telling a coworker about this distinction with present-and-undefined vs not-present and when we checked the ReScript output, I found the check does not actually seem to make the distinction--so maybe it is moot, though it seems potentially unsafe with values created from javascript.
type t<'data> = { data: 'data, error?: Error.t }
type example = { foo: string, bar: int }

let myData = { data: { foo: "baz", bar: 1 } }

let log = (data) => switch data {
| {error} => Console.log("there was an error")
| {data} => Console.log("hi data")
}

// Generated by ReScript, PLEASE EDIT WITH CARE

function log(data) {
  if (data.error !== undefined) {
    console.log("there was an error");
  } else {
    console.log("hi data");
  }
}

var myData = {
  data: {
    foo: "baz",
    bar: 1
  }
};

export {
  myData ,
  log ,
}
/* No side effect */

https://rescript-lang.org/try?version=v11.1.4&code=C4TwDgpgBMA8DkATAhsZA+KBeKBvKKaAXFEqsgDRQQBONA9jQPwkCidjAdMFAL4BQoSNQAeyALZgANtBz4AZvXokAzsBoBLAHYBzKgCNkNEtp4D+MnuJAARctjwFyJBUpIAiQwC93BoyQBGPj5+CwgeKXodBwAKQmQASmxMFQB3DWAAYwALJzQ8fgAfPFoGGl5kqABhei0VehlOSJ0Y92Bs2mhU5BUoZC1qDhp3BKK8eIqsTBq6hogmqNbsjTzkEf5eIA

Do you want to stick with a binding that says all the properties are always present? I think that's probably fine. Personally, I always added a wrapper around this library to turn these results into a single Loading | Data | Error variant. Probably not a good idea, but you could add another property that has better ergonomics but still preserve the original response exactly as typed for edge cases.

Do you want to stick with a binding that says all the properties are always present? I think that's probably fine.

Yeah that seems more correct, and changing the result types seems pretty disruptive to me; same with changing the useQuery / useMutation arguments from named to optional property record.

Personally, I always added a wrapper around this library to turn these results into a single Loading | Data | Error variant. Probably not a good idea, but you could add another property that has better ergonomics but still preserve the original response exactly as typed for edge cases.

Yeah I preferred that too, this used to be built in and was removed at some point. There's definitely a trade-off between ReScript-specific ergonomics and making the bindings look more like regular JS/TS usage for ease of adoption / ability to make the normal docs more relevant to the bindings.

Yeah that seems more correct, and changing the result types seems pretty disruptive to me; same with changing the useQuery / useMutation arguments from named to optional property record.

Sounds good


[QUESTION] Remote Postgres IP

Hi
First of all, thank you for this project, it looks very promising
During local deployment tryouts, i need to specify an ip address of existing postgres instance on the local network.
Grepping the repo, i cannot find the proper way to do so, there is only a hardcoded default with localhost in it...
How can i configure a connection to postgres when it is not at localhost?
Thanks in advance

Does setting
[database]
host= ""
``` This should work?

Which file should contain this?

Oh, this file is not a part of the repo but is generated during installation
https://github.com/wyatt-herkamp/nitro_repo/blob/39032b512a332f00e19fd3c4d5e48f030c76be32/nitro_repo/src/main.rs#L30
and should be modified only after the installation...
https://github.com/wyatt-herkamp/nitro_repo/blob/39032b512a332f00e19fd3c4d5e48f030c76be32/docs/docs/sysAdmin/index.md?plain=1#L20
Ok, i see now
Will try to do it that way
Thanks!

Oh, this file is not a part of the repo but is generated during installation
https://github.com/wyatt-herkamp/nitro_repo/blob/39032b512a332f00e19fd3c4d5e48f030c76be32/nitro_repo/src/main.rs#L30
and should be modified only after the installation...
https://github.com/wyatt-herkamp/nitro_repo/blob/39032b512a332f00e19fd3c4d5e48f030c76be32/docs/docs/sysAdmin/index.md?plain=1#L20
Ok, i see now Will try to do it that way Thanks!

Yes! I still have the docs from the previous version—just note. I will break the config again because I need to add environment variable support for docker.
Please let me know how testing NR goes. I am always looking for feed back!


Optional configuration props are not included in exported propTypes

Are you submitting a bug report or a feature request?
Bug report
What is the current behavior?
Configuration props are being bypassed to wrapped component. forbidExtraProps from airbnb-prop-types emits error in console for bypassed onSubmit and onSubmitSuccess props. Also looks like clearFields and clearSubmitErrors should be declared in src/propTypes.js
What is the expected behavior?
Config props shouldn't be bypassed to wrapped component.
Sandbox Link
https://codesandbox.io/s/p33y2z3z3x
What's your environment?
<EMAIL_ADDRESS>google<EMAIL_ADDRESS>

This only matters if you specifically want to use something like forbidExtraProps in which case you probably can easily specify as the developer which optional props you want to verify against (you probably want to).
It's my guess this is largely intentional/not particularly desired. If you'd like it please raise a PR and see what the response is.


Build fails with "api.assumption is not a function" error

Amplify build process fails with the following error, intermittantly:
2021-03-12T11:05:28.763Z [INFO]: Creating an optimized production build...
2021-03-12T11:05:30.392Z [INFO]: Failed to compile.
2021-03-12T11:05:30.393Z [INFO]: ./src/index.tsx
                                 TypeError: [BABEL] /codebuild/output/src465512805/src/square-deal-ui/src/index.tsx: api.assumption is not a function (While processing: "/codebuild/output/src465512805/src/square-deal-ui/node_modules/babel-preset-react-app/index.js$0$2")
                                 at Generator.next (<anonymous>)
                                 at Generator.next (<anonymous>)
                                 at Generator.next (<anonymous>)
                                 at cachedFunction.next (<anonymous>)
2021-03-12T11:05:30.412Z [WARNING]: error Command failed with exit code 1.
2021-03-12T11:05:30.412Z [INFO]: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
2021-03-12T11:05:30.418Z [ERROR]: !!! Build failed
2021-03-12T11:05:30.418Z [ERROR]: !!! Non-Zero Exit Code detected

If I delete the app and recreate it, then Amplify compiles the app and build completes successfully. Attached is the full log.
Hope someone here will be able to help troubleshoot.
log.txt

Thanks for reporting this. We will investigate this issue

The same issue..

I'm having this issue as well.

Hi @chrisl777, @hnhegde, @omilovskiy .Sorry for the inconvenience, we've made many improvements on our build system, does this issue still persist on your end?  If you still have questions, please include your AppId in your comment. Thank you!

@victorccccc I haven't seen this issue in a while, since I posted it. I think at the time I was working on a project with an older version of Amplify, and it's since been updated.

Haven't seen this message in a while. Good to know improvements are being
made. Thank you!
--
Best Regards,
Harsha N Hegde
On Fri, 8 Apr, 2022, 03:15 Chris Livdahl, @.***> wrote:

@victorccccc https://github.com/victorccccc I haven't seen this issue
in a while, since I posted it. I think at the time I was working on a
project with an older version of Amplify, and it's since been updated.
—
Reply to this email directly, view it on GitHub
https://github.com/aws-amplify/amplify-hosting/issues/1645#issuecomment-1092238487,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABF3SHOHNSZZLDOJNN4XLNDVD5JP7ANCNFSM4ZCDDU3Q
.
You are receiving this because you were mentioned.Message ID:
@.***>

Closing this issue, but feel free to re-open. Thanks


Chromium based version with latest versions

Here is an updated version using debian chromium packages which are always up to date. If not keen on merging, it might serve as a usful reference for anyone else...

Thanks!


refactor integ_test_suite to support both OpenSearch and OpenSearch Dashboards

Description
refactor integ_test_suite to support both OpenSearch and OpenSearch Dashboards
Issues Resolved
Resolves https://github.com/opensearch-project/opensearch-build/issues/1177
Check List

[x] Commits are signed per the DCO using --signoff

Test
Unit Test is working in progress.
Manual test is showing integ tests running from component to component
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

send for early feedback on the functional part. Unit Test is still working in progress.

Codecov Report

Merging #1192 (2abf9a6) into main (2f90ce0) will decrease coverage by 23.77%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##               main    #1192       +/-   ##
=============================================
- Coverage     93.77%   70.00%   -23.78%
- Complexity       10       11        +1
=============================================
  Files           105        9       -96
  Lines          2618       70     -2548
  Branches          9       10        +1
=============================================
- Hits           2455       49     -2406
+ Misses          153       11      -142
  Partials         10       10

Impacted Files
Coverage Δ

src/run_integ_test.py

src/test_workflow/dependency_installer.py

src/test_workflow/integ_test/integ_test_suite.py

src/run_assemble.py

src/assemble_workflow/dist.py

src/run_build.py

src/build_workflow/builder_from_dist.py

.../ci_workflow/ci_check_gradle_properties_version.py

src/build_workflow/build_target.py

src/manifests_workflow/component_opensearch_min.py

... and 86 more

Continue to review full report at Codecov.

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

Manual integ test output:
2021-12-01 04:34:59 INFO     | alerting             | with-security        | PASS  |    0 |
2021-12-01 04:34:59 INFO     | alerting             | without-security     | PASS  |    0 |
2021-12-01 04:34:59 INFO     | anomaly-detection    | with-security        | PASS  |    0 |
2021-12-01 04:34:59 INFO     | anomaly-detection    | without-security     | PASS  |    0 |
2021-12-01 04:34:59 ERROR    | asynchronous-search  | with-security        | FAIL  |    1 |
2021-12-01 04:34:59 INFO     | asynchronous-search  | without-security     | PASS  |    0 |
2021-12-01 04:34:59 INFO     | dashboards-reports   | without-security     | PASS  |    0 |
2021-12-01 04:34:59 INFO     | index-management     | with-security        | PASS  |    0 |
2021-12-01 04:34:59 INFO     | index-management     | without-security     | PASS  |    0 |
2021-12-01 04:34:59 ERROR    | k-NN                 | with-security        | FAIL  |    1 |
2021-12-01 04:34:59 INFO     | k-NN                 | without-security     | PASS  |    0 |
2021-12-01 04:34:59 INFO     | sql                  | with-security        | PASS  |    0 |
2021-12-01 04:34:59 INFO     | sql                  | without-security     | PASS  |    0 |

Great refactor, please add unit tests

Added

Yes. Next will be to support either OpenSearch or OpenSearch Dashboard integ test from the test runner/shell https://github.com/opensearch-project/opensearch-build/blob/main/src/run_integ_test.py#L42
That will be the last piece of the puzzle.


Block Breaker Game

I would like to add a project (Block Breaker game) in JavaScript under GSSOC 2021.

Please assign me this issue @ridsuteri @991rajat @Vishal-raj-1 @harshgupta20


Transport error: io error

clangd:
clangd: I[13:01:27.210] <-- textDocument/didSave
::  -> clangd textDocument/didSave
::  -> clangd textDocument/didSave
clangd: E[13:01:27.857] Transport error: io error
clangd: I[13:01:27.858] LSP finished, exiting with status 1

I have enabled all logging in the LSP plugin. I have even built the Debug version of clangd. Yet that's all that I was able to find out. "Transport error: io error". Is there any way to get a more meaningful error message?
I'll try to repro with the debugger attached. I feel like there really should be a more ... actionable error message.
Cf. https://github.com/sublimelsp/LSP/issues/1475
I'm using Sublime Text 3, LSP, Windows 10.

have you also tried passing -log=verbose to clangd?
this is unlikely to provide more info about the error specifically, but might tell you more about what's happening before the error.
just by looking at what you've provided it seems like the plugin communicating with clangd is probably shutting down the channel spuriously, for whatever reason, hence the "io error" on clangd side (and consequent shutdown)

have you also tried passing -log=verbose to clangd?
this is unlikely to provide more info about the error specifically, but might tell you more about what's happening before the error.
just by looking at what you've provided it seems like the plugin communicating with clangd is probably shutting down the channel spuriously, for whatever reason, hence the "io error" on clangd side (and consequent shutdown)


Delete CONTRIBUTING.md

UNCAUGHT ERROR: Error: react-navigation_v1.x.x/CONTRIBUTING.md: Unexpected file name. This directory can only contain test files or a libdef file named react-navigation_v1.x.x.js.
at validationError (/Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/dist/lib/validationErrors.js:14:11)
at /Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/dist/lib/npm/npmLibDefs.js:113:53
at Array.forEach ()
at extractLibDefsFromNpmPkgDir$ (/Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/dist/lib/npm/npmLibDefs.js:95:23)
at tryCatch (/Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/node_modules/regenerator-runtime/runtime.js:65:40)
at Generator.invoke [as _invoke] (/Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/node_modules/regenerator-runtime/runtime.js:303:22)
at Generator.prototype.(anonymous function) [as next] (/Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/node_modules/regenerator-runtime/runtime.js:117:21)
at tryCatch (/Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/node_modules/regenerator-runtime/runtime.js:65:40)
at invoke (/Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/node_modules/regenerator-runtime/runtime.js:155:20)
at /Users/skilurus/.nvm/versions/node/v8.9.4/lib/node_modules/flow-typed/node_modules/regenerator-runtime/runtime.js:165:13

Context for why that file exist. I don't think we should remove it. c454f267eb1e0e8deb7f672dd1c92bf2a395159c was supposed to make it possible to have these files. cc @AndrewSouthpaw

@apolishch you need to upgrade your flow-typed version to 2.4.0.

@apolishch Closing this PR as the answer above is correct. Thanks for fielding this one @Ashoat.


[CSL-197] Improve peformance of crypto serialization & hashing

@georgeee
Look into prof log posted in cardano-sl-bnd channel, node1-2016-11-27.prof. 4.8% CPU spent on hashing under verifyBlock, 24.4% spent on ecPointFromOct which is part of message deserialization. Later is due to fact we need to deserialize commitment even if we later decide we don't need it.
Proposal of this issue is to:

add crypto types aliases kept as raw bytestrings/bytearrays
add convenient convertors to existing types (with deserialization under the hood)
use alias types whenever it's convenient (mostly communication)
convert aliases to existing types on demand

This should be done only for types, used in communication (public keys, PVSS stuff). There is no need to do this for secret keys.
After completing issue, profile cardano-sl node in first minute of wroking to see load actually decreased.

@georgeee
It concerns only PVSS stuff, as it was recently discovered (Ed25519 library requires simple constructor to be applied)

@georgeee
This issue is critical to finally get benchs working

@georgeee
@arodrigues to fix tests, after that task is to be closed

@gromak

Why is this issue still In Progress? Tests were fixed long ago.
Did you do related benchmarks which give evidence that for all PVSS types encoding/decoding is expensive and for all other types it's not expensive? I guess no, but I think it makes sense to do them, because it may turn out that either for some PVSS types it doesn't make sense to store them as raw bytes (either because serialization is cheap or because we need to actually use them much more often than send or for some other reason) or that there are other types for which such change makes sense, but it's less evident. Anyway, I can't but agree that it's a separate task which is relatively minor.
I think we need tests which ensure that length of types for which we have lightweight wrappers is exactly what we expect (since these number are hardcoded in SerTypes.hs).
See my comment about in SerTypes.hs.
Wouldn't it be better to use a single type with phantom type parameter for all lightweight types instead of defining newtype for each type?

@georgeee

It's Done then
Yes, I tested. We could finally step to stable 100 with this fixed
Regarding other data types, Ed25519 uses simple wrappers over ByteString. Hash is just ByteArray, which has slight overhead on deserialization cost (memory allocation) but not bigger. As to my analysis, it was only PVSS types that did some black magic costed us a fortune of CPU (when done for each SSC-related message, even one we would discard)
Check CSL-210
On GH? I replied already then
Well, it's possible. Didn't think on that.
And in most cases I want to check length of types. It would be cumbersome with phantom types

@gromak

Ok, you convinced me to forget about it until we have related problems again. I hope it won't happen.
Yes, on GH. I wrote it just in case :) And anyway, I wrote one more comment which wasn't answered. If you don't mind, I will remove redundant (I am still sure it's absolutely redundant) decodeFull.
Ok, I will create a minor issue then.

It would be cumbersome with phantom types
It will be less cumbersome than current solution.


Maybe type vs. union with void.

Is there a difference between: { foo: ?number } and { foo: number | void }? The latter is discussed in the HOC guide, and we want to make sure the type defs are correct for flow-typed.

?number includes both void and null.

Thanks for clarifying. Would you say, in the case of HOC, that it's indeed best to do whatever | void or would ?whatever suffice?

I guess it depends on the type of your component's props and what you want to achieve. Do you want null to be a possible value?
PS: In the future try to keep questions of usage to Stack Overflow


java worker api(put, call ) perf problem

Describe the problem

Now, I am doing perf test about plasma queue, and I compare it with original method(like put in java worker), but I find when calling put many times continuously, it will become slower and slower. The test is as below.

and the output is as below.

Besides, the problem occurs when calling Ray.call many times continuously.
and in python worker, the problem doesn't occur.
I have tried to find the cause.
When using test in arrow/java/plasma https://github.com/eric-jj/arrow/blob/147ae2f05bb0be8d646ce4ad15f73e7909ca24b2/java/plasma/src/test/java/org/apache/arrow/plasma/PlasmaClientTest.java#L175 , the problem doesn't appear.
I also remove the java serialization and use a simple byte[] instead, it seems serialization is not relevant.
In fact, it's fast enough when testing in arrow/java/plasma, and it's also fast enough when testing in java worker without objectStoreProxy.put(objectId, obj, metadata);, but it's slow when putting the two together.
So what's the reason?

@salah-man please help to have a look.

@raulchen It seems arrow.plasma.PlasmaClientJNI.create costs most of the time.

@songqing nice find.
I just read the code (https://github.com/apache/arrow/blob/master/cpp/src/plasma/lib/java/org_apache_arrow_plasma_PlasmaClientJNI.cc#L84), the JNI layer seems to be just a thin wrapper around the C++ client. I didn't find anything wrong there. You may want to @salah-man, who wrote that code, or continue profiling the C++ code.

@raulchen In fact, I found a place that may be relevant, see https://www.jianshu.com/p/451cc865d413.
arrow.plasma.PlasmaClientJNI.create use DirectByteBuffer  to init a ByteBuffer instead of HeapByteBuffer , and DirectByteBuffer  costs more time than HeapByteBuffer  when allocating a new buffer.

The problem described in that article should be irrelevant. What it measures is the time of creating direct byte buffer (allocating off-heap memory). While in our case, PlasmaClientJNI.create doesn't allocate memory. It just uses the DirectByteBuffer as a view of the shared memory.

@raulchen OK, but arrow.plasma.PlasmaClientJNI.create has no other method costing much time except   Status s = client->Create(oid, size, md, md_size, &data); which is the cpp method also used in python worker and doesn't cost much time.

@songqing You might want to profile the plasma store and see where the CPU cycles are spent. In my original test, store's CPU usage is very high compared to python case.

in the gitlab branch, i test i in mac-air with jvm args:
-XX:+PrintGCDetails  -XX:+PrintGCDateStamps -Xmx500M -Xmn500M

the perf is:
put obj:0:726
put obj:10000:15207
put obj:20000:11167
put obj:30000:8011
put obj:40000:9047
put obj:50000:8230
put obj:60000:7647
put obj:70000:8610
put obj:80000:8173
put obj:90000:7280
that is ok

@songqing yeah, that's also what I was wondering...
@zhijunfu interesting. If that is true, it'd be very surprising to me. Do you have any theory what would make a difference between Python and Java? I think to the store, everything is just bytes.

@raulchen yes this does seem strange.. I don't have a plausible theory at the moment.
thanks @mylinyuzhi , nice to know that it doesn't appear in gitlab. one step closer to the root cause.

@mylinyuzhi Yes, I tested it's OK in gitlab ray, and arrow's code in gitlab is the same as in github, so there's something wrong with my github ray code.

@raulchen @mylinyuzhi I find ray.config.ini is relevant. Before I setobject_store_occupied_memory_MB = 200 as I plan to push lots of obj, and now I change the option back to object_store_occupied_memory_MB = 200, now the putting time doesn't increase always, see following.
put obj: 0: 83
put obj: 10000: 4507
put obj: 20000: 14009
put obj: 30000: 32463
put obj: 40000: 42322
put obj: 50000: 14017
put obj: 60000: 30005
put obj: 70000: 40472
put obj: 80000: 12000
put obj: 90000: 28032
but the time increases periodic.
Besides gitlab ray only cost 2000ms while github cost 20000ms average in the same statition.

This problem has been solved, see https://github.com/apache/arrow/pull/2220


Custom Runtime build on NodeJS

I've read the docs and see Substrate allow to create custom runtime by any language target to Wasm. I want to build my own custom runtime base on NodeJs.
Is there a document for that? Need some helps

CC @Stefie

CC @Stefie

I try to implement like: Using consensus, p2p FRAME handles all the p2p and consensus stuff then write custom Pallet. It's will forward transaction when need to be validated, or when they're ready to be committed to a block. It's seems like Tendermint Core and Abci application. Is this approach possible?

I try to implement like: Using consensus, p2p FRAME handles all the p2p and consensus stuff then write custom Pallet. It's will forward transaction when need to be validated, or when they're ready to be committed to a block. It's seems like Tendermint Core and Abci application. Is this approach possible?

@thanhtung6824  Can you point me to which part of the docs you're referring to so I can get a better understanding of what you're trying to achieve?
In general you can't write a Substrate runtime in NodeJS because you can't compile Node to WebAssembly. The only JavaScript-flavoured language that can be compiled to Wasm is AssemblyScript.
The people from Limechain are working on a custom runtime implementation in AssemblyScript which you can find in the Subsembly repository. You should have a look at it!

I try to implement like: Using FRAME handles all the p2p and consensus stuff then write custom Pallet

Is your idea to mix the Substrate runtime generated by the Rust code with a custom runtime code written in a different language (NodeJS in your case)? I'm afraid that that is not possible. If you want to write your own runtime in a different language, you need to rewrite the whole thing. Mixing two languages is not possible because you need to end up with only one Wasm binary.

@thanhtung6824  Can you point me to which part of the docs you're referring to so I can get a better understanding of what you're trying to achieve?
In general you can't write a Substrate runtime in NodeJS because you can't compile Node to WebAssembly. The only JavaScript-flavoured language that can be compiled to Wasm is AssemblyScript.
The people from Limechain are working on a custom runtime implementation in AssemblyScript which you can find in the Subsembly repository. You should have a look at it!

I try to implement like: Using FRAME handles all the p2p and consensus stuff then write custom Pallet

Is your idea to mix the Substrate runtime generated by the Rust code with a custom runtime code written in a different language (NodeJS in your case)? I'm afraid that that is not possible. If you want to write your own runtime in a different language, you need to rewrite the whole thing. Mixing two languages is not possible because you need to end up with only one Wasm binary.

@Stefie
Thank you for reply Stefie, My Idea is write the Substrate runtime in Rust code, it's handles all the p2p and consensus stuff and just forwards transactions to the my runtime (call api to my runtime in NodeJS) when need to be validated, or when they're ready to be committed to a block.
Now my chain is running with Tendermint Core and I want migrate to Substrate with less code change as much as possible

@Stefie
Thank you for reply Stefie, My Idea is write the Substrate runtime in Rust code, it's handles all the p2p and consensus stuff and just forwards transactions to the my runtime (call api to my runtime in NodeJS) when need to be validated, or when they're ready to be committed to a block.
Now my chain is running with Tendermint Core and I want migrate to Substrate with less code change as much as possible

Ah, ok, I get it! I'm afraid I'm not the right person to answer that. Maybe @danforbes can help?

Ah, ok, I get it! I'm afraid I'm not the right person to answer that. Maybe @danforbes can help?

@danforbes Can you help?
Can't wait to build some exciting app on Substrate

@danforbes Can you help?
Can't wait to build some exciting app on Substrate

Technically speaking you should be able to create a Substrate runtime using any programming language which can compile to Wasm, however, practically speaking it would be very hard to do this with any language other than Rust for the moment.
Basically the only requirement of the runtime is to satisfy the Runtime API that the Substrate Core Client expects.
However, there is no such template or setup for any of that in NodeJS or any JS today. So if you wanted to do that, you must build all those things from scratch, and likely you would be diverging far from anything that resembles Tendermint Core.

Technically speaking you should be able to create a Substrate runtime using any programming language which can compile to Wasm, however, practically speaking it would be very hard to do this with any language other than Rust for the moment.
Basically the only requirement of the runtime is to satisfy the Runtime API that the Substrate Core Client expects.
However, there is no such template or setup for any of that in NodeJS or any JS today. So if you wanted to do that, you must build all those things from scratch, and likely you would be diverging far from anything that resembles Tendermint Core.

However, there is no such template or setup for any of that in NodeJS or any JS today. So if you wanted to do that, you must build all those things from scratch, and likely you would be diverging far from anything that resembles Tendermint Core.

Indeed. I think the closest thing that we have to what you want to do is what @JoshOrndorff worked on (but I belive was not published anywhere). https://github.com/substrate-developer-hub/recipes/tree/joshy-frameless-runtime
This is how a runtime looks like without Frame, in pure Rust. Porting this to any other language will be slightly easier, but you'd still need to figure out the details of the rutnime/wasm APIs in your target language.
Also, note that this runtime is doing absolutely nothing. Doing anything useful would, again, make it substantially more complicated.

- This is how a runtime looks like without Frame, in pure Rust.
+ This is how a not-fully-working runtime looks like without Frame, in pure Rust.

I only ever got it to author empty blocks. It couldn't handle transactions properly. This stuff is hard.

I'll just report back here in case anyone discovers this issue in the future.
The runtime without FRAME is now fully working. We have example code along with a few exercises for people who want to get familiar with it. https://github.com/JoshOrndorff/frameless-node-template
There is also now Tuxedo, which is an alternative to FRAME based on the UTXO model. It isn't quite production ready yet, but if you want to see an example of how to work without FRAME, it is great for that. https://github.com/Off-Narrative-Labs/Tuxedo/

Ty for the update @JoshOrndorff!


Custom Donation Distribution

skipModal property is set to true when group.settings.DonationDistributor is falsy, will only render paypal or stripe buttons
public_donation_page - removed deprecated test

@asood123 the DonationDistributor component requires group.settings.DonationDistributor, to be true in order for it to activate, otherwise it renders the buttons just as they have been.
Im thinking of adding this to the Group modal in the api repo, so it is set as default everytime a new collective is created. It will look like this
    settings: {
      type: DataTypes.JSON,
+     defaultValue: JSON.stringify({
+       DonationDistributor: false
+      }),
      allowNull: true
    },

server/models/Group.js

I can also set default values that are hard coded properties in this commit:
    settings: {
      type: DataTypes.JSON,
+     defaultValue: JSON.stringify({
+       DonationDistributor: {
+            ...
+       }
+      }),
      allowNull: true
    },

editable - Whether or not the sliders will be displayed in order to allow custom donation distribution amongst more than 1 collectives.
optionalComission - Whether or not the commission will be allowed to be modified.
feesOnTop - When true fees are added on top of donation, otherwise they are taken from the donation.
collectives - An array holding the collectives that are tied to the main collective, these are the sub collectives that are displayed when customizing the distribution of a donation. Each element is an object w/ {name: String, avatar: String, id: Number}
Sounds good?

I like the simpler default of setting DonationDistributor to false. Let's document the rest of params in a wiki for now.


feat(dirty-check) new dirty check plugin

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/ngneat/elf/blob/master/CONTRIBUTING.md#commit
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

Dirty Check Plugin
We are porting over from akita to elf and I was missing the dirty check plugin from akita.
I felt like contributing this so I had a stab at it.
This does not yet solve the dirty checking for entities, but I though I would get some feedback about what I've done so far before continuing.
The api is modeled after akita, and I've borrowed some of the logic also.
but I also borrowed from the history plugin.
What do you guys think?

Hi,
Thanks for the PR. I prefer not to include it in our main repo as we did with the sync-state plugin.
You can take all the logic from Akita and publish it in your name. Then, create a PR and add it to our official docs.


genwqe_maint: Support more than 2 cards

IBM Tuleta systems can support up to 4 CAPI cards. genwqe_maint currently just supports 2.

https://github.com/ibm-genwqe/genwqe-user/commit/e0eb647803c1c44a14bcad107e2a5bacaf0880ce
should fix this issue.


stake-pool: CLI QOL improvements

When creating a stake-pool using the CLI, if at any point an instruction fails subsequent commands will also fail. This behavior creates a problem when initializing a stake pool in the CLI with vanity keypairs. This solution aims to break up the command_create_pool into iterative steps with checks along the way.
I had changed the deprecated  use spl_associated_token_account::create_associated_token_account but am happy to change it back.

Thanks for the contribution! This will definitely make the experience of creating a stake pool much smoother. Let me know if anything's unclear

I believe I have walked through each change and implemented! I appreciate the feedback and am happy to continue iterating if needed.

Thanks for addressing all of these! Just a few last comments before merging.
I've kicked off CI, and it's failing the formatting check -- can you run ./cargo-nightly fmt --all from the top of the repo?
You'll also need to run ./cargo-nightly clippy -Zunstable-options --all-targets -- --deny=warnings --deny=clippy::arithmetic_side_effects and make sure everything's ok there. I think it'll be OK after addressing the remaining comments.

Ran with changes and all looks good! Thank you!


React Carousel forces sliding animation when using defaultIndex

Description
When I use defaultIndex prop, I expect the carousel to be rendered with that slide initially.
But instead, it would render the first image then slide through all the slides inbetween with a slide animation to the chosen default image.
Link to Reproduction (or Detailed Explanation)
See steps.
Steps to Reproduce

Implement a basic Ark UI carousel (Reect)
Have more than 1 image
Set prop defaultIndex to be larger than 0

Ark UI Version
4.4.0
Framework

[X] React
[ ] Solid
[ ] Vue

Browser
No response
Additional Information
No response

@itsJimmyQ
Thanks for reaching out. Good catch. Will see what we can do :)

Hey @cschroeter
Is there any update on this bug?

This has been fixed in a recent PR. We’ll publish a new version shortly.


SRS

SRS is not counted as an active skill by the tool.
Also, it will not allow any skill gem to support SRS.

The program doesn't support minions yet (other than the buffs granted by golems). Minion stat calculations (particularly damage) are rather tricky to do, and I haven't had the time to add them yet.

Oh, forgot to close this one. SRS support was of course added in 1.4.0.


Add urbandict pack

Just something so we can add some puns to our chat bot.
python ./st2client/st2client/shell.py run urbandict.get_definitions term=spottease
.....

id: 5511d3800640fd38d5e0f228
status: succeeded
result:
{
    "result": "[{"word": "Spot Tease\n", "example": "\nAlright! Parking spot just two away from the mall! Wait...damn Smart Cars parked there!  Also can refer to a car that takes up 90% of its own spot and 10% of the one next to it, leaving no room for another car to park.\n"}]",
    "exit_code": 0,
    "stderr": "",
    "stdout": ""
}

Why not!
+1