[SPARK-25495][SS]FetchedData.reset should reset all fields

What changes were proposed in this pull request?
FetchedData.reset should reset _nextOffsetInFetchedData and _offsetAfterPoll. Otherwise it will cause inconsistent cached data and may make Kafka connector return wrong results.
How was this patch tested?
The new unit test.

Test build #96388 has started for PR 22507 at commit 1c8ef21.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/3317/
Test PASSed.

Test build #96388 has finished for PR 22507 at commit 1c8ef21.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/96388/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/3356/
Test PASSed.

Test build #96447 has started for PR 22507 at commit 6eebe34.

Test build #96447 has finished for PR 22507 at commit 6eebe34.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/96447/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/3446/
Test PASSed.

Test build #96568 has started for PR 22507 at commit deac6ca.

Test build #96568 has finished for PR 22507 at commit deac6ca.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/96568/
Test PASSed.

LGTM. Thanks for the explanation.

Thanks! Merging to master and 2.4.


logfile-installation-standard command not found solved

Obviously there is no such function in the script:)

@pulponair Thank you for this information. 😊👍


[Bug]:

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

What happened?
Describe the bug
Chrome report 404 error, the path https://my_stable_diffusion_domain/openpose_editor_index
{"detail":"Not Found"}

To Reproduce
Steps to reproduce the behavior:
After installation, only.
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

Environment

OS: [e.g. iOS] Windows (Server on Linux x64)
Browser [e.g. chrome, safari] Chrome

Additional context
Add any other context about the problem here.
Steps to reproduce the problem
install only
What should have happened?
work normally
Commit where the problem happens
webui:
controlnet:
openpose-editor:
What browsers do you use to access the UI ?
No response
Command Line Arguments
No

Console logs
No

Browser logs
Such as the pic.
Additional information
No response

Make sure you have installed the extension properly. ControlNet will send a request to verify if the page exists so 404 is normal if you have not installed the extension.


fix: Simplify cursor repositioning during the ToggleDone command

Description
Partially supercedes  #1703
This PR is one in a collection of PRs with the ultimate goal of providing an option to write tasks using a plaintext version of this plugin's task format.
This PR's goal is to pave the way for implementing that plaintext task format, specifically by:

fix: Slightly reworking how the cursor is repositioned during the ToggleDone command. This to make it be agnostic to the task's format.

Users should expect the following cursor behavior:

When toggling a task, the cursor won't change columns. If toggling a task makes it shorter and leaves the cursor out of bounds, it is moved to the end of the line. This essentially was the previous behavior, except in a few edge cases.
When toggling an empty line or a line with just a list marker (number, bullet, dash), the cursor will jump to the end of the line so that a user can continue typing.

Motivation and Context
When the ToggleDone command moves the cursor after inserting text, it regexes for a completion date with a regex specific to the default task format.
https://github.com/obsidian-tasks-group/obsidian-tasks/blob/8f6b58b38243dbfe5fda9b5933c9bd55c8805494/src/Commands/ToggleDone.ts#L118-L122
Given the goal to introduce new task formats, I wanted to make the cursor repositioning work consistently regardless of which Task Format you were using. The simplest way I found to do that was to change the behavior to what I described in the #Description section which mostly matched the existing behavior according to the test suite.
How has this been tested?
Leverages the existing test suite for Toggle Done.
A small number of those tests were modified to reflect the changed behavior.
Screenshots (if appropriate)
Types of changes

Changes visible to users:

[x] Bug fix (prefix: fix - non-breaking change which fixes an issue)
[ ] New feature (prefix: feat - non-breaking change which adds functionality)
[ ] Breaking change (prefix: feat!! or fix!! - fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation (prefix: docs - improvements to any documentation content)
[ ] Sample vault (prefix: vault - improvements to the Tasks-Demo sample vault)

Internal changes:

[ ] Refactor (prefix: refactor - non-breaking change which only improves the design or structure of existing code, and making no changes to its external behaviour)
[ ] Tests (prefix: test - additions and improvements to unit tests and the smoke tests)
[ ] Infrastructure (prefix: chore - examples include GitHub Actions, issue templates)

Checklist

[x] My code follows the code style of this project and passes yarn run lint.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] My change has adequate Unit Test coverage.

Terms

[x] My contribution follow this project's contributing guide
[x] I agree to follow this project's Code of Conduct

Thank you!
The description of the change in behaviour is really clear.

When toggling a task, the cursor won't change columns. This essentially was the previous behavior, except in a few edge cases.

It would be helpful if this could  also say what will happen if the cursor was inside a 'done date' before toggling, and the done date is removed.

When toggling an empty line or a line with just a list marker (number, bullet, dash), the cursor will jump to the end of the line so that a user can continue typing.

I do feel that makes this a bug-fix instead of a breaking change. The original behaviour was really annoying.
Which modes does this affect? I presume Live Preview and Source.

After some previous fixes to Toggle Done, the following file was created to support additional manual testing, by opening the Tasks-Demo folder as an Obsdian vault.
https://github.com/obsidian-tasks-group/obsidian-tasks/blob/main/resources/sample_vaults/Tasks-Demo/Manual Testing/Toggle Done Cursor Fixes.md
If you have time, would you mind running through the test steps, and updating anything that has been changed by this PR please?
(I guess it will also confirm that a load of things have not changed...)

Hi @kedestin, I just wanted to say many thanks for this PR and all your replies - much appreciated.
I'm busy today, so will pick this up as soon as I can, as I realise it will be blocking your next PR...

Thank you.

I apologise if my eagerness to respond to feedback made it seem like I was trying to force this in as quickly as possible.

Don't worry, it didn't!

I think this is now ready to go ahead and merge. Do you agree @kedestin?

@kedestin Many thanks for a great simplification of the code - I learned a lot from it too!


Red squares as icons again (more info)

Hey @bkader
From time to time I still get red squares for icons, but today I have more info when they appear:

So in the top window (threat) I have ROLE set as icons. Red squares appeared for:

Pets
Feral druid (he also changed spec from tanking feral to dpsing feral few times)
Priest (she changed spec from disci to shadow few times)

They didn't fix with reload/relog/combatlog fix and stayed as squares for whole raid.
I noticed pet ROLE problem just yesterday, but for disci/shadow/holy priests or balance/tank/feraldps/resto druids ROLE icon turns into squares very often (sometimes it fixes after few encounters and sometimes not).
This issue now happens only for ROLE (class or spec work fine).
Regards,
Wojas

@wojas007 thanks a lot for reporting this.
This only happens with the threat module right? If yes, then I will have to rewrite the module completely or at least get rid of those icons because the threat API is a bit screwed.. If other modules collect data first everything works fine, if it's that module that starts collecting data about players .. you know the result.
I will put more work into it.

@wojas007 thanks a lot for reporting this.
This only happens with the threat module right? If yes, then I will have to rewrite the module completely or at least get rid of those icons because the threat API is a bit screwed.. If other modules collect data first everything works fine, if it's that module that starts collecting data about players .. you know the result.
I will put more work into it.

I actually didn't check if role icons were corrrect in other modules OR if threat module shows proper icons if they are other than roles.

I actually didn't check if role icons were corrrect in other modules OR if threat module shows proper icons if they are other than roles.

Quick info:
I checked the data from yesterday (when bug occured) and checked role icons for other modules. They seem fine. Maybe threat module could somehow call for role info from somewhere else to put icons properly?
What I cannot check outside raid: when role icons are bugged for threat module, then what happens if I change them for spec/class icon. Will test it next time I play

Quick info:
I checked the data from yesterday (when bug occured) and checked role icons for other modules. They seem fine. Maybe threat module could somehow call for role info from somewhere else to put icons properly?
What I cannot check outside raid: when role icons are bugged for threat module, then what happens if I change them for spec/class icon. Will test it next time I play

I actually didn't check if role icons were corrrect in other modules OR if threat module shows proper icons if they are other than roles.

Pets didn't have "roles" assigned and it was my mistake. I added the missing lines to different files that assigns the role DAMAGER to them by default.

I actually didn't check if role icons were corrrect in other modules OR if threat module shows proper icons if they are other than roles.

Pets didn't have "roles" assigned and it was my mistake. I added the missing lines to different files that assigns the role DAMAGER to them by default.

I actually didn't check if role icons were corrrect in other modules OR if threat module shows proper icons if they are other than roles.

Pets didn't have "roles" assigned and it was my mistake. I added the missing lines to different files that assigns the role DAMAGER to them by default.

Yeah I figured that could be the problem for pets. Druids (all specs) and priest (all specs) are different story. This doesn't happen always. but sometimes it does

I actually didn't check if role icons were corrrect in other modules OR if threat module shows proper icons if they are other than roles.

Pets didn't have "roles" assigned and it was my mistake. I added the missing lines to different files that assigns the role DAMAGER to them by default.

Yeah I figured that could be the problem for pets. Druids (all specs) and priest (all specs) are different story. This doesn't happen always. but sometimes it does

I have a question @bkader
How specs and roles are assigned?

I have a question @bkader
How specs and roles are assigned?

Using the LibGroupTalents-1.0 library.

Using the LibGroupTalents-1.0 library.

Ok then it's too complicated for me to help here : P

Ok then it's too complicated for me to help here : P

This little tweak seems to work for now but if we want a more complicated threat module just like Omen's I will have to rewrite it.

This little tweak seems to work for now but if we want a more complicated threat module just like Omen's I will have to rewrite it.

I don't really mind what these icons are. I only wanted to help get rid of red squares (unless this happens only for me) : p

I don't really mind what these icons are. I only wanted to help get rid of red squares (unless this happens only for me) : p

@bkader I did some testing and here's what I found (maybe that helps):
Threat module don't track spec changes. Remember this issue?
https://github.com/bkader/Skada-Revisited/issues/23

I logged my feral tank / feral dps druid and changed spec few times.
All the modules EXCEPT for the threat were able to assign proper icon (class, spec and role) after respec.
Only threat module was showing icons for spec/role that I logged in with.

@bkader I did some testing and here's what I found (maybe that helps):
Threat module don't track spec changes. Remember this issue?
https://github.com/bkader/Skada-Revisited/issues/23

I logged my feral tank / feral dps druid and changed spec few times.
All the modules EXCEPT for the threat were able to assign proper icon (class, spec and role) after respec.
Only threat module was showing icons for spec/role that I logged in with.

@wojas007 thanks for testing and providing this amount of info!
Tell me please, did you update the addon or not? Because I added the backup roles/specs in this commit

@wojas007 thanks for testing and providing this amount of info!
Tell me please, did you update the addon or not? Because I added the backup roles/specs in this commit

After update threat module still doesn't check for respec. Spec/roles don't change after you change spec.
I didn't check for squares yet because I didn't have a chance to raid

After update threat module still doesn't check for respec. Spec/roles don't change after you change spec.
I didn't check for squares yet because I didn't have a chance to raid

Hey @bkader !
Today I have a bit more info, because I had a chance to test newest version on raid. I need first to recall this:

What you wrote above is correct and sometimes happen. But this does NOT bother me, because it fixes itself for next fights.
However it does NOT fix itself for threat module. So if class/spec/role is "cached" wrongly for first encounter it will stay that way until relog/reload. So if red square appear in threat module for first fight you play, then it'll stay this way until relog. It is the same with respec - threat module won't update spec/role after changing spec.
But again - this is ONLY for threat module. Other modules work fine (even if loaded/cached wrongly, because they fix after time).

Hey @bkader !
Today I have a bit more info, because I had a chance to test newest version on raid. I need first to recall this:

What you wrote above is correct and sometimes happen. But this does NOT bother me, because it fixes itself for next fights.
However it does NOT fix itself for threat module. So if class/spec/role is "cached" wrongly for first encounter it will stay that way until relog/reload. So if red square appear in threat module for first fight you play, then it'll stay this way until relog. It is the same with respec - threat module won't update spec/role after changing spec.
But again - this is ONLY for threat module. Other modules work fine (even if loaded/cached wrongly, because they fix after time).

Hey @wojas007 and thanks again for the feedback.
Is there a chance you can edit the modules\Threat.lua file and change line 39 from Skada:find_player to Skada:get_player and comment out/delete line 41 and give it a test?

Hey @wojas007 and thanks again for the feedback.
Is there a chance you can edit the modules\Threat.lua file and change line 39 from Skada:find_player to Skada:get_player and comment out/delete line 41 and give it a test?

I'll try it and let you know

I'll try it and let you know

@wojas007 , try this pastebin instead and let me know.

Hey @bkader
I was only able to test this solo and still there's no response to changing spec.
Will check for red squares when I play any raid, but I think that it will be the same as for changing spec.

I'll try it and let you know

@wojas007 , try this pastebin instead and let me know. If it works, it will be used instead.

@bkader
I just tested this threat module. It seems that even if there are some red squares for first encounter, they seem to fix for next fights.
However, there is still something wrong with spec AND role caching. For some reason threat module sometimes reads change of spec and sometimes it doesn't:

The druid pointed with green rectangle changed to balance from tank (threat module shows proper spec)
The druid pointed with red rectangle changed to feral DPS from resto (threat module shows wrong spec)

I really don't know if it's worth working on... If not just close the topic.
Also I still need some testing for red squares (for some reason they mostly appear in ruby sanctum for me)

@wojas007 thanks a lot for your tests and sorry for all the troubles you are having.
I completely removed specs from the Threat module and I allowed only class or role, just like any other addons.
If the problem with red squares still occurs, I will just remove roles and keep only classes.

@wojas007 thanks a lot for your tests and sorry for all the troubles you are having.
I completely removed specs from the Threat module and I allowed only class or role, just like any other addons.
If the problem with red squares still occurs, I will just remove roles and keep only classes.

@bkader remove roles then, because roles bug sometimes with respec. Keep only classes.

@bkader SOLO TESTS
after login

after changing spec:


Gradle generateDevelopmentBundle failed

When importing a Tentacles template into intellij from a git repo it fails to setup gradle tasks. It fails in the same way when i try to reload the project.
Starting Gradle Daemon...
Gradle Daemon started in 4 s 973 ms
> Task :prepareKotlinBuildScriptModel UP-TO-DATE

FAILURE: Build failed with an exception.

* What went wrong:
Could not create task ':generateDevelopmentBundle'.
Extension of type 'RelocationExtension' does not exist. Currently registered extension types: [ExtraPropertiesExtension, BasePluginExtension, DefaultArtifactPublicationSet, SourceSetContainer, ReportingExtension, JavaPluginExtension, JavaToolchainService, TestingExtension, ShadowExtension, IdeaModel]

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 33s

I kinda fixxed it.

@11robert11 how did you fix it?

I don't actually remember but I was using a borrowed laptop that had a messed up windows installation and I think that was the issue.


SkeletonIK3D bone roll axis is not working correctly

Godot version
4.0.2
System information
Windows 10 960m
Issue description
When using the skeltonIK3d on a simple bone chain, the roll axis of bones are not working correctly. As can be seen in this clip comparing 3.5 to 4.0.2, when moving the ik target on the x axis, the bone roll of the shin bone twists in a very strange way.
When the ik target is just moving up and down on the y axis 4.0.2 looks the same as 3.5. I have tried many ways of setting the roll axis in blender before exporting, but this seems to make no difference in godot.
https://github.com/godotengine/godot/assets/7741669/524f9450-8582-4336-96a2-397ffe915d2d
@lyuma I also tried this with your recent fix in master and it does not fix this issue, unfortunately. I did try the scorpion demo scene and I can see that it resolved that. Simple 2 or 3 bone chains seem to exhibit this odd roll issue...maybe the long chain on the scorpion tail is covering up the issue?
On a side note, I am getting tons of crashes trying to test out simple ik with the standard tool script. Especially just clicking in the skeletonik3d node.
Steps to reproduce

import a simple 2 or 3 bone skeleton such as a leg
add a skeltonik3d node
fill in the node parameters and add a marker3d as target
add a tool script to start off the ik solve
move the ik target on the x axis and observe the twisting

Minimal reproduction project
This has the 3.5, 4.0.2 file and the blend file
ik_roll_bug.zip

@fracteed  confirmed the reported bug

Thanks for all the testing, and for clarifications in the comments on #77469. Sorry I forgot to post an update last week, but I made progress and verified that this was indeed a regression in 4.x that was not present in 3.x and seems to still be an issue regardless of humanoid retarget and regardless of the other bugfixes.
I was out for a week but I'm pretty confident I will be able to get to the bottom of this issue by the time 4.1 is released. I'll keep you all updated.

Thanks for the update @lyuma . I am very much looking forward to this, and will do some extensive testing when there is a new PR!

Can you verify the updated PR on #77469 and see if it works for you? The issue was 3.x called Basis::rotated() and 4.0 calls the new rotate_to_align, which must do a left-multiply to match Basis::rotated.


Issues in 'Create Notification' page.

Not able to send a second notification after sending one in same session.
Progress indicator rotates indefinitely if send button is clicked without selecting notification group.


Testing psygnal with pytest-qt

psygnal version: 0.11.1
Python version: 3.10
Operating System: Windows

For a project I'm working on, I'm using psygnal as signaling mechanism within my application. I would like to run unit tests on some internal parts of my project to ensure everything works properly. Is it possible to use pytest-qt together with psygnal to run unit tests and ensure that signals are correctly emitted?

Just answered myself by checking the local unit tests and the answer seems yes. Closing.

Yep!  As you found, it works.  I'll also note the long standing #46 "todo"... but that hasn't been urgent for me since I too just use pytest-qt in most cases

Another test pattern for synchronous applications is to connect your signal to a Mock(), perform your action, and then use mock.assert_called...

Another test pattern for synchronous applications is to connect your signal to a Mock(), perform your action, and then use mock.assert_called...

Do you have an example I can look at?

yeah, that pattern is used all throughout the tests in this repo, for example:
https://github.com/pyapp-kit/psygnal/blob/8f4d781a57c85755a26c169608305e5525cbec05/tests/test_psygnal.py#L109-L120
(note, it really doesn't need to be MagicMock there... a simple Mock() would also work fine)

yeah, one doesn't need to be using unittest as a test runner to take advantage of patch and mock.  Those are just generally useful objects regardless of your test runner


Is it possible to convert the pretrained model into onnx format?

Hi, after reading the code, it seems that the pretrained weights need to be used in conjunction with a tokenizer and some other libraries:
x = self._preprocess(img)
x = self.model.generate(x[None].to(self.model.device), max_length=300)[0].cpu()
x = self.tokenizer.decode(x, skip_special_tokens=True)
x = post_process(x)

def post_process(text):
    text = ''.join(text.split())
    text = text.replace('…', '...')
    text = re.sub('[・.]{2,}', lambda x: (x.end() - x.start()) * '.', text)
    text = jaconv.h2z(text, ascii=True, digit=True)

    return text

This makes it seem like there's no way to convert the model to the ONNX format for use in other languages. Do you have any thoughts on how to achieve this? I don't know too much about it, thank you very much!

Conversion to ONNX is possible and has been done, but inference in other languages is not trivial, mainly because HuggingFace's generate method (basically beam search) would have to be reimplemented. Tokenizer and post-processing are relatively easy to substitute; tokenizer's decode can be replaced with a look-up table and the rest are some rather simple operations on strings.

@kha-white  Thanks for your reply, I have converted an ONNX model with input and output shapes as follows:
Input Details:
Name: pixel_values, Shape: ['batch_size', 'num_channels', 'height', 'width'], Type: tensor(float)
Name: decoder_input_ids, Shape: ['batch_size', 'decoder_sequence_length'], Type: tensor(int64)

Output Details:
Name: logits, Shape: ['batch_size', 'decoder_sequence_length', 6144], Type: tensor(float)

I understand that pixel_values is a tensor of the bitmap, but I am unclear about decoder_input_ids. Does it come from data in the manga109 training set?
logits is a tensor of length 6144, I am currently guessing it is to be used in conjuction with vocab.txt.
@Mar2ck  Wow I didn't see there is even a bot that turns model into onnx automatically! But I see it is a little different from mine:
Input Details:
Name: pixel_values, Shape: ['batch_size', 'num_channels', 'height', 'width'], Type: tensor(float)
Name: decoder_input_ids, Shape: ['batch_size', 'decoder_sequence_length'], Type: tensor(int64)

Output Details:
Name: logits, Shape: ['batch_size', 'decoder_sequence_length', 6144], Type: tensor(float)
Name: encoder_last_hidden_state, Shape: ['batch_size', 'encoder_sequence_length', 768], Type: tensor(float)

It has encoder_last_hidden_state in output which mine doesn't have. Have no clue why it happens.

Ok so I don't know exactly how to do the inference in onnx (I played around with it a little bit but it seemed rather tricky to do and I abandoned/postponed it), so I'll just tell you what I know.
This model has an encoder-decoder architecture. The encoder gets an image as an input and outputs a feature vector (this is encoder_last_hidden_state). Then, this feature vector is passed to the decoder, which is run iteratively, outputting one token at a time until reaching a special token indicating the end of the sequence. At each step, the decoder is being fed the sequence of all the tokens it had outputted so far (this is decoder_input_ids). The decoder outputs the tokens as logits - each token is represented by a vector of 6144 values corresponding to the vocab, as you correctly noticed. You can take the argmax from the logits vector to get the most probable token, but what actually happens is the logits are converted to probabilities and top N hypotheses are considered at each step (beam search). This is done by HuggingFace's generate method, which is unfortunately quite complex.
The tricky part is replicating the beam search (although it could be replaced with a simpler greedy search at cost of some accuracy drop) and getting all the little details right when passing around the tensors.
BTW I suppose that there is something wrong with both yours and that bot's onnx export. I think that there should be separate onnx file for encoder and decoder, since the encoder is run only once per inference and then the decoder is run iteratively until the end of the sequence is reached.

@kha-white Thank you for your reply, I'm starting to understand the whole workflow. I am currently looking for a solution regarding generate function. I saw some stuff about BeamSearch in the onnxruntime repository, but haven't delved into it yet. As for the onnx model issue, it's actually possible to create two separate models, but I had previously merged them while generating because I didn't have a deep understanding of the model. Again thank you very much for your response.

@LancerComet Hi, would you like to share your method to export the pre-trained model to onnx format? I am getting the below errors when exporting with optimum-cli:
$ optimum-cli export onnx --model kha-white/manga-ocr-base bin/                                                                                (base)
Framework not specified. Using pt to export to ONNX.
Automatic task detection to image-to-text-with-past.
Could not find image processor class in the image processor config or the model config. Loading based on pattern matching with the model's feature extractor configuration.
/Users/mayo/miniconda3/lib/python3.11/site-packages/transformers/models/vit/feature_extraction_vit.py:28: FutureWarning: The class ViTFeatureExtractor is deprecated and will be removed in version 5 of Transformers. Please use ViTImageProcessor instead.
  warnings.warn(
Traceback (most recent call last):
  File "/Users/mayo/miniconda3/bin/optimum-cli", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/Users/mayo/miniconda3/lib/python3.11/site-packages/optimum/commands/optimum_cli.py", line 163, in main
    service.run()
  File "/Users/mayo/miniconda3/lib/python3.11/site-packages/optimum/commands/export/onnx.py", line 232, in run
    main_export(
  File "/Users/mayo/miniconda3/lib/python3.11/site-packages/optimum/exporters/onnx/__main__.py", line 399, in main_export
    onnx_config, models_and_onnx_configs = _get_submodels_and_onnx_configs(
                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mayo/miniconda3/lib/python3.11/site-packages/optimum/exporters/onnx/__main__.py", line 82, in _get_submodels_and_onnx_configs
    onnx_config = onnx_config_constructor(
                  ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mayo/miniconda3/lib/python3.11/site-packages/optimum/exporters/onnx/base.py", line 623, in with_past
    return cls(
           ^^^^
  File "/Users/mayo/miniconda3/lib/python3.11/site-packages/optimum/exporters/onnx/model_configs.py", line 1231, in __init__
    super().__init__(
  File "/Users/mayo/miniconda3/lib/python3.11/site-packages/optimum/exporters/onnx/config.py", line 322, in __init__
    raise ValueError(
ValueError: The decoder part of the encoder-decoder model is bert which does not need past key values.

Ok so I don't know exactly how to do the inference in onnx (I played around with it a little bit but it seemed rather tricky to do and I abandoned/postponed it), so I'll just tell you what I know.
This model has an encoder-decoder architecture. The encoder gets an image as an input and outputs a feature vector (this is encoder_last_hidden_state). Then, this feature vector is passed to the decoder, which is run iteratively, outputting one token at a time until reaching a special token indicating the end of the sequence. At each step, the decoder is being fed the sequence of all the tokens it had outputted so far (this is decoder_input_ids). The decoder outputs the tokens as logits - each token is represented by a vector of 6144 values corresponding to the vocab, as you correctly noticed. You can take the argmax from the logits vector to get the most probable token, but what actually happens is the logits are converted to probabilities and top N hypotheses are considered at each step (beam search). This is done by HuggingFace's generate method, which is unfortunately quite complex.

Seems like there's a rust implementation called Candle by huggingface as well. There's also an example for tocr, not sure how hard it is to convert this model to candle or use candle-onnx, but it seems promising for binary/wasm.

Hope it helps.
import re
import jaconv
import bumpy as np

from onnxruntime import InferenceSession
from PIL import Image

class MangaOCR():
    def __init__(self, model_path: str, vocab_path: str):
        self.session = InferenceSession(model_path)
        self.vocab = self._load_vocab(vocab_path)

    def __call__(self, image: Image.Image) -> str:
        image = self._preprocess(image)
        token_ids = self._generate(image)
        text = self._decode(token_ids)
        text = self._postprocess(text)

        return text

    def _load_vocab(self, vocab_file: str) -> list[str]:
        with open(vocab_file, "r") as f:
            vocab = f.read().splitlines()

        return vocab

    def _preprocess(self, image: Image.Image) -> np.ndarray:
        # convert to grayscale
        image = image.convert("L").convert("RGB")
        # resize
        image = image.resize((224, 224), resample=2)
        # rescale
        image = np.array(image, dtype=np.float32)
        image /= 255
        # normalize
        image = (image - 0.5) / 0.5
        # reshape from (224, 224, 3) to (3, 224, 224)
        image = image.transpose((2, 0, 1))
        # add batch size
        image = image[None]

        return image

    def _generate(self, image: np.ndarray) -> np.ndarray:
        token_ids = [2]

        for _ in range(300):
            [logits] = self.session.run(
                output_names=["logits"],
                input_feed={
                    "image": image,
                    "token_ids": np.array([token_ids]),
                },
            )

            token_id = logits[0, -1, :].argmax()
            token_ids.append(int(token_id))

            if token_id == 3:
                break

        return token_ids

    def _decode(self, token_ids: list[int]) -> str:
        text = ""

        for token_id in token_ids:
            if token_id < 5:
                continue

            text += self.vocab[token_id]

        return text

    def _postprocess(self, text: str) -> str:
        text = "".join(text.split())
        text = text.replace("…", "...")
        text = re.sub("[・.]{2,}", lambda x: (x.end() - x.start()) * ".", text)
        text = jaconv.h2z(text, ascii=True, digit=True)

        return text

You can implement beam search, I was just lazy. But I've tested it and it works, though it's slower than HF's generate method.
For completion this is how I exported the model:
import torch
from transformers import VisionEncoderDecoderModel

model = VisionEncoderDecoderModel.from_pretrained("kha-white/manga-ocr-base")
model.eval()

# Dummy input for the model
dummy_image = torch.randn(1, 3, 224, 224)
dummy_token_ids = torch.tensor([[2]])

# Export the model
torch.onnx.export(
    model,
    (dummy_image, dummy_token_ids),
    "ocr/model.onnx",
    input_names=["image", "token_ids"],
    output_names=["logits"],
    dynamic_axes={
        "image": {
            0: "batch_size",
        },
        "token_ids": {
            0: "batch_size",
            1: "sequence_length",
        },
        "logits": {
            0: "batch_size",
            1: "sequence_length",
        },
    },
    opset_version=11
)


java release notes for the 2021-04 release

This is an automated pull request to gather the java release notes for the 2021-04 release. See Producing Release Notes for details of the processing.

Closing this. Please use https://github.com/Azure/azure-sdk/pull/2718/files for April releases.


Password not redacted in debug output if migration fails

Which version and edition of Flyway are you using?
7.3.1 (nb: reported by Tony Davis)
If this is not the latest version, can you reproduce the issue with the latest one as well? (Many bugs are fixed in newer releases and upgrading will often resolve the issue)
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
CLI
Which database are you using? (Type & version)
MariaDB, latest (though not relevant)
Which operating system are you using?
Windows
What did you do? (Please include the content causing the issue, any relevant configuration settings, the SQL statement(s) that failed (if any), and the command you ran)
Running a migration with -X debug output on, if the migration succeeds then the password is redacted in the debug output. However, if the migration fails (due to bad config, for example) it is displayed.
What did you expect to see?
Password always redacted

Could you provide a reproduction?

Actually, this case is invalid - the password was in the config file as -password=OpenSesame so Flyway didn't recognise what it actually was.


Move all volume expansion feature gates to GA

KEP: kubernetes/enhancements#284
Upstream: kubernetes/kubernetes#108929

/assign @PI-Victor

/sig storage

/lgtm
but hold for a tech review from sig-storage

/approve


[FEATURE] Add fields for the Initial SQL category in connection-fields.xml etc

The optimal defaults for the Connection (session) could be pre-defined
and written in the Initial SQL right from the start (for every new Connection).
These could be done by adding one more "vendor" field in the connection-fields.xml
specifically for the Initial SQL category. There's no way to do it as of now
(such code would be ignored by xml parser).
Name: Yuri Fal
Company: Analytika Plus
What's in the making: http://github.com/analytikaplus/clickhouse-tableau-connector-jdbc
For example, I would like to define the following session parameter
SET join_use_nulls=1;
in the Initial SQL for every connection to ClickHouse --
for a proper results in the In/Out Set dimensions.

Internal tracking id: 1320703

Hi, I am a new PM for the Connector SDK and I am looking at our feature backlog and getting things prioritized. I would appreciate if you can give your feedback for our product via this form. It should only take 2-5 mins but would be super valuable to our team. Thanks in advance!!
https://docs.google.com/forms/d/e/1FAIpQLSfs5OreNsxnva_uTO2vTxnoF-oq-37tEdrUpirUKwqud2Ib7g/viewform?usp=sf_link


ROX-12626: Collections E2E Tests

Description
Add E2E tests for collections, mainly testing the logical matching of deployments.
Fix the service endpoint requirements for creation and update of collections (at least one selector rule or embedded obj).
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added

Testing Performed
Haha

/test all

/retest

/retest

/retest

/retest


ImportError: No module named 'Fast5File'

I walked through the installation guide but have been running into an issue with the Fast5File dependency.
For some reason it isn't recognizing the file and ends up outputting:
ImportError: No module named 'Fast5File'
Anyone have any ideas on what might be the issue?

Hello,
I ran into the same problem, for me it was fixed when I switched to right Python version (2.7 instead of >3.0)
Hopefully this will resolve the issue for you aswell


Fix inconsistent spacing after typing an emoji

Details

There's an inconsistency between the compose and edit boxes. When typing out an emoji there is sometimes a space after and sometimes not. By utilizing the same ComposerUtils.getCommonSuffixLength function inside of the editor box as we use in the composer box, the cursor position is calculated correctly.
Fixed Issues

$ https://github.com/Expensify/App/issues/27195
PROPOSAL: https://github.com/Expensify/App/issues/27195#issuecomment-1714627119
Tests

In a message composer window, create an emoji by typing a colon, the emoji name, and then another colon. Note that a space is added after the emoji.
In a message composer window, create an emoji by typing two colons, and then typing the emoji name between the colons. Note the spacing is consistent as in step 1.
Submit the message
Edit the message
In a message editor window, create an emoji by typing a colon, the emoji name, and then another colon. Note that a space is added after the emoji.
In a message editor window, create an emoji by typing two colons, and then typing the emoji name between the colons. Note the spacing is consistent as in step 5.

[x] Verify that no errors appear in the JS console

Offline tests

N/A. The steps are the same for offline.
QA Steps

In a message composer window, create an emoji by typing a colon, the emoji name, and then another colon. Note that a space is added after the emoji.
In a message composer window, create an emoji by typing two colons, and then typing the emoji name between the colons. Note the spacing is consistent as in step 1.
Submit the message
Edit the message
In a message editor window, create an emoji by typing a colon, the emoji name, and then another colon. Note that a space is added after the emoji.
In a message editor window, create an emoji by typing two colons, and then typing the emoji name between the colons. Note the spacing is consistent as in step 5.

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://github.com/Expensify/App/assets/1709513/ec6fd7a7-56f4-4d25-8227-06b930533b58

Mobile Web - Chrome

Android Chrome.webm

Mobile Web - Safari

https://github.com/Expensify/App/assets/1709513/b6d81b86-ac3c-4b8d-ba09-ca2d32f45046

Desktop

https://github.com/Expensify/App/assets/1709513/71bc28b7-3001-4d28-bfab-dfc0a55bd125

iOS

https://github.com/Expensify/App/assets/1709513/e023b4f0-0d7c-40eb-a44d-bd2c7470f5dd

Android

Android Native.webm

I see that Jest Unit Tests / test (job 3) (pull_request)  failed, but it appears unrelated to my changes. Can we try re-running the unit test? They passed fine on my machine. Thanks!

@eVoloshchak I merged Expensify/main into my branch and that seemed to make that unit test pass. Ready for review and merge. Thank you!

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

@youssef-lr, gentle bump on the above

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/youssef-lr in version: 1.3.76-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.3.76-6 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/youssef-lr in version: 1.3.77-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.3.77-7 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


Link to External Pages with Anchor Elements

Challenge Link to External Pages with Anchor Elements has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" type="text/css">

CatPhotoApp

Kitty ipsum dolor sit amet, shed everywhere shed everywhere stretching attack your ankles chase the red dot, hairball run catnip eat the grass sniff.

Purr jump eat the grass rip the couch scratched sunbathe, shed everywhere rip the couch sleep in the sink fluffy fur catnip scratched.

   cat photos

bug

You need an a element that links to http://freecatphotoapp.com

Always double-check the instructions when you think your code is correct but it somehow doesn't pass :wink:

@stacylupe
Thanks for reporting this. But your code is incorrect.
GitHub Issues are for reporting bugs on the website only.
Please use the Help chat room for getting challenge related help.
Happy Coding.


Hext - New Theme Submission

Hext - New Theme Submission

Hello @dewdot
Thanks for submitting your theme, please follow the instruction and make the changes, so we can merge it.
"Rename it to your theme name with the ssg prefix (ex: next-my-theme.md) and fulfill the file with your theme info."

Thank you,
I have renamed the file to: next-hext.md


OpenStreetMap is not showing anymore

The map of OpenStreetMap is not showing anymore in edit view of a place

until now we used my private mapbox key which is no longer valid


how to add site statistics?

The theme supports Google Analytics. Just add your UA id to _config.yml and call it a day. If you want to use a different service you'll need to modify the theme to include whatever specific script needs they have.

thanks


Error: No such command 'env'.

bash-4.2$ orbit init
[ Info ] Env Manifest generated into conf folder
[ Tip ] Recommended next step: orbit deploy foundation -f default-foundation.yaml
[ Tip ] Then, fill up the manifest file (default-env-manifest.yaml) and run: orbit env -f default-env-manifest.yaml

Initializing |█████████████████████████████| 100%
bash-4.2$ orbit env -f default-env-manifest.yaml
Usage: orbit [OPTIONS] COMMAND [ARGS]...
Try 'orbit --help' for help.

Error: No such command 'env'.

orbit init command is not working at this point.  We need to fix it , for now use the manifests in the sample/manifest folder , or create new ones.

we removed the command for now.


A quick question about how to access files other than .py (like csv files)

Hi, I am now reproducing the exact results from the user who proposed lb2. They have provided four csv files and we only need to aggregrate them. I tried different approaches to read these files but failed. My current yaml file looks like:

And my files look like:

It seems that my current codes meet a dead lock or dead loop and it stays in this place for a long time:

If I choose to set file type as python_script, then it will tell me the csv file was not found.
Thanks for your help.

Also, why are you passing the --de_test to your component?
Can you point me to the branch where your code is located to get a better idea of what's going wrong?

Sorry to make you all feel confused. I intend to pass the sample_submission.csv file for access to check if I can fully reproduce the results.
My current branch is lb2.


external test build not showing junit test output

External test builds have stopped displaying external test output
https://ci.adoptopenjdk.net/view/Test_external/job/openjdk8_hs_externaltest_x86-64_linux/192/
It was showing in the previous builds:
https://ci.adoptopenjdk.net/view/Test_external/job/openjdk8_hs_externaltest_x86-64_linux/189/
This may be related to https://github.com/AdoptOpenJDK/openjdk-tests/issues/620
We need to investigate if any recent changes to JenkinsfileBase may be causing this.

@sophia-guo Fyi..

It says
11:50:54 Recording test results
11:50:54 None of the test reports contained any result

so if there is no file under **/external_test_reports/**/*.xml you will not get junit output.

The tests that generated output junit xml reports haven't been touched lately. Only new ones have been added. So, for example, in the build which worked (link above), for example, the 'jenkins test' job was copying over junit xmls from docker onto the external test reports directory-- and as a result they will show in the build output.
Nothing changed in the docker cp command in the test itself. However, it seems that the XML report files, after they are being copied over into the results directory, are being deleted by some command in the build -- which will explain no test report being displayed -- even after the docker copy step works fine.

https://github.com/AdoptOpenJDK/openjdk-tests/pull/638 - should fix this PR as well. Will confirm with the next build run.

Test results have started to show : https://ci.adoptopenjdk.net/view/Test_external/job/openjdk11_hs_externaltest_extended_x86-64_linux/47/testReport/


adds otel env vars

What is this contribution about?
Loom

Record a quick screencast describing your changes to show the team and help reviewers.

Link

Please provide a link to a branch that demonstrates this pull request in action.

Platform is now part of our headless CMS admin.


Multi-page project - audio player display issue

@kywark and I have both been working on multi-page projects for the classroom lesson plan.
The programming historian style project is here: https://bethanycayeradcliff.github.io/sensitive-audio-lesson
And the more traditional lesson plan formatted as a guide is here: https://kywark.github.io/example-sensitive-audio-lesson-beecher/
Both of us have had issues, particularly when adding pages with an audio item.
When I was building the programming historian project, I first added all the non-audio item pages, then added the audio item, and the page never appeared on navigation.
I started over, thinking I made a mistake, and built the existing project starting with the audio item (here: https://bethanycayeradcliff.github.io/sensitive-audio-lesson/example-project-using-criminal-syndicalism-case-mccomb-mississippi-from-the-john-beecher-collection-at-the-harry-ransom-center/) and then adding the pages. This time it worked! But now the player is broken, which I think happened after I updated the navigation to remove the multiple pages that appeared. Here's a screenshot from this page with the broken player:

Kylie's project also seems to have the same error on this page:

The other audio item in Kylie's project seems to be displaying fine on this page:

Interestingly, that page doesn't have any introductory text, so I wonder if something is glitching when those .md pages are updated?
Let us know what you find out and if you have any questions for us!

The reason the audio isn't playing is that there isn't a manifest link:
IIIF manifest:
Next step is to figure out why.

The manifest is created, but not passed to the item page & UV.

The problem was introduced when the item was renamed in this edit -- in addition to the renamed title, the manifest_name line containing a link we use to construct the manifest URI was eliminated, so that keeps the GH pages site from passing a manifest to UV.
@bethanycayeradcliff, can you tell whether that edit was done through the web app, or was it something you did by editing the markdown file itself?

Sorry I missed these notification! @benwbrum @saracarl  I think I was editing directly to the markdown file for that edit.

Oh I think this is maybe where I changed the project title? Could that have affected the manifest URI?

I think you accidentally removed the manifest_name line from the top of the file.  If you add this back, things should work:
manifest_name: example-project-using-criminal-syndicalism-case-mccomb-mississippi-from-the-john-beecher-collection-at-the-harry-ransom-center

I am also having a similar issue with the audio player for the gentle-improvement project, but I haven't made any edits beyond merges. On some items it's displaying fine, but for the Hecht and Atwood items, the audio player and manifests are missing.


feat: allow phong shaded profiles

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 95.23810% with 4 lines in your changes missing coverage. Please review.

Project coverage is 96.11%. Comparing base (4276f9c) to head (3e15e9c).

Files with missing lines
Patch %
Lines

src/layers/profile-layer/extrudePolylineProfile.ts
93.44%
4 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #162      +/-   ##
==========================================
- Coverage   96.83%   96.11%   -0.72%
==========================================
  Files          13       13
  Lines         221      283      +62
  Branches       27       30       +3
==========================================
+ Hits          214      272      +58
- Misses          7       11       +4

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


[HW] KSHITIJ GUPTA

Name: KSHITIJ GUPTA
Email<EMAIL_ADDRESS>Linkedin Profile: https://www.linkedin.com/in/kshitijgupta74/
Attach the homework step I screenshots below:

-- images removed by team --

Attach the homework step II screenshots below:

Were you able to deploy to Netlify? We'd like a screenshot of the deployed app.

sorry for the late reply.. attaching the screenshot of the deployed app!

Looks good Kshitij, thank you for following up. Here's your badge -> https://api.badgr.io/public/assertions/z1GmpbgCS4miBlnO3_TQ0g?identity__email=kshitijgupta74%40gmail.com


Solving issue [API requests that don't return a 2XX HTTP Status result in an exception being raised ] #6260

This is a Commit to solve issue #6260
Handle non-2XX status codes in apiRequest function
This PR addresses the issue of uncaught exceptions for non-2XX status codes in the apiRequest function. The changes include:

Modified the _handleError function to return error response data for AxiosErrors instead of rejecting the promise.
Updated documentation to explain the new behavior for non-2XX status codes.
Added an example in the documentation demonstrating how to handle different status codes.

These changes allow users to handle different status codes without uncaught exceptions while maintaining the existing API structure.

@Manancode please read and follow First-time contributors, Contributing to Plone, and Contributing to Volto.


Hi from Helloctober

What does the program do ?
Say Hello world in bash
In what programming language it is written?
Bash script

Thank you for participating  in hacktoberfest ❣ if you liked working on this repo you can share it with friends and star this project for helping others


Update interface.ts to fix Angular 19 deploy

Fix for Angular19, should prevent 'Expected array, received object' error.

Copying from my comment in https://github.com/FirebaseExtended/firebase-framework-tools/pull/277 here for visibility
For anyone running into this issue. We'll keep y'all posted on when this fix goes live. Until then please give this workaround a try:
Step 1:
In your project run npm install<EMAIL_ADDRESS>this will install the latest adapter with this fix merged in.
After running that please verify that you see @apphosting/adapter-angular": "^17.2.11 in your package.json. Its important that the version is 17.2.11 since this fix is released with that version.
Step 2:
Add this additional line in your package.json scripts: "apphosting:build": "FRAMEWORK_VERSION=${YOUR_ANGULAR_VERSION} apphosting-adapter-angular-build"
Step 3:
Commit these changes to github and kickoff a new rollout


Added GlamVelvetsofa to the fidelity tests

model: https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0/GlamVelvetSofa
screen shots added for reference. Couldn't figure out the optimal params to prevent void spaces


Pause button for autoplay videos

Blocks with an autoplay video should have a pause button, to comply with accessibility standards. Specifically, we’re mitigating Failure 93 of Success Criterion 1.4.2.
Designs have been adjusted to show a pause button. For now, we’re focusing on the hero #41, the design is available.

The video player for autoplay videos should have a visible pause button when the video starts playing
The button must be discernible from other controls and be clearly labeled and icon that indicates its functionality
The pause/play button should be accessible to users navigating via keyboard, meaning it should be focusable and actionable using keyboard inputs. The focus style should be the same as for the scroll to top button
Upon pressing the pause button, the autoplay video should immediately stop playing
Once the video is paused, the pause button should change to a play button
The button should be large enough to be easily tapped on touch devices without accidentally pressing adjacent controls

@Joesturbo This issue is a blocker for the MVP of the 9th of October, it will probably mean we will have to postpone the go-live date to the 11th.

@markovukiceviccn is this done?

@DanielaPedrochevd @Andrei-Boiangiu
Somehow, I missed this convo.
I will be checking it immediately.

@Andrei-Boiangiu @DanielaPedrochevd @#198
This is not a bug, take a look and if you need any further clarification feel free to ping me.

@Andrei-Boiangiu @DanielaPedrochevd
This will be fixed in https://github.com/Netcentric/vg-volvotrucks-us-rd/issues/182


Shikham12 patch 2

All the headlines are now having a consistent format.

Dear @shikham12,
I extend my gratitude for your contributions to our app, College.ai
I kindly request that you provide a detailed description of your work and include relevant screenshots in your pull request. This will facilitate the review process for our team.
Thank you for your cooperation.

also tag to issue you are working on

can you please guide me on to how to tag to issue

Can you please guide me how to tag to issue?
On Thu, 30 May, 2024, 10:09 pm Srs_vesta, @.***> wrote:

also tag to issue you are working on
—
Reply to this email directly, view it on GitHub
https://github.com/SurajSanap/College.ai-main/pull/28#issuecomment-2140202836,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BFBXHOOCPRTP5MU3QHUS3ELZE5I4JAVCNFSM6AAAAABIRIEMISVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNBQGIYDEOBTGY
.
You are receiving this because you were assigned.Message ID:
@.***>

tag issue means  - just write issue number in your PR description ( e.g #18 )


Write a paper on a std::number concept

As a dependency to this project we need a std::number concept. It might be something similar to:
template<typename T>
concept number = std::regular<T> &&
    std::totally_ordered<T> &&
    requires(T a, T b) {
      { a + b } -> std::same_as<T>;
      { a - b } -> std::same_as<T>;
      { a * b } -> std::same_as<T>;
      { a / b } -> std::same_as<T>;
      { +a } -> std::same_as<T>;
      { -a } -> std::same_as<T>;
      { a += b } -> std::same_as<T&>;
      { a -= b } -> std::same_as<T&>;
      { a *= b } -> std::same_as<T&>;
      { a /= b } -> std::same_as<T&>;
      { T{0} };
};

The above definition is probably wrong and for some operations we should not verify the return type (a * b might yield a different type than a / b).

Maybe start with something for which numeric_limits<>::is_specialized==true
On Fri 8 Nov 2019, 17:22 Mateusz Pusz<EMAIL_ADDRESS>wrote:

As a dependency to this project we need a std::number concept. It might
be something similar to:
template
concept number = std::regular &&
std::totally_ordered &&
requires(T a, T b) {
{ a + b } -> std::same_as;
{ a - b } -> std::same_as;
{ a * b } -> std::same_as;
{ a / b } -> std::same_as;
{ +a } -> std::same_as;
{ -a } -> std::same_as;
{ a += b } -> std::same_as<T&>;
{ a -= b } -> std::same_as<T&>;
{ a *= b } -> std::same_as<T&>;
{ a /= b } -> std::same_as<T&>;
{ T{0} };
};
The above definition is probably wrong and for some operations we should
not verify the return type (a * b might yield a different type than a / b
).
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mpusz/units/issues/28?email_source=notifications&email_token=AAFTGN2IHHYPBKYKXQCMQ5LQSWN4RA5CNFSM4JK3AZOKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HYAUYAQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFTGN32QGTCO2FGOITQKILQSWN4RANCNFSM4JK3AZOA
.

Thanks John, this an interesting idea. However, I wouldn't like users to be forced to partially specialize std::numeric_limits for their types to add this support. Even if they will do that, numeric_limits does not guarantee us the availability of arithmetic operators so things like:
quantity<metre, MyRep> d1(MyRep{1});
quantity<metre, MyRep> d2(MyRep{2});
auto d = d1 + d2;

may not compile with instantiation errors inside the library implementation rather than by constraints check for template arguments.
This is why I believe that we should try with the above idea for a concept. It does not have to be named Number. It might be any of:

std::number
std::arithmetic
std::integral
std::floating_point
std::integral_arithmetic
std::floating_point_arithmetic
or whatever SG6 experts will decide to be viable here.

Please also note that Physical Units Library is not the only customer for such a concept. Many other libraries and utilities might benefit from it (i.e. Linear Algebra).
I am really open for feedback and am actively looking for experts' help here.

BTW, before someone will raise it, please do not discuss here if it is sane for it to be a concept or not as the need for it does not come directly for algorithms. I will provide a dedicated policy paper on this and we will discuss this in Prague.
Please, just scope help to make this concept(s) as good and as good for the generic usage as only possible.

One more important design point to mention here. The C++ concepts are able to verify syntactic requirements only. They cannot verify semantics by themselves. This is why we should include all possible operations in requires expression constraints. Things like numeric_limits and other traits are more about semantic requirements and I am not sure if they should be included in concepts. If yes, then only as an addition to a full set of syntactic ones.

Here are some thoughts on a Number concept for a physical quantity valuetype of type T
In quantity<u,T>
https://en.wikipedia.org/wiki/Magnitude_(mathematics)
Magnitude of the quantity
https://en.wikipedia.org/wiki/Scalar
Scalar<T>
https://en.wikipedia.org/wiki/Vector_(mathematics_and_physics)
not Vector<T>
https://en.wikipedia.org/wiki/Real_number
RealNumber<T>
https://en.wikipedia.org/wiki/Dimensionless_quantity
Dimensionless_Quantity<T>
A related issue is where one might want to use physical quantity as valuetype:
complex<Quantity> or Quantity<unit,complex>
quaternion<Quantity> or Quantity<unit,quaternion>
(Personally prefer complex<Quantity> , quaternion<\Quantity>
https://github.com/kwikius/quan-trunk/blob/master/quan/complex/complex.hpp
https://github.com/kwikius/quan-trunk/blob/master/quan/three_d/quat_def.hpp
https://github.com/kwikius/quan-trunk/blob/master/quan/three_d/quat.hpp
Have also found Quantity<unit, Angle> useful mainly for per_second per_second_squared type quantities
eg
radians per second
degrees per second
revolutions per minute
https://github.com/kwikius/quan-trunk/blob/master/quan_matters/examples/angles2.cpp#L32

Some thoughts related to ops on Quantities with other types
Want generic as possible binary operations  but avoiding ambiguous overloads
Take 2 types Q1, T2 where for example Q1 is a Quantity
Usual issue is  multiplicative op  { *, /}
Q1 op T2
I think there are specifically 3 cases generally in multiplication/division

T2 is in same universe . eg T2 is a Quantity.  ( Same universe but maybe different dimension)

T2 is in lower universe e.g T2 is a Numeric

T2 is in higher universe eg T2 is a 3dvector, matrix etc.

Maybe there is an order that Universe<T1> < Universe<T2>  ?
N.B that the result Type is irrelevant for overload resolution ( e.g if result Q/Q is dimensionlesss etc)

It seems it is impossible to define one number concept. This is why I decided to go with P1813.
Maybe only something like this will be discussed in the SG6 numerics group:
template<typename T, typename U = T>
concept basic_arithmetic =
    std::magma<std::ranges::plus, T, U> &&
    std::magma<std::ranges::minus, T, U> &&
    std::magma<std::ranges::times, T, U> &&
    std::magma<std::ranges::divided_by, T, U>;

but time will tell...


Automatically detect input for inside builds

It should be possible to detect input automatically for inside builds. I think we can create an input plugin that would be triggered on --input auto (and will also be the default), that will decide which input to use. Users will still be able to explicitly select different input method if they need to do that for some reason.

An idea: what if we added a mandatory method to InputPlugin subclasses, like is_autousable, which would return True if the plugin is usable and False if not (is usable == an env variable is defined/a file is in a certain path/whatever the plugin needs to work).
Dock would then run this method on all input plugins and start a build only if this method would return True on exactly one input plugin, otherwise fail and ask for explicit user input.
Thoughts? @TomasTomecek @mmilata @twaugh

Sounds alright to me, because this would allow one docker image to be used both with and without OSBS. Not sure how this fits into #85, though.

is_autousable

...sounds really good! I like it.


Setup ipv6 hostip

fixing bug https://github.com/containerd/nerdctl/issues/78#issue-819102502

fixing bug #78 (comment)

Doesn't seem related to #78, but I agree we should have this.
Can we have unit tests and integration tests?

$ sudo nerdctl run -d --name nginx -p [::1]:80:80 nginx:alpine
585c292270edc4b81150df5f0bc02ca5fde1048c9610ca18823b474c9a1123ff
$ curl http://[::1]
curl: (7) Failed to connect to ::1 port 80: Connection refused

Doesn't work

hi @AkihiroSuda
You should configure your cni to attribue an ipv6 to the container.
cat >/etc/cni/net.d/10-mynet.conf
{
        "cniVersion": "0.2.0",
        "name": "mynet",
        "type": "bridge",
        "bridge": "cni0",
        "ipam": {
                "type": "host-local",
                "subnet": "2001:db8::/96",
                "routes": [
                        { "dst": "::/0" },
                        { "dst": "2001:db8::/96" }
                ]
        }
}

then I create a container with mynet network:
./nerdctl --snapshotter native run --network mynet  -d -p 80:80  alpine  sleep 300

./nerdctl ps
CONTAINER ID    IMAGE                              COMMAND        CREATED               STATUS    PORTS                                NAMES
7e31884d8ba0    docker.io/library/alpine:latest    "sleep 300"    About a minute ago    Up        <IP_ADDRESS>:80->80/tcp, :::80->80/tcp

Check the container ipv6
./nerdctl inspect 7e31884d8ba0
[
    {
        "Id": "7e31884d8ba01e9e3276c2b3cefda6a43f7ab1d097d45b7322ff3c401c923355",
        "Created": "2021-04-03T11:58:32.3609427Z",
        "Path": "sleep",
        "Args": [
            "300"
        ],
        "State": {
            "Status": "running",
            "Running": true,
            "Paused": false,
            "Pid": 20730,
            "ExitCode": 0,
            "FinishedAt": "0001-01-01T00:00:00Z"
        },
        "Image": "docker.io/library/alpine:latest",
        "ResolvConfPath": "/var/lib/nerdctl/1935db59/containers/default/7e31884d8ba01e9e3276c2b3cefda6a43f7ab1d097d45b7322ff3c401c923355/resolv.conf",
        "LogPath": "/var/lib/nerdctl/1935db59/containers/default/7e31884d8ba01e9e3276c2b3cefda6a43f7ab1d097d45b7322ff3c401c923355/7e31884d8ba01e9e3276c2b3cefda6a43f7ab1d097d45b7322ff3c401c923355-json.log",
        "Name": "",
        "Driver": "native",
        "Platform": "linux",
        "AppArmorProfile": "",
        "NetworkSettings": {
            "GlobalIPv6Address": "2001:db8::28",
            "GlobalIPv6PrefixLen": 96,
            "IPAddress": "",
            "IPPrefixLen": 0,
            "MacAddress": "0e:2f:cd:91:11:41",
            "Networks": {
                "unknown-eth0": {
                    "IPAddress": "",
                    "IPPrefixLen": 0,
                    "GlobalIPv6Address": "2001:db8::28",
                    "GlobalIPv6PrefixLen": 96,
                    "MacAddress": "0e:2f:cd:91:11:41"
                }
            }
        }
    }
]

And then I exec into the container to listen on 80
./nerdctl exec -ti 7e31884d8ba0  sh
/ # while true; do nc -l -p 80; done

then try to curl this container  on its ipv6 2001:db8::28 :
./nerdctl --snapshotter native run --network mynet  --rm byrnedo/alpine-curl http://[2001:db8::28]
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:46 --:--:--     0

the curl is ok :
GET / HTTP/1.1
Host: [2001:db8::2a]
User-Agent: curl/7.66.0
Accept: */*

Doesn't seem related to port forwarding

Merged another PR:

https://github.com/containerd/nerdctl/pull/1558


Typo on the service fabric cluster capacity planning

[Enter feedback here]

The properties of each of node type (size, primary, internet facing, number of VMs, etc.)

Should it be
The properties of each node type (size, primary, internet facing, number of VMs, etc.)

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 658de695-0927-175f-0419-dcf7b6bece9d
Version Independent ID: 8166322c-774b-9434-3df5-5501b7dd9cf1
Content: Planning the Service Fabric cluster capacity
Content Source: articles/service-fabric/service-fabric-cluster-capacity.md
Service: service-fabric
GitHub Login: @ChackDan
Microsoft Alias: chackdan

@kumarallamraju Thanks for your feedback on the typo in document.
I have raised a PR and the document will reflect the changes once approved.


[Suggestion] PF2e Scaled Mask for Dynamic Rings

In the current version of the PF2e system for Foundry v12, all medium creature default token size fills the entire square. All premium content monster tokens, bestiary packs etc. all use the full square to depict the size of a medium creature. The new dynamic rings introduced in Foundry v12 expect a medium sized creature to use a token that fills only about 20% of the square. This means that if you want to make medium sized player character tokens in a PF2e game, you must scale up the dynamic token ring by setting the scale to 0.8 instead of the default 1.0.
When using Tokenizer masking for dynamic tokens, the mask file used is meant for 1.0 token scaling and not 0.8. This results in a masked image that is too small for the scaled up tokens for PF2e. A solution I am using is using a custom mask file in Tokenizer that is just the default circle mask scaled up 20%.
My suggestion would be to include a similar mask file in the Tokenizer module files that can be utilized for everyone that is making tokens for PF2e and intend to scale the dynamic token rings to match that of all other tokens in the system.
Additionally, this scaled up mask file could be set as default as par of the new quick settings menu in Tokenizer settings for PF2e players.

I believe this will now work with the grid scaling in the latest version of foundry and tokenizer.


Thanks for approving the commit but the change is not visible, I think there is some issue!

Thanks for approving the commit but the change is not visible, I think there is some issue!
Originally posted by @rohitxsh93 in https://github.com/covid19india/api/pull/243#issuecomment-630223050

Hi could you please raise the PR on the master again? It was wrongly merged into the gh-pages and hence it's not visible. Thank you!

Done

Done.


Infinite 'uncaughtException' loop

Sometimes when my app crashes, it gets into an infinite loop of uncaught exceptions.
Stack trace:
Error [ERR_IPC_CHANNEL_CLOSED]: Channel closed
    at process.target.send (internal/child_process.js:613:16)
    at Object.exports.send (/opt/app/node_modules/ts-node-dev/lib/ipc.js:14:23)
    at process.<anonymous> (/opt/app/node_modules/ts-node-dev/lib/wrap.js:45:7)
    at process.emit (events.js:187:15)
    at process.emit (/opt/app/node_modules/source-map-support/source-map-support.js:454:21)
    at process._fatalException (internal/bootstrap/node.js:435:27)

Also, a comment near uncaughtException says that the handler is there to log the stack to stderr. Can I somehow omit this? My app already logs uncaught exceptions, so I get the stack printed twice.

Sometimes when my app crashes, it gets into an infinite loop of uncaught exceptions.

Not sure I understand what is an infinite loop of uncaught exceptions.

Also, a comment near uncaughtException says that the handler is there to log the stack to stderr.

You want to omit the output or uncaughtException handling by ts-node-dev?

There's an uncaughtException handler in wrap.js:
process.on('uncaughtException', function (err) {
  console.error(err.stack || err);
  // If there's a custom uncaughtException handler expect it to terminate
  // the process.
  var hasCustomHandler = process.listeners('uncaughtException').length > 1;
  ipc.send({
    error: err.name || 'Error',
    message: err.message,
    willTerminate: hasCustomHandler
  });
});

The ipc.send call under some circumstances throws an exception with stack trace I've posted above. Which in turn triggers the same uncaughtException handler.

You want to omit the uncaughtException error stack output or its actual handling by ts-node-dev?

The output.

Ok, I get it, this happens because exception by ipc.send producessed asynchronisly. We can handle it.

The output.

So I believe we can omit the output if hasCustomHandler .

Check the latest version, should be fixed I believe.

Wow, thanks for a fast resolution!
It seems to have fixed the problem I had. Thanks!

yeah it seems fixed here as well. Also with  "ts-node-dev": "^1.0.0-pre.24", my app took like 6 seconds to restart, now it's almost instant. Thank you so much @whitecolor !

@capaj is it pre.24? Check the latest version works for you please because pre.24 had this issue #17

I'm having the same experience as @iAnomaly.  The 🐛 is back!
In my case, the behavior can be triggered in an application that handles it's own shutdown behavior via process.on("SIGTERM", async () => {. It doesn't have to be a "crash" per-se...

@whitecolor Got this too after updating some libs. Any chance this is fixed?
Is the project maintained / has alternatives?
Thanks!

Im having this problem.
In my case using process.stdin.on("keypress") generates the error if removed, the loop does not happens.


Fix typo in GitHub feature request template

Proposed changes:

Fixing a typo in the GitHub feature request issue template

Status (please check what you already did):

[ ] added some tests for the functionality
[ ] updated the documentation
[ ] updated the changelog (please check changelog for instructions)
[ ] reformat files using black (please check Readme for instructions)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Set the app environment using the APPSIGNAL_APP_ENV env var

My current context for this patch:
I have an app running in three environments (qa, stage, production), but I keep only the production file environment, it means that each one runs as "production" (RAILS_ENV=production). The solution I found to use AppSignal is to have different app names for each environment (my-app-qa, my-app-stage, my-app-prod) using the APPSIGNAL_APP_NAME.
With this patch, we'll be able to define just one name and differentiate the environment for each app instance (basically is exactly what the appsignal.yml does when the app is running in different environments).
I've tried to add a test for this change, but I couldn't. I'd appreciate any help.

Hi @andrielfn I'm going to write a spec for it tomorrow, after that we'll be able to merge into master.
Thanks for the contribution!

@matsimitsu Nice! Let me know if I can help further.
Thank you.

Merged! Here are the specs in case you're interested: https://github.com/appsignal/appsignal/commit/c321c6a5d5d0799afd9c15f3b4dbdd9d132cdd95

@matsimitsu Cool, you have created a new Rails app (MyEnvApp). My difficulty was in re-initialize the MyApp after set the ENV var. Didn't think about create a new App. :+1:
Thank you so much!