SDK4.2.1: SVO2 recorder hangs when enable and disable too frequently

Preliminary Checks

[X] This issue is not a duplicate. Before opening a new issue, please search existing issues.
[X] This issue is not a question, feature request, or anything other than a bug report directly related to this project.

Description
I have seen this issue from SDK 4.1 and it looks like it has not been resolved. There is a need for me to keep creating a fixed length of SVO2 recording files. I did that by calling "enableRecording" and "disableRecording" and it worked perfectly fine in SVO version one. After switching to SVO2, the SDK will hang with the below backtrack:
#0  __pthread_clockjoin_ex (threadid=281468863297792, thread_return=0x0, clockid=0, abstime=<optimized out>, block=<optimized out>) at pthread_join_common.c:145 #1  0x0000ffff92bb0230 in std::thread::join() () from /lib/aarch64-linux-gnu/libstdc++.so.6 #2  0x0000ffff93e88324 in MCAPWriter::close() () from /usr/local/zed/lib/libsl_zed.so #3  0x0000ffff93dba2c8 in sl::svorw::SVOGen2Writer::~SVOGen2Writer() () from /usr/local/zed/lib/libsl_zed.so #4  0x0000ffff93dba734 in sl::svorw::SVOGen2Writer::~SVOGen2Writer() () from /usr/local/zed/lib/libsl_zed.so #5  0x0000ffff93dc9f04 in sl::svorw::SVOVideo::close() () from /usr/local/zed/lib/libsl_zed.so #6  0x0000ffff94dce074 in sl::Camera::disableRecording() () from /usr/local/zed/lib/libsl_zed.so
Steps to Reproduce

Write a python and C++ app to keep enabling and disabling the SVO2 recorder. I found that the faster you switch, the faster it will happen.

Expected Result
The SDK will not hang and continue to produce SVO2 file.
Actual Result
The SDK hanged with the below backtrack:
#0  __pthread_clockjoin_ex (threadid=281468863297792, thread_return=0x0, clockid=0, abstime=<optimized out>, block=<optimized out>) at pthread_join_common.c:145 #1  0x0000ffff92bb0230 in std::thread::join() () from /lib/aarch64-linux-gnu/libstdc++.so.6 #2  0x0000ffff93e88324 in MCAPWriter::close() () from /usr/local/zed/lib/libsl_zed.so #3  0x0000ffff93dba2c8 in sl::svorw::SVOGen2Writer::~SVOGen2Writer() () from /usr/local/zed/lib/libsl_zed.so #4  0x0000ffff93dba734 in sl::svorw::SVOGen2Writer::~SVOGen2Writer() () from /usr/local/zed/lib/libsl_zed.so #5  0x0000ffff93dc9f04 in sl::svorw::SVOVideo::close() () from /usr/local/zed/lib/libsl_zed.so #6  0x0000ffff94dce074 in sl::Camera::disableRecording() () from /usr/local/zed/lib/libsl_zed.so
ZED Camera model
ZED2i
Environment
aarch64
Jetson Xavier, Orin
SDK 4.1 to 4.2 all have this problem

Anything else?
No response

Hi @MartinChowYW please share a snippet of code to reproduce this issue. It will be useful to replicate and fix the bug.

Thanks @Myzhar for coming back to me. I do have the C++ code snippet at this moment but I am able to reproduce the same bug using the python script below:
Please run the provided python script to open the zed camera and start recording e.g. "./recorder.py ${PATH_TO_SVO2_FILE}"
`import sys
import pyzed.sl as sl
import time
import os
Create a ZED camera object
zed = sl.Camera()
zed.open()
Enable recording with the filename specified in argument
output_path = sys.argv[1]
recordingParameters = sl.RecordingParameters()
recordingParameters.compression_mode = sl.SVO_COMPRESSION_MODE.H264
recordingParameters.video_filename = output_path
err = zed.enable_recording(recordingParameters)
frame_counter = 0
zed.enable_recording(recordingParameters)
while True:
# Each new frame is added to the SVO file
print("Before Grab")
if (zed.grab() == sl.ERROR_CODE.SUCCESS):
print("Grabbed")
time.sleep(0.1)
frame_counter += 1
    if frame_counter == 3:
        print("Disabling recording ......")
        zed.disable_recording()
        print("Disabled recording ......")

        # Reset frame counter
        frame_counter = 0

        print("Enabling SVO recorder")
        zed.enable_recording(recordingParameters)`

Hi @Myzhar, please find the above python script and it would be awesome if I can hear some feedback from you. Cheers.

It's been found that this happens to JetPack library and I've managed to reproduce it with ZedBox.
JetPack I used:
[ZED SDK for JetPack 5.1.2 (L4T 35.4)] 4.2
[ZED SDK for JetPack 5.1.1 (L4T 35.3)] 4.2

Hi @MartinChowYW
Did you try using the latest ZED SDK v4.2.2?

Hi @MartinChowYW
Did you try using the latest ZED SDK v4.2.2?

Yes I did


feature request: add setting for datetime format used by yaml-timestamp rule

Love this plugin! Personally, I would like the hour and minute in my YAML as well, so it would be nice if I could configure my own formatting the same way as in e.g. the daily notes plugin.

Thanks for the suggestion! Its in the latest release.


React native support

how can i use this with react native

What do you mean about react-native support?. It is for node js backend and react-native is for mobile frontend.

@Osamasomy You can add it via Webview

Generate the checkout url in the backend, make sure you have added the source as "mobile" in the checkout function.
load the url in a webview
In navigationStateChange function redirect user based on the success or failure e.g
  const onNavigationStateChange = (event) => {  const url = event.url;  if (url.indexOf('/mobile') === -1) {    return;  }  const params = url.split('?')[1];  const parsed = queryString.parse(params);  if (parsed.action === 'cancelled') {    navigation.goBack();  }  if (parsed.action === 'complete' && !paymentVerified.current) {    paymentVerified.current = true;    verifyPayment(routes.rideId, parsed.order_id);  } };


Add the Giant Swarm Developer Platform

What does this PR do?

Added a new section "Developer Platform"
Moved the app platform under the developer platform
Moved the managed apps into connectivity, observability and security
Added service mesh and ingress to connectivity
Fixed all old links to the app platform
Added symlinks from the old urls to new ones
Replaced some non-relational links that contained "docs.giantswarm.io"
Tested locally

What does it look like?

Any background context you can provide?
(Please link public issues or summarize if not public.)
What is needed from the reviewers?
Have you maintained the front matter?
(Please bump the last_review_date in case this qualifies as a review for an entire page. Provide user_questions which should be answered in the page. Provide a meaningful description.)

I know the content isn't perfect yet. But at least the new structure makes sense imo. Let's iterate from here :pray:


Calcul difference between 2 positions?

This should have a method to calcul a position between 2 geolocations. e.g: 5KM away
Is there?

Wouldn't it be better to use a project such as this? https://github.com/benharold/angular-haversine


Create Climate Setting Schedule - Timezone Picker

Can you include a video of how this component works?

Can you include a video of how this component works?

https://react-71s29duha-seamapi.vercel.app/?path=/docs/library-timezonepicker--docs

Can you include a video of how this component works?

Sure, bear in mind we're doing this flow step by step
https://github.com/seamapi/react/assets/11382084/34d8aad8-1077-4c90-bf6b-f716d8677752


Cannot install rally app builder on windows 64 bit

after using npm install -g rally-app-builder
or the local install
get error Visual Studio 2005 and .net framework required..
after installing the above two s/w, get error no file found named:winsock2.h

Hi, I am not abled to npm install rally-app-builder in MAC. getting dependencies error(eg. error: No compatible version found<EMAIL_ADDRESS>) .Please help it out. Can you please drop here the working node_module of rally-app-builder. Or can you tell me any versions that will successfully npm install rally-app-builder. I am struggling and strucked for past 2 weeks. Please help it out...


Flow renderer crashes on NetCDF data

To reproduce:

Import the three NetCDF files in /glade/p/cisl/vast/vapor/Bugs/3087
Create  flow renderer and select Bx as the X field variable
Enable the renderer, vapor will crash

After examination, the root of this crash is a nan produced by the following code:
https://github.com/NCAR/VAPOR/blob/2d025c095f6aa5872575e00f20b275c618e72a06/lib/vdc/RegularGrid.cpp#L85-L86
I think maybe @clyne can take a look at why a nan was produced?

@shaomeng re-assigning this back to you. The input to ClampCoord(), coords, contains NaNs that are generated somewhere in VaporField.cpp.


Assignment4 - Evan Jaquez

added leetcode problem and updated header in pst assignment in this branch aswell

@jaquevan your commit message is not descriptive enough. Please take a look at the assignment for an example and amend your commit with a more descriptive message if you would like full credit for this assignment.

I see the description now, nothing needs to be done here. This looks good to me, will merge.


XD-2830 [master + backport] Create gradle task to check that all projects have descriptions

Add task checkProjectDescriptions

Squashed and merged on master as b76089c3d6c3a51e339092bf30db9f9f66f4ce8e and 1.1.x as 2957a66c5205801f80d3a66f23e74f91a06a5ee1


Add utilities to execute, convert and distribute Jupyter notebooks as reports.

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/3152
Originally created by @DanielPDWalker on 2022-01-11 12:34:06

Problem to solve
As a Meltano user, we use Jupyter notebooks for management reports;

I’d like to be able to execute and convert Jupyter notebooks in my Meltano project.
I’d like to be able to distribute pdf reports by email in my Meltano project.  (Sendgrid)
I’d like to be able to distribute markdown reports to Slack in my Meltano project.  (Apprise)
I’d like to be able to distribute markdown reports to Matatika in my Meltano project.  (matatika publish)

Target audience
Users who want to create reports and send from their Meltano project.
For example:

In a Jupyter notebook you could make yourself a daily report on details of Job runs within your Meltano project.
You could make a weekly summary of some metrics you are tracking through your Meltano project.

Proposal
We want to add our notebook utility plugin to Meltano, which through meltano can handle the executing and converting of a Jupyter notebook.
What does success look like, and how can we measure that?
A notebook plugin that executes Jupyter notebooks and has the ability to convert them, included in the Meltano discovery.yml.
Regression test
(Ensure the feature doesn't cause any regressions)

[ ] Write adequate test cases and submit test results
[ ] Test results should be reviewed by a person from the team

Links / references
Please note that this was taken from GitLab, to be changed accordingly

View 2 previous comments from the original issue on GitLab


Fix flakes

If you're not happy with any of this, I am happy to look for alternatives, ignore certain flake8 codes, or even whitelist certain lines using my own beast https://pypi.python.org/pypi/flake8-putty .

Hey, thanks for taking a look. I think pyflakes is really useful in finding issues with the code, but with pep8 stuff I generally feel that keep my code clean enough and that the automatic stuff isn't really a win. So I would prefer not to add any automatic PEP 8 checking, and am not that interested in most of the changes here. Some things I'd be happy to accept (ideally in separate commits):

Use print() as a function, but preferably with from __future__ import print_function.
Making function names in the parser unique.
The move of the node type defines, though I'd want the globals assignment right after the definition of NODE_TYPES, and in the import I want as many names as possible on a line.

I'd be happy if you want to pick those up, but otherwise I can do it myself. :)

No worries; I'll adjust it.  Thx for the feedback.

I've ignored the errors pep8 was raising.
With regards to "[moving] globals assignment right after the definition", I've moved it, but I do not agree.  Placing them near the top means latter code in the module (added in the future) could overwrite them.  The assert helps catch that, but the asserts are only effective if there is no other code after it.  An alternative is to add a unit test to assert that the defines haven't been altered during module loading.
Before splitting it off into separate commits, I'd like to reply to your feedback re pep8, hoping to convince you to allow flake8 & pep8 checking, rather than just pyflakes checking.
As you can see from the modified diff, the code is already mostly pep8 compliant, with only minor violations.  I agree you are keeping your code clean.  The problem is that other people may not be as clean as yourself, especially if you do not signal your code quality expectations before they submit a PR.  By including flake8 in .travis.yml or tox.ini, potential submitters have a good idea about how to prepare their patch.
flake8 adds # noqa support, which is a very handy way to bypass pyflakes bugs.  I avoids adding dead code.  I am a pyflakes developer, and some of the pyflakes bugs you may encounter in the future are not going to be easily fixed in pyflakes; workarounds are needed.

Also flake8 has a number of extensions which can help catch silly mistakes, or very poor style.  If you really don't want pep8 running, we can disable all pep8 rules by ignoring 'E,W'

Hey, good job arguing for this! The current change is looking much better already...
I kind of like the idea of a unittest to test that the node type constant values are correct. The reason I don't really want it at the bottom is that it seems like one way of having spooky action at a distance. Also, they way they're being used (with string literals used in the parser functions and the constants only being used in the generator), I think with the high coverage, all problems with this will already lead to test failures.

Awesome, thanks for all the work!


flutter app for demostration of DeepPavlov features

Hi @alexeyr ,
Hope you are all well !
I was wondering if you could consider to create a frontend to DeepPavlov based on flutter/dart. It would help to develop use cases.
Cheers,
Luc

I would like to work on this. Can you assign me on this issue?

sure thing, assigned )


"invalid channel 3" with multiple client events

Hi, I'm working on a project (https://github.com/luminoth/bevy-multiplayer) that's using bevy_replicon_renet and I'm having an issue when adding a second client event (with add_client_event). It seems like as soon as I just add it, I get this error on my server:
thread 'Compute Task Pool (6)' panicked at /home/shane/.cargo/registry/src/index.crates.io-6f17d22bba15001f/renet-0.0.16/src/remote_connection.rs:349:13:
Called 'receive_message' with invalid channel 3

I haven't seen any issues like this raised in bevy_replicon, renet or bevy_replicon_renet and so I'm not really sure what I'm doing wrong here or why it's breaking. I haven't seen either any examples of supporting more than one event, so is it just that you can't do that? Sorry that's not a lot of detail, I'm very confused myself so I guess whatever else I can provide here, please let me know.

I haven't seen either any examples of supporting more than one event, so is it just that you can't do that?

Should work just fine.

Called 'receive_message' with invalid channel 3

Looks like there is no channel with id 3. By any chance you registered different events on client and server? add_client_event should be called on both client and server.
Could you also provide logs? Run both apps with RUST_LOG=bevy_replicon=debug cargo run ...

It should be the same events on both, they're getting registered in a shared library. Here's the full logs from the server:
initializing server ...
2024-11-04T19:17:41.127376Z DEBUG bevy_replicon::core::event_registry::client_event: registering client event `game::network::MoveInputEvent`
2024-11-04T19:17:41.127398Z DEBUG bevy_replicon::core::channels: creating a client channel with ID 2
2024-11-04T19:17:41.127404Z DEBUG bevy_replicon::core::event_registry::client_event: registering client event `game::network::PlayerJumpEvent`
2024-11-04T19:17:41.127410Z DEBUG bevy_replicon::core::channels: creating a client channel with ID 3
2024-11-04T19:17:41.128867Z DEBUG bevy_replicon::core::replicon_server: changing `RepliconServer` running status to `true`
2024-11-04T19:17:57.580318Z DEBUG bevy_replicon::core::connected_clients: adding connected `ClientId(1730747877551)`
2024-11-04T19:17:57.580362Z DEBUG bevy_replicon::core::replicated_clients: starting replication for `ClientId(1730747877551)`
thread 'Compute Task Pool (5)' panicked at /home/shane/.cargo/registry/src/index.crates.io-6f17d22bba15001f/renet-0.0.16/src/remote_connection.rs:349:13:
Called 'receive_message' with invalid channel 3
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Encountered a panic in system `bevy_replicon_renet::server::RepliconRenetServerPlugin::receive_packets`!
Encountered a panic in system `bevy_app::main_schedule::Main::run_main`!

and the full logs from the client:
initializing client ...
2024-11-04T19:17:52.732350Z DEBUG bevy_replicon::core::event_registry::client_event: registering client event `game::network::MoveInputEvent`
2024-11-04T19:17:52.732371Z DEBUG bevy_replicon::core::channels: creating a client channel with ID 2
2024-11-04T19:17:52.732378Z DEBUG bevy_replicon::core::event_registry::client_event: registering client event `game::network::PlayerJumpEvent`
2024-11-04T19:17:52.732383Z DEBUG bevy_replicon::core::channels: creating a client channel with ID 3
2024-11-04T19:17:52.771322Z DEBUG bevy_replicon::core::replicon_client: changing `RepliconClient` status to `Connecting`
2024-11-04T19:17:57.589867Z DEBUG bevy_replicon::core::replicon_client: changing `RepliconClient` status to `Connected { client_id: Some(ClientId(1730747877551)) }`

It sure looks like its setting up the channels correctly, the events match on both. The PlayerJumpEvent is the event I'm adding and its definition looks like this:
#[derive(Debug, Event, Serialize, Deserialize)]
pub struct PlayerJumpEvent;

That's in the shared library so it should be the same on both ends.

Yes, this looks correct!
Let's see if channels are created on the backend (bevy_replicon_renet in your case) side. Could you run with RUST_LOG=bevy_replicon_renet cargo run ..?
I tried reproducing it on the simple_box example, but no luck. Here is my diff:
diff --git a/examples/simple_box.rs b/examples/simple_box.rs
index 2fc68b6..c5699d5 100644
--- a/examples/simple_box.rs
+++ b/examples/simple_box.rs
@@ -50,6 +50,7 @@ impl Plugin for SimpleBoxPlugin {
         app.replicate::<PlayerPosition>()
             .replicate::<PlayerColor>()
             .add_client_event::<MoveDirection>(ChannelKind::Ordered)
+            .add_client_event::<TestEvent>(ChannelKind::Unordered)
             .add_systems(
                 Startup,
                 (Self::read_cli.map(Result::unwrap), Self::spawn_camera),
@@ -195,7 +196,12 @@ impl SimpleBoxPlugin {
     }

     /// Reads player inputs and sends [`MoveDirection`] events.
-    fn read_input(mut move_events: EventWriter<MoveDirection>, input: Res<ButtonInput<KeyCode>>) {
+    fn read_input(
+        mut move_events: EventWriter<MoveDirection>,
+        mut test_events: EventWriter<TestEvent>,
+        input: Res<ButtonInput<KeyCode>>,
+    ) {
+        test_events.send(TestEvent);
         let mut direction = Vec2::ZERO;
         if input.pressed(KeyCode::ArrowRight) {
             direction.x += 1.0;
@@ -292,3 +298,6 @@ struct PlayerColor(Color);
 /// A movement event for the controlled box.
 #[derive(Debug, Default, Deserialize, Event, Serialize)]
 struct MoveDirection(Vec2);
+
+#[derive(Debug, Deserialize, Event, Serialize, Clone)]
+struct TestEvent;

Hm, that didn't actually produce any logs. I'm guessing that's not expected?
I don't know how much it would help to see but these are the relevant Cargo.toml's:
shared lib
client
server
is it possible I goofed up the dependencies in one of those? I'll mess around with that example a bit and see if I can't get it to break.

Hm, that didn't actually produce any logs. I'm guessing that's not expected?

Yes, I would expect to see creating channel config ... for each channel :thinking:

is it possible I goofed up the dependencies in one of those?

This also looks correct. Except maybe I would remove default dependencies for shared lib (I assume that you link the shared lib to both client and server). But it's unrelated to the issue.
I would assume that something is wrong with the way you create RenetClient and RenetServer. Double check this part, you probably forgot to pass channels to the connection.

Ooof, yep, that was it. I think that was in my mental list to come back to (I was just using ConnectionConfig::default()) and I must've just forgot. Thanks for the help working through that.
While I'm here real quick, would it make sense to add conversion between bevy_replicon ClientId and renet ClientId, and impl Display for the replicon ClientId ? It seems like the raw clientId is the same for both types, but being distinct types I've run into a couple situations where I need to convert between them.

I think that was in my mental list to come back to (I was just using ConnectionConfig::default())

You are not alone 😅 Renet's default is to create 3 channels of each type, this is why it works for a single event (replicon reserves 2 channels for replication). I think it's weird default, I remember mentioned it to the author in Discord, but he could forgot. Could you open in issue at https://github.com/lucaspoffo/renet ? Just ask to remove the Default impl, it's very confusing.

While I'm here real quick, would it make sense to add conversion between bevy_replicon ClientId and renet ClientId,

Makes sense! It could also be used in the crate, since I also do the mapping. Could you open a PR?
Looks like the issue itself can be closed.

Fixed in renet2: https://github.com/UkoeHB/renet2/commit/3c39d72ba54a3311aa603ecf0a3e497c3928fb1b

Alright https://github.com/projectharmonia/bevy_replicon/pull/344 for the impl Display and https://github.com/projectharmonia/bevy_replicon_renet/pull/11 for the ClientId conversion helpers.


Empty state Transaction

Need asset here to cover white spaces

hi @summikhan11
did you create any design for this issue ?


Add instructions for setting up Auth type in Firebase Console.

User needs to go to https://console.firebase.google.com/project/YOURPROJECT/authentication/providers to setup the type of authentication

good note I will add it.

firebase instructions added to the README


LICENSE

I'd like to package this for nixpkgs. Do you have a LICENSE for this?

@colemickens There is now a COPYING file in the repository with the MIT license text—the header for the main plugin file already had a mention to it, but the actual license file was missing 👌

@colemickens There is now a COPYING file in the repository with the MIT license text—the header for the main plugin file already had a mention to it, but the actual license file was missing 👌


Fix typo in readme

Hey, great project. This is without question the worlds silliest pull request but I noticed a small typo in the readme and figured I'd chip in and offer a correction.
Cheers! ✌

Coverage remained the same at 100.0% when pulling 23242f170a4783201f272f6d509941fb70a667b7 on rowanoulton:master into 99b2be343cc88b99047cc10bf23b350705ca5aa0 on GitScrum:master.

Thanks !!!


'Error: SQLITE_CANTOPEN: unable to open database file'

I install tilestream on my win7 64 successfully. I put my mbtiles file(one file) in C:\Users\liz\Documents\MapBox\tiles, but when i open http://localhost:8888, it shows 'Error: SQLITE_CANTOPEN: unable to open database file' twice.
i have tried to open my mbtiles file with "sqliteadmin" successfully, which means my mbtiles file is ok.
what should i do? i am new in tilestream, thank you very much!

i have solved this problem..


Git diff remains open after leaving switching out of Git viewlett

Is there a reason why we leave it this way?  I have to frequently manually reopen the file I was working on, or else I'm trapped in the diff view even after leaving Git.

@bgashler1 when you click back to the explorer, the explorer will open the last file you worked on. in this case maybe the file was deleted or the explorer was not selecting any file?


🐛Bug on Swiper slideChange event, with virtual slides

This is a (multiple allowed):

[x] bug

[ ] enhancement

[ ] feature-discussion (RFC)

Swiper Version: 5.2.1.

Platform/Target and Browser Versions: All platforms.

Live Link or JSFiddle/Codepen or website with isssue: https://jsfiddle.net/alewin/um7dLpby/3

What you did
The events slideChange, slideChangeTransitionEnd, transitionEnd, are called even if the transition of the swipe is not completed
The bug is present only when the options virtual is active
Examples
Without virtual slides:
https://jsfiddle.net/alewin/j7cev28a/2/
With virtual slides: ( Bug  on slideChange )
https://jsfiddle.net/alewin/um7dLpby/3/
Expected Behavior
Swiper emit the event slideChange on effective slide change transition, when the user release the mouse/finger, so after the event touchend
Actual Behavior
Swiper emit the event slideChange when the active slide reach the 50%,

Same bug on 6.0.0


[Zed editor][erlang and elixir installed from asdf] Elixir-ls cannot be installed correctly with asdf.

Precheck
I did not find out any solution.😔
Environment

Erlang/OTP 26 [erts-14.0.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit]

Elixir 1.15.2 (compiled with Erlang/OTP 26)

Operating system: 💻 MacOS 11.7.7

Editor or IDE name (e.g. Emacs/VSCode): Zed

Current behavior

I'm trying to install elixir-ls via brew following the zed official tutorial: zed setting up elixir-ls
And I have already installed erlang and elixir form my asdf.
After I installed elixir-ls from brew, I wanna to check the version. So I typed elixir-ls -h.When I run the compiled language server I get this until I press enter and it crashes:
running /opt/homebrew/Cellar/elixir-ls/0.15.1/libexec/launch.sh
Looking for ASDF install in /opt/homebrew/opt/asdf/libexec/asdf.sh
ASDF found, relaunching in bash shell
Looking for ASDF install in /opt/homebrew/opt/asdf/libexec/asdf.sh
Sourcing ASDF
Content-Length: 137

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Mix requires the Hex package manager to fetch dependencies","type":4}}Shall I install Hex? (if running non-interactively, use "mix local.hex --force") [Yn] y
Content-Length: 149

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"* creating .asdf/installs/elixir/1.15.2-otp-26/.mix/archives/hex-2.0.6","type":4}}Content-Length: 103

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Started ElixirLS v0.15.1","type":3}}Content-Length: 106

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Running in /Users/sunhaoran","type":3}}Content-Length: 130

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"ElixirLS built with elixir \"1.15.0\" on OTP \"25\"","type":3}}Content-Length: 151

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Running on elixir \"1.15.2 (compiled with Erlang/OTP 26)\" on OTP \"26\"","type":3}}Content-Length: 109

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Protocols are not consolidated","type":3}}Content-Length: 127

{"jsonrpc":"2.0","method":"window/showMessage","params":{"message":"OTP compiled without EEP48 documentation chunks","type":2}}Content-Length: 246

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"OTP compiled without EEP48 documentation chunks. Language features for erlang modules will run in limited mode. Please reinstall or rebuild OTP with appropriate flags.","type":2}}Content-Length: 194

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Elixir sources not found (checking in /home/runner/work/elixir/elixir). Code navigation to Elixir modules disabled.","type":3}}Content-Length: 111

{"jsonrpc":"2.0","method":"window/logMessage","params":{"message":"Experimental server is disabled.","type":3}}
Unable to read from device: :invalid_content_length

Expected behavior

elixir-ls should be installed correctly, because

It is generally recommended to install Elixir and Erlang via ASDF so that you can have different projects using different versions of Elixir without having to change your system-installed version. ElixirLS can detect and use the version of Elixir and Erlang that you have configured in ASDF.

We do not support brew install nor zod tutorials. Please use those tools support channels. There’s no such command elixir-ls -h. Asdf is working in your log. You pass invalid LSP command when you enter.


[question] Piggyback heartbeats

In this comment you mentioned that piggyback heartbeats are on the roadmap for FastRTPS.
Are you able to comment on when this feature can be expected?

We are working on a new release. It will be out in a few weeks. After that we have scheduled to implement piggyback heartbeats.

Thank you for your response!

release/1.5.0 will contain the implementation of a piggyback heartbeat


Fix odd date conversion on the 'View single submission' page

Examples:

5ef25ac22c2502000105ee7e - real creation date 23/06/20; date displayed: 2021-11-06
5ef12a0a3152df0001d8b70b - real creation date 22/06/20; date displayed: 2021-10-06
5eedde3b2c2502000105c8cf - real creation date 20/06/20; date displayed: 2021-08-06

@earlEBI I think this is the same issue as one of the other tickets I tagged you in, please review

@earlEBI I think this is the same issue as one of the other tickets I tagged you in, please review

This does seem to be an issue still on the 'review' publication page.
i.e. 600aaac8cabae600013a7782 shows in the main table as:

But on its review page as:

Similarly for 5fc109936f931f000128b720

All the submissions so far this year look okay, but the date is still in a very weird format (year-day-month)

This does seem to be an issue still on the 'review' publication page.
i.e. 600aaac8cabae600013a7782 shows in the main table as:

But on its review page as:

Similarly for 5fc109936f931f000128b720

All the submissions so far this year look okay, but the date is still in a very weird format (year-day-month)

similar issue in goci#140, needs fixing but low priority due to upcoming new curation app


Make preferences page a popup window

Make the preferences page a popup window in the diagram page, rather than a separate page. This allows the preferences changes to be applied immediately.

Add a function to go through each relationship to turn off and on the arrow heads as this preference is toggled.


Chapter 3 inspiration: Do not merge yet!

This chapter is a draft. :)
Co-Authored-By: WizardOfAus<EMAIL_ADDRESS>

@DaGitNah We've recently done a major update to the website and course so I'm closing this PR, but if you'd like to contribute to building out future chapters with us we would be happy to collaborate :)


Version Packages (scaffolder-backend-module-servicenow)

Releases
<EMAIL_ADDRESS>Patch Changes

4d3571c: Clean up api report warnings and remove unnecessary files

@backstage/community-plugins-maintainers any idea why the CI is failing?

These PRs seem to be failing due to the same reason as well:
https://github.com/backstage/community-plugins/pull/2126
https://github.com/backstage/community-plugins/pull/2151


CB-7212: Add datalake service changes to perform database backup/restore.

Changes needed to the datalake service to handle the requests to perform backup and restore of the database backing datalake. This includes exposing API's to perform/restore and also API's to poll the status of those operations. These API internally uses separate flows for backup and restore operations.
Backup and restore operation return UUID which can be used to track the status of the operation requested.
I have added tests for the service backing the backup/restore operations.
Performed manual testing to make sure the Flow transition is done properly. Here are the state transitions are listed in the sheet below
https://docs.google.com/spreadsheets/d/1rms3b-YGAIeTLf-Pqm4gSnJopoQGQ1O8pyTVRR_86t0/edit?usp=sharing

3 thing:

if you would like your flows to be retryable you should add them to SdxFlowInformation#RESTARTABLE_FLOWS
you should separate your flow, 2 separate package, 2 separate state/event enum
please squash your commits on the pr, you can always use amend and force push to update your branch. this way we can ensure your pr would be merged in single commit, and won't rely on the merger to be aware of the multiple commits

I addressed your comments here.
Let me clarify a few things for you.

Backup is a periodic activity and we are planning to recommend customers to perform the backup once every few hours so that the metadata is not way behind when a restore is performed.
You are right, if there is metadata constantly updated, they could be out of sync. It is a known limitation and will be documented. There are some use cases where putting some restrictions would be possible. For example: performing backup as part of an upgrade. we can make sure that services like HMS/Ranger/Atlas are stopped before performing a backup.

SdxClusterStatusCheckerJob

It is used to update the status of the datalake and also to notify the status change of datalake.
we don't want to change the status of datalake when the database backup/restore is performed. There will be another patch which will do this when the datalake backup/restore are performed. This will be triggered by datalake-dr service.


precompile

Uses PrecompileSignatures.jl to reduce TTFX

Codecov Report

Merging #140 (f55eaa4) into master (65c9e24) will decrease coverage by 0.23%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #140      +/-   ##
==========================================
- Coverage   90.54%   90.30%   -0.24%
==========================================
  Files           8        8
  Lines         423      423
==========================================
- Hits          383      382       -1
- Misses         40       41       +1

Impacted Files
Coverage Δ

src/PoreMatMod.jl
100.00% <ø> (ø)

src/Ullmann.jl
97.36% <0.00%> (-1.32%)
:arrow_down:

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


Support ssl client verify

This adds support for ssl_client_verify, closing #581!

Nice! Thanks for the code. Would you mind also adding tests?

Sure thing!

That should do it. Awaiting test results but I think we're good now.

Excellent! Thank you again!


use hashes for class navigation instead of query params

when I reload the page while in a class detail, i'm taken back to the class list page.

not sure if this related to the hash thing or not, but I noticed them both together :)

Fixed this in the navbar: https://github.com/mobilizingcs/navbar/commit/ea4056cf4232c3719bc99e94681eb4d6405f32d5.

boo! also use a hash instead of the query params though! query params are for server-side parameter management, not really for tracking data from one page to another for a client. unless for some reason you need to use query params here?

Meh

Ah what do i care https://github.com/mobilizingcs/classes/commit/8b911b05ffdeff79320af0de18aee5acdd1552f8

:sparkles: :tophat: thank you @jeroenooms


ExtendClientAreaToDecorationsHint window covered by TabControl can't be dragged by its title

Describe the bug
It is impossible to drag a window by its title when the window has ExtendClientAreaToDecorationsHint == True and is covered by a TabControl.
To Reproduce

Create a window like this:

<Window xmlns="https://github.com/avaloniaui"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
        x:Class="Avalonia_CantDrag.MainWindow"
        ExtendClientAreaToDecorationsHint="True"
        Title="Can't drag me">
  <Grid>
    <TabControl Background="Transparent"/>
  </Grid>
</Window>

Launch the app
Try dragging window by its titlebar

Expected behavior
The window should move
Screenshots
N/A
Environment

OS: Windows 11
Avalonia-Version: 11.0.5

Additional context
Removing TabControl or replacing it with a non-empty TextBlock makes window draggable again.

That's by design. TabControl is Hittest visible which means it will not pass the pointer events throug. Try to set Background to x:Null.


New Teams Cache Location to Clear - Not an Issue but General Information

Adjusted instructions that cover both app types.

If Teams is still running, right-click the Teams icon in the taskbar, and then select Quit.
Open the Run dialog box by pressing the Windows logo key + R
In the Run dialog box, copy/paste:
•	new Teams app: C:\Users%username%\AppData\Local\Packages\MSTeams_8wekyb3d8bbwe
•	classic Teams app: %appdata%\Microsoft\Teams
Delete all files and folders in the directory.
Restart Teams.

Hello there.
Just to let everyone know that clearing the cache for the new Teams has solved the issue of the Authors app crashing.!
Also true for the browser version - clearing the cache made it work.
one note though: DO NOT delete everything under MSTeams_8wekyb3d8bbwe. Or Teams won't open anymore.. Delete the LocalCache folder only!

Hi @fajr365 @victorsimonlee ,
Thanks for sharing the detailed steps. Please let us know if you are facing any issue with new teams otherwise we can make it closure.

@gsv022 after clearing the Teams cache, bot new Teams & Web versions are working just fine.
Thank you.


Trace iteration in run_exp

I'm trying to run Pensieve's experimental setup in 'run_exp'. I have installed all dependencies using setup.py and put some traces in 'cooked_traces'. When I run the python script 'run_all_traces.py' for the experiments, I only see one trace being tested. I verified that the experiment fetches video chunks for the trace, and generates results for the specific trace. But it does not move on to other traces.
I looked into 'chrome_retry_log' to see if there were any reports. The only thing I see there is in the form:
'BB_trace5.txt'
'Timeout'
'RL_trace5.txt
'Timeout'
Looking into the code, I can see that there is a handler for a SIGALARM signal which creates an Exception with the 'Timeout' text.
Any help in making it iterate through traces properly is appreciated.

You said one trace was loaded and video chunks were all fetched for that session. Did all the ABR schemes have the logs? Or only one scheme finish the video? I think the timeout means the video is still not done after a long period of time. We added that to catch corner case where the connection to ABR server is problematic, but I'm not sure if this is the cause of your problem. Hope this helps!

All the ABR schemes had the logs. I think I'll write my own iterator script to avoid that particular timeout issue, or comment it out for the time being. I'll update if I see that corner case pop up.


LL 655

#701

damn. why does it work for me.

i've added a delay of 1s to see if it helps in any way.


An error has occurred, please try to create your incident again

We are receiving the "An error has occurred, please try to create your incident again" when creating an incident. It was working fine for a while.
I researched past issues, but this one seems a little different.
Network and Console logs attached.
teams.microsoft.com.zip

@malimal99 , thanks for bringing this to our attention.
After reviewing the shared logs, it appears that the issue occurs during the creation of the Incident, as it fails to add items to the "TEOC-IncidentTransaction" List.
Could you please confirm if the provision of the Site was successful, or if it was created manually? Additionally, please check if the List Title has been updated, and if so, revert it to "TEOC-IncidentTransaction".

Thank you for the review..
We were able to create incidents prior to this issue..The site was provisioned successfully.
I will review you other troubleshooting steps and report back. I have suspicion someone may have messed with that list.

@malimal99 ,
This is a gentle reminder.
Could you please confirm if you are able to proceed?

Hello, I checked the list name and it looks fine. I have taken some screenshots.  I am also running an audit on the site now.

I have an audit but don't see any changes after the 10th. I don't want to upload because there may be sensitive data.

@malimal99 ,
Could you please confirm the type of Location Column in the "TEOC-IncidentTransaction" List? Additionally, let us know the version you are currently using. When did you start experiencing this issue? If it occurred after an upgrade, please specify the previous version.

Hi @malimal99,
Can you please respond to this ticket. As per our internal policy we would have to have to close this ticket in next 2 days if there is no response.
Thanks.

I will respond tomorrow.
On Wed, Dec 25, 2024, 4:05 AM v-saikirang @.***> wrote:

Hi @malimal99 https://github.com/malimal99,
Can you please respond to this ticket. As per our internal policy we would
have to have to close this ticket in next 2 days if there is no response.
Thanks.
—
Reply to this email directly, view it on GitHub
https://github.com/OfficeDev/microsoft-teams-emergency-operations-center/issues/301#issuecomment-2561736772,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALOOVBWRLHZ43TD6OABFHSD2HJYOBAVCNFSM6AAAAABTDIIK3OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNRRG4ZTMNZXGI
.
You are receiving this because you were mentioned.Message ID:
<OfficeDev/microsoft-teams-emergency-operations-center/issues/301/2561736772
@github.com>

Hi @malimal99,
Due to our policy, We will have to close this ticket as we didn't get response. Please feel free to open a new issue if you still face any issues.
Thanks.


[2.1] Fix item list scroll speed

Remove the extra set_val action after the proper one, so the right scroll value won’t get overrided any more.

Cherry-picked for master as 843a046.


coop-u-list-inline maintains left list padding

More of a question/thought that an issue: the current coop-u-list-inline class maintains the default list left padding. Is this desirable? I've not come across any inline list that would have needed this padding myself.

Nah @froddd open a PR and remove it


Frontmatter option to ignore pages in sitemap

What would you think about this as an option for ignoring pages in the sitemap? Simply add ignore: true to the page's frontmatter:
---
ignore: true
---

@statonjr Any chance to merge this ?

:tada:


[FEATURE] Add Git LFS to all the kicad* containers

Hi everybody,
I would love to see Git LFS (debian git-lfs deb package) included in all the containers.
I think it is an important addition for people like me extensively using git LFS to store "large" blobs such as 3D models and SQLite database libraries.
Thank you for this amazing work.
Xavier

Hi @hpopols !
I added it to the full images. Note that I won't generate the images right now. I'll wait to accumulate other changes.
When Debian 12.x and Blender 3.5.x are included I'll generate new images.

Hi @set-soft,
Thank you for the fast response and for taking my request in consideration! For the new image, there is no rush on my side as I can install them manually after the container creation (during CI/CD).
Thank you again and have a good day


fix(slect-dropdown): remove height and fix hover css for selct dropdown

[ ] What does this PR do? [Mandatory]
Fix CSS for select dropdown
[ ] What issue/task does this PR references? [Mandatory]
https://github.com/openshiftio/openshift.io/issues/3092
[ ] Are the tests Included? [Mandatory]
NA
[ ] Is the documentation Included?
NA
[ ] Are the Release Notes included?
NA
[ ] Is/Are the @mention(s) to reviewer(s) included
@nimishamukherjee @rgarg1

@SMahil Your image is available in the registry. Run docker pull registry.devshift.net/fabric8-ui/fabric8-planner:SNAPSHOT-PR-2561 && docker run -it -p 5000:8080 registry.devshift.net/fabric8-ui/fabric8-planner:SNAPSHOT-PR-2561 and visit http://localhost:5000 to access it.

@SMahil Your image is available in the registry. Run docker pull registry.devshift.net/fabric8-ui/fabric8-planner:SNAPSHOT-PR-2561 && docker run -it -p 5000:8080 registry.devshift.net/fabric8-ui/fabric8-planner:SNAPSHOT-PR-2561 and visit http://localhost:5000 to access it.


Create SUPPORT.md

[x] I have signed the Contributor License Agreement.
[x] This pull request is related to an issue.

Microsoft Reviewers: Open in CodeFlow

Clearly, I should have waited until I finished my first cup of coffee. 🤦♂

Thanks @mdanish-kh & @Trenly!


[RFR] Code splitting and ES6

[x] Split code into several smaller fragments
[x] Fix chart display and zoom events
[x] Split Drawer into several sub-classes
[x] Inverse Zoomer/ZoomArea relationship
[x] Fix tests

Tests are green, and ready for review!

:+1: es6 ftw ! Great job :)

Code review applied.

Code review either applied or delayed in another PR.


-test.kill-daemon does not work on Ubuntu 24.04 (Failed to kill unit containerd.service: Failed to send signal SIGKILL to auxiliary processes: Invalid argument\n)

https://github.com/containerd/nerdctl/blob/a5445322e9ed39ce18d82c8391fdbc7a84545855/pkg/testutil/testutil.go#L564-L573

This is intermittent. systemctl kill -s KILL containerd will work most of the time, and sometimes fail - pretty much whether or not there are other processes in the process group.
FWIW: https://github.com/systemd/systemd/blob/main/src/core/unit.c#L4083
We do get EINVAL, probably from cg_kill_recursive, which implementation seems to have changed quite a bit between 22.04 (systemd 249) and 24.04 (systemd 255).
That being said, here is the log from 249 (working):
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sent signal SIGKILL to main process 1106603 (containerd) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106604 (containerd) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106605 (containerd) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106607 (containerd) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106608 (n/a) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106609 (n/a) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106610 (containerd) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106612 (containerd) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106613 (n/a) on client request.
Jul 04 17:41:20 lima-dock systemd[1]: containerd.service: Sending signal SIGKILL to process 1106614 (containerd) on client request.
Jul 04 17:41:21 lima-dock systemd[1]: containerd.service: Child 1106603 belongs to containerd.service.
Jul 04 17:41:21 lima-dock systemd[1]: containerd.service: Main process exited, code=killed, status=9/KILL
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ An ExecStart= process belonging to unit containerd.service has exited.
░░
░░ The process' exit code is 'killed' and its exit status is 9.
Jul 04 17:41:21 lima-dock systemd[1]: containerd.service: Failed with result 'signal'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ The unit containerd.service has entered the 'failed' state with result 'signal'.
Jul 04 17:41:21 lima-dock systemd[1]: containerd.service: Service will restart (restart setting)
Jul 04 17:41:21 lima-dock systemd[1]: containerd.service: Changed running -> failed
Jul 04 17:41:21 lima-dock systemd[1]: containerd.service: Unit entered failed state.
Jul 04 17:41:21 lima-dock systemd[1]: containerd.service: Consumed 101ms CPU time.

Here is the log for 255 (failing):
Failed to kill unit containerd.service: Failed to send signal SIGKILL to auxiliary processes: Invalid argument

Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Sent signal SIGKILL to main process 51625 (containerd) on client request.
Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Failed to send signal SIGKILL to auxiliary processes on client request: Invalid argument
Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Child 51625 belongs to containerd.service.
Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Main process exited, code=killed, status=9/KILL
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ An ExecStart= process belonging to unit containerd.service has exited.
░░
░░ The process' exit code is 'killed' and its exit status is 9.
Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Failed with result 'signal'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ The unit containerd.service has entered the 'failed' state with result 'signal'.
Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Service will restart (restart setting)
Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Changed running -> failed-before-auto-restart
Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Unit entered failed state.
Jul 04 17:41:25 lima-24 systemd[1]: containerd.service: Consumed 150ms CPU time.

In both cases, the main process DOES get killed.
It does look to me like in both cases systemctl is ignoring KillMode=process and tries to kill children in the group (which fails in a racy way maybe? because containerd already took care of that?) - maybe because it does not recognize -s KILL as the right KillSignal. Obviously was not a hard error with 249, but now is with 255.
 Obviously, just kill will first send SIGTERM, then SIGKILL after that, so, it is not completely the same behavior.

What do you think?
Am I missing something here?

Sending a first tentative PR removing the explicit signal. Let see if things are happy.
If not, we can always revert to plan b - ignore the error.


AGDIGGER-56 - change logging endpoint to use build number

Motivation
Align node.js implementation to use build number instead of queue number as in java client.

ping @aliok @luigizuccarelli @odra

Review @josemigallas

@josemigallas has some good comments, otherwise LGTM and works well. :+1:

Seems good, added some comments.
Also, I think it would be a good idea to add eslint verification in travis.yaml file (in another PR).

@odra eslint is already integrated into the travis.

Verification anyone?


Bug: listening to selection changes via SELECTION_CHANGE_COMMAND doesn't work as expected for custom decorator nodes

Lexical version: 0.3.8
Steps To Reproduce

Create a custom Decorator Node with click-selection functionality
Create a plugin that listens to SELECTION_CHANGE_COMMAND and prints the selection
Add the custom Decorator Node in the editor
Click on the custom Decorator Node to select it
Notice how the result printed by the SELECTION_CHANGE_COMMAND listener doesn't refer to the custom node.
NOTE: if instead we listen to selection changes via the <OnChangePlugin>, things work as expected.

Link to code example: https://codesandbox.io/s/facebook-lexical-selection-bug-1ct727
The expected behavior
Listening to selections via editor.registerCommand<void>(SELECTION_CHANGE_COMMAND should "catch" all selection changes, including custom decorator nodes.

Duplicate of #3160


Executors not working in a multi-module project with more than one level of folders

First of all, thank you for this amazing work.
This plugin is very useful for managing monorepos with Nx and Spring Boot :clap: :1st_place_medal:
Plugin Name
@nxrocks/nx-spring-boot
Nx Report
Node   : 16.20.1
OS     : linux-x64
npm    : 8.19.4

nx             : 17.0.2
@nx/js         : 17.0.2
@nx/workspace  : 17.0.2
@nx/devkit     : 17.0.2
@nrwl/tao      : 17.0.2
typescript     : 5.2.2
---------------------------------------
Community plugins:
@nxrocks/nx-spring-boot : 9.0.1

Expected Behaviour
Executor option "runFromParentModule": true should locate the parent module (if using a multi-module project) when the submodules are located in a subfolder (with more than one level of nesting).
Actual Behaviour
Executors for submodules (in a multi-module project) are not working when using the option runFromParentModule option and the maven wrapper if the submodules are located in a folder with more than 1 level of nesting, e.g.
.
├── nx.json
├── package.json
├── package-lock.json
├── packages
│   └── demo-parent
│       ├── apps
│       │   └── demo
│       │       ├── pom.xml
│       │       ├── project.json
│       │       └── src
│       ├── mvnw
│       ├── mvnw.cmd
│       ├── pom.xml
│       ├── project.json
│       └── target
├── README.md
└── target

Note the demo module folder which is not a direct folder of demo-parent. The demo-parent contains the maven wrapper.
When running a task (e.g. nx run demo:clean it seems like the executor cannot find the parent module and never ends.
Steps to reproduce the behaviour

Create an empty Nx workspace and install the @nxrocks/nx-spring-boot plugin
Add a new Spring Boot application as a multi-module project (e.g. demo and demo-parent)
Move the generated child module demo into an intermediary subfolder (modifying its project.json file according)
Try to run a task, e.g. nx run demo:clean

I will try to create a sample repo later today.

Hi @datenciadedalus
Thanks for using the plugin and for your kudos! Don't hesitate to star ⭐ the project on Github ;-)
Regarding the issue, I could indeed enhance the lookup of the parent module to accommodate the use case you mentioned.
Stay tuned, I'll look into it and provide a  fix soon.

Thank you :love_you_gesture:
I've been testing the new release but it is still not working because it is not taking into consideration the path of the submodule when looking for it in the parent pom.xml file. I've created a PR fixing it.

Hi @datencia, thanks for trying out the multi-module feature and for your PR
But unfortunately,  I think your proposed implementation is not correct either...
There is a misconception on how the structure of a true nested multi-modules project should look like.
As the result, my initial implementation was "limited" in that regard, and your is not really solving the problem.
I looked at Spring Boot own project on Github, which is imho, a very good example of how a truly nested multi-modules project should be structured.
This is what I learned:
For Maven
(Until 2.2.x, Spring Boot project was using Maven as build system)
https://github.com/spring-projects/spring-boot/tree/2.2.x
├── spring-boot-tests/
│       ├── spring-boot-deployment-tests
│       ├── spring-boot-integration-tests
│       ├── spring-boot-smoke-tests-invoker
│       ├── spring-boot-smoke-tests
│       └── pom.xml (intermediary pom.xml listing direct children modules in this folder)
│
├── spring-boot-project/
│       ├── spring-boot-actuator
│       ├── spring-boot-devtools
│       ├── spring-boot-starters/
│       │   	├── spring-boot-starter-activemq
│       │   	├── spring-boot-starter-actuator
│       │   	├── spring-boot-starter-jpa
│       │   	└── pom.xml (intermediary pom.xml listing direct children modules in this folder)
│       │
│       └── pom.xml
│
└── pom.xml (THE root module)
Main Takeaways

one additional pom.xml at each intermediary level
the  intermediary pom.xml lists direct children modules in the folder

For Gradle
(Since 2.3.x, Spring Boot project now uses Gradle as build system)
https://github.com/spring-projects/spring-boot/tree/main
├── spring-boot-tests/
│       ├── spring-boot-deployment-tests
│       ├── spring-boot-integration-tests
│       ├── spring-boot-smoke-tests-invoker
│       └── spring-boot-smoke-tests
│
├── spring-boot-project/
│       ├── spring-boot-actuator
│       ├── spring-boot-devtools
│       └── spring-boot-starters/
│          	├── spring-boot-starter-activemq
│          	├── spring-boot-starter-actuator
│          	└── spring-boot-starter-jpa
├── build.gradle
└── settings.gradle (THE root module listing all modules using their full path , with ":" as separator)
Main Takeaways

no need for additional settings.gradle at each intermediary level
the  root module  settings.gradle lists all modules using their full path , with ":" as separator

So based on that, I will rework/improve and better document the nested mutli-module support, following the best practices from Spring Boot project, as described above.
Stay tuned!

mmm I see, but imho it is merely a way of organizing the modules and not a good practice itself.
This organization may make sense within the scope of a project that requires it, but other projects do not need to create an intermediate pom.xml.
I'm going to try to use this workaround of an intermediate pom.xml but I guess I'll have to add another maven wrapper there for it to work, right?

Suggestion: make the root module path configurable at the plugin level to avoid these problems by locating the Maven wrapper so you don't have to search by code for its location.

But, I'm curious... in your case:

In my case, I have an structure like this (reduced for simplicity, the names are for guidance only) managing 3 independent apps, e.g. 2 spring boot applications and one angular/react app:
.
├── mvnw
├── mvnw.cmd
├── nx.json
├── package.json
├── package-lock.json
├── apps
│   ├── backend
│   │   ├── pom.xml
│   │   ├── project.json
│   │   └── src
│   ├── api-rest
│   │   ├── pom.xml
│   │   ├── project.json
│   │   └── src
│   └── frontend
│       ├── package.json
│       └── src
├── pom.xml
└── README.md

The parent pom.xml file (at the project root folder, note also the Maven wrapper there) manages the common properties/dependencies for the 2 spring boot applications and declares them as modules:
<modules>
  <module>apps/backend</module>
  <module>apps/rest-api</module>
</modules>

I would like the plugin to ease/automate that as much as possible, to avoid yet another config to manage for end-users. Not sure if most of them will ever need such detail of customization...

I have thinking about it, reading the Maven docs (I have not been able to look at gradle) I think that if the plugin offered a way to indicate the path to the maven wrapper (or by default use the root folder of the project as it usually happens) you could avoid having to locate it manually, and combining it with the use of the ArtifactId instead of using the path would avoid having to calculate/locate the module that contains it.
Inspecting the Maven help mvn --help I read this
 -pl,--projects <arg>                   Comma-delimited list of specified
                                        reactor projects to build instead
                                        of all projects. A project can be
                                        specified by [groupId]:artifactId
                                        or by its relative path

Note the point A project can be specified by [groupId]:artifactId or by its relative path.
I have been testing a while this approach (to be honest, I didn't know about it) and works, e.g.
./mvnw clean -pl :backend`

Where backend (in this example) is the artifactId for the apps/backend application as declared in apps/backend/pom.xml.

Running into the same issue after wondering why my CI timeouted after 40 minutes.
I'm using Gradle and @nxrocks/nx-quarkus.
Is there any progress on this issue so far?

Hi @mklueh
I'm currently improving the support for multi-modules projects to accommodate this use case( Initial PR is here: https://github.com/tinesoft/nxrocks/pull/210)
It should be fixed very shortly.
So stay tuned! ;-)


Allow loading a list of relays from an API

mev-boost should have the ability to load a list of relays from an URL. This allows updating the used relays without needing to update the CL clients / mev-boost service.

This list should be continuously updated by mev-boost
It should be possible to supply multiple URLs
If the URLs fail to load on startup, hardcoded relays are used as a fallback and in the background mev-boost retries loading relays from URLs

just pointing out that this is a classic "security vs convenience" trade-off.
if we assume a "battle-hardened" validation setup then not only does the operator have to open IP access to the relays but also to this "relay provider" and the relay provider must take a lot of care to not be compromised.
the "low-hanging fruit" class of damage that could be done by compromise of an endpoint like this issue suggests is pretty minimal although I can see how it could be exploited for a liveness fault (esp. if I found a zero-day in the local builder fallback pipeline)

its also worth considering other discovery mechanisms beyond a registry provided by a direct API.
I know at least ethereum and bitcoin have DNS-based discovery modes (if someone goes down this road, look into authenticating the DNS records a la DNSSEC) and in the limit we could even bake our own discovery layer on top of discv5.

Thanks for the input Alex 🙏  Let's discuss and evaluate this further.
This feature is particularly relevant for parties that manage a large amount of validators, where reconfiguring and restarting mev-boost  manually across a large number of nodes is cumbersome.
The best setup to use this feature seems a statically hosted JSON on multiple providers (rather than a dynamic API/service).

There has not been much interest in loading a remote list, so let's start with the local config and see if the need arises to allow loading it from an API as well.

For reference, this could also be solved by a local script that queries the API, or a smart contract, and writes the local config file.


Net inspector shows old values after smoothing

Net-inspector shows old values after smoothing - until I refill the Zones (B) or remove the zones (Ctrl+B).
https://github.com/mitxela/kicad-round-tracks/assets/841061/b567d4de-e7e2-43e9-8954-af3a3db73999
I am on 7.99.

Sorry, KiCad nightly isn't supported - it's too much of a commitment to keep up with the changes while it's in flux.
From a cursory glance this doesn't seem to happen on 7.0, so you might be better off reporting this to the kicad devs.

I see on 7.0.9 net inspector doesn't update if it is left in the background when performing rounding.
I thought you may know why, since you are performing the zone refill already,
https://github.com/mitxela/kicad-round-tracks/blob/master/round_tracks_action.py#L105 and yet it is still needed to refill them again manually.

I don't have time to look into it right now. I would guess it has nothing to do with zone filling, just that there is a hook to update the net inspector window when the board is edited, and running a python script doesn't trigger that hook.


Ubutntu : This app is incompatible with your device. Check to make sure other Android apps work for you from the Chrome Web Store.

Hey Vlasikoff,
I am using Archon Runtime to run APK file, but I get following error. This app is incompatible with your device. Check to make sure other Android apps work for you from the Chrome Web Store.
I am using Ubuntu 16.04 64 bit machine.
I was able to launch successfully the uberspot apk. Rest other apks are not able to run on chrome.
Can you please look in to this issue.
Maitreyi

:+1:

I have the same problem.

I have the same problem. Please help me! Thanks

Same here, on Windows 10 both on Edge and Chrome

Any updates on this?


File or attachment user input action in Composer v2.1.1 not working

I am trying to create an attachment input action in bot framework composer and followed these steps
 but I am getting  the error message - "Object reference not set to an instance of an object" on emulator vesrion 4.14.0. Please find below the screen shot of the implementation and error message:

My Bot framework Composer version details:
Version:  2.1.1
Electron: 8.2.4
Chrome: 80.0.3987.165
NodeJS: 12.13.0
V8: 8.0.426.27-electron.0

Hey @anujprasad, is your intent to attach a file? It looks like your getting the error as the input from the card is a text rather than an attachment file. Run your bot and click on the upload file (paper clip icon) button on bottom left of the chat to attach a file. Please let me know if this helps.

@ramfattah  Yes, my intent is to attach a pdf file. The input text "number" that you see in the screen shot is just a regular expression trigger to trigger the number dialog and the very first step on that dialog is to ask user for file attachment. It throws the error "Object reference not set to an instance of an object" even before prompting the user the message "Please upload your invoice". Ideally user should first see this prompt "Please upload your invoice" and then he/she would click on upload file (paper clip icon) button to attach a file, it should not throw the exception before that.
I have shared the composer authoring screen for "Prompt for a file and attachment" , do you find any anomaly in that implementation that could throw the exception - "Object reference not set to an instance of an object"?

Re-attaching the composer bot authoring screen:

I'm facing the same issue.

In my case the input prompt did not have any text, this is why it errored. Ui should reflect it being necessary or should be possible to not contain any value.

I figured out the root cause and solution, incase anyone facing similar issue:
Exact steps to reproduce the issue:

Select the + icon then select File or attachment from the Ask a question menu
Enter Please send an image. in the Prompt field of the Properties pane.
Switch to the User Input tab ()

Enter dialog.attachments in the Property field.
Enter all in the Output format field.
Enter "application/pdf" in the contentType. Note that contentType field is marked as mandatory

Now run your bot and invoke the dialog that has prompt for file or an attachment - your get the error message - "Object reference not set to an instance of an object"

The root cause for the issue was contentType which is marked as mandatory field with red *, now even if I remove the text "application/pdf" from contentType field I continue to get the error message - "Object reference not set to an instance of an object". So the fix is to remove the control "prompt for file or an attachment" first and then re-add it and make sure you have not added any text in the mandatory field - "contentType " :).

Quick question - Once the file is uploaded by user using the prompt "File or attachment input", does that file stays in the server forever or it's stored in memory within dialog scope? If I have to hand it off to any live agent such as customer helpdesk, what's the best possible way to store the transcript and this file and then send it over an email to the live agent?

Hi @anujprasad , Microsoft Bot Framework is an open platform that allows developers to integrate with a variety of agent engagement platforms. This is the official Microsoft Documentation on Handoff integration models to provide a common language and best practices for bot developers and system integrators building conversational AI systems with human in the loop.
Also, Here is the Bot Framework v4 Handoff Library.

Hi @anujprasad , Microsoft Bot Framework is an open platform that allows developers to integrate with a variety of agent engagement platforms. This is the official Microsoft Documentation on Handoff integration models to provide a common language and best practices for bot developers and system integrators building conversational AI systems with human in the loop.
Also, Here is the Bot Framework v4 Handoff Library.

can i get upload file url so i can store some where in api and the through api i will dowload it

if user send me pdf attachment in bot composer.
How will I get to know file is attach or not?
so i can store it some where and then download from it for example (azure blob storage).

if user send me pdf attachment in bot composer. How I will store that pdf in my code. How it will convert to base 64 or in URL to send via API to store somewhere

My issue is resolved and it uploading in my blob

how to used validation for file ie. file should be in .pdf format only in bot composer

if user send me pdf attachment in bot composer. How I will store that pdf in my code. How it will convert to base 64 or in URL to send via API to store somewhere

My issue is resolved and it uploading in my blob storage and getting the URL too. NOTE : Storing locally only
When I try to run through server its show error Below Error : An attempt was made to access a socket in a way forbidden by its access permissions. An attempt was made to access a socket in a way forbidden by its access permissions.

Hi Hadkar, Can you please explain the process you followed so that whatever the user uploads, you get the URL in blob storage? Right now, after the user uploads any pdf i get ContentURL which is having localhost link. After copy-pasting that localhost link to any website its downloading the file without the extension. Can you also say how did you solve this?
Any help is much appreciated.

See in my case I get the whole name i.e - filename.pdf etc
In your case exactly what link are you getting?
and my issue is still pending

How to store this file to azure blob storage or sharepoint list ?

I'm also searching the possibility of saving attachments to azure storage. My bot as channel is using Teams. What I done up to now - I used "prompt for a file or attachment" and get content url of the file. Im looking for the next steps. From web I found that file should be sent via http request to azure blob. Is it a proper way, should I use this content url? Is it possible to done form Bot Framework Composer or extra coding is necessary? I appreciate all advices.


New feature : add a prioritize question type

A prioritize question type is a question where user is asked to order labels from most important to least important. It is usefull for website/app evolution prioritization.
It can be done either by drag and drop labels or putting the order number in front of each label.

Hi,
I am not a great fun of drag & drop, since it does not work on mobile well.
I can show a list with up and down buttons, so the user may change the order. However, what if you need to select TopN from M (where M > TopN)? How to show it?
What do you think about the following UI?
There are several dropdowns, from 1 to N. Each dropdown contains all possible options. Optionally a customer may add/delete the number of dropdowns. All dropdowns should have a selected option and any two dropdowns could not have the same selected option.
Thank you,
Andrew

Hello Andrew,
Agree that drag & drop does not work well on mobile.
An easy way of implementing it would be to have a table with 2 columns :

first column = input for rank number (fix width)

column 2 for labels to order (variable width for responsiveness)

and the system would check that not twice the same number is input in
column 1 and that numbers go from 1 to x when there are x labels.
kind regards
Frank
Le 16/07/2016 à 22:41, Andrew a écrit :

Hi,
I am not a great fun of drag & drop, since it does not work on mobile
well.
I can show a list with up and down buttons, so the user may change the
order. However, what if you need to select TopN from M (where M >
TopN)? How to show it?
What do you think about the following UI?
There are several dropdowns, from 1 to N. Each dropdown contains all
possible options. Optionally a customer may add/delete the number of
dropdowns. All dropdowns should have a selected option and any two
dropdowns could not have the same selected option.
Thank you,
Andrew
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/andrewtelnov/surveyjs/issues/36#issuecomment-233150005,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACPrTFV2SKUF8gNfvcm7t4JaUwUDtnt7ks5qWUHhgaJpZM4JN-Fv.

Hi Frank,
Could you please to play with this demo
What do you think about it?
Thank you,
Andrew

Hi Andrew,
Sorry not to be very enthusistic.
I would like features ordered like in a backlog. So user cannot remove
or add a line. User is asked to order the different labels (here
colours) from mot prefered to less prefered.
Doing so with several selects is fine. But If I choose black in first
and then black in second, in the demo, the first label is modified to
green. I would prefer to show that there is an error in the two fields
maybe by a red background color thant make a correction automatically
that the user may not see. And the correction may not be the right one.
Maybe it was the second label which was selected by error.
Kind regards
Frank
Le 20/07/2016 à 15:57, Andrew a écrit :

Hi Frank,
Could you please to play with this demo
https://jsfiddle.net/AndrewTelnov/uyg1uuyp/
What do you think about it?
Thank you,
Andrew
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/andrewtelnov/surveyjs/issues/36#issuecomment-233956717,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACPrTE7uoQg0cZMGN_CFxt-2xtEpRARGks5qXikzgaJpZM4JN-Fv.

L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus

Hi Frank,
I have updated the prototype. Is it closer?
Thank you,
Andrew

@Frank13 It took more then a year :-) We have added the custom widget support. Here is example of what you wanted: https://www.surveyjs.io/Examples/Library/?id=custom-widget-sortablejs
Thank you,
Andrew

HI @andrewtelnov ,
Is there anyway to change the default text "Move items here.",
I tried updating the metadata in ts file, but no luck.
-Thanks in advance.


refactor: cleanup unecessary controller props

This PR removes unnecessary API from the Controller.

Current coverage is 81.01% (diff: 86.66%)

No coverage report found for master at 28b03d6.

Powered by Codecov. Last update 28b03d6...328726c


Two instances of syncthing in Activity monitor

After updating tp the latest version, I see two syncthing processes. The previous version showed only one executable running. Haven't noticed any problems with that, but thought I should mention.

I can verify this also on my system. They are sub processes of each other so no double syncthing instances are running (multithreaded application). See my activity log screenshot below with detailed process info.

I have observed this issue and I think it might be a bug (or at least a problem). I don't think this has anything to do with multi-threading. These are clearly two processes with individual PIDs (if each app would open a PID for each thread it would be crazy. Anyway, the problem is that whenever Syncthing hangs and I need to terminate via the "Quit Syncthing" menu item, Syncthing will hang because it cannot shut down both PIDs (only one is closed).

Yes syncthing-macosx bundle starts syncthing daemon as its child process and are two separated processes. It weird you have to kill syncthing, I have not had any problem with it as long as I'm using my own syncthing-macosx. But you are right it should be "easier to kill". A simple solution  doesn't come to my mind yet.

Yeah, I see the same thing: syncthing forks a new process upon launch. I think this is by design. I launched syncthing from command line, and it also spawned two processes.
@enaloha Threads and processes are different things, both can be used for different reasons; and forking new processes is definitely common practice for daemons.

This is the nature of golang applications, it always spawns minimal two processes. The runtime automatically scales over multiple threads.

To protect against two running syncthing-macosx syncthing daemons we could store a pidfile and try to kill it before starting a new instance. But this needs some work.

I'm closing this, as I think it as I have investigated earlier. Its just a sub-process of syncthing. It would also be nice to control the actual start/stop/restart of the subprocess (See https://github.com/xor-gate/syncthing-macosx/issues/48).


docs(api.md): Working link to Linux differences

A link on line 525 is pointing to a undefined branch (lkcr) in chromium.googlesource.com/chromium/src/. Change it to point to lkgr instead, since it's the closest defined branch in name.

I signed it!


Migrate to new version of the Graphql Client nuget

Due to some gql subscritpions related issues, we need to migrate to the new 6.0 version of the gql client sooner rather than later. We need to upgrade the server to use a new protocol, that is not supported by the current 5.1 versions.
The migration is a bit more involved, that just bumping a package version, cause we need to do some upgrades around JSON deserialization. The way we're currently using Newtonsoft is not working with the new version.
https://github.com/graphql-dotnet/graphql-client/releases/tag/v6.0.0

Done in: https://github.com/specklesystems/speckle-sharp/pull/2564

Sweet. We just need to set it to auto negotiate with the server.

According to the log, it's on by default: The client now negotiates the websocket protocol with the server by default
So for now I had to explicitly set the protocol here: https://github.com/specklesystems/speckle-sharp/blob/b20afb8188391df279108bdfd438b82ec4740e2b/Core/Core/Api/GraphQL/Client.cs#L57
If this change needs to be timed with a server release we need to discuss how not to break older clients...
PS feel free to reopen this if more changes are needed!

Yeah, its a bit misleading, cause looking at the implementation, if no values are supplied to the WebSocketProtocol it defaults to auto negotiate. But based on this PR: https://github.com/graphql-dotnet/graphql-client/pull/539#issue-1662372496 auto negotiation is not implemented.
So there is not much we can do about this rn...
Thanks for the help @teocomi


#854 added confirm dialog before removing a product from cart

Related issues
Missing confirm dialog before remove product from cart #854
Short description and why it's useful
It's useful for the user not to delete a product by accident from cart
Screenshots of visual changes before/after (if there are any)
Before

After

Screenshot of passed e2e tests (if you are using our standard setup as a backend)
not required
Upgrade Notes and Changelog

[x] No upgrade steps required (100% backward compatibility)
[ ] I've updated the Upgrade notes and Changelog on how to port existing VS sites with this new feature

Contribution and currently important rules acceptance

[x] I read and followed contribution rules
[x] I read the TypeScript Action Plan and adjusted my PR according to it
[x] I read about Vue Storefront Modules and I am aware that every new feature should be a module

@ukr-jane merged, congrats! I hope that you'll keep contributing in the future :)


create a test suite for ymls/user inputs to make sure all if/else works properly.

More for my own curiosity... can we explicitly outline the example instances in which we get errors?


Inplace problem caused by Leaky neurons using snntorch

snntorch version:0.53
Python version:3.9
Operating System:ubuntu18.04

Description
I repeated the experiment of a paper. I can confirm that there is no problem with the network, but I will have an inplace error when I carry out backpropagation, and I do not carry out the inplace operation. This problem often occurs. In the past, I used to add utils. reset (net) to solve it, but this time it has no effect
What I Did
all of my code in here.
# 目前已经可以使用class进行模块组合和forward了
import torch.nn.functional as F
import torch, torch.nn as nn
import snntorch as snn
from torch.utils.data import DataLoader
from torchvision import datasets, transforms
from snntorch import surrogate
from snntorch import utils
import snntorch.functional as SF
from snntorch import backprop
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter('./runs')
torch.autograd.set_detect_anomaly(True)

device = torch.device("cuda:0")
data_path='../data'
batch_size = 8
num_epochs = 1
num_steps = 25

transform = transforms.Compose([
    transforms.Resize((64, 64)),
    transforms.Grayscale(),
    transforms.ToTensor(),
    transforms.Normalize((0,),(1,))])
mnist_train = datasets.MNIST(data_path, train=True, download=True, transform=transform)
mnist_test = datasets.MNIST(data_path, train=False, download=True, transform=transform)

train_loader = DataLoader(mnist_train, batch_size, shuffle=True)
test_loader = DataLoader(mnist_test, batch_size, shuffle=True)

class GlobalAvgPool2d(nn.Module):           # 全局平均池化
    def __init__(self):
        super(GlobalAvgPool2d, self).__init__()
    def forward(self, x):
        a = nn.AvgPool2d(kernel_size=x.shape[2:])
        return a(x)

class coding(nn.Module):            # 自适应编码层
    def __init__(self, in_channels, out_channels, stride, padding, kernels, pooling_kernel, beta, spike_grad):
        super().__init__()
        self.conv3x3 = nn.Conv2d(in_channels, out_channels, kernels, stride=stride, padding=padding)
        self.leaky = snn.Leaky(beta=beta, spike_grad=spike_grad, init_hidden=True, learn_beta=True, learn_threshold=True)
        self.pooling = nn.MaxPool2d(pooling_kernel)

    def forward(self, x):
        result = self.pooling(self.leaky(self.conv3x3(x)))
        return result

def coding_made(in_channels, out_channels, stride, padding, kernels, pooling_kernel=2, beta=0.9, spike_grad=surrogate.atan()):
    blk = []
    blk.append(coding(in_channels, out_channels, stride, padding, kernels, pooling_kernel, beta, spike_grad))
    return nn.Sequential(*blk)

class block(nn.Module):             # 脉冲稠密块
    def __init__(self, in_channels, out_channels, stride, padding, kernels, beta, spike_grad):
        super().__init__()
        self.bn1 = nn.BatchNorm2d(in_channels[0])
        self.leaky1 = snn.Leaky(beta=beta[0], spike_grad=spike_grad[0], init_hidden=True, learn_beta=True, learn_threshold=True)
        self.conv1x1 = nn.Conv2d(in_channels[0], out_channels[0], kernel_size=kernels[0], stride=stride[0], padding=padding[0])
        self.bn2 = nn.BatchNorm2d(out_channels[0])
        self.leaky2 = snn.Leaky(beta=beta[1], spike_grad=spike_grad[1], init_hidden=True, learn_beta=True, learn_threshold=True)
        self.conv3x3 = nn.Conv2d(in_channels[1], out_channels[1], kernel_size=kernels[1], stride=stride[1], padding=padding[1])

    def forward(self, x):
        result = self.conv3x3(self.leaky2(self.bn2(self.conv1x1(self.leaky1(self.bn1(x))))))
        results = torch.cat([x, result], dim=1)
        return result

# 初始化模块
def block_made(in_channels, out_channels, stride, padding, kernels, beta=[0.9, 0.9], spike_grad=[surrogate.atan(), surrogate.atan()]):
    blk = []
    blk.append(block(in_channels, out_channels, stride, padding, kernels, beta, spike_grad))
    return nn.Sequential(*blk)

class spiking_transform(nn.Module):             # 脉冲转换块
    def __init__(self, in_channels, out_channels, stride, padding, kernels, pooling_kernel, beta, spike_grad):
        super().__init__()
        self.bn = nn.BatchNorm2d(in_channels)
        self.leaky = snn.Leaky(beta=beta, spike_grad=spike_grad, init_hidden=True, learn_beta=True, learn_threshold=True)
        self.conv1x1 = nn.Conv2d(in_channels, out_channels, kernels, stride=stride, padding=padding)
        self.pooling = nn.AvgPool2d(pooling_kernel)

    def forward(self, x):
        result = self.pooling(self.conv1x1(self.leaky(self.bn(x))))
        return result

def spiling_transform_made(in_channels, out_channels, stride, padding, kernels, pooling_kernel=2, beta=0.9, spike_grad=surrogate.atan()):
    blk = []
    blk.append(spiking_transform(in_channels, out_channels, stride, padding, kernels, pooling_kernel, beta, spike_grad))
    return nn.Sequential(*blk)

class all_connection(nn.Module):             # 决策层
    def __init__(self, linear_in, linear_out, beta, spike_grad):
        super().__init__()
        self.Globalavgpool = GlobalAvgPool2d()
        self.linear = nn.Linear(linear_in, linear_out)
        self.leaky = snn.Leaky(beta=beta, spike_grad=spike_grad, init_hidden=True, learn_beta=True, learn_threshold=True)

    def forward(self, x):
        flatten_result = torch.flatten((self.Globalavgpool(x)), start_dim=1, end_dim=3)     # 拉平第一个维度到第三个维度（通道+w+h）
        result = self.leaky(self.linear(flatten_result))
        return result

def all_connection_made(linear_in, linear_out, beta=0.9, spike_grad=surrogate.atan()):
    blk = []
    blk.append(all_connection(linear_in, linear_out, beta, spike_grad))
    return nn.Sequential(*blk)

net = nn.Sequential()
net.add_module("coding", coding_made(1, 128, 1, 1, 3, 2))
net.add_module("block1", block_made([128, 32], [32, 136], [1, 1], [0, 1], [1, 3]))
net.add_module("block2", block_made([136, 32], [32, 144], [1, 1], [0, 1], [1, 3]))
net.add_module("block3", block_made([144, 32], [32, 152], [1, 1], [0, 1], [1, 3]))
net.add_module("block4", block_made([152, 32], [32, 160], [1, 1], [0, 1], [1, 3]))
net.add_module("block5", block_made([160, 32], [32, 168], [1, 1], [0, 1], [1, 3]))
net.add_module('transform', spiling_transform_made(168, 84, 1, 0, 1, 2))
net.add_module("connection", all_connection_made(84, 10))
utils.reset(net)
net.cuda()
# print(net)
# print(net(torch.rand(128, 1, 64, 64, device='cuda:0')).shape)

optimizer = torch.optim.Adam(net.parameters(), lr=2e-3, betas=(0.9, 0.999))
loss_fn = SF.mse_count_loss(correct_rate=0.8, incorrect_rate=0.2)

loss_hist = []      # 记录损失
acc_hist = []       # 记录迭代精度

def net_do(data):
    # utils.reset(net)
    mem_rec = []
    for i in range(num_steps):
        mem = net(data)
        mem_rec.append(mem)
    return torch.stack(mem_rec)

for epoch in range(num_epochs):
    for i, (data, targets) in enumerate(iter(train_loader)):
        data = data.to(device)
        targets = targets.to(device)
        net.train()         # 进入训练模式，参数会随着迭代而改变
        result = net_do(data)              # spk_rec的格式为：[num_steps, batch_size, 类别数]
        loss_val = loss_fn(result, targets)
        optimizer.zero_grad()
        loss_val.backward(retain_graph=True)
        optimizer.step()
        loss_hist.append(loss_val.item())

        # 每25组数据输出一次
        if i % 25 == 0:
          net.eval()
          print(f"Epoch {epoch}, 第 {i} 次循环 \n训练损失: {loss_val.item():.2f}")
          acc = SF.accuracy_rate(result, targets)          # 使用峰值计数来衡量准确率
          acc_hist.append(acc)
          print(f"Accuracy: {acc * 100:.2f}%\n")

# 对整个测试集进行测试
def test_accuracy(data_loader, num_steps):
  with torch.no_grad():
    total = 0
    acc = 0
    net.eval()
    for data, targets in iter(data_loader):
      data = data.to(device)
      targets = targets.to(device)
      result = net_do(data)       # spk_rec的格式为：[num_steps, batch_size, 类别数]
      acc += SF.accuracy_rate(result, targets) * result.size(1)           # 准确率 * 本批次的数据总量
      total += result.size(1)

  return acc/total

print(f"在整个测试集上的准确率为: {test_accuracy(test_loader, num_steps)*100:.3f}%")

when I run the code,The error is as follows：
/home/sym/anaconda3/envs/snn_1/bin/python3.9 /home/sym/PycharmProjects/spiking-classify/基于脉冲神经网络的钢材表面缺陷识别研究.py
Epoch 0, 第 0 次循环
训练损失: 0.00
Accuracy: 0.00%
/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/autograd/init.py:173: UserWarning: Error detected in AddmmBackward0. Traceback of forward call that caused the error:
File "/home/sym/PycharmProjects/spiking-classify/基于脉冲神经网络的钢材表面缺陷识别研究.py", line 169, in
result = net_do(data)              # spk_rec的格式为：[num_steps, batch_size, 类别数]
File "/home/sym/PycharmProjects/spiking-classify/基于脉冲神经网络的钢材表面缺陷识别研究.py", line 148, in net_do
mem = net(data)
File "/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
return forward_call(*input, **kwargs)
File "/home/sym/PycharmProjects/spiking-classify/基于脉冲神经网络的钢材表面缺陷识别研究.py", line 139, in forward
result = self.connection(transform_result)
File "/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
return forward_call(*input, **kwargs)
File "/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/nn/modules/container.py", line 139, in forward
input = module(input)
File "/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
return forward_call(*input, **kwargs)
File "/home/sym/PycharmProjects/spiking-classify/基于脉冲神经网络的钢材表面缺陷识别研究.py", line 104, in forward
result = self.leaky(self.linear(flatten_result))
File "/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
return forward_call(*input, **kwargs)
File "/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/nn/modules/linear.py", line 114, in forward
return F.linear(input, self.weight, self.bias)
(Triggered internally at  /opt/conda/conda-bld/pytorch_1659484806139/work/torch/csrc/autograd/python_anomaly_mode.cpp:102.)
Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
Traceback (most recent call last):
File "/home/sym/PycharmProjects/spiking-classify/基于脉冲神经网络的钢材表面缺陷识别研究.py", line 172, in
loss_val.backward(retain_graph=True)
File "/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/_tensor.py", line 396, in backward
torch.autograd.backward(self, gradient, retain_graph, create_graph, inputs=inputs)
File "/home/sym/anaconda3/envs/snn_1/lib/python3.9/site-packages/torch/autograd/init.py", line 173, in backward
Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatTensor [84, 10]], which is output 0 of AsStridedBackward0, is at version 2; expected version 1 instead. Hint: the backtrace further above shows the operation that failed to compute its gradient. The variable in question was changed in there or anywhere later. Good luck!
Process finished with exit code 1

I hope someone can help me

Hello,
It seems that you just call util.reset(net) just once, but it needs to be call in each feed forward process. Have you tried to put this in the beginning of the training code? Like this:
for epoch in range(num_epochs):
    for i, (data, targets) in enumerate(iter(train_loader)):
        utils.reset_net(net) # reset in each training process.
        data = data.to(device)
        targets = targets.to(device)
        net.train()         # 进入训练模式，参数会随着迭代而改变
        result = net_do(data)              # spk_rec的格式为：[num_steps, batch_size, 类别数]
        loss_val = loss_fn(result, targets)
        optimizer.zero_grad()
        loss_val.backward(retain_graph=True)
        optimizer.step()
        loss_hist.append(loss_val.item())

        # 每25组数据输出一次
        if i % 25 == 0:
          net.eval()
          print(f"Epoch {epoch}, 第 {i} 次循环 \n训练损失: {loss_val.item():.2f}")
          acc = SF.accuracy_rate(result, targets)          # 使用峰值计数来衡量准确率
          acc_hist.append(acc)
          print(f"Accuracy: {acc * 100:.2f}%\n")

Thank you for your kind help
I have tried to do this, but it has no effect on the result. It will still report the same error
I tried to change the code of the training part to the following
def net_do(data):
    utils.reset(net)
    mem_rec = []
    for i in range(num_steps):
        mem = net(data)
        mem_rec.append(mem)
    return torch.stack(mem_rec)

for epoch in range(num_epochs):
    for i, (data, targets) in enumerate(iter(train_loader)):
        data = data.to(device)
        targets = targets.to(device)
        net.train()         # 进入训练模式，参数会随着迭代而改变
        result = net_do(data)              # spk_rec的格式为：[num_steps, batch_size, 类别数]
        loss_val = loss_fn(result, targets)
        optimizer.zero_grad()
        loss_val.backward(retain_graph=True)
        optimizer.step()
        loss_hist.append(loss_val.item())
        # 每25组数据输出一次
        if i % 25 == 0:
          net.eval()
          print(f"Epoch {epoch}, 第 {i} 次循环 \n训练损失: {loss_val.item():.2f}")
          acc = SF.accuracy_rate(result, targets)          # 使用峰值计数来衡量准确率
          acc_hist.append(acc)
          print(f"Accuracy: {acc * 100:.2f}%\n")

I also modified it according to your suggestion, but it still has no effect
def net_do(data):
    # utils.reset(net)
    mem_rec = []
    for i in range(num_steps):
        mem = net(data)
        mem_rec.append(mem)
    return torch.stack(mem_rec)

for epoch in range(num_epochs):
    for i, (data, targets) in enumerate(iter(train_loader)):
        utils.reset(net)
        data = data.to(device)
        targets = targets.to(device)
        net.train()         # 进入训练模式，参数会随着迭代而改变
        result = net_do(data)              # spk_rec的格式为：[num_steps, batch_size, 类别数]
        loss_val = loss_fn(result, targets)
        optimizer.zero_grad()
        loss_val.backward(retain_graph=True)
        optimizer.step()
        loss_hist.append(loss_val.item())
        # 每25组数据输出一次
        if i % 25 == 0:
          net.eval()
          print(f"Epoch {epoch}, 第 {i} 次循环 \n训练损失: {loss_val.item():.2f}")
          acc = SF.accuracy_rate(result, targets)          # 使用峰值计数来衡量准确率
          acc_hist.append(acc)
          print(f"Accuracy: {acc * 100:.2f}%\n")

I have been troubled by this issue for a long time, and I have encountered this issue in other tasks using snntorch, but after I added: utils.reset(net) After that, this problem will not occur again, but in this project, no matter how I add this line of code, it will have no effect, and will still report an error
You may be the only snntorch user I can contact. I really hope you can help me
Thank you very much
Thank you very much
Thank you very much

Solved by editing the reset function.


Update uart tx interrupts

watermark now only fires when tx dips under the watermark
overflow changed to tx empty

Signed-off-by: Timothy Chen<EMAIL_ADDRESS>

Related to #1132
@eunchan @weicaiyang can you guys have a look?
I changed a couple of interrupts from sticky to edge based..since it was causing all sorts of issues with the DV environment. I also think the edge based might in general work better for UART (SPI level i believe is also edge based).
If this is good, I can go through and change the others.

@weicaiyang
I put in some minor fixes mainly to get uart DV compiling and sanity passing.  I did not test a ton though, so I've probably missed some things.

Now, this is fixed. @tjaychen could you please rebase the PR?
After revised, still there's pending item to convert generation code for DV
collaterals into new format (multiple addresses for a device port).
On Mon, Dec 30, 2019 at 10:51:54AM -0800, weicaiyang wrote:

weicaiyang commented on this pull request.

@@ -1,120 +1,23 @@
-// Copyright lowRISC contributors.
-// Licensed under the Apache License, Version 2.0, see LICENSE for details.
-// SPDX-License-Identifier: Apache-2.0
-//
-// xbar_main_bind module generated by tlgen.py tool for assertions
-module xbar_main_bind;
+CAPI=2:

Sorry, I didn't know I need to update topgen. thanks @eunchan
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/lowRISC/opentitan/pull/1250#discussion_r362066712

Now, this is fixed. @tjaychen could you please rebase the PR? After revised, still there's pending item to convert generation code for DV collaterals into new format (multiple addresses for a device port).
…
On Mon, Dec 30, 2019 at 10:51:54AM -0800, weicaiyang wrote: weicaiyang commented on this pull request. > @@ -1,120 +1,23 @@ -// Copyright lowRISC contributors. -// Licensed under the Apache License, Version 2.0, see LICENSE for details. -// SPDX-License-Identifier: Apache-2.0 -// -// xbar_main_bind module generated by tlgen.py tool for assertions -module xbar_main_bind; +CAPI=2: Sorry, I didn't know I need to update topgen. thanks @eunchan -- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: #1250 (comment)

do i need to hold this PR until the DV collateral update for multi-xbar? or can i merge it beforehand?

On Mon, Dec 30, 2019 at 11:24:38AM -0800, tjaychen wrote:

Now, this is fixed. @tjaychen could you please rebase the PR? After revised, still there's pending item to convert generation code for DV collaterals into new format (multiple addresses for a device port).
…
On Mon, Dec 30, 2019 at 10:51:54AM -0800, weicaiyang wrote: weicaiyang commented on this pull request. > @@ -1,120 +1,23 @@ -// Copyright lowRISC contributors. -// Licensed under the Apache License, Version 2.0, see LICENSE for details. -// SPDX-License-Identifier: Apache-2.0 -// -// xbar_main_bind module generated by tlgen.py tool for assertions -module xbar_main_bind; +CAPI=2: Sorry, I didn't know I need to update topgen. thanks @eunchan -- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: #1250 (comment)

do i need to hold this PR until the DV collateral update for multi-xbar? or can i merge it beforehand?

No. It will take time to prepare the revised template. You can merge this PR
after rebase.

thanks for the review @weicaiyang and @eunchan


Problem with notifications in the app

Resolve, is a problem of svelte-notifications

Resolve, is a problem of svelte-notifications


Create original Logo for MegaMaxCorpInc and Hackerman

Because of copyright reasons and creativity unleashment reasons ;-)

Move original assets to /assets directory in Git