Logistics for the working sessions

Which ones will take place & when  & where
Start preparing a schedule (sched.org or something else)
Plus remote participation
Logistical support for the working sessions

dinis created online schedule - organizers can  add this thru github
splitting of other questions in separate issues


Update solve_lmde_perturbation work with non-integer labels

What is the expected behavior?
Currently the solve_lmde_perturbation function requires that the labels for the perturbations be non-negative integers. It would be nice to allow more general labels, e.g. strings that can directly name what the perturbation represents.
This could either be done by having a translation of arbitrary labels <-> integers before/after the core of the function is executed, or by modifying the actual internals to work with more general labels. The latter would be more elegant, though it'll likely be much easier to do the former. (I can't recall how much of the internals make use of integer properties.)

I was going to try to do this right now but it's not urgent and may make sense to just wait until after arraylias integration.


How do I run this with node.js?

I cloned it, and ran bower install spotify-search and http-server

Pull and try running it using http-server -p 5000 .. In any case, this is an old project and Polymer has changed a lot since.

Thanks anyways.  I'm getting not found resources 404 when I http-server -p
5000 inside the demo and the root folder.  In the demo folder, I get the
text, but no search box.
On Thu, Jan 19, 2017 at 2:30 AM, José Manuel Pérez<EMAIL_ADDRESS>
wrote:

Pull and try running it using http-server -p 5000 .. In any case, this is
an old project and Polymer has changed a lot since.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/JMPerez/spotify-search/issues/1#issuecomment-273701172,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABRUpqKi18AXRegIlhkGkCKvuiDjwjvUks5rTxEIgaJpZM4LnuBR
.

But the files do exists in the bower_components directory...
On Thu, Jan 19, 2017 at 2:37 AM, Niko Tzikas<EMAIL_ADDRESS>wrote:

Thanks anyways.  I'm getting not found resources 404 when I http-server -p
5000 inside the demo and the root folder.  In the demo folder, I get the
text, but no search box.
On Thu, Jan 19, 2017 at 2:30 AM, José Manuel Pérez <
<EMAIL_ADDRESS>wrote:

Pull and try running it using http-server -p 5000 .. In any case, this
is an old project and Polymer has changed a lot since.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/JMPerez/spotify-search/issues/1#issuecomment-273701172,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABRUpqKi18AXRegIlhkGkCKvuiDjwjvUks5rTxEIgaJpZM4LnuBR
.

Have you tried accessing http://localhost:5000/demo/ when running http-server -p 5000 . from the root?

Yes it worked now.  I didn't navigate to the demo directory.  Sorry for the
silly question but thank you very much :)
On Thursday, January 19, 2017, José Manuel Pérez<EMAIL_ADDRESS>wrote:

Have you tried accessing http://localhost:5000/demo/ when running http-server
-p 5000 . from the root?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/JMPerez/spotify-search/issues/1#issuecomment-273716553,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABRUpv9piWE0nGoTBayZWoGUOCQAaMG5ks5rTyWjgaJpZM4LnuBR
.


Can't use JBuilder templates when overriding rendering methods

config/routes.rb
Rails.application.routes.draw do
  namespace :api, defaults: { format: :json } do
    namespace :v1 do
      mount_devise_token_auth_for 'User', at: 'user', controllers: {
        token_validations: "api/v1/user/token_validations"
      }
      end
    end
end

app/controllers/api/v1/user/token_validations_controller.rb
module Api::V1::User
  class TokenValidationsController < DeviseTokenAuth::TokenValidationsController
    def render_validate_token_success
      render "api/v1/user/success"
    end
  end
end

app/views/api/v1/user/success.json.jbuilder
json.data do
  json.extract! @resource, :id, :first_name, :last_name, :gender
  json.test "works"
end

doing a GET request on api/v1/user/validate_token yields
Started GET "/api/v1/user/validate_token" for <IP_ADDRESS> at 2017-01-03 17:50:52 +0100
Processing by Api::V1::User::TokenValidationsController#validate_token as HTML
  Parameters: {"token_validation"=>{}}
  User Load (0.7ms)  SELECT  "users".* FROM "users" WHERE "users"."uid" = $1 LIMIT $2  [["uid"<EMAIL_ADDRESS>["LIMIT", 1]]
Completed 500 Internal Server Error in 5ms (ActiveRecord: 0.7ms)

ActionView::MissingTemplate - Missing template api/v1/user/success with {:locale=>[:en], :formats=>[:html], :variants=>[], :handlers=>[:raw, :erb, :html, :builder, :ruby, :haml, :jbuilder]}. Searched in:
  * "/home/quintasan/Sauce/applover/harex/app/views"
  *<EMAIL_ADDRESS>  *<EMAIL_ADDRESS>  *<EMAIL_ADDRESS>
What am I doing wrong.

Hi there @Quintasan    ,
In an effort to cleanup this project and prioritize a bit, we're marking issues that haven't had any activity in a while with a "close-in-7-days" label. If we don't hear from you in about a week, we'll be closing this issue. Obviously feel free to re-open it at any time if it's the right time or this was done in error!
If you are still having the issue (especially if it's a bug report) please refer to our new Issue Template to provide some more details to help us solve it.
Hope all is well.


Introducing --resume-training to preserve adapter files from being overwritten

Instead of trying to illustrate some undesirable behavior from --resume-adapter-file as a bug, I've decided to share --resume-training to meet my needs.
New Feature Synopsis
This enabled --resume-training argument is an alternative to --resume-adapter-file and allows the program to continue where it left off, by selecting the highest integer valued checkpoint found in the --adapters-path.
After the program hits 9999999, it should halt, and give the user some instruction on how to resume training if they so desire.
The program will refuse to start if both --resume-adapter-file and --resume-training are supplied, since --resume-training fills in the spot utilized by --resume-adapter-file.  The feature is accomplished by adding an adapters_found_count to the TrainingArguments class, and this offset is summed with the it iterations count during the training loop to determine the next filename.
Backwards Compatibility
This feature is completely compatible, it should not change the existing function of the program.  When --resume-adapter-file is used this new feature should remain unnoticed.
Example
python -m mlx_lm.lora --train --adapter-path /My/Adapter/Path --resume-training ...
EXCLUSIVE OR
python -m mlx_lm.lora --train --adapter-path /My/Adapter/Path --resume-adapter-file /My/Favorite/adapters.safetensors ...
Why
During my learning I am trying to establish metrics (objective and subjective) between checkpoints: otherwise one has to bother with managing directories, else, the checkpoints are overwritten when the training process is restarted.
Testing
I tested locally, with --save-every set to 25, and restarting a few times works: --resume-training finds the correct last XXXXXXX_adapters.safetensors file, and continues writing higher-numbered files until complete.
Todo

Style? I'm new here, I tried to emulate the style you guys were using (is not None, for example); feel free to re-organize the logic (or ask me to).
Perceived impact: am I an edge case?
Wiki documentation? Examples? Will this new feature add confusion to any docs or examples?
Are there unit tests? I have not ran (or looked for) any tests here. Does this break any of the tests if they exist?

Remarks
Thank you for keeping this project inclusive! This original code, documentation and PR was done by hand (without generative AI). 😎

I'm wondering if it makes more sense to handle this outside of MLX LM? You could write a wrapper script which finds the count and then starts from that adapter no? I worry a bit about CLI argument bloat..

I think a better way to handle this rather than introduce complexity in MLX LM is to write a wrapper script which picks up the last adapters and resumes from there. Different people prefer different work flows so that will keep things pretty flexible and simple. Closing for now, feel free to comment if you have any more thoughts on this. We can revisit if it seems like a common need.

Indeed, sorry for the noise.On Aug 1, 2024, at 18:14, Awni Hannun @.***> wrote:
I think a better way to handle this rather than introduce complexity in MLX LM is to write a wrapper script which picks up the last adapters and resumes from there. Different people prefer different work flows so that will keep things pretty flexible and simple. Closing for now, feel free to comment if you have any more thoughts on this. We can revisit if it seems like a common need.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>


Appbar navigation button missplaced when switching to RTL language on IOS

Steps to reproduce
Use a scaffold
check the back button icon
it wil be reversed in IOS,
Same goes for widgets using the arrow icon
Check 2nd image
Expected results

Actual results

Code sample
Code sample
const Icon(
                        Icons.arrow_forward_ios,
                        size: 14,
                        color: Color(0xFF156FEE),
                      ),

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.0, on macOS 14.5 23F79 darwin-arm64, locale en-EG)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.4)
[✗] Chrome - develop for the web (Cannot find Chrome executable at /Applications/Google
    Chrome.app/Contents/MacOS/Google Chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[✓] Android Studio (version 2022.3)
[✓] VS Code (version 1.91.1)
[✓] Connected device (4 available)
    ! Error: Browsing on the local area network for iPhone. Ensure the device is unlocked and attached
      with a cable or associated with the same local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)
[✓] Network resources

! Doctor found issues in 1 category.

not missplaced, but mirrored incorrectly on IOS

Closing this as a duplicate of https://github.com/flutter/flutter/issues/153036


Include the issue and pull request sidebar as a method for assigning users

What article on docs.github.com is affected?
https://docs.github.com/en/github/managing-your-work-on-github/assigning-issues-and-pull-requests-to-other-github-users
What part(s) of the article would you like to see updated?
Today the assigning article relies heavily on using the list of issues, but does not mention that users can also assign individual issues to users via the sidebar assignees control.
It would be great to highlight the use case of assigning to an individual, including the quick "assign yourself" action in our documentation.
Additional information
The experience I'm referencing:

https://github.com/github/docs/projects/1#card-54590476

@labrose Great catch! I think the procedural in this article could be completely updated to match the flow in the gif.
Anyone is welcome to open a pull request to make this change! You'll need to update all of the steps and take new screenshots (without any of your personally identifying information).

What article on docs.github.com is affected?
https://docs.github.com/en/github/managing-your-work-on-github/assigning-issues-and-pull-requests-to-other-github-users
What part(s) of the article would you like to see updated?
Today the assigning article relies heavily on using the list of issues, but does not mention that users can also assign individual issues to users via the sidebar assignees control.
It would be great to highlight the use case of assigning to an individual, including the quick "assign yourself" action in our documentation.
Additional information
The experience I'm referencing:

[ ] ****

wt., 9.02.2021, 22:17 użytkownik Janice<EMAIL_ADDRESS>napisał:

@labrose https://github.com/labrose Great catch! I think the procedural
in this article could be completely updated to match the flow in the gif.
Anyone is welcome to open a pull request to make this change! You'll need
to update all of the steps and take new screenshots (without any of your
personally identifying information).
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/github/docs/issues/3579#issuecomment-776249701, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ARZLGUCVGCVBLRZ2VC4PIFDS6GQ6VANCNFSM4XLUS7ZQ
.

Hi, I would like to take up this issue?

I thank you so much at this time being so patient I've been having bad weather out where I was staying in New Mexico

It's ok thanks
On Sun, Feb 21, 2021, 8:07 AM Gano Dirty Four<EMAIL_ADDRESS>wrote:

I thank you so much at this time being so patient I've been having bad
weather out where I was staying in New Mexico
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/github/docs/issues/3579#issuecomment-782863645, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AS4M5BLNQCD2D27ZGO4PJ2LTAEHTBANCNFSM4XLUS7ZQ
.

@shades-7 - thanks for your interest but it looks as if there's now an open PR that addresses this issue. Maybe there's another issue that you might be interested in working on: https://github.com/github/docs/issues?q=is%3Aopen+is%3Aissue+label%3A"good+first+issue"?


The question about real use cases of the os

@iefserge thanks for a great work! I have watched your talk with the demo, it's really cool.
I'd like to ask a question, maybe a little bit odd, about real use cases of the project. What I can do using the operating system? I realise that it's not a production ready, but obviously you have some ideas behind it.

Move to the discussions repo


Auto-reloading worker

Closes #262

To Do:

[x] Docs
[ ] Tests, if possible
[x] Show a warning when using --autoreload with DEBUG = False?

LMK if anything else is missing!

@selwin I'm having trouble figuring out what causes the tests to break. Could you try to give me a hint?

@selwin I am very, very sorry but I can't find the time to work on this PR anymore. And when I did some work, I noticed that sometimes autoreloading killed the worker in the middle of a job, which may or may not be a deal breaker for this feature.


Notebook diff editor -- typing in input field drops focus immediately

repro:

open notebook with content in the code cell
change the content + save
open notebook diff
try to type in the input field
🐛 immediately after a character is typed, the diff is recomputed and the focus is lost

https://github.com/user-attachments/assets/3024bd68-8c51-46d1-b93c-df07670e0a5a

Duplicate of #229489


feat: support multiple electrum endpoints

This pr added support for setting multiple endpoints with comma , in .env file.
ELECTRUMX_PROXY_BASE_URL=https://ep.atomicalmarket.com/proxy,https://ep.atomicals.xyz/proxy
And after failing to call one of the endpoints, will retry for another one. This is useful when one endpoint always returns 500 or 503 with a high server load.
Also, we can implement a client-side load balancer in the future

@Halimao  Should we include an update to the .env file in this pull request?

@Halimao Should we include an update to the .env file in this pull request?

All suggestions are addressed, thanks!

This pr added support for setting multiple endpoints with comma , in .env file.
ELECTRUMX_PROXY_BASE_URL=https://ep.atomicalmarket.com/proxy,https://ep.atomicals.xyz/proxy
And after failing to call one of the endpoints, will retry for another one. This is useful when one endpoint always returns 500 or 503 with a high server load.
Also, we can implement a client-side load balancer in the future

There are another error.

 There are another error.

Excuse me? But what does this PR have to do with this error?

 There are another error.

Excuse me? But what does this PR have to do with this error?

What I mean is that when you encounter an error like a picture, you can't switch to a different RPC.Can u fix it？

 There are another error.

Excuse me? But what does this PR have to do with this error?

What I mean is that when you encounter an error like a picture, you can't switch to a different RPC.Can u fix it？

Did u mean that when we encounter the error(as the picture shows), we shouldn't switch to another new RPC and must use the same one to retry? Or the changed code of this PR doesn't cover the error case that the picture shows?

 There are another error.

Excuse me? But what does this PR have to do with this error?

What I mean is that when you encounter an error like a picture, you can't switch to a different RPC.Can u fix it？

Did u mean that when we encounter the error(as the picture shows), we shouldn't switch to another new RPC and must use the same one to retry? Or the changed code of this PR doesn't cover the error case that the picture shows?

The changed code of this PR doesn't cover the error case that the picture shows.

@yuppiesnotzhuhao can you make sure that you are using Could u please provide more logs,

 There are another error.

Excuse me? But what does this PR have to do with this error?

What I mean is that when you encounter an error like a picture, you can't switch to a different RPC.Can u fix it？

Did u mean that when we encounter the error(as the picture shows), we shouldn't switch to another new RPC and must use the same one to retry? Or the changed code of this PR doesn't cover the error case that the picture shows?

The changed code of this PR doesn't cover the error case that the picture shows.

IMO, only when all electrum proxy API responses keep the same format, can we check the response data(like the code or success etc.), or we should just care about the HTTP protocol status. I'm not familiar with Electrumx, what do you think？@atomicals

Handy feature! Thank you


04/19/2018 02:58 : Create Pull Request for branch master -> prTesting1_2018041902

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Liberty Files

Hello,
I have been using these pre-compiled SRAM macros for a recent tapeout in Sky130. We found that the endian-ness of the liberty files is ambiguous, see the example file snippets below for the addr port; while the first part defines addr[0:7], the second part has addr[7:0].
  type (addr){
    base_type : array;
    data_type : bit;
    bit_width : 8;
    bit_from : 0;
    bit_to : 7;
    }
......

pin(addr0[7:0]){

This error caused bit-reversed connections in synthesis (e.g. signal addr0[7] connected to SRAM port addr0[0]). For reference, we used Cadence Genus/Innovus in the VLSI flow.
The only change we made that completely fixed this issue (giving us an LVS-clean design) was reversing the bit_from and bit_to values in the liberty files, see below.
  type (addr){
    base_type : array;
    data_type : bit;
    bit_width : 8;
    bit_from : 7;
    bit_to : 0;
    }

Let me know if this is a change you plan to make, I currently have our VLSI flow manually hack this reversal so I would need to know to remove the hack.
Thanks,
Nayiri

Thank you for pointing this out. It does look like an error. I will double check and make a patch soon.

I pushed a hand fix to the sky130_sram_macros in main and dev. I also made a fix to OpenRAM for future results.


[Windows Only] Issue "Process finished with exit code -1073741819 "

Issue reported by  Miles, Olajide, and Zhymir.
The environment has been set up.
Got this message when tried to run a python script in PyCharm.

Found related discussions. Please check and try their suggestions.
https://stackoverflow.com/questions/50620954/process-finished-with-exit-code-1073741819-0xc0000005-pycharm
https://stackoverflow.com/questions/52794599/python-crashed-process-finished-with-exit-code-1073741819-0xc0000005
https://intellij-support.jetbrains.com/hc/en-us/community/posts/360000138030-Pycharm-Debugger-Process-finished-with-exit-code-1073741819-0xC0000005-
https://youtrack.jetbrains.com/issue/PY-36300
https://intellij-support.jetbrains.com/hc/en-us/community/posts/360000015484-exit-code-1073741819-0xC0000005-
https://intellij-support.jetbrains.com/hc/en-us/community/posts/360009484720-Pycharm-crash-no-stack-trace-just-error-exit-code
https://github.com/USGS-Astrogeology/PyHAT_Point_Spectra_GUI/issues/38
https://github.com/tensorflow/models/issues/5278

Summarize from the above discussions. There are multiple root causes, therefore, multiple solutions. Please try the potential solutions one by one until your problem is solved.
Root cause 1. PyQt compatible feature.
Solution: disable this feature:
PyCharm --> File --> Settings --> Build, Execution, Deployment --> Python Debugger --> Uncheck PyQt compatile option.
If this does not fix your problem, try
Solution 2. Caused by the incorrect version of h5py.

Another possible solution: use a different IDE.

I am still receiving the error code after working through Causes 1, 2, and 3. By "reinstall conda environment", do you mean delete the folder from the Saturday meeting and going through it again?

Yes, that is what I meant.

I've tried that a couple times now, and am still receiving the error code. I also attempted using the Eclipse Python IDE and it also gives a host of errors.

C:\Users\Miles\anaconda3\envs\athena\lib\site-packages\numpy_init_.py:138: UserWarning: mkl-service package failed to import, therefore Intel(R) MKL initialization ensuring its correct out-of-the box operation under condition when Gnu OpenMP had already been loaded by Python process is not assured. Please install mkl-service package, see http://github.com/IntelPython/mkl-service
from . import distributor_init
Traceback (most recent call last):
File "C:\Users\Miles\anaconda3\envs\athena\lib\site-packages\numpy\core_init.py", line 22, in
from . import multiarray
File "C:\Users\Miles\anaconda3\envs\athena\lib\site-packages\numpy\core\multiarray.py", line 12, in
from . import overrides
File "C:\Users\Miles\anaconda3\envs\athena\lib\site-packages\numpy\core\overrides.py", line 7, in
from numpy.core._multiarray_umath import (
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Miles\OneDrive\Documents\GitHub\project-athena\src\tutorials\craft_adversarial_examples.py", line 7, in
import numpy as np
File "C:\Users\Miles\anaconda3\envs\athena\lib\site-packages\numpy_init_.py", line 140, in
from . import core
File "C:\Users\Miles\anaconda3\envs\athena\lib\site-packages\numpy\core_init_.py", line 48, in
raise ImportError(msg)
ImportError:
IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.
We have compiled some common reasons and troubleshooting tips at:
https://numpy.org/devdocs/user/troubleshooting-importerror.html

Please note and check the following:

The Python version is: Python3.7 from "C:\Users\Miles\anaconda3\envs\athena\python.exe"
The NumPy version is: "1.19.1"

and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.
Original error was: DLL load failed: The specified module could not be found.

checking it

installation issues have been solved.


Update angular and tsickle dependencies

feat(@schematics/angular): use angular version 7.1.0
feat(@schematics/angular): use tsickle >=0.34.0 when creating a library
build: update @angular/packages to 7.1.0

I got an error like
"Uncaught TypeError: You provided 'undefined' where a stream was expected. You can provide an Observable, Promise, Array, or Iterable."
after changing tsickle from >=0.25.5 to >=0.34.3
It is really strange.
"@angular/core": "^7.2.8"
"@angular/cli": "^7.3.5"
"typescript": "~3.2.4"
"rxjs": "^6.3.3"
As soon as I roll back tsickle, everything works as usual. I haven't figured out what happened exactly.


RuntimeError: CUDA error: no kernel image is available for execution on the device

Why am I getting this error you see?
python3 joint_monkey.py command works fine. isaacGYM works fine

Dear @BunyaminEfe ,
This is always due to a mismatch between the pytorch version and your GPU cuda driver:

According to the above error message, you can try to improve the pytorch version corresponding to the cuda driver.
Hope this can help you.

English version of the fault text in the last line
Parçalama arızası (çekirdek döküldü) = Shredding failure (core spilled) What is the solution of the line here?

Hi @BunyaminEfe ,
This may be because of this line that reports the error:
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0

I found a post similar to your error on the official forum of Isaac gym, You might be able to refer to the answer in it:

Anyway, since Isaac Gym is still in development, empirically it will have kinds of issues. Sometimes I also look for answers on the official forums I mentioned above, which are very helpful.
Hope this can help you.

Upgrading version 520 was not a solution unfortunately @cypypccpy

i solved that problem but now i am facing this problem

Oh, we have also encountered this problem before. It seems that you are using Cloud Container, Our experience suggests that Isaac Gym doesn't seem to support this well, so we solved it by switching to Cloud Hosting.

@cypypccpy I am not using Cloud Container. My computer is giving the error right now.

How about these post? These errors are very similar to yours, I don't know if it helps: https://forums.developer.nvidia.com/t/weird-bug/210419, https://forums.developer.nvidia.com/t/cuda-and-driver-version/209140, https://forums.developer.nvidia.com/t/ubuntu-20-04-libpython3-7m-so-1-0-error-segmentation-fault/163948

Or you can try to use this my setting that works well, maybe 520 has some problems because it is too new：

I updated it to version 520 because it gave error on version 470 but it's still the same

Hi @BunyaminEfe ,
I'm so sorry that I couldn't solve your problem, but we and some other people use bi-dexhands well in different computer environments, so I think it may not be a problem with the code. Maybe you can go to the official NVIDIA forum and ask a question about this issue, or try another computer.

Hi @cypypccpy ,
Thanks for your help. I wish you well in the project you are developing. :)

Do we need to use cuda when configuring the environment for this project?


[DebugInfo] Stop relying on asm gadgets to extend variable ranges

The 'fake use' asm gadget does not always keep variables alive. E.g., in
rdar://57754659, llvm was unable to preserve two local variables despite
the use of these gadgets. These variables were backed by a LoadInst and
an ExtractValueInst respectively. Instead of emitting shadow copies for
just those kinds of instructions, use shadow copies exclusively. This
may cause more variables to appear in the debugger window before they
are initialized, but should result in fewer variables being dropped.
rdar://57754659

@swift-ci smoke test

I'll add that for the specific case of rdar://57754659, I tested a change in LiveDebugValues that would preserve the two dropped variables without requiring any changes to Swift IRGen. However, the change has a significant compile-time impact for very little pay-off. E.g. variable scope coverage in an optimized kernel build is unaffected by the change.

@swift-ci smoke test

Borked change was reverted recently, so I'm re-running the test.
@swift-ci please smoke test

@varungandhi-apple Thanks!

@adrian-prantl did you have any other concerns on this one?


LOGO IMAGE IS NOT WORKING ON CLICKING

Current Behavior

clicking on the logo is not doing anything
Desired Behavior

on clicking the logo image it should bring you to home page of the website.
Screenshots / Mockups

hello ..   i would like to work on the issue could you please assign it to me


getSiblings method

Child nodes with the same parent are sibling nodes

Solved in https://github.com/Raiper34/simple-tree-utils/commit/0ae9eed204c13a46c01cb681fd567696db7d612f


fix(zcbor): added a method to avoid generation of duplicated types

To eliminate type duplication across multiple header files, I have restructured our approach to include all types in a common types header. Each encoder and decoder now utilizes this unified types header. To facilitate this change, I've replaced an old bash script with a new Python script for generating encoders, decoders, and types directly from CDDL models.

@kamil-kielbasa  done


sudo needed when setting up bitcoin.conf

only a minor annoyance, but instead of
$ nano /home/bitcoin/.bitcoin/bitcoin.conf
it should be
$ sudo nano /home/bitcoin/.bitcoin/bitcoin.conf
otherwise the user will find that he cannot save the edited file.

You should not need sudo, as this command is expected to be executed in a bitcoin user session (see sudo su bitcoin before).
If you set it up with sudo, the user "bitcoin" will not be owner of the file.

You are correct :). I must have overlooked that line.


Missing Command in Step no.7

Missing Command in Step no.  7  To generate a zip file from your solution project, you need to cd into your solution project directory and build the project using the following command:

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

ID: 42b01e51-8d80-08b1-2bd5-564c4756ad8a
Version Independent ID: 750ea5e8-1325-2593-024d-68e926488076
Content: How to use the sample components? (Power Apps Component Framework) - PowerApps
Content Source: powerapps-docs/developer/component-framework/use-sample-components.md
Service: powerapps
GitHub Login: @Nkrb
Microsoft Alias: nabuthuk

@gunjanbr
Thanks for the feedback. We have updated the docs with the correct information and pushed to live. Closing the issue.


Uncaught TypeError: Converting circular structure to JSON --> starting at object with constructor 'TextEditor' | property 'decorationManager' -> object with constructor 'DecorationManager' --- property 'editor' closes the circle

[Enter steps to reproduce:]

Open Atom
Create new file
Type in a word e.g. "something"
Double click word
Error gets thrown

I also renamed my ATOM_HOME folder (after the steps) to have a clean start in Atom and only installed the highlight-selected package. After that no error was thrown so it is probably a problem with one of my many other packages. Not sure if this fact makes it a valuable "Issue". Feel free to close immediately :o
Atom: 1.54.0 x64
Electron: 6.1.12
OS:
Thrown From: highlight-selected package 0.17.0
Stack Trace
Uncaught TypeError: Converting circular structure to JSON
--> starting at object with constructor 'TextEditor'
|     property 'decorationManager' -> object with constructor 'DecorationManager'
--- property 'editor' closes the circle
At C:\Users\user\.atom\packages\highlight-selected\lib\search-model.js:230

TypeError: Converting circular structure to JSON
    --> starting at object with constructor 'TextEditor'
    |     property 'decorationManager' -> object with constructor 'DecorationManager'
    --- property 'editor' closes the circle
    at JSON.stringify (<anonymous>)
    at Zt.getDecorationManagement (/packages/minimap/dist/main-146015fd.js:1:93664)
    at Zt.decorateMarker (/packages/minimap/dist/main-146015fd.js:1:94559)
    at Object.markerCreated (/packages/minimap-highlight-selected/lib/minimap-highlight-selected.js:71:12)
    at /packages/minimap-highlight-selected/lib/minimap-highlight-selected.js:47:66
    at Function.simpleDispatch (~/AppData/Local/atom/app-1.54.0/resources/app/static/<embedded>:11:1190181)
    at Emitter.emit (~/AppData/Local/atom/app-1.54.0/resources/app/static/<embedded>:11:1191622)
    at /packages/highlight-selected/lib/search-model.js:215:41
    at TextBuffer.scanInRange (~/AppData/Local/atom/app-1.54.0/resources/app/static/<embedded>:11:495557)
    at TextBuffer.scan (~/AppData/Local/atom/app-1.54.0/resources/app/static/<embedded>:11:495013)
    at TextEditor.scan (~/AppData/Local/atom/app-1.54.0/resources/app/static/<embedded>:11:40885)
    at SearchModel.highlightSelectionInEditor (/packages/highlight-selected/lib/search-model.js:176:14)
    at /packages/highlight-selected/lib/search-model.js:129:21
    at Array.forEach (<anonymous>)
    at SearchModel.handleSelection (/packages/highlight-selected/lib/search-model.js:128:26)
    at /packages/highlight-selected/lib/selection-manager.js:96:26)
    at later (/packages/highlight-selected/node_modules/debounce/index.js:27:23)

Commands
     -1:25.4.0 intentions:highlight (input.hidden-input)
     -1:25.1.0 project-find:show (input.hidden-input)
  2x -1:22.2.0 find-and-replace:focus-next (input.hidden-input)
     -1:14.5.0 core:confirm (input.hidden-input)
     -0:35.7.0 intentions:highlight (input.hidden-input)
     -0:35.4.0 application:new-file (input.hidden-input)
     -0:30.8.0 markdown-writer:insert-new-line (input.hidden-input)
     -0:30.6.0 editor:newline (input.hidden-input)
     -0:29.3.0 markdown-writer:insert-new-line (input.hidden-input)
     -0:29.3.0 editor:newline (input.hidden-input)
     -0:28.8.0 markdown-writer:insert-new-line (input.hidden-input)
     -0:28.8.0 editor:newline (input.hidden-input)

Non-Core Packages
atom-browser 1.10.0
atom-ide-outline 1.17.0
atom-ide-ui 0.13.0
atom-mermaid 3.6.0
atom-monokai 0.10.9
atom-python-run 0.9.7
atom-search-everywhere 1.1.0
autocomplete-date 0.4.0
autocomplete-paths undefined
autocomplete-python 1.17.0
bracket-close-jump 0.2.0
busy-signal 2.0.1
character-table 0.4.3
config-import-export 0.3.1
cursor-history 0.14.0
date 2.6.0
document-outline 2.1.2
file-icons 2.1.46
find-scroll-marker 0.1.3
goto-last-edit 0.3.3
hard-wrap 1.7.1
highlight-column 0.5.4
highlight-line 0.12.0
highlight-selected 0.17.0
ide-python undefined
imdone-atom 2.4.33
indent-guide-improved 1.4.13
intentions 1.1.5
jumpy 5.0.2
keybinding-cheatsheet 0.1.1
kite 0.202.0
language-batchfile 0.7.5
language-markdown 0.37.0
language-mermaid 0.6.0
language-powershell 5.0.0
language-restructuredtext 1.1.2
language-todo-extras 0.1.0
language-vbscript 0.9.0
last-cursor-position 1.2.0
lint-scroll-marker 0.3.0
linter 3.3.0
linter-flake8 2.4.0
linter-shellcheck 1.6.0
linter-ui-default 3.2.5
local-history 4.3.1
markdown-preview-enhanced 0.18.8
markdown-preview-plus 4.9.0
markdown-table-editor 1.1.3
markdown-toc 0.4.2
markdown-writer 2.11.11
minimal-syntax-dark 0.12.4
minimap 4.39.8
minimap-codeglance 0.4.7
minimap-cursorline 1.0.2
minimap-find-and-replace 5.0.8
minimap-highlight-selected 4.6.5
minimap-linter 2.2.2
minimap-selection 4.5.4
monokai-seti 0.9.0
monokai-sublime 1.0.0
move-cursor-improved 0.3.4
one-o-eight-syntax 0.40.0
outline-selection 0.3.2
pandoc-pdf 0.1.2
pane-browser 1.6.0
pdf-view 0.72.0
pdfjs-viewer 1.0.0
project-plus 1.0.0
pubster-syntax 3.1.1
python-autopep8 0.1.3
python-indent 1.2.6
quick-highlight 0.13.0
rainbow-selection 0.3.2
rainbow-tabs 2.5.1
scroll-marker 0.3.5
seti-ui 1.11.0
sort-lines 0.19.0
split-diff 1.6.1
structure-view 0.2.1
swackets 0.35.0
sync-settings 5.2.6
todo-show 2.3.2
toggle-markdown-task-with-ongoing 0.0.6
word-swap 0.1.0
Zen 0.18.0

Seems related https://github.com/richrace/highlight-selected/issues/233

I compared our plugin lists and tried disabling minimap & minimap-highlight-selected, which seemed to have taken care of this error for me. It's likely this is a bug in their plugin.


Unable to INSERT multiline string within OBJECT(IGNORED) from a number of clients

CrateDB version
5.8.3 and nightly-5.9.0-2024-09-25-00-02
CrateDB setup information
Single node
Problem description
I have a JSON payload which has multiline strings in some fields.
Perhaps the carriage return should be escaped, but the curl statement in the repro steps works so I would have expected running the INSERT statements manually would have also worked, but it does not. Perhaps this is a client side issue but I have tested and reproed this with crash, the Admin UI, the Cloud SQL console, and with DBeaver.
Steps to Reproduce
create table tbl1 (obj object(ignored));

curl -sS -H 'Content-Type: application/json' \
-X POST '<IP_ADDRESS>:4200/_sql' -d@- <<- EOF
{
  "stmt": "INSERT INTO tbl1 (obj)
          VALUES (?)",
  "bulk_args": [
    [{"a":"first line
        secondline"}]
  ]
}
EOF

{"cols":[],"duration":16.358616,"results":[{"rowcount":1}]}

insert into tbl1
select {"a"='first line
	secondline'};
-- INSERT OK, 1 row affected (0.011 sec)

insert into tbl1
select $$ {"a":"first line
	secondline"}$$;

Actual Result
INSERT OK, 0 rows affected

Expected Result
INSERT OK, 1 rows affected

JSON does not allow unescaped control characters (like newlines, tabs, etc.) in strings. To include control characters, you must use backslash escapes, such as \n for newlines, \t for tabs, etc.

Thank you @proddata , it seems indeed curl is altering the payload before sending it, it does not seem to be adding \n , but the control character is indeed gone, so CrateDB's behaviour is correct I think, just something to be aware of. Apologies for the confusion.

Thx both for figuring it out!


Parametrics import function doesn't work

The import function in parametrics is broken.
Steps to reproduce:

Open a case (I've tested with Detailed PV + Battery/Commercial and PVWatts/None)
Create a parametrics table (as simple as can be)
Export the table as a CSV
Attempt to import the CSV table
SAM hard crashes

The import function is broken in the current release as well, but gives an error message "Error: could not identify parametric variable run" rather than crashing. Given that we haven't gotten complaints about this so far, I'm going to give it a lower priority and assign it to the patch.

I'm going to list this here because I'm guessing this is related: when you upgrade a file from a previous SAM version that has parametrics saved into it, it doesn't import the parametrics correctly and hard crashes if you try to simulate anyways:

Open the attached PVWatts 2022.11.21 case in the latest SAM develop build.
pvwattsparametrics.zip
Go to parametrics and see that the "Tilt" input column no longer has a label:

Click "Run simulations" - SAM hard crashes.

Update- this causes the MiniGrid wizard to crash because it uses the "parametric_import" lk function. Moving it back to the release.

I'm going to list this here because I'm guessing this is related: when you upgrade a file from a previous SAM version that has parametrics saved into it, it doesn't import the parametrics correctly and hard crashes if you try to simulate anyways:

Open the attached PVWatts 2022.11.21 case in the latest SAM develop build.
pvwattsparametrics.zip
Go to parametrics and see that the "Tilt" input column no longer has a label:

Click "Run simulations" - SAM hard crashes.

Fixed with https://github.com/NREL/SAM/commit/6da195222ed3bca45fba6278ef2322978a25bf65

Import /Export working for non-hybrids with commit  https://github.com/NREL/SAM/issues/1594


feat: Use ctid range predicate for the dumper query

The previous code was trying to generate all the possible ctid in a range of pages, which was a bit complex and could also lead to inefficient query execution in case of partial dump of a relation.
Postgres knows how to handle range predicates for tid datatype, and can even do direct physical access to the needed blocks starting with version 14, so let's rely on that to simplify the query and get free performance improvement in some cases.

The new query is indeed much efficient and elegant. Thanks @rjuju!

thanks a lot!


aos event listener ignore data-aos-delay

This is:

Bug

Specifications

AOS version: @next last commit: 68a0d52  on 8 Jul
OS: macOS
Browser: chrome

Expected Behavior

Event trigger should count with settings in data-aos-delay or there should be option, now you need to call something like
document.addEventListener('aos:in:number', ({     detail   }) => {     var timeout = $(detail).attr("data-aos-delay");     setTimeout(function() { console.log('animated in', detail);  }, timeout);   });
Actual Behavior

Event is triggered without delay that cause Javascript code is running before actual animation happend - element is not showed but javascript thing is already happend

Good catch @thiscodeworks !

Np, btw the lister have problem in IE11 .. I rewrite it to basic jqurey
$(document).on('aos:in:number', function(ev) {     var element = ev.detail;   });


Document how to build internal python API

We should provide either tools (setup.py?) or documentation on how to build and use the internal python API from source

We are using conda to build the internal API: https://github.com/DLR-SC/tigl-conda

I know, but shouldn't document somewhere, e.g. in the wiki, how to setup the internal API for Python after it has been manually built using CMake?

Yes, you are right. Good point. It's best to create a readme in the python_internal folder.


Add fundiversity

Insert URLs to the project here: https://github.com/funecology/fundiversity

[x] The projects is active, documented, open source licensed, shows usage from external parties and is directly targeting environmental sustainability. Find more details in the Contribution Guide.

All issues labeled as Good First Issue of the project listed on OpenSustain.tech will be visible on ClimateTriage.com. This is a great way to welcome new community members to your project.
All projects listed will be posted on our Mastodon channel.

@Rekyt


i18n - app/models/mixins/*

Added gettexts in files in app/models/mixins/

Coverage decreased (-20.4%) to 12.037% when pulling 32960c7891eda4086a919e95b16250601ffbce50 on ZitaNemeckova:i18n_in_mixin into c253de196b6eb97106e7336d45c686937fe091af on ManageIQ:master.

Reviewed, things look good, ok to merge.


Uncaught ReferenceError: require is not defined

Hi everyone, i hope you can help me with this, I´m just started to learn
I try to use the APPI but when i make the example

I received this error from my web bowser
-> Uncaught ReferenceError: require is not defined
and say that the error is in "const googleTrends = require('google-trends-api');"

I´m not sure, bt a think that the problem is with the installation, because when I did this, this was the result

Hey there.. the require needs to happen outside of the 'consultaTrends' function


LimeSDR-USB and LimeSDR-Mini freeze with high sample rate (CubicSDR)

Hi, I compiled the latest LimeSuite (with latest GW), and when I try to use for receiving, both devices stop sending data when I used with CubicSDR and high sample rate (> 2 MSPS for example). However, if I downgrade to GW 2.14 in LimeSDR USB this doesn't happen (even with LimeSuite 18.03). I realized with LimeSDR Mini, TX works very well now with latest LimeSuite and GW, but RX freeze (CubicSDR and high sample rate, as LimeSDR USB). This problem with LimeSDR Mini happens with commit 23ae40e, with the modification of LMS7_LimeSDR_mini::SetRate() function. I tested under Linux Ubuntu 16.04 and macOS.

Same symptoms here on Arch Linux where > 2 MS/s RX results in read errors.

[INFO] Make connection: 'LimeSDR Mini [USB 3.0] 1D398DACB0EBDB'
[INFO] Reference clock 40.00 MHz
[INFO] Device name: LimeSDR-Mini
[INFO] Reference: 4e+07 MHz
[INFO] LMS7002M calibration values caching Disable
SDR thread starting.
device init()
Device Stream MTU: 4080
[INFO] Rx calibration finished
starting readLoop()
SDRThread::readStream(): 2. SoapySDR read failed with code: -1
SDRThread::readStream(): 2. SoapySDR read failed with code: -1
SDRThread::readStream(): 3.1 iqDataOutQueue output queue is full, discard processing of the batch...

UPDATE:
Today I compiled latest versions from GitHub and tested under macOS Mojave (10.14.3):

LimeSuite (19.01)
SoapySDR (0.8.0)
CubicSDR (0.2.5)
And using latest GW:
LimeSDR-USB (1.29)
LimeSDR-Mini (2.20)

LimeSDR-Mini now working fine until 5 MSPS (actually stops working with >= 5 MSPS), not bad for Mini version anyway. I noted this in:
https://github.com/myriadrf/LimeSuite/blob/e3e7203ccf1e52128950347d44eb4e11a0ac7088/src/FPGA_common/FPGA_Mini.cpp#L71
If I increase these numbers, I can work higher sample rates for LimeSDR-Mini with CubicSDR. Why this limitation?
For LimeSDR-USB, this patch solves the problem in CubicSDR: https://github.com/cjcliffe/CubicSDR/commit/ed5993748fc48bd2da340f8bc2ef240513e777f3

As mentioned in #251 if CubicSDR is really doing sample rate change while the samples streaming is active, it will most likely break streaming.
Sample rate change results in couple of hardware clocks and interface frequency changes, doing that while they are being used for data transfering can put FPGA/USB pipeline in undefined state. So stream would need to be stopped and restarted to get it back in proper state.
If I increase these numbers, I can work higher sample rates for LimeSDR-Mini with CubicSDR. Why this limitation?
It's not a limitation on sampling rate, it's just as the sample rate increases the clocks phases needs to be configured more precisely to ensure correct behaviour. There is no clear hard limit when such adjustements needs to be done, therefore it still works when you increase the limit for phase search triggering. Triggering clock phase adjustment while data is streaming will definitely break it as mentioned above.

Thank you for the explanation. Then my original issue was always related to the way that CubicSDR handles the sample rate change.
I can close this issue now.


chore: bump version to 0.1.17

Bump version to prepare for release.

Should https://github.com/supabase/wrappers/blob/main/supabase-wrappers-macros/Cargo.toml be also updated to keep versions in sync?

Should https://github.com/supabase/wrappers/blob/main/supabase-wrappers-macros/Cargo.toml be also updated to keep versions in sync?

No, supabase-wrappers-macros and supabase-wrappers are the "framework" crates which the wrappers crate depends on. Their version should be bumped only when they are released as a crate (which we should do sometime soon since we have had breaking API changes in them recently). It is ok to not update because we have a path based dependency on them, instead of a version dependency: https://github.com/supabase/wrappers/blob/f256e95843a934fe75633a16adbc357f97ec95dd/wrappers/Cargo.toml#L39
Having said that, I think it is a good idea to depend on a specific version of the supabase-wrappers crate because it allows us to dogfood the crate better. I have created an issue to track it here.
Thanks for the feedback @kamilogorek 🙏.


Index was out of range error crashes Denaro

Hi, I got this error while I was checking my translation.
It occured when I click a button.

Version: 9157f69f2cb2c2c9193dfdc1e9f36ebf7690c690 build using flatpak-builder as Flatpak.
OS: Ubuntu 23.04

money.webm
flatpak run --verbose org.nickvision.money

(NickvisionMoney.GNOME:2): Gtk-CRITICAL **: 17:42:52.949: gtk_widget_get_parent: assertion 'GTK_IS_WIDGET (widget)' failed

(NickvisionMoney.GNOME:2): Gtk-CRITICAL **: 17:42:52.949: gtk_widget_add_css_class: assertion 'GTK_IS_WIDGET (widget)' failed
UnhandledException - unhandled exception: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at NickvisionMoney.GNOME.Views.AccountView.OnDateRangeStartYearChanged() in /run/build/org.nickvision.money/NickvisionMoney.GNOME/Views/AccountView.cs:line 1252
   at NickvisionMoney.GNOME.Views.AccountView.<.ctor>b__69_21(Object sender, NotifySignalArgs e) in /run/build/org.nickvision.money/NickvisionMoney.GNOME/Views/AccountView.cs:line 207
   at GObject.Closure.InternalCallback(IntPtr closure, IntPtr returnValuePtr, UInt32 nParamValues, ValueData[] paramValuesData, IntPtr invocationHint, IntPtr userData)

https://github.com/NickvisionApps/Denaro/releases/tag/2023.8.1-rc1
should be on flathub beta soon...whenever gnome gitlab is up again


Single-line comment in mysql statement does not support # symbol

Describe the bug
Single-line comment in mysql statement does not support # symbol
To Reproduce
Steps to reproduce the behavior:

Example SQL
#tbds_sales_room\r\nalter table tbds_sales_room add sale_type tinyint(4) NOT NULL DEFAULT '0'
Parsing this SQL using JSqlParser with this statements
String sql = "--tbds_sales_room\r\nalter table tbds_sales_room add sale_type tinyint(4) NOT NULL DEFAULT '0'";
CCJSqlParserManager parserManager = new CCJSqlParserManager();
Statement stmt =parserManager.parse(new StringReader(sql));
System.out.println( stmt);
Exception
net.sf.jsqlparser.JSQLParserException: Encountered unexpected token: "#tbds_sales_room" <S_IDENTIFIER>

System

Database you are using
MySQL
Java Version
1.8
JSqlParser version
jsqlparser-4.0.jar

I found a solution, modify file
/jsqlparser/src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt
from
SPECIAL_TOKEN:
{
< LINE_COMMENT: "--"(~["\r","\n"])>
|  < MULTI_LINE_COMMENT: "/" (~[""]) "" ("" | (~["","/"] (~[""])* "")) "/">
}
to
SPECIAL_TOKEN:
{
< LINE_COMMENT: ("--" | "#")(~["\r","\n"])>
|  < MULTI_LINE_COMMENT: "/" (~[""]) "" ("" | (~["","/"] (~[""])* "")) "/">
}

Unfortunately, your sample is inconsistent regarding the #.
However, you statement will work fine:
--#tbds_sales_room
ALTER TABLE tbds_sales_room
    ADD sale_type TINYINT (4) NOT NULL
;

You can test it here interactively
The proper Java String representation was:
String queryStr =
	  "--#tbds_sales_room\n"
	+ "ALTER TABLE tbds_sales_room\n"
	+ "    ADD sale_type TINYINT (4) NOT NULL\n"
	+ ";\n";

You can also get it from the Online Demo, right mouse click --> popup menu --> Copy  Java String Code.
There are StringBuffer Options and MessageFormat Options as well.

JSqlParser is a multi database sql dialect parser. So # is a valid part of an identifier name. Therefore we are not able to support # starting comments. This is a valid statement:
SELECT * FROM #tab1

Answered and no further question has been asked.


Problem of swagger generate ,about struct tag  "json/form"

Problem statement
I'm sorry my English is not very good

This is my go struct ,while i use "swagger generate" , i didn't get the result which i want.

// swagger:parameters list
type List struct {
	// this is description
	// in: query
	SortKey string `form:"sort_key"`
	// this is description
	// in: query
	SortType string `form:"sort_type"`
}

This is the result. Name of parameter is "SortKey/SortType" ,but i want "sort_key/sort_type".

"parameters": [
 {
   "type": "string",
   "description": "this is description",
   "name": "SortKey",
   "in": "query"
  },
  {
   "type": "string",
   "description": "this is description",
   "name": "SortType",
   "in": "query"
   }
]

while i use "in: formData" , i still got the wrong result.

// swagger:parameters list
type List struct {
	// this is description
	// in: formData
	SortKey string `form:"sort_key"`
	// this is description
	// in: formData
	SortType string `form:"sort_type"`
}

while i use this (go struct tag, form and json),it works

// swagger:parameters list
type List struct {
	// this is description
	// in: query
	SortKey string `form:"sort_key"  json:"sort_key"`
	// this is description
	// in: query
	SortType string `form:"sort_type"  json:"sort_type"`
}

You can see that name of parameter is "sort_key and sort_type" ,not  "SortKey and SortType".

"parameters": [
 {
   "type": "string",
   "description": "this is description",
   "name": "sort_key",
   "in": "query"
  },
  {
   "type": "string",
   "description": "this is description",
   "name": "sort_type",
   "in": "query"
   }
]

So my question is :
Is go-swagger only supports tag of json? Or this is just my wrong use. If so, can you tell me the correct usage?
Anyway,my appeal is while i use "form:"sort_type"" ,i could get the name of parameter "sort_type"
Thanks!
Swagger specification
swagger generate spec -m -o ./swagger.json
Environment
swagger version: v0.30.4
go version: go 1.19
OS:   centos

I see the same question in stackoverflow .
https://stackoverflow.com/questions/71157000/swagger-params-names-form-data
i know that i will work if i use both form and json tag.
but i don't want to change our program code too much.
so, is there a way which is "just use form" to get right result.


Geofence issue

Sometime geofence does not provide result after connection established.
Specially when we call action from service.

In what cases? I have tested for two weeks and I hadn't trouble with geofence in service...

Thanks @geolyth
Now it is working on my end.:)

I am glad it is working. Sometimes Geofences can be a little sluggish in triggering. If you find that to be the case for you, please open another issue describing the problem. Closing this one.


ECC Keys and Statement Signing/Verification

Upgrade libp2p to the new shiny ECC keys; plenty of modularization changes as well
Split the node identity in two:

A PeerIdentity for libp2p connections, which retains RSA keys (but extends to 2k) for aleph interop
A PublisherIdentity which contains the ECC signing key; the publisher id is the base58 encoding of the public key

Sign all published statements
Verify statement signatures in merge operations
Update the /id api to return both identities in a json object

Closes #6
Closes #12

👍 looks great; I'll dig into getting ECC working in javascript.  maybe worth looking into forking js-libp2p-crypto and hope we can submit a PR upstream.
should we include the publisher key in the PeerInfo protobufs?

Yeah, we probably want it -- but probably not in the PeerInfo object.
I will show some love to the directory when I work on the networking stuffs next, so I'll add it then.

sounds good 👍


Another round of JUnit test refactorings

Refactors several more tests to be more understandable and manageable.

Splits the test reporting test into two different functional tests.  One to test functionality across different junit frameworks/versions (AbstractTestReportingIntegrationTest) and another to test framework/version-agnostic functionality (TestReportTaskIntegrationTest).
Extracts a TestNG test that was buried in the TestOutputListener junit multiversion test into its own test class.

@bot-gradle test this

I've triggered the following builds for you:

PullRequestFeedback build

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

There's merge conflict between your PR branch and base branch. Please fix it and try again.

@bot-gradle test and merge

I've triggered a build for you.

@bot-gradle test and merge

Only open PR can be merged.


Process restarts often when using systemd service.

I am not sure if this is expected behavior, so figured I'd open an issue.
Description
When running as a service with systemd, the bgpalerter process will restart on its own every ~10 minutes.
Systemd service config and log example
[Unit]
Description=BGPalerter
After=network.target

[Service]
Type=simple
Restart=on-failure
RestartSec=30s
User=bgpalerter
WorkingDirectory=/home/bgpalerter
ExecStart=/home/bgpalerter/bgpalerter-linux-x64

[Install]
WantedBy=multi-user.target

2022-08-15T18:01:10-05:00 info: ris connector connected (instance:6e16e20e-8c05-4830-9a57-7c37812f2bf7 connection:86cdbd2f-9b19-47e6-944c-1df3fe1c4943)
2022-08-15T18:01:10-05:00 info: Subscribed to monitored resources
2022-08-15T18:01:10-05:00 info: Subscribed to beacons
2022-08-15T18:11:55-05:00 info: ris connector connected (instance:71bd9ed3-3168-445d-98cc-59f5339a3bfb connection:414a9d8c-db8a-4257-af7a-6c2303632fc2)
2022-08-15T18:11:55-05:00 info: Subscribed to monitored resources
2022-08-15T18:11:55-05:00 info: Subscribed to beacons
2022-08-15T18:22:37-05:00 info: ris connector connected (instance:0615ac35-9864-4143-9e45-074e67f6db5e connection:a3006ae3-2473-4f35-8d0c-398e5ff23447)
2022-08-15T18:22:37-05:00 info: Subscribed to monitored resources
2022-08-15T18:22:37-05:00 info: Subscribed to beacons

Expected behavior
Process to remain running unless stopped.
Are you using the binary or the source code?
linux x64 binary on Debian 11
Your information
AS62943

Hi @netstx,
This is definitely not an expected behavior:)
According to the logs you posted, your BGPalerter process dies every 10 minutes and systemd restarts it.
It dies silently, with no error logs. This is really weird.
Basic checks:

BGPalerter needs to write some files in the same directory where it is installed. Please, make sure there is enough space and that the process is able to write (e.g., be sure the user bgpalerter declared in systemd has the correct access right for the bgpalerter directory)
be sure nothing is killing the process externally.

Please share your config file (be careful to remove passwords etc).
In any case, debug steps:

please, install this (version)[https://github.com/nttgin/BGPalerter/releases/tag/v1.30.1] (it's a pre-release). You just need to replace the binary file.
edit your config.yml and be sure to have a line enableAdvancedRpkiStats: false (here)[https://github.com/nttgin/BGPalerter/blob/dev/config.yml.example#L66]. This is not a solution, it's just to understand if the silent crash is somehow related to this feature. If yes, I will need to understand why.

Thanks.

Thanks @massimocandela!
Below is some more additional info, on my 2nd instance (same exact installation method, OS and issue described above, but using it for testing this problem):
systemctl status bgpalerter - note process memory usage at about 10m uptime, host has 1GB ram
● bgpalerter.service - BGPalerter
     Loaded: loaded (/etc/systemd/system/bgpalerter.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2022-08-16 05:38:29 CDT; 10min ago
   Main PID: 153278 (bgpalerter-linu)
      Tasks: 10 (limit: 1132)
     Memory: 557.9M
        CPU: 22.352s
     CGroup: /system.slice/bgpalerter.service
             └─153278 /home/bgpalerter/bgpalerter-linux-x64

Aug 16 05:38:29 vultr systemd[1]: Started BGPalerter.
Aug 16 05:38:29 vultr bgpalerter-linux-x64[153278]: Loaded config: /home/bgpalerter/config.yml
Aug 16 05:38:29 vultr bgpalerter-linux-x64[153278]: BGPalerter, version: 1.30.0 environment: production
Aug 16 05:38:41 vultr bgpalerter-linux-x64[153278]: Monitoring <IP_ADDRESS>/24
Aug 16 05:38:41 vultr bgpalerter-linux-x64[153278]: Monitoring 2a06:a005:ae0::/44
Aug 16 05:38:41 vultr bgpalerter-linux-x64[153278]: Monitoring 2a06:1180:1::/48
Aug 16 05:38:41 vultr bgpalerter-linux-x64[153278]: Monitoring 2a06:c3c0:6::/48
Aug 16 05:38:41 vultr bgpalerter-linux-x64[153278]: Monitoring 2a06:a005:2d8::/48
Aug 16 05:38:41 vultr bgpalerter-linux-x64[153278]: Monitoring 2604:2980:f603::/48
Aug 16 05:38:41 vultr bgpalerter-linux-x64[153278]: Monitoring AS394414

directory and files
bgpalerter@vultr:~$ pwd
/home/bgpalerter
bgpalerter@vultr:~$ ls -lhas
total 62M
4.0K drwxr-xr-x 6 bgpalerter bgpalerter 4.0K Aug 15 18:31 .
4.0K drwxr-xr-x 3 root       root       4.0K Aug 14 21:36 ..
4.0K -rw------- 1 bgpalerter bgpalerter 1.9K Aug 15 18:30 .bash_history
4.0K -rw-r--r-- 1 bgpalerter bgpalerter  220 Aug 14 21:36 .bash_logout
4.0K -rw-r--r-- 1 bgpalerter bgpalerter 3.5K Aug 14 21:36 .bashrc
62M -rwxr-xr-x 1 bgpalerter bgpalerter  62M Aug  9 04:38 bgpalerter-linux-x64
4.0K drwxr-xr-x 2 bgpalerter bgpalerter 4.0K Aug 15 18:35 .cache
8.0K -rw-r--r-- 1 bgpalerter bgpalerter 6.0K Aug 15 18:30 config.yml
4.0K drwxr-xr-x 3 bgpalerter bgpalerter 4.0K Aug 14 21:38 .local
4.0K drwxr-xr-x 2 bgpalerter bgpalerter 4.0K Aug 16 05:49 logs
4.0K -rw-r--r-- 1 bgpalerter bgpalerter 1.2K Aug 15 15:32 prefixes.yml
4.0K -rw-r--r-- 1 bgpalerter bgpalerter  807 Aug 14 21:36 .profile
4.0K drwxr-xr-x 3 bgpalerter bgpalerter 4.0K Aug 14 21:45 src
4.0K -rw-r--r-- 1 bgpalerter bgpalerter  165 Aug 14 21:36 .wget-hsts
bgpalerter@vultr:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            472M     0  472M   0% /dev
tmpfs            98M  668K   97M   1% /run
/dev/vda1        24G  5.0G   18G  23% /
tmpfs           489M     0  489M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs            98M     0   98M   0% /run/user/0

config
bgpalerter@vultr:~$ cat config.yml
connectors:
  - file: connectorRIS
    name: ris
    params:
      carefulSubscription: true
      url: ws://ris-live.ripe.net/v1/ws/
      perMessageDeflate: true
      authorizationHeader: null
      subscription:
        moreSpecific: true
        type: UPDATE
        host:
        socketOptions:
          includeRaw: false

#  - file: connectorRISDump
#    name: dmp

monitors:
  - file: monitorHijack
    channel: hijack
    name: basic-hijack-detection
    params:
      thresholdMinPeers: 3

  - file: monitorNewPrefix
    channel: newprefix
    name: prefix-detection
    params:
      thresholdMinPeers: 3

  - file: monitorPath
    channel: path
    name: path-matching
    params:
      thresholdMinPeers: 1

  - file: monitorVisibility
    channel: visibility
    name: withdrawal-detection
    params:
      thresholdMinPeers: 40

  - file: monitorAS
    channel: misconfiguration
    name: asn-monitor
    params:
      thresholdMinPeers: 3

  - file: monitorRPKI
    channel: rpki
    name: rpki-monitor
    params:
      thresholdMinPeers: 3
      checkUncovered: false
      checkDisappearing: false

  - file: monitorROAS
    channel: roa
    name: rpki-diff
    params:
      enableDiffAlerts: true
      enableExpirationAlerts: true
      enableExpirationCheckTA: true
      enableDeletedCheckTA: true
      roaExpirationAlertHours: 2
      checkOnlyASns: true
      toleranceDeletedRoasTA: 20
      toleranceExpiredRoasTA: 20

  - file: monitorPathNeighbors
    channel: path
    name: path-neighbors
    params:
      thresholdMinPeers: 3

reports:
  - file: reportFile
    channels:
      - hijack
      - newprefix
      - visibility
      - path
      - misconfiguration
      - rpki
      - roa
    params:
      persistAlertData: false
      alertDataDirectory: alertdata/

  - file: reportEmail
    channels:
      - hijack
      - newprefix
      - visibility
      - path
      - misconfiguration
      - rpki
      - roa
    params:
      showPaths: 10 # Amount of AS_PATHs to report in the alert
      senderEmail<EMAIL_ADDRESS>      smtp:
        host: smtp.fastmail.com
        port: 465
        secure: true # If true the connection will use TLS when connecting to server. If false it will be still possible doing connection upgrade via STARTTLS
        ignoreTLS: false # If true TLS will be completely disabled, including STARTTLS. Set this to true if you see certificate errors in the logs.
        auth:
          user<EMAIL_ADDRESS>          pass: password
          type: login
        tls:
          rejectUnauthorized: true  # Reject unauthorized certificates
      notifiedEmails:
        default:
          -<EMAIL_ADDRESS>        noc:
          -<EMAIL_ADDRESS>
############################
# Notification settings:
# - notificationIntervalSeconds
#       Defines the amount of seconds after which an alert can be repeated. An alert is repeated only if the event that
#       triggered it is not yet solved.
# - persistStatus
#       Persist the status of BGPalerter. If the process is restarted, the list of alerts already sent is recovered
#       and they are not repeated. The process must be able to write on disc, this option will create a file inside .cache/

notificationIntervalSeconds: 3600
persistStatus: true

############################
# REST API settings:
# - rest.host
#       The IP address the server will listen. The default value is localhost, this means the API will not be reachable
#       from another host. To make it public use null or <IP_ADDRESS>.
# - rest.port
#       The port the server will listen

rest:
  host: localhost
  port: 8011

logging:
  directory: logs
  logRotatePattern: MM-DD-YYYY
  maxRetainedFiles: 10
  maxFileSizeMB: 15
  compressOnRotation: false
  useUTC: false

checkForUpdatesAtBoot: false
generatePrefixListEveryDays: 1

############################
# Process monitoring settings:
# Uncomment or add classes under processMonitors if you want to monitor or send logs about the status of the BGPalerter process

processMonitors:
#  - file: uptimeApi
#    params:
#      useStatusCodes: true
#
  - file: uptimeHealthcheck
    params:
      url: https://hc-ping.com/9df2b8a9-d2bf-4894-ad68-a849ce8de3e0
      intervalSeconds: 60
      method: get
#
#  - file: sentryModule
#    params:
#      dsn<EMAIL_ADDRESS>

############################
# The files containing the monitored prefixes. Please see prefixes.yml for an example.
# This is an array (use new lines and dashes!)

monitoredPrefixesFiles:
  - prefixes.yml

############################
# The file containing the user groups.
# User groups can be specified
# 1) directly above, in each report module; or
# 2) inside an external file, as specified below (disabled by default).
# Using an external file allows BGPalerter to auto-reload the user group definitions
# when the external file is changed.

# groupsFile: groups.yml.example

############################
# HTTP proxy setting:
# Allow to run BGPalerter behind an HTTP/HTTPS proxy.
# You can also specify which module can bypass the proxy.
# More information here: https://github.com/nttgin/BGPalerter/blob/main/docs/http-proxy.md

# httpProxy: http://username:password@<IP_ADDRESS>:9000

############################
# RPKI settings:
# Global RPKI settings shared across all monitors requiring RPKI data
# More information here: https://github.com/nttgin/BGPalerter/blob/main/docs/rpki.md
#
# To enable ROA expiration alerts, you need VRPs including expiration timestamps.
# "rpkiclient" is the default vrpProvider since is the only one supporting ROAs expiration data.

rpki:
  vrpProvider: rpkiclient
  preCacheROAs: true
  refreshVrpListMinutes: 15
  markDataAsStaleAfterMinutes: 120

############################
# Advanced settings (Don't touch here!)
# Please, refer to the documentation to know the meaning of the following parameters.

alertOnlyOnce: false
fadeOffSeconds: 360
checkFadeOffGroupsSeconds: 30
pidFile: bgpalerter.pid
maxMessagesPerSecond: 6000
multiProcess: false
environment: production
configVersion: 2

prefixes.yml
bgpalerter@vultr:~$ cat prefixes.yml
<IP_ADDRESS>/24:
  description: No description provided
  asn:
    - 394414
  ignoreMorespecifics: false
  ignore: false
  group: noc
2604:2980:f603::/48:
  description: No description provided (No ROA available)
  asn:
    - 394414
  ignoreMorespecifics: false
  ignore: false
  group: noc
2a06:a005:2d8::/48:
  description: No description provided
  asn:
    - 394414
  ignoreMorespecifics: false
  ignore: false
  group: noc
2a06:a005:ae0::/44:
  description: No description provided
  asn:
    - 394414
  ignoreMorespecifics: false
  ignore: false
  group: noc
2a06:c3c0:6::/48:
  description: No description provided
  asn:
    - 394414
  ignoreMorespecifics: false
  ignore: false
  group: noc
2a06:1180:1::/48:
  description: No description provided
  asn:
    - 394414
  ignoreMorespecifics: false
  ignore: false
  group: noc
options:
  monitorASns:
    '394414':
      group: noc
      upstreams:
        - 32621
        - 44570
        - 50058
        - 62943
        - 6939
      downstreams:
        - 968
  generate:
    exclude: []
    excludeDelegated: true
    monitoredASes:
      - '394414'
    historical: false
    group: noc
    asnList:
      - '394414'

I don't see a directory 'alertdata' created when running the binary for the first time... Is it required? It's on the config.
There's nothing else installed on this VM (as well as on the container that's running my production alerter for AS62943). Essentially it's a fresh Debian 11 install with just some apt packages (wget, curl, whois, net-tools, dnsutils, mtr-tiny, etc).
I am going to perform the 2 debug steps you shared above, and reply back here in an hour or two with updates. Thanks again, really appreciate it!

Hi @massimocandela  :)
Here is an update, with the pre-release binary and the config change you suggested, looks like the process survives beyond 10 minutes:
Every 1.0s: systemctl status bgpalerter.service                                                                                vultr: Tue Aug 16 06:36:35 2022

● bgpalerter.service - BGPalerter
     Loaded: loaded (/etc/systemd/system/bgpalerter.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2022-08-16 06:06:52 CDT; 29min ago
   Main PID: 155512 (bgpalerter-linu)
      Tasks: 10 (limit: 1132)
     Memory: 203.4M
        CPU: 44.495s
     CGroup: /system.slice/bgpalerter.service
             └─155512 /home/bgpalerter/bgpalerter-linux-x64

Aug 16 06:06:52 vultr systemd[1]: Started BGPalerter.
Aug 16 06:06:53 vultr bgpalerter-linux-x64[155512]: Loaded config: /home/bgpalerter/config.yml
Aug 16 06:06:53 vultr bgpalerter-linux-x64[155512]: BGPalerter, version: 1.30.0 environment: production
Aug 16 06:07:05 vultr bgpalerter-linux-x64[155512]: Monitoring <IP_ADDRESS>/24
Aug 16 06:07:05 vultr bgpalerter-linux-x64[155512]: Monitoring 2a06:a005:ae0::/44
Aug 16 06:07:05 vultr bgpalerter-linux-x64[155512]: Monitoring 2a06:1180:1::/48
Aug 16 06:07:05 vultr bgpalerter-linux-x64[155512]: Monitoring 2a06:c3c0:6::/48
Aug 16 06:07:05 vultr bgpalerter-linux-x64[155512]: Monitoring 2a06:a005:2d8::/48
Aug 16 06:07:05 vultr bgpalerter-linux-x64[155512]: Monitoring 2604:2980:f603::/48
Aug 16 06:07:05 vultr bgpalerter-linux-x64[155512]: Monitoring AS394414

I am going to test the stable version with the same config change, and see if there are any different results. I'll report back shortly.

EDIT: the pre-release version shows same version when running with flag -v:
bgpalerter@vultr:~$ ./bgpalerter-linux-x64 -v
1.30.0
bgpalerter@vultr:~$ ./bgpalerter-linux-x64-old -v
1.30.0

Opssss, download the binary again now, it should not change anything (I think only the release number bump was missing), but just in case...
Thanks for doing the test. Please, check also with the new binary if it crashes when you set enableAdvancedRpkiStats to true.

No problem!
Leaving the config change in place, but using the current stable binary, I am still seeing the process restart every 10min.
I am going to download the pre-release 1.30.1 again, and test it with enableAdvancedRpkiStats to true.

I am back @massimocandela  - Looks like setting enableAdvancedRpkiStats to true with the pre-release 1.30.1 version causes the restarts at every 10m, where as with it set to false seems to get rid of this symptom.
Checking the error.log file while set to true, I don't see anything "new":
2022-08-16T06:59:54-05:00 error: RIPE RIS disconnected (error: process termination). Read more at https://github.com/nttgin/BGPalerter/blob/main/docs/ris-disconnections.md
2022-08-16T07:01:41-05:00 info: ris connector connected (instance:fe37007c-5254-4eb1-8ba2-5e481d609a05 connection:67aa60f7-2da6-436f-9982-bfebf4d4c9f9)
2022-08-16T07:01:41-05:00 info: Subscribed to monitored resources
2022-08-16T07:01:41-05:00 info: Subscribed to beacons
2022-08-16T07:12:27-05:00 info: ris connector connected (instance:26a806a2-0f72-4473-b340-74ab2aee06cf connection:0eed3552-7a62-4e72-ac57-1340c41a3e0c)
2022-08-16T07:12:27-05:00 info: Subscribed to monitored resources
2022-08-16T07:12:27-05:00 info: Subscribed to beacons

...but, when checking /var/log/daemon.log I do see more information:
Aug 16 11:39:11 vultr systemd[1]: Started BGPalerter.
Aug 16 11:39:12 vultr bgpalerter-linux-x64[160961]: Loaded config: /home/bgpalerter/config.yml
Aug 16 11:39:12 vultr bgpalerter-linux-x64[160961]: BGPalerter, version: 1.30.0 environment: production
Aug 16 11:39:22 vultr bgpalerter-linux-x64[160961]: Monitoring <IP_ADDRESS>/24
Aug 16 11:39:22 vultr bgpalerter-linux-x64[160961]: Monitoring 2a06:a005:ae0::/44
Aug 16 11:39:22 vultr bgpalerter-linux-x64[160961]: Monitoring 2a06:1180:1::/48
Aug 16 11:39:22 vultr bgpalerter-linux-x64[160961]: Monitoring 2a06:c3c0:6::/48
Aug 16 11:39:22 vultr bgpalerter-linux-x64[160961]: Monitoring 2a06:a005:2d8::/48
Aug 16 11:39:22 vultr bgpalerter-linux-x64[160961]: Monitoring 2604:2980:f603::/48
Aug 16 11:39:22 vultr bgpalerter-linux-x64[160961]: Monitoring AS394414
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: <--- Last few GCs --->
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: [160961:0x3074490]   611643 ms: Mark-sweep (reduce) 486.5 (491.7) -> 485.1 (492.5) MB, 557.1 / 0.0 ms  (+ 65.4 ms in 28 steps since start of marking, biggest step 17.2 ms, walltime since start of marking 735 ms) (average mu = 0.299, current mu = 0.245) al
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: <--- JS stacktrace --->
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  1: 0x8e08f0 node::Abort() [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  2: 0x8297f7 node::FatalError(char const*, char const*) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  3: 0x9f48d6 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  4: 0x9f4b6d v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  5: 0xb96c35  [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  6: 0xb97687 v8::internal::Heap::RecomputeLimits(v8::internal::GarbageCollector) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  7: 0xba0208 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  8: 0xba3830 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]:  9: 0x16b634d  [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: 10: 0xb679d3 v8::internal::FactoryBase<v8::internal::Factory>::NewRawOneByteString(int, v8::internal::AllocationType) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: 11: 0xc7f147 v8::internal::JsonParser<unsigned char>::MakeString(v8::internal::JsonString const&, v8::internal::Handle<v8::internal::String>) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: 12: 0xc81a82 v8::internal::JsonParser<unsigned char>::ParseJsonValue() [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: 13: 0xc862a9 v8::internal::JsonParser<unsigned char>::Parse(v8::internal::Isolate*, v8::internal::Handle<v8::internal::String>, v8::internal::Handle<v8::internal::Object>) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: 14: 0xa9ad7b v8::internal::Builtin_JsonParse(int, unsigned long*, v8::internal::Isolate*) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr bgpalerter-linux-x64[160961]: 15: 0x176dd19  [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 11:49:24 vultr systemd[1]: bgpalerter.service: Main process exited, code=killed, status=6/ABRT
Aug 16 11:49:24 vultr systemd[1]: bgpalerter.service: Failed with result 'signal'.
Aug 16 11:49:24 vultr systemd[1]: bgpalerter.service: Consumed 29.348s CPU time.
Aug 16 11:49:54 vultr systemd[1]: bgpalerter.service: Scheduled restart job, restart counter is at 1.
Aug 16 11:49:54 vultr systemd[1]: Stopped BGPalerter.
Aug 16 11:49:54 vultr systemd[1]: bgpalerter.service: Consumed 29.348s CPU time.
Aug 16 11:49:54 vultr systemd[1]: Started BGPalerter.
Aug 16 11:49:54 vultr bgpalerter-linux-x64[162872]: Loaded config: /home/bgpalerter/config.yml
Aug 16 11:49:55 vultr bgpalerter-linux-x64[162872]: BGPalerter, version: 1.30.0 environment: production
Aug 16 11:50:08 vultr bgpalerter-linux-x64[162872]: Monitoring <IP_ADDRESS>/24
Aug 16 11:50:08 vultr bgpalerter-linux-x64[162872]: Monitoring 2a06:a005:ae0::/44
Aug 16 11:50:08 vultr bgpalerter-linux-x64[162872]: Monitoring 2a06:1180:1::/48
Aug 16 11:50:08 vultr bgpalerter-linux-x64[162872]: Monitoring 2a06:c3c0:6::/48
Aug 16 11:50:08 vultr bgpalerter-linux-x64[162872]: Monitoring 2a06:a005:2d8::/48
Aug 16 11:50:08 vultr bgpalerter-linux-x64[162872]: Monitoring 2604:2980:f603::/48
Aug 16 11:50:08 vultr bgpalerter-linux-x64[162872]: Monitoring AS394414
Aug 16 11:59:54 vultr systemd[1]: Stopping BGPalerter...
Aug 16 11:59:54 vultr systemd[1]: bgpalerter.service: Succeeded.
Aug 16 11:59:54 vultr systemd[1]: Stopped BGPalerter.
Aug 16 11:59:54 vultr systemd[1]: bgpalerter.service: Consumed 18.565s CPU time.
Aug 16 12:01:25 vultr systemd[1]: Started BGPalerter.
Aug 16 12:01:25 vultr bgpalerter-linux-x64[164664]: Loaded config: /home/bgpalerter/config.yml
Aug 16 12:01:25 vultr bgpalerter-linux-x64[164664]: BGPalerter, version: 1.30.1 environment: production
Aug 16 12:01:41 vultr bgpalerter-linux-x64[164664]: Monitoring <IP_ADDRESS>/24
Aug 16 12:01:41 vultr bgpalerter-linux-x64[164664]: Monitoring 2a06:a005:ae0::/44
Aug 16 12:01:41 vultr bgpalerter-linux-x64[164664]: Monitoring 2a06:1180:1::/48
Aug 16 12:01:41 vultr bgpalerter-linux-x64[164664]: Monitoring 2a06:c3c0:6::/48
Aug 16 12:01:41 vultr bgpalerter-linux-x64[164664]: Monitoring 2a06:a005:2d8::/48
Aug 16 12:01:41 vultr bgpalerter-linux-x64[164664]: Monitoring 2604:2980:f603::/48
Aug 16 12:01:41 vultr bgpalerter-linux-x64[164664]: Monitoring AS394414
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]: <--- Last few GCs --->
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]: [164664:0x348b490]   616638 ms: Mark-sweep (reduce) 485.9 (491.4) -> 484.2 (491.9) MB, 674.4 / 0.0 ms  (+ 0.0 ms in 4 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 687 ms) (average mu = 0.256, current mu = 0.140) alloc[164664:0x348b490]   617450 ms: Mark-sweep (reduce) 485.5 (491.9) -> 485.1 (492.7) MB, 779.1 / 0.0 ms  (average mu = 0.153, current mu = 0.041) allocation failure scavenge might not succeed
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]: <--- JS stacktrace --->
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]: FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  1: 0x8e08f0 node::Abort() [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  2: 0x8297f7 node::FatalError(char const*, char const*) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  3: 0x9f48d6 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  4: 0x9f4b6d v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  5: 0xb96c35  [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  6: 0xb97687 v8::internal::Heap::RecomputeLimits(v8::internal::GarbageCollector) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  7: 0xba0208 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  8: 0xba3830 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]:  9: 0xb6d072 v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationType, v8::internal::AllocationOrigin) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]: 10: 0xe71fee v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr bgpalerter-linux-x64[164664]: 11: 0x176dc39  [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:11:43 vultr systemd[1]: bgpalerter.service: Main process exited, code=killed, status=6/ABRT
Aug 16 12:11:43 vultr systemd[1]: bgpalerter.service: Failed with result 'signal'.
Aug 16 12:11:43 vultr systemd[1]: bgpalerter.service: Consumed 32.830s CPU time.
Aug 16 12:12:13 vultr systemd[1]: bgpalerter.service: Scheduled restart job, restart counter is at 1.
Aug 16 12:12:13 vultr systemd[1]: Stopped BGPalerter.
Aug 16 12:12:13 vultr systemd[1]: bgpalerter.service: Consumed 32.830s CPU time.
Aug 16 12:12:13 vultr systemd[1]: Started BGPalerter.
Aug 16 12:12:14 vultr bgpalerter-linux-x64[166589]: Loaded config: /home/bgpalerter/config.yml
Aug 16 12:12:14 vultr bgpalerter-linux-x64[166589]: BGPalerter, version: 1.30.1 environment: production
Aug 16 12:12:27 vultr bgpalerter-linux-x64[166589]: Monitoring <IP_ADDRESS>/24
Aug 16 12:12:27 vultr bgpalerter-linux-x64[166589]: Monitoring 2a06:a005:ae0::/44
Aug 16 12:12:27 vultr bgpalerter-linux-x64[166589]: Monitoring 2a06:1180:1::/48
Aug 16 12:12:27 vultr bgpalerter-linux-x64[166589]: Monitoring 2a06:c3c0:6::/48
Aug 16 12:12:27 vultr bgpalerter-linux-x64[166589]: Monitoring 2a06:a005:2d8::/48
Aug 16 12:12:27 vultr bgpalerter-linux-x64[166589]: Monitoring 2604:2980:f603::/48
Aug 16 12:12:27 vultr bgpalerter-linux-x64[166589]: Monitoring AS394414
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]: <--- Last few GCs --->
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]: [166589:0x4701490]   611807 ms: Scavenge 485.1 (490.4) -> 483.9 (490.7) MB, 2.0 / 0.0 ms  (average mu = 0.322, current mu = 0.307) allocation failure
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]: [166589:0x4701490]   612552 ms: Mark-sweep 485.6 (490.9) -> 483.5 (491.4) MB, 737.4 / 0.0 ms  (average mu = 0.233, current mu = 0.135) allocation failure scavenge might not succeed
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]: <--- JS stacktrace --->
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]: FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  1: 0x8e08f0 node::Abort() [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  2: 0x8297f7 node::FatalError(char const*, char const*) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  3: 0x9f48d6 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  4: 0x9f4b6d v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  5: 0xb96c35  [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  6: 0xb97687 v8::internal::Heap::RecomputeLimits(v8::internal::GarbageCollector) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  7: 0xba0208 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  8: 0xba3830 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]:  9: 0xb6d072 v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationType, v8::internal::AllocationOrigin) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]: 10: 0xe71fee v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr bgpalerter-linux-x64[166589]: 11: 0x176dc39  [/home/bgpalerter/bgpalerter-linux-x64]
Aug 16 12:22:27 vultr systemd[1]: bgpalerter.service: Main process exited, code=killed, status=6/ABRT
Aug 16 12:22:27 vultr systemd[1]: bgpalerter.service: Failed with result 'signal'.
Aug 16 12:22:27 vultr systemd[1]: bgpalerter.service: Consumed 31.753s CPU time.
Aug 16 12:22:57 vultr systemd[1]: bgpalerter.service: Scheduled restart job, restart counter is at 2.
Aug 16 12:22:57 vultr systemd[1]: Stopped BGPalerter.
Aug 16 12:22:57 vultr systemd[1]: bgpalerter.service: Consumed 31.753s CPU time.
Aug 16 12:22:57 vultr systemd[1]: Started BGPalerter.
Aug 16 12:22:58 vultr bgpalerter-linux-x64[168077]: Loaded config: /home/bgpalerter/config.yml
Aug 16 12:22:58 vultr bgpalerter-linux-x64[168077]: BGPalerter, version: 1.30.1 environment: production
Aug 16 12:23:12 vultr bgpalerter-linux-x64[168077]: Monitoring <IP_ADDRESS>/24
Aug 16 12:23:12 vultr bgpalerter-linux-x64[168077]: Monitoring 2a06:a005:ae0::/44
Aug 16 12:23:12 vultr bgpalerter-linux-x64[168077]: Monitoring 2a06:1180:1::/48
Aug 16 12:23:12 vultr bgpalerter-linux-x64[168077]: Monitoring 2a06:c3c0:6::/48
Aug 16 12:23:12 vultr bgpalerter-linux-x64[168077]: Monitoring 2a06:a005:2d8::/48
Aug 16 12:23:12 vultr bgpalerter-linux-x64[168077]: Monitoring 2604:2980:f603::/48
Aug 16 12:23:12 vultr bgpalerter-linux-x64[168077]: Monitoring AS394414

Since I noticed memory consumption spikes at the end of the 10m run, I wonder if there's a memory allocation issue of some sort? Not sure if these are correlated, just a wild guess.

The memory allocation is correlated. The enableAdvancedRpkiStats is a memory intensive option. I had the suspect it was this feature because it triggers some stats every 10 minutes.
Does it happen only when started with systemd?

note process memory usage at about 10m uptime, host has 1GB ram

I may have skipped this! 1Gb ram is not enough. Possibly you have in the system 500Mb free, the old version of BGPalerter required 1~1.2Gb, the new one requires 1.5Gb when enableAdvancedRpkiStats. So I would install it on a 4Gb vm.

The same issue was replicated on my LXC container (debian11) running on Proxmox, so I don't think it is just on Vultr.
Here are some stats of the container, showing some memory utilization spikes every so often (coinciding with CPU and bandwidth): https://i.imgur.com/KMI5Mvf.png

note process memory usage at about 10m uptime, host has 1GB ram

I may have skipped this! 1Gb ram is not enough. Possibly you have in the system 500Mb free, the old version of BGPalerter required 1~1.2Gb, the new one requires 1.5Gb when enableAdvancedRpkiStats is true. So I would install it on a 4Gb vm. If you set enableAdvancedRpkiStats to false, with some swap it will work with 1Gb.
It's a good topic tho, I need to write some requirements on the main page :)

Ah, I can also try with more RAM :) I will keep you updated!

Ah, I can also try with more RAM :) I will keep you updated!

In the meanwhile, I'm doing some additional tests. 2GB should be enough to run everything without features disabled. The numbers I gave you before refer to virtual memory (recorded values for physical memory are much smaller, ~800MB). These values are from our monitoring for the entire NTT network. I think is a reasonable amount.

Update: @massimocandela I've increased the production container RAM to 2GB (running stable 1.3.0) and set enableAdvancedRpkiStats to false. It has been running for almost 3 hours now. This seems to have solved the issue :)

Could you try with enableAdvancedRpkiStats enabled? If you are dedicating the VM to BGPalerter, and there are no other processes using serious memory, you should be able to run it.

EDIT: perhaps the enableAdvancedRpkiStats could be set to false by default if auto-generated, but with a comment suggesting additional RAM is needed?

I thought about it, but better not. I prefer to default to the safest configuration possible, and provide the most accurate and actionable alerts possible. It's better if people disable what they do not want than to enable what they probably don't even know it exists (up to when something happens and they wonder why they didn't get an alert).

Also, VM resources seem more stable since then: https://i.imgur.com/R7ApGHU.png

Yes, because during boot, BGPalerter does a bunch of initial checks and indexing. By restarting the process every 10 minutes everything was repeated over and over.

Appreciate your thorough responses! Definitely understand your points.

Could you try with enableAdvancedRpkiStats enabled? If you are dedicating the VM to BGPalerter, and there are no other processes using serious memory, you should be able to run it.

Yes, no problem, I'll report back.

On a 2GB RAM VM with enableAdvancedRpkiStats: false monitoring 15 something prefixes leads to periodic crashes, either at after 2 hours or after 4 hours of runtime.
I'm assuming this is expected behavior, but it still sounds like a lot for monitoring just a few prefixes, also it's strange that it crashes quasi exactly at 2 or 4 hours of runtime.

Hi @lukastribus, this is not the expected behavior. 2GB are more than enough, especially with enableAdvancedRpkiStats: false. What log/error.log and /var/log/daemon.log say? What your usage of RAM? What OS and BGPalerter version? Are you sure it's a crash and not the process getting killed?

It's Ubuntu 20.04.5 LTS, "free -m" shows > 1300MB of available memory.
From the journalctl output I can see node calling abort() due to memory allocation failure. The strange thing is the fixed 2 or 4 hours interval. I'm sending you configuration and full logs via email.
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: <--- Last few GCs --->
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: [274925:0x2bdd490]  7204014 ms: Scavenge 761.4 (781.4) -> 761.4 (781.4) MB, 24.2 / 0.0 ms  (average mu = 0.997, current mu = 0.999) allocation failure
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: [274925:0x2bdd490]  7204641 ms: Mark-sweep 1016.4 (1036.5) -> 908.7 (928.1) MB, 168.9 / 0.0 ms  (+ 37.0 ms in 4 steps since start of marking, biggest step 18.6 ms, walltime since start of marking 1543 ms) (average mu = 0.993, current mu = 0.894) allocatio
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: <--- JS stacktrace --->
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: FATAL ERROR: MarkCompactCollector: young object promotion failed Allocation failed - JavaScript heap out of memory
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  1: 0x8e08f0 node::Abort() [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  2: 0x8297f7 node::FatalError(char const*, char const*) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  3: 0x9f48d6 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  4: 0x9f4b6d v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  5: 0xb96c35  [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  6: 0xbb683e  [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  7: 0xbd363f v8::internal::FullEvacuator::RawEvacuatePage(v8::internal::MemoryChunk*, long*) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  8: 0xbcdb6a v8::internal::Evacuator::EvacuatePage(v8::internal::MemoryChunk*) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]:  9: 0xbd37a8  [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 10: 0xbb3689 v8::internal::ItemParallelJob::Run() [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 11: 0xbd4a23 v8::internal::MarkCompactCollector::EvacuatePagesInParallel() [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 12: 0xbd52c6 v8::internal::MarkCompactCollector::Evacuate() [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 13: 0xbb7d09 v8::internal::MarkCompactCollector::CollectGarbage() [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 14: 0xb9f3dc v8::internal::Heap::MarkCompact() [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 15: 0xba0628 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 16: 0xba3830 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 17: 0x16b634d  [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 18: 0xb67d42 v8::internal::FactoryBase<v8::internal::Factory>::AllocateRawArray(int, v8::internal::AllocationType) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 19: 0xb67e80 v8::internal::FactoryBase<v8::internal::Factory>::NewFixedArrayWithFiller(v8::internal::Handle<v8::internal::Map>, int, v8::internal::Handle<v8::internal::Oddball>, v8::internal::AllocationType) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 20: 0xcf79ec  [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 21: 0xe45a9a v8::internal::Runtime_GrowArrayElements(int, unsigned long*, v8::internal::Isolate*) [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:21:59 htznr2 bgpalerter-linux-x64[274925]: 22: 0x176dc39  [/home/bgpalerter/bgpalerter-linux-x64]
Nov 24 16:22:00 htznr2 systemd[1]: bgpalerter.service: Main process exited, code=dumped, status=6/ABRT

Thanks


Remove Body

Hey,
I am working on modular robotics with pinocchio, which means I build lots of robots composed of the same modules. It would be convenient if it was possible to add and remove bodies and joints for this purpose (as mentioned in #1451 ) instead of building every combination from scratch.
I am only working with the python wrappers, where I was able to add as many joints / bodies as I want. However, removing parts of the kinematic chain fails as I have no access to the n-{bodies, joints, frames, qs, vs} properties of a model. Is it somehow possible to decrement these read-only properties in python? I believe I have the rest of the removing procedure figured out, so this would be a workaround until removing parts from the kinematic chain will be properly supported in pinocchio.
EDIT: Theoretically, I could "remove" joints by building a reduced model and then removing the according frames etc., but this keeps model.nbdodies constant still

Indeed, it would be a nice feature to add to Pinocchio
The only missing part is the need of rebuilding a Data struct as soon as the model has changed. Do you have in mind typical applications for that?

My personal application for that is the evaluation of different modular robots for a given task - like e.g. finding a good combination from a large set of possible modules to reach multiple poses in a work space. (Whiman et al. have done something like it for example, but they only expanded their robot while I would like to change it)
Or suppose you want to calculate the forward kinematics for a set of different grippers you are thinking about attaching to your robot - it would be more intuitive to have robot.removeLast(), robot.addNew(gripper) functionalities than to build a new robot for every gripper from scratch.
Whenever you have multiple alternatives for how to build your robot - be it a humanoid for which you want to find the ideal morphology or a modular industrial robot - I think being able to change the robot instance would be of benefit.


Style CmdCtrl+F Find

Styles the "find" feature.

Current coverage is 87.42% (diff: 80.00%)

Merging #181 into master will decrease coverage by 0.60%

@@             master       #181   diff @@
==========================================
  Files            38         38
  Lines           844        851     +7
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            743        744     +1
- Misses          101        107     +6
  Partials          0          0

Powered by Codecov. Last update 6b31c71...8b73213


Read base parameter in KinematicsInterfaceKDL initialize function

Would it be worth adding a test for this case?

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@1408f86). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff            @@
##             master      #20   +/-   ##
=========================================
  Coverage          ?   30.43%
=========================================
  Files             ?        2
  Lines             ?      184
  Branches          ?      120
=========================================
  Hits              ?       56
  Misses            ?       22
  Partials          ?      106

Flag
Coverage Δ

unittests
30.43% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

closing in favour of #73


feat(docker): add edk2 containers between 2023-02 and 2024-05

I hope that the GCC_VERSION values are correct.

Once the https://github.com/9elements/firmware-action/pull/409 is merged and CI clears up a bit I will rebase this and bump the GCC version a bit to see if it will work.

@benjamindoron Hey, I have backported a patch from edk2-stable202408.01 to older edk2 releases. Could you maybe get it into upstream edk2?

@MDr164 ready for review now