Auto Party Select Resets on Module Switch

How to report issues
The versions of Solasta and this mod.
Solasta Version 1.4.33 Public
Unfinished Business <IP_ADDRESS>-
A list of other mods you have installed [you shouldn't have any].
Unfinished Business
A short description of the bug.
I'm not sure if it is a bug or simply doesn't work on other modules accepting the original Crown of the Magister story, but the toggles on character pool to set default play & test party & auto-selecting slow down loading & resets completely when switching to another module such as some that are on workshop like Forsaken Island (6-man).
This isn't hindering my gameplay, but I thought it worth mentioning for improvement :D
A step-by-step procedure to reproduce it.
Enable toggles on character pool & select any module other than Crown of the Magister.
The save, character and log files.
HINT: Check the folder C:\UsersYOUR_USER_NAME\AppData\LocalLow\Tactical Adventures\Solasta for the info we need.
Github is refusing the drag & drop files options for those requested (character, saves).  I zipped them to allow for upload.
Player.log
Dragonborne Socrata 7.zip
Eirini.zip
Ianthe.zip
Kava.zip
Sora.zip
Stasia.zip
Thava.zip

This works as expected on my end as it’s the single tool I use for tests. What are the hero levels?

fixed here. Thanks for reporting. On next release.

level 1 starting the modules.  It is the 2 character select options on Unfinished Business that are not working as expected for me.
Enable on character pool to set your default play & test party
Enable character button checker on the main screen>characters (I am disabling this to see if it is causing some conflict.)
Noel Dean Calvert & Jessy Guevara Biojo
GueCal Vivero Colombiano SAS
GueCal Colombian Tropicals
NIT: 900652986-9
Colombia: 57(317)687-6154
USA/Canada: 1(602)774-0753

From: Paulo Monteiro @.>
Sent: Tuesday, May 2, 2023 6:12 PM
To: SolastaMods/SolastaUnfinishedBusiness @.>
Cc: Axeborne @.>; Author @.>
Subject: Re: [SolastaMods/SolastaUnfinishedBusiness] Auto Party Select Resets on Module Switch (Issue #3114)
This works as expected on my end as it’s the single tool I use for tests. What are the hero levels?
—
Reply to this email directly, view it on GitHubhttps://github.com/SolastaMods/SolastaUnfinishedBusiness/issues/3114#issuecomment-1532302618, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A4A2F7QFWIL72HQJM25T3TLXEGPGTANCNFSM6AAAAAAXTWZZ74.
You are receiving this because you authored the thread.Message ID: @.***>

So this will be implemented in the next update fixing the problem?
Assuming I understand, thank you very much for taking the time to look at this! :D
Noel Dean Calvert & Jessy Guevara Biojo
GueCal Vivero Colombiano SAS
GueCal Colombian Tropicals
NIT: 900652986-9
Colombia: 57(317)687-6154
USA/Canada: 1(602)774-0753

From: Paulo Monteiro @.>
Sent: Tuesday, May 2, 2023 6:30 PM
To: SolastaMods/SolastaUnfinishedBusiness @.>
Cc: Axeborne @.>; Author @.>
Subject: Re: [SolastaMods/SolastaUnfinishedBusiness] Auto Party Select Resets on Module Switch (Issue #3114)
fixed herehttps://github.com/SolastaMods/SolastaUnfinishedBusiness/commit/c8614d3010c1290e5ccb6ab477f283a74de43357. Thanks for reporting. On next release.
—
Reply to this email directly, view it on GitHubhttps://github.com/SolastaMods/SolastaUnfinishedBusiness/issues/3114#issuecomment-1532312046, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A4A2F7UXKPHEGWI5Z4PVZYDXEGRKNANCNFSM6AAAAAAXTWZZ74.
You are receiving this because you authored the thread.Message ID: @.***>

Eso. El próximo release está bien chevere. 🤔

fixed here. Thanks for reporting. On next release.

Thank you ThyWoof

Perfecto!  Miraste que estoy en Colombia y cambiaste a Espanol 🙂  Chevre.
Noel Dean Calvert & Jessy Guevara Biojo
GueCal Vivero Colombiano SAS
GueCal Colombian Tropicals
NIT: 900652986-9
Colombia: 57(317)687-6154
USA/Canada: 1(602)774-0753

From: Paulo Monteiro @.>
Sent: Wednesday, May 3, 2023 12:12 PM
To: SolastaMods/SolastaUnfinishedBusiness @.>
Cc: Axeborne @.>; Author @.>
Subject: Re: [SolastaMods/SolastaUnfinishedBusiness] Auto Party Select Resets on Module Switch (Issue #3114)
Eso. El próximo release está bien chevere. 🤔
—
Reply to this email directly, view it on GitHubhttps://github.com/SolastaMods/SolastaUnfinishedBusiness/issues/3114#issuecomment-1533494942, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A4A2F7UYFFBCEZFG2MZU46TXEKN2VANCNFSM6AAAAAAXTWZZ74.
You are receiving this because you authored the thread.Message ID: @.***>

Colombia is one of the countries I support. I’m in bogota / Medellin every Q.

I live in Tumaco, Narino, Colombia.
I've been here for 10 years 😄
Noel Dean Calvert & Jessy Guevara Biojo
GueCal Vivero Colombiano SAS
GueCal Colombian Tropicals
NIT: 900652986-9
Colombia: 57(317)687-6154
USA/Canada: 1(602)774-0753

From: Paulo Monteiro @.>
Sent: Wednesday, May 3, 2023 2:15 PM
To: SolastaMods/SolastaUnfinishedBusiness @.>
Cc: Axeborne @.>; Author @.>
Subject: Re: [SolastaMods/SolastaUnfinishedBusiness] Auto Party Select Resets on Module Switch (Issue #3114)
Colombia is one of the countries I support. I’m in bogota / Medellin every Q.
—
Reply to this email directly, view it on GitHubhttps://github.com/SolastaMods/SolastaUnfinishedBusiness/issues/3114#issuecomment-1533676090, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A4A2F7TACIHLTPIQGHJSNUDXEK4H7ANCNFSM6AAAAAAXTWZZ74.
You are receiving this because you authored the thread.Message ID: @.***>


Add ability to instantiate WASM module without calling the start function

Currently it's impossible to properly implement WASM multi-threading as a library without the user having to use some workaround to prevent main to be called.
I was thinking of just adding a third parameter to the init function, not sure if that's a breaking change or not (I don't believe so). Happy to try other approaches to solve this issue.
Fixes #2295.

I didn't realize this, which caused me to encounter a lot of bugs that I couldn't really explain. Thanks for pointing that out!
I hope I got this right:
I changed add_start_function() to just add a new exported function called __wbindgen_main instead of modifying the start section. This leaves the initialization code untouched to be moved later to __wbindgen_start by unstart_start_function().
Tested and works great!

It took me quiet some time to figure out what's going on, but I don't think I'm introducing a deep change by any stretch of the imagination.
Of course there could still be a bug that affects the major use-case of wasm-bindgen. So obviously a thorough review is necessary.
I would also like to mention that I'm working on a library like wasm_thread that should make things very usable, I'm using it right now and it's working completely abstracted without me having to write a ton of cfgs. I believe this PR and #3032 are the last missing pieces.

I think everybody in the Rust Community knows and appreciates the amount of work and all the responsibilities that you have. So I totally understand if you can't find time for this :heart:.
Is there somebody else that can be asked to review this?

A potential way for this to work without adding an initWithoutStart function would be for wasm-bindgen to only call main on the first thread that calls init. That would boil down to setting a byte to 1 (atomically) when the first thread starts, which all the other threads will see and skip running main.
That does have the potential to break any code that relies on the current behaviour of calling main on every call to init, though.

If the desire is to not add another function, I think a solution that would have much less breakage is to add a third default argument to init, I assume that fewer people use weird syntax to pass arguments into init then people relying on init to always call main. Not that any of these solutions would alleviate any issues alexcrichton was having.
@Liamolucko I didn't realize that you have merge rights, is this PR mergeable? Can you review this? Is there some other solution to alleviate alexcrichton's concerns?

I agree with Alex here.
There's no true support for multi threading in WASM, and we should be applying bandaids to fill the hole.
As long a workaround is available, I wouldn't be in favor of merging this. Also inclusion of this function increases the JS bundle size, which is something worth considering

There's no true support for multi threading in WASM, and we should be applying bandaids to fill the hole.

I'm assuming you meant "we should not"?
I will attempt to make a case for this:

As long a workaround is available, I wouldn't be in favor of merging this.

I am currently building a library very much like wasm_thread and currently there is no workaround that I can apply in the library itself. I have to tell users not to use a start function and to manually call their main function in their index.html to start their application. This is a very bad footgun.
I myself have hit that footgun when trying to use wasm_thread and I didn't understand why I'm getting some really bad infinite loops until I discovered this issue. It also prevents users from using any kind of tool that automatically starts up their application, like trunk, wasm-pack or wasm-server-runner.
So I don't really consider there to be a viable workaround, the only available one doesn't just introduce a footgun, it also locks you out from a lot of convenient tools that you can't use anymore.

Also inclusion of this function increases the JS bundle size, which is something worth considering

Is the JS bundle the JS shim? I just measured it and you are right, it's noticeable. In a completely minimal "Hello, World!" example it's 5% both not-minimized and minimized. I must say though that in any reasonably sized project it's much less then 1%. Also initSync should have introduced an even bigger overhead.

From alexcrichton:

AFAIK the current support implemented by wasm-bindgen is a sort of "local maximum" which while it's pretty unusable that's somewhat reflective of multithreading on the web at large.

I do know that currently multithreading in the browser through WASM has a lot of limitations and issues. But I have to point out, that it is currently underused because of two issues:

It requires nightly, because of -Zbuild-std. See https://github.com/rust-lang/rust/issues/77839.
There is no usable library to easily use threads from Rust code.

I can't really change anything about the nightly issue, but I can contribute to making it usable for now. wasm_thread is a good example of what's currently possible, but it simply has too many footguns to be usable for the average user. I was able to remove all "major" footguns except the one addressed by this PR and I do consider it the last thing really necessary to make things as seamless to the user as possible.

The way I'd prefer is the way I suggested where it's handled automatically, provided that that doesn't create much breakage.

I will look into it, I really don't mind this solution, it fits my needs very well.

Replaced by #3092.


Added support for SIGINT and SIGTERM

How about, it first draining before shutting down when getting SIGINT?

Beanstalkd uses a crash-only design. There's no need to treat these signals specially.

Thanks for the effort! If you're interested in contributing, maybe take a look at the list of open bugs and pick something?

I'm going to go ahead and close this, but please do consider looking at the open issues, or if you think this aspect of beanstalkd could be improved, we can totally discuss your proposal. Thanks again!


[stable/jenkins] warning when overriding initscripts

Describe the bug
In the latest chart (1.1.16) when overriding initscripts: a warning appears when running helm template.
Version of Helm and Kubernetes:
helm version 2.13.1
Which chart:
jenkins
What happened:
when changing
initscripts:
to
  initScripts:
    test: |-
       blah blaAh peter groovy

a warning appears:
helm template -f values.yaml -f helm-config-test.yaml .  | grep peter
2019/05/10 08:28:30 Warning: Merging destination map for chart 'jenkins'. The destination item 'initScripts' is a table and ignoring the source 'initScripts' as it has a non-table value of:
blah blaAh peter groovy
rendered template is correct:
inittest.groovy: |-
blah blaAh peter groovy
What you expected to happen:
rendered template without warning.
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know:
I think the solution is changing the default values.yaml like this
initscripts;
change to:
initscripts: {}

Please try it like this:
    initScripts:
      - |
        import org.jenkinsci.plugins.authorizeproject.ProjectQueueItemAuthenticator
        import jenkins.security.QueueItemAuthenticatorConfiguration
        ...

That actually works for me. Using it as a list also allows you to separate different init scripts.

Just checked the values.yaml. The example there is also a list.
https://github.com/helm/charts/blob/master/stable/jenkins/values.yaml#L166-L168

Alright. My confusion was that I had to name the key of the list myself
It works fine indeed like this way:
    initScripts:
      - |
        import hudson.EnvVars;
      - |
        #!groovy

resulted in this:
  init0.groovy: |-
    import hudson.EnvVars;
--

  init1.groovy: |-
    #!groovy
--


Gigaspeech model broken link

The pretrained conformer model link provided for the Gigaspeech example doesn't work, says "file not exist"
Model link: http://mobvoi-speech-public.ufile.ucloud.cn/public/wenet/gigaspeech/20210115_conformer_exp.tar.gz

try http://mobvoi-speech-public.ufile.ucloud.cn/public/wenet/gigaspeech/20210520_conformer_exp.tar.gz

This works, thank you! Would you like to also push that updated link to the repo?

@pengzhendong I'm trying to load the model from that link, just calling "torch.load()" and giving it the path to the final.pt file, but I get errors - I've attached the stack trace below. Is there an issue with this model file, or is there another way I should be calling it? Thanks!
  File "wenet/bin/export_jit.py", line 43, in <module>
    load_checkpoint(model, args.checkpoint)
  File "/Users/ark/Documents/projects/wenet/wenet/utils/checkpoint.py", line 18, in load_checkpoint
    checkpoint = torch.load(path, map_location='cpu')
  File "/opt/miniconda3/envs/wenet/lib/python3.8/site-packages/torch/serialization.py", line 577, in load
    with _open_zipfile_reader(opened_file) as opened_zipfile:
  File "/opt/miniconda3/envs/wenet/lib/python3.8/site-packages/torch/serialization.py", line 241, in __init__
    super(_open_zipfile_reader, self).__init__(torch._C.PyTorchFileReader(name_or_buffer))
RuntimeError: [enforce fail at inline_container.cc:144] . PytorchStreamReader failed reading zip archive: failed finding central directory

It has been updated.
Please change your pytorch version to 1.6.

Got it, thanks! For anybody who stumbles upon this in the future, I was actually using torch 1.6, but on a machine without a GPU - with a GPU it worked fine, even on torch 1.8.

Hello again! I just have another question trying to get the model working. The steps I followed were:

Download and untar the file provided at the download link
Export the model, with: python wenet/bin/export_jit.py --config 20210520_conformer_exp/train.yaml --checkpoint 20210520_conformer_exp/final.pt --output_file final.zip, this runs successfully
Try to recognize on the librispeech test-clean test set (since I don't have access to download gigaspeech yet):

python wenet/bin/recognize.py --gpu 0 --mode attention_rescoring --config 20210520_conformer_exp/train.yaml --checkpoint 20210520_conformer_exp/final.pt --test_data examples/librispeech/s0/data/test_clean/format.data --beam_size 20 --batch_size 1 --penalty 0.0 --dict 20210520_conformer_exp/words.txt

This fails, I believe because words.txt contains log probabilities of the tokens instead of the indices. I tried replacing the log probabilities with indices, but it seems like the words need to be correctly sorted, and use the correct special tokens as well. I'm able to decode if I use integer indices in words.txt, but the results are nonsensical, presumably because the indices don't correspond correctly to the proper tokens.
Is there another words.txt file that I should be using instead? Thanks again for the help!

Hello again @pengzhendong - just wanted to ask the above question again, if you have a chance to take a look.

The same issue for me as well,  there are log probabilities instead of integer indices and I tried to convert them into indices but the output is worse.

Update for others - the same link now seems to point to an updated word list, that I was able to get running this time.


Error Loading Image

From https://github.com/moby/moby/issues/8039#issuecomment-569232360
@cnd wrote

when I use https://github.com/brthor/docker-save-last-layer I get error loading image alike open /var/lib/docker/tmp/docker-import-983776602/b861fd09fe6e59a22c7e31c58fb15fc25c15c51b870679a6cc966eeb9b8df5b7/layer.tar: no such file or directory

@cnd did building with --squash resolve the issue?

@brthor I will be able to reply with result after ~14 Jan

@brthor tested with --squash build but I'm still getting same error sadly

open /var/lib/docker/tmp/docker-import-032134328/058bdef7ddd2e1394aee5c835caaf50764cfc9669a1cffe0478c1b22bb85d342/layer.tar: no such file or directory

Are you transporting the archive between machines or docker hosts?

yes

I suspect the issue is related to the fact that the base layers are stripped from the image archive.
Doing a docker pull of the base image on the new machine prior to calling docker load should alleviate the problem in most cases.
If the base image has changed between the time you used docker-save-last and calling docker pull on the new host, the layer ids will not match and this problem will still be present. This can happen when a specific tag is updated to a new version.
In this case it is necessary to call docker pull on the specific digest that was used when calling docker-save-last.
See this Stackoverflow answer for an example:
https://stackoverflow.com/a/40730725


I am trying to use Geolocator package in my app amd tried to print the location. But its not displaying anything.
Location service is enabled in android emulator, still its showing that the location service is disabled.

Steps to Reproduce

Run flutter create bug.
Update the files as follows: ...
...

Expected results:
Actual results:

Logs

@RohitDhingra27
geolocator is a 3rd party plugin. Please consider opening this issue in plugin owner's repo : https://github.com/Baseflow/flutter-geolocator/issues.
Closing this as not an issue with Flutter. If you think otherwise, write in comments and I'll reopen.
Thanks.


Issue with specific URL

Using this URL causes getLinkPreview to never return:
https://www.gamestop.com/video-games/pc-gaming/components/cooling/products/hyper-212-rgb-black-edition-fan/185243.html?gclid=Cj0KCQjwraqHBhDsARIsAKuGZeECDlqkF2cxpcuS0xRxQmrv5BxFawWS_B51kiqehPf64_KlO0oyunsaAhn5EALw_wcB&gclsrc=aw.ds

Found this while investigating why a server I had running was crashing. Even if the link isn't supported, shouldn't getLinkPreview at least throw an error instead of hang infinitely?

The internal implementation does not have any timeout mechanisms built in, but this is a good suggestion, if I find some time I will add it, but PRs are welcome

Documentation for a solution:
https://dmitripavlutin.com/timeout-fetch-request/

Implemented/released in 2.1.7 as a timeout parameter in the options object, the default implementation now also has a timeout of 3 seconds

@ospfranco You're amazing!!


Update README.md

added content to our readme. Threw some ideas in it, but feel free to take it out or discuss it as we go!

@gldysmile I really like what you did with the README


doc: write release notes for Go 1.22

This is the tracking issue for writing the Go 1.22 Release Notes. The version at tip can be viewed at https://tip.golang.org/doc/go1.22.
When the Go 1.22 Release Notes are complete, this should be closed, and a similar issue should be made for the next release. The previous issue was #58645.

Typo in the section about changes to the reflect package:

using the languague == operator

Thanks, sent https://go.dev/cl/528896.

The current status is there are 4 CLs with a comment TODO the release notes, and a "TODO: complete this section" for the minor changes to the library. There's one CL that resolves a TODO that needs review, and I'm pinging or finding owners for the others.

https://go-review.googlesource.com/c/go/+/514235 only realize the release notes that behavior in Unix, later I will send a CL, adjust the release notes.

Reopening to track removal of the "Go 1.22 is not yet released." note alongside the final release. (It got closed due to #29599.)

And https://go.dev/cl/556399 need to be merged into go1.22.
Even if I am the author of https://go-review.googlesource.com/c/go/+/514235, see the following content of the release notes, my first reaction is also thought that this API can be used in all systems. But in fact, this API is only used on unix.

If the argument to FileInfoHeader implements the new FileInfoNames interface, then the interface methods will be used to set the UID/GID of the file header. This allows applications to override the default UID/GID resolution.

I did a superficial review of the release notes for the release, and they look good to me. One thing I checked for specifically was that no TODOs are left, and indeed they're all gone. The Go 1.22 release branch is now locked down like the other release branches, so marking this as complete.

There's a bit more to do here, but it doesn't need to block the release since a part of this happens on the day of.
https://go.dev/doc/go1.22 is currently 404; the release notes need to be moved from gotip to x/website/_content. And the "DRAFT RELEASE NOTES" heading needs to change. Feel free to either reopen or file a separate issue for that so it's not missed.


Journal Entry Will Not Save

Journal entry is cleared when navigating to another date or when restarting application. Word count is also not working.

What’s your platform and app version?

Ubuntu 19.10, Version 3.1.1

It's working for me. Would you mind sharing your logs? They can be found in ~/snap/mini-diary/current/.config/Mini\ Diary/logs/?

main.log
renderer.log
Seems likes it's a permissions issue but I'm not sure what's suddenly causing it.

Weird… Has this been happening from the start, or since an update?
Can you fix the permissions manually?

I've tried chmod'ing 'mini-diary.txt', but that didn't resolve the issue. The problem started a week after I started using this journal, so it may be because of the update.

Hello, I'm experiencing the same problem (on Ubuntu 16.04, app version 3.1.1). It worked for some time and suddenly two days ago it stopped saving any entry or change (probably as a consequence of an update of the OS).
renderer.log
main.log


✨[Feature Request]: Add new service containers

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
The service container is not interactive, change it to become more interactive.
Please, @Anishkagupta04 assign me this issue with label.
Use Case
Add a new container that is more responsive and has a good in look.
Add ScreenShots

Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

can you kindly assign this issue to me, I'm gssoc'24 contributor.


Schematic short propagation

Won't implement in the near term, as implementing this correctly requires interfacing with several Substrate features (hard macros, flattening, etc.)


BigQuery ADC (Application Default Credentials) with Simba JDBC

It appears as though Flyway is only supporting OauthType=0? When executing Cloud Deploy on GCP, storing or even saving the key.json on disk is not the ideal solution. It would be great to be able to just use the existing environment variables to authenticate the connection.
ERROR:
FLYWAY INFO PRISM API :
Aug. 27, 2021 12:40:15 P.M. org.flywaydb.commandline.Main error
SEVERE: Invalid argument: jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;OAuthType=3;ProjectId=MyProject;
EXPECTED BEHAVIOUR:
As defined in on page 17 of the Simba doc this URL should accept 'ADC' to connect to BQ jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;OAuthType=3;ProjectId=MyProject;
https://simba.wpengine.com/products/BigQuery/doc/Simba_BigQuery_JDBC_InstallGuide.pdf (page 17)

Could you share the full error output? By setting OAuthType to 3, the driver should just pick up the environment variables

Closing until further activity


[Pendragon 5th Edition] Bugfix for Squire Skills repeating section

Submission Checklist
Required

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

New Sheet Details

The name of this game is: <   >  (i.e. Dungeons & Dragons 5th Edition, The Dresden Files RPG)

The publisher of this game is: <   > (i.e. Wizards of the Coast, Evil Hat)

The name of this game system/family is: <   > (i.e. Dungeons & Dragons, FATE)

[ ] I have followed the Character Sheets Standards when building this sheet.

[ ] This sheet has been made on behalf of, or by, the game's publisher.
[ ] This game is not a traditionally published game, but a copy of the game rules can be purchased/downloaded/found at: <   >
[ ] This sheet is for an unofficial fan game, modification to an existing game, or a homebrew system.

Changes / Description

In response to this issue: https://github.com/Roll20/roll20-character-sheets/issues/12696

Character Sheet Info Roll20 Internal Use only.

@NorWhal Can we close the issue that was associated with this? (Mentioned in the initial comments of the PR.)

Done! Thank you for the poke


Idangutman/container extra info

Container extended information from runtime client
Added GetContainerExtended function to RuntimeClient, to allow getting more information on container, such as state, cgroups, mounts and PID.
Also moved the CRI implementation to separate file, to keep the interface.go clean.
How to use
GetContainerExtended  function can be used from RuntimeClient to get the information.
Testing done
Added additional tests for parseExtraInfo in test file, to validate additional fields.
Also, created the containerutils tester (in pkg/containerutils/tester) -- this is a standalone executable that can be used to validate runtime clients return expected results in manual testing.
Tested for containerd and docker, making sure fields are valid
To test this, build the tester in its folder and follow the program syntax:
Container-utils Tester
Syntax: tester <containerd/crio/docker> <get-extended/list/get/get-pid> [options] [container-id]
Options:
  -h    Show this help
  -s string
        Override socket path for runtime

IMPORTANT NOTES:
a. was not able to validate docker cgroups functionality
b. did not verify legacy CRI versions (prior to cri-o 1.18.0 and containerd 1.6.0)

Thanks for your PR. I think the test tool (pkg/container-utils/tester/containerutils_tester.go) is almost  already in local-gadget:
$ make local-gadget

$ sudo ./local-gadget list-containers --runtimes=docker --output custom-columns=runtime,id,pid,name
RUNTIME    ID               PID       NAME
docker     7dc1d56bd98b4    150848    hardcore_rubin

$ sudo ./local-gadget list-containers \
        --runtimes=docker,containerd,cri-o \
        --output custom-columns=runtime,id,name.pid,cgrouppath,cgroupid,cgroupv1,cgroupv2 \
        --no-trunc
WARN[0000] Runtime enricher (containerd): couldn't get current containers
WARN[0000] Runtime enricher (cri-o): couldn't get current containers
RUNTIME    ID                                                                  NAME              PID       CGROUPPATH                                                                                CGROUPID    CGROUPV1                                                                    CGROUPV2
docker     7dc1d56bd98b46ab71578e0c1c3d8a891eaa1d221ca424a1a3ef37720cd8eaa7    hardcore_rubin    150848    /sys/fs/cgroup/unified/docker/7dc1d56bd98b46ab71578e0c1c3d8a891eaa1d221ca424a1a3ef37720cd8eaa7    13526       /docker/7dc1d56bd98b46ab71578e0c1c3d8a891eaa1d221ca424a1a3ef37720cd8eaa7    /docker/7dc1d56bd98b46ab71578e0c1c3d8a891eaa1d221ca424a1a3ef37720cd8eaa7

See @blanquicet's https://github.com/kinvolk/inspektor-gadget/pull/763
It doesn't have all the fields from your GetContainerExtended but maybe local-gadget could be improved to have what you need instead of implementing a separate testing tool.

To still have a way to validate this feature, and in general the containerutils package, I was wondering if we could create a set of tests that start a couple of containers (something similar to what was done here), and then we verify that the ContainerRuntimeClient's methods report the correct values for each container? They would be a sort of integration-tests for the containerutils package that will complement the unit-tests we already have for the low-level parsing functions. WDYT?
cc @alban

There were some stuck tests in the CI.
It seems that docker.InspectContainer fails when a container is in "created" state, which caused containers to be missing from ContainerCollection list and thus causing the test to fail.
I changed the code to try to inspect the container and if it fails, then it tries listing the container and returning without the ContainerExtraInfo.
With this approach, the CI seems to not be stuck, but now it fails on FD leak:
https://github.com/idangutman-ms/inspektor-gadget/actions/runs/2911987948
I think that the extra call to inspect somehow causes one of the FDs to change (maybe HTTP socket)
Also the number of FDs is the same, it is the socket number which changes.
Maybe the checkFdList function should ignore changes of socket numbers?
@alban @mauriciovasquezbernal @blanquicet

This PR is replaced by PR #859


Refactor NoisyTeacher

Issue #22

Just solve this merge conflict. else everything seems good to me. I guess its pretty easy to add new implementations now with this.

I hope everything is fine here. I am merging this.


[beta] 1.56 backports

Beta backports of:

#9937 — Bump curl-sys to 0.4.48 with curl 7.79.1 which will hopefully fix the http2 errors
#9927 — Change diesel compatibility messages

r? @alexcrichton
(rust-highfive has picked a reviewer for you, use r? to override)

:warning: Warning :warning:

Pull requests are usually filed against the master branch for this repo, but this one is against rust-1.56.0. Please double check that you specified the right target!

@bors: r+

:pushpin: Commit b21796a696d7f33fab9ae5dbf96ead9e5c0e8046 has been approved by alexcrichton

:hourglass: Testing commit b21796a696d7f33fab9ae5dbf96ead9e5c0e8046 with merge 4ed5d137baff5eccf1bae5a7b2ae4b57efad4a7d...

:sunny: Test successful - checks-actions
Approved by: alexcrichton
Pushing 4ed5d137baff5eccf1bae5a7b2ae4b57efad4a7d to rust-1.56.0...


Optifine Emissive Entity textures don't Render

Using the latest version of Geckolib, emissive entity textures provided by resource packs do not render, regardless of whether the entity is a Geckolib animated entity. (Other emissives- items, blocks, particles, etc; still work as intended.) I have tested this with only Geckolib installed, and with several different resource packs, as well as older versions of Optifine.
Geckolib entities with built in emissive textures still work fine, it's only emissives added by optifine-compatible resource packs that aren't rendering.

Is this a duplicate of https://github.com/bernie-g/geckolib/issues/493 ?

No, this specifically regards textures with optifine's emissive property. Reflections may be related though? I'm pretty sure reflections are shader based, but if they're run through Optifine, it may be the same issue.

I'm also still facing this issue after testing the version where changelog noted "possibly fixed". Emissives are buggy and reflections still don't work. For me particles like XP orbs should be emissive but aren't and armor isn't reflective.

Yeah the fix didn't work
Unfortunately optifine is historically impossible to work with, and it is intentionally obfuscated preventing people from easily debugging it
This is an ultra-low priority because of these factors, but if I can think of a solution I'll try it again

Oh I mean I don't even use Optifine, I'm on Sodium + Iris if that makes a difference.


Responsive slides/controls hidden after rotation/resize

Example:
Slides to show set to 7
Current breakpoint shows fewer than 7
Scroll to the end by clicking on the right arrow.
Now resize the browser to the larger breakpoint
Only the last slide is displayed and the buttons are not available.
Video showing the issue: https://www.youtube.com/watch?v=jmbvBxp4y_4
Code:
$('.items-carousel').slick({
	slidesToShow: 7,
	slidesToScroll: 7,
	responsive: [
		{
			breakpoint: 1480,
			settings: {
				slidesToShow: 7,
				slidesToScroll: 7
			}
		},
		{
			breakpoint: 1280,
			settings: {
				slidesToShow: 6,
				slidesToScroll: 6
			}
		},
		{
			breakpoint: 980,
			settings: {
				slidesToShow: 5,
				slidesToScroll: 5
			}
		},
		{
			breakpoint: 768,
			settings: {
				slidesToShow: 4,
				slidesToScroll: 4
			}
		},
		{
			breakpoint: 640,
			settings: {
				slidesToShow: 3,
				slidesToScroll: 3
			}
		},
		{
			breakpoint: 568,
			settings: {
				slidesToShow: 2,
				slidesToScroll: 2
			}
		}
	]
});

Related to #1581 , @Clearnine ? :) if so, please try with the master-branch code (not minified) :)

@simeydotme when will this bug fix be available as release version.  I prefer to use cdn instead of having the code in repository. Thanks.


Add Palau holidays

Proposed change

Add Palau holidays (ARMED_FORCES, HALF_DAY, PUBLIC).
Closes #1238.
Type of change

[x] New country/market holidays support (thank you!)
[ ] Supported country/market holidays update (calendar discrepancy fix, localization)
[ ] Existing code/documentation/test/process quality improvement (best practice, cleanup, refactoring, optimization)
[ ] Dependency update (version deprecation/upgrade)
[ ] Bugfix (non-breaking change which fixes an issue)
[ ] Breaking change (a code change causing existing functionality to break)
[ ] New feature (new python-holidays functionality in general)

Checklist

[x] I've followed the contributing guidelines
[x] I've run make pre-commit, it didn't generate any changes
[x] I've run make test, all tests passed locally

Version ~3.8.0-0 was not found in the local cache
Error: The version '3.8' with architecture 'arm64' was not found for macOS 14.4.1.
The list of all available versions can be found here: https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json

The CI/CD appears to be broken.

The CI/CD appears to be broken.

Yes, I saw this error in my repository earlier today.

The CI/CD appears to be broken. @KJhellico @arkid15r

The issue was resolved in #1778

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

49 of 49 (100.0%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
11052

Relevant Lines:
11052

💛  - Coveralls


[WIP] Disable failing tests in windows

Purpose
Disable failing tests in windows

Codecov Report

Merging #15188 into master will decrease coverage by 0.25%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master   #15188      +/-   ##
============================================
- Coverage     23.27%   23.01%   -0.26%
+ Complexity     4996     4990       -6
============================================
  Files          1304     1342      +38
  Lines         65795    66958    +1163
  Branches       8903     9094     +191
============================================
+ Hits          15311    15412     +101
- Misses        48796    49847    +1051
- Partials       1688     1699      +11

Impacted Files
Coverage Δ
Complexity Δ

...lerinalang/stdlib/filepath/nativeimpl/Resolve.java
0% <0%> (-83.34%)
0% <0%> (-2%)

...erinalang/stdlib/filepath/nativeimpl/Absolute.java
0% <0%> (-75%)
0% <0%> (-2%)

...lerinalang/stdlib/filepath/nativeimpl/Matches.java
0% <0%> (-68.75%)
0% <0%> (-2%)

tool-plugins/vscode/src/utils/logger.ts
52.63% <0%> (ø)
0% <0%> (?)

tool-plugins/vscode/src/test-runner/runner.ts
0% <0%> (ø)
0% <0%> (?)

tool-plugins/vscode/src/debugger/index.ts
0% <0%> (ø)
0% <0%> (?)

tool-plugins/vscode/src/debugger/manager.ts
0% <0%> (ø)
0% <0%> (?)

tool-plugins/vscode/src/test-runner/activator.ts
0% <0%> (ø)
0% <0%> (?)

...lugins/vscode/src/core/extended-language-client.ts
12.5% <0%> (ø)
0% <0%> (?)

tool-plugins/vscode/src/debugger/session.ts
0% <0%> (ø)
0% <0%> (?)

... and 31 more

Continue to review full report at Codecov.

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


Jsx formatter inserts extra space in code block if last character is a right paren

VSCode Version: Code 1.3.1 (e6b4afa53e9c0f54edef1673de9001e9f0f547ae, 2016-07-12T13:35:06.227Z)
OS Version: Windows_NT ia32 10.0.10586

Steps to Reproduce:

Open VSCode (with no folders open).
Create a new blank file and save as 'test.jsx'.
Enter the following into the file:
{new Date().toDateString()}
.
Format the file.
The text will be altered to:
{new Date().toDateString() }
.

This also happens with JSX embedded in regular js files, the above is simply the most straightforward way of reproducing the problem.

duplicate of https://github.com/Microsoft/TypeScript/issues/9823


Gradle 6.6.1 is unable to get testsets module on repo

Hi,
I'm trying to use gradle-testsets-plugin v 3.0.1 with gradle 6.6.1:
plugins {     id "org.unbroken-dome.test-sets" version "3.0.1" }
The build fails because gradle is unable to get the module from the repo (see build logs below).
If I understand well what is happened, gradle detected _https://plugins.gradle.org/m2/_ as a maven repo so it read gradle-testsets-plugin-3.0.1.pom file. Inside it, there was the 'published-with-gradle-metadata' key, so gradle decided to search for .module file in the same repo and it didn't exist. Because of that, gradle get HTTP 303 redirection to the jfrog repo but the plugin is not present on it and the build failed.
So my question is, why the 'published-with-gradle-metadata' key is specified in the pom file without .module file on the gradle plugins repo and what can I do to build my app successfully?
TIA,

[Gradle failure report] FAILURE: Build failed with an exception.
[16:27:43]	[Gradle failure report]
[16:27:43]	[Gradle failure report] * What went wrong:
[16:27:43]	[Gradle failure report] A problem occurred configuring root project 'evs-phoenix-sequence-view'.
[16:27:43]	[Gradle failure report] > Could not resolve all artifacts for configuration ':classpath'.
[16:27:43]	[Gradle failure report]    > Could not resolve org.unbroken-dome.gradle-plugins:gradle-testsets-plugin:3.0.1.
[16:27:43]	[Gradle failure report]      Required by:
[16:27:43]	[Gradle failure report]          project : > org.unbroken-dome.test-sets:org.unbroken-dome.test-sets.gradle.plugin:3.0.1
[16:27:43]	[Gradle failure report]       > Could not resolve org.unbroken-dome.gradle-plugins:gradle-testsets-plugin:3.0.1.
[16:27:43]	[Gradle failure report]          > Could not get resource 'https://plugins.gradle.org/m2/org/unbroken-dome/gradle-plugins/gradle-testsets-plugin/3.0.1/gradle-testsets-plugin-3.0.1.module'.
[16:27:43]	[Gradle failure report]             > Could not GET 'https://repo.jfrog.org/artifactory/libs-release-bintray/org/unbroken-dome/gradle-plugins/gradle-testsets-plugin/3.0.1/gradle-testsets-plugin-3.0.1.module?referrer'.
[16:27:43]	[Gradle failure report]                > sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[16:27:43]	[Gradle failure report]
[16:27:43]	[Gradle failure report] * Try:
[16:27:43]	[Gradle failure report] Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
[16:27:43]	[Gradle failure report]
[16:27:43]	[Gradle failure report] * Get more help at https://help.gradle.org
[16:27:43]	[Gradle failure report]
[16:27:43]	[Gradle failure report] BUILD FAILED in 15s

This is also breaking our builds here where the missing module eventually leads to hitting network security snafus as it follows redirects searching for it and eventually hits blocked urls...
I've had to work around it by manually deploying to our internal repo (which is checked before the plugin portal) with an altered pom.

i would like to better understand that, including native methods to work around that.
i am seeing a similar problem when running my gradle based builds in a non-networked fashion.


API Authentication With Laravel Passport in Laravel Lumen

Writing sample(s):
Laravel on subdomain
Proposal Submission
Proposed title of article
API Authentication With Laravel Passport in Laravel Lumen
Use keyword research to improve your article's SEO.
Proposed article introduction
In these article, I will be discussing how to use laravel lumen, a light weight and fast framework for building APIs. It a framework that comes with lesser and little dependencies as against laravel framework. I will be talking about how to setup passport for access token and authorization of each request, setting middlewares and building a basic CRUD app for testing out the passport tokens.
Key takeaways
Setting up Laravel Lumen
Setting up passport
Creating simple CRUD app
Article quality
The article is intended to be clear and precise. It is meant to be practical with illustration and code snippet. Many online articles doesn't explain with snippet and don't really explain the predefined routes in the passport.
References
Lumen website
Laravel Passport
Templates to use as guides

How To Guide Template
Software Review Template
Tutorial Template

Thank you for submitting your topic @AbdullahiAbdulkabir.
However, after some careful consideration, it struck us that this topic may be a bit over-saturated throughout other blog sites and official documentation.
We typically refrain from publishing content that is covered widely on the net or other blogs. As we're more interested in original, practitioner-focused content that takes a deeper dive into programming-centric concepts.
Please feel free to suggest an alternative topic.


Add viewId to TextInputConfiguration

In order for text fields to work correctly in multi-view on the web, we need to have the viewId information sent to the engine (TextInput.setClient). And while the text field is active, if it somehow moves to a new View, we need to inform the engine about such change (TextInput.updateConfig).
Engine PR: https://github.com/flutter/engine/pull/51099
Fixes https://github.com/flutter/flutter/issues/137344

Looks like some checks are failing, though...


Questions on Adsense integration

I am trying to add Google Adsense and I have seen no documentation talking about that. I have tried to override layouts/partials/service/google-adsense.html but it's not working.

It's not documented however working for me after taking below steps:

Add field to config.toml
disableAdsense = false

Insert partial to where-ever you want it to make it appear
{{ partial "service/google-adsense" . }}

I think @Puliyo explained well enough.
But if you don't want to touch the themes/zzo folder (for a future update) you may have to insert {{ partial "service/google-adsense" . }} to custom HTML file.
We have 4 custom HTML file to override.

body/custom-header.html
header/custom-header.html
sidebar/custom-home.html
sidebar/custom-list.html

So, If you want to insert the Adsense shortcode to the home page sidebar,

Override the root/themes/zzo/layouts/partials/sidebar/custom-list.html by making file at root/layouts/partials/sidebar/custom-list.html
Insert the shortcode {{ partial "service/google-adsense" . }} to the file(custom-list.html)

If you want to insert AdSense shortcode to another position, you may need a different HTML file to override. Then, make a new issue for it


3.0.0-beta.4 is marking properties as optional

const authSchema = z.object({
  email: z
    .string()
    .email()
    .transform(z.string(), (x) => x.trim().toLowerCase()),
  password: z.string().min(8),
});

Calling authSchema.safeParseAsync() returns data as optional.
const result: {
    success: false;
    error: ZodError;
} | {
    success: true;
    data: {
        email?: string;
        password?: string;
    };
}

Also, safeParse is not working correctly. if (result.success) is not given me the data property, if it is negated the error property doesn't come up either. if (result.success === true) is working however.
I'm using version 2.0.0-beta.30

#121 #276 #289


Publish binaries for FreeBSD

e.g. the installer currently fails with
# curl -LsSf https://astral.sh/uv/install.sh | sh
ERROR: there isn't a package for x86_64-unknown-freebsd

I'm not sure how feasible this is, but here's a tracking issue.
Related #2442

For what it's worth, you can't upload FreeBSD wheels to PyPI, so users will always need to build any dependencies from source (IIUC).

I'm a little confused since I thought we didn't have Python dependencies but that's good to know.

Ah, to clarify, we don’t have any Python deps, I just mean: for any dependencies they install with pip or uv, IIUC they will end up building from source.

Note that freebsd is not supported by github actions, we either need a custom cross compiling solution or use cirrus ci

Note that freebsd is not supported by github actions, we either need a custom cross compiling solution or use cirrus ci

Some time ago, I set up a cross-compiler targeting FreeBSD. I have not yet tried cross-compiling Rust programs myself, but that should be pretty straightforward to get working.
Here is the repository in case anyone is interested: https://github.com/AmanoTeam/Loki

https://github.com/cross-platform-actions/ lets you use Free/Net/OpenBSD in GitHub Actions. I had a good experience with it in a C project. While I haven't used it, there is also https://github.com/houseabsolute/actions-rust-cross that cross-compiles Rust.

(We're currently at zero 👍 for this issue, so in addition to this being technically challenging to maintain this is pretty low priority since there's not a lot of clear interest)

I ran into this issue today. The uv package in FreeBSD ports is really old and outdated.
Has anyone been able to successfully compile the latest release of uv in FreeBSD? I had no luck with manual buld by cloning the repo.

Can you share a log of what failed in the manual build?

Yeah of course. I'm not sure if it's anything related to uv directly.
error: failed to run custom build command for `tikv-jemalloc-sys v0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7`

uv-cargo-build.log

Could you try https://github.com/astral-sh/uv/pull/7780?

@konstin works prefectly! :partying_face: :pray:
target/release/uv version
uv 0.4.17 (c2f19dfd6 2024-09-29)


Dashboard: Dashboard hangs when trying to view logs

I was trying to look at the logs for one of our main apps. This apps generates a lot of log entries. This has occurred twice. Here is what I was doing:

Click on app name from list of apps
On next screen, from the "Process Logs" list, click one of the "worker" logs
Nothing happens, and I can't click on any other links
Eventually Chrome complains about the tab being unresponsivle and asks if I want to kill it.
Check the output of flynn -a dashboard log but don't see any errors

This only appears to be an issue with this one app.

Are you able to view the logs for this app via the cli (e.g. flynn log --process-type=worker)? Also, do you see any errors in the browser console?

Yes, viewing the logs from the CLI works.
Wow, so I just retried this again from the dashboard, and, of course, it's working just fine (even from a slow connection on a Verizon jetpack).
I'll try to reproduce this issue again over the next couple of days and post more details if I can.

Closing due to insufficient information for determining the cause of this issue

I also have this problem.
Its happen because that my app enter into crashing loop, and then the process logs filled with "CRASHED" "DOWN" "CRASHED" "DOWN"...  processes
When I'm trying to access the log of that app the browser become extremely stuck and if I wait 5 minutes it is finish to load and I will able to see the logs, but its take 5-10 minues!
I think that dynamic scroll pagination on process logs list can solve this problem.

Whats the status of this item? Im having teh same issues, and it is is like @rob137 states, when the app has allot of logs by crashed down crashed etc it hangs other apps go as aspected. Id love to add a PR but im a Rails guy... dont know Go (yet)
Thanks for the awesome job!!

I'm also seeing this and opened #4238 because I figure clearing the logs would work around it


Change the identification of the Issue tab for the R2P Form Repo

Is it possible that the 'issue' tab be changed to 'submission' or 'request' or 'submit' for this repo only?
https://git.door43.org/Door43/SourceTextRequestForm/issues/new

This would require a hack that I'm not comfortable making.  Someday we may have a custom form that will make the submission process easier, I'd rather put effort into developing that.


How to implement Deep-link

First of all, thank you for creating a great library.
I'm using this library to implement Deep-link.
Deep-link need to be able to work on any screen, so we'll need a coordinator that can be used for any screen.
Is this possible?
I'd appreciate it if you could let me know if there's any other way besides the one I said.
Thanks.

Hi!
If you mean you need to navigate to every screen in the app through deep links, yes, that would be correct. You can also create a "tree", so for instance if your deep link needs to open a specific tab and navigate from that, that should also be possible.

Oops. I realized there is no way to initialize NavigationStack with a coordinator yet. I've created an issue:
https://github.com/rundfunk47/stinsen/issues/16

Thank you for your kind answer.

Hi! There's a version 2.0.0 now that supports deep-links. Please try it out and see if you can use it in your project :)

Thank you so much! I'll try it 😆


Add a new wit-smith subcommand

This commit extracts the WIT document generation from the roundtrip-wit fuzzer into a dedicated crate and a dedicated subcommand, wasm-tools wit-smith. This is intended to behave similarly to the wasm-tools smith subcommand but it instead generates a WebAssembly binary-encoded WIT document.

cc @dicej your mention of componentize-py's testing last week inspired me to do this, doubly so after I found your testing script. I think it might actually be good to start using this sort of strategy to improve the testing story around WIT code generators by having a pipeline of "well take this generator, generate bindings, and make sure they work" as a sort of standard practice.
In that sense I was inspired to take what was already preexisting in the roundtrip-wit fuzzer in this repository and clean it up slightly. I'm curious though if you think this shape of feature would be useful for componentize-py or other WIT bindings generator testing? No need to integrate it urgently or anything like that, but I was thinking it'd be good to get onto a trajectory of having shared infrastructure if we can.

Very cool -- this will definitely be useful.  In the case of componentize-py, I'm currently generating a bunch of exported functions which call generated, host-provided imports, which echo their parameters in a tuple, and those functions are executed with arbitrary values at runtime to test round-tripping (similar to how we did component type derive macro fuzzing in wasmtime).  I'm wondering how something similar might work with wit-smith given there's no obvious way to generate host implementations for arbitrary WIT imported functions, and no way to generate guest implementations for arbitrary exported functions.
Perhaps wit-smith could have an echo mode where it behaves like componentize-py's script, in addition to the default, unconstrained mode.  componentize-py could use the former for runtime testing and the latter to at least make sure it generates a valid component with the expected type (but not try to instantiate it and call exports).

Ah yeah that makes sense, and there may not be a ton of overlap in that case now that I think more about it. Seems reasonable though to have that sort of mode!


MM-49058 : Remove unused getChannelRef from SidebarChannel component

Summary
Removed getChannelRef prop from SidebarChannel and associated areas.
Ticket Link
https://mattermost.atlassian.net/browse/MM-49058
Related Pull Requests
n/a
Screenshots
n/a
Release Note

NONE

/e2e-test

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

/update-branch

/e2e-test

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

Thanks @M-ZubairAhmed
Tested, looks good to merge
Verified channel sidebar drag drop and collapse - as before.
E2E report - no PR related failures.


Volume of a 3d polyhedron

How do I calculate the volume of a 3d polyhedron?

Hi!
That feature is not supported in pyny3d. But in general there are two different cases:

If the polyhedron is convex you can mesh the interior with tetrahedra and sum the volume of those. For the generation of the tetrahedral mesh you can use Delaunay triangulation (available in scipy.spatial)
If the polyhedron is non-convex, the problem is much harder and I suggest you look for an online library for this.

Best,
José.

@JoseAntFer  thanks for reporting.
I've got solution for both cases:
1. Convex polyhedron
Calculando com PyntCloud
from pyntcloud import PyntCloud
diamond = PyntCloud.from_file("pointcloud.ply")
convex_hull_id = diamond.add_structure("convex_hull")
convex_hull = diamond.structures[convex_hull_id]
volume = convex_hull.volume
print('Volume pyntcloud:',volume)
2. non-convex polyhedron
This case is more complex, but in stackoverflow there is a good code/solution
https://stackoverflow.com/questions/1406029/how-to-calculate-the-volume-of-a-3d-mesh-object-the-surface-of-which-is-made-up-t
Thank you,
Luiz.


MGMT-17749 Always delete the repositories resource syncs

The modal for mass-deleting repositories shouldn't allow deleting the repositories without also deleting their associated resource syncs.
The UI will show a warning to indicate that the resource syncs will also be deleted, and it will list how many RSs there are in each of the selected repositories.

I added a new commit to change the order of the actions for a device, so that it's first "edit labels", then "delete"
https://github.com/flightctl/flightctl-ui/pull/126/commits/036fdc0b4d6fd7c8f4e4b7445ed195a4ca89d5c7
Thanks to @mparram for the suggestion :)


US 01.01.01

Given:
US 01.01.01 As an organizer, I want to create a new event and generate a unique QR code for attendee check-ins.
Action
Once clicked should bring up a fragment that allows the input of [Event] infos by the user[Organizer]
Then
Store  [Event]  data in an [Event] object.
Additional components
Storyboard demonstrating the feature
Wiki entry describing feature
UML for frontend components.


[Feature Request] Event to trigger after an update and before the server starts

Feature Request
Feature Information:
I'd like to have an 'Update installed' or 'Before Server start'-Event for the Scheduler, because I need to run a specific setup script after each update (in this case for a csgo server, where it updates 'get5' and a few settings for it from a database, that might have changed).
TLDR: Event for between 'server updated' and 'server start'
I confirm:

[x] that I have searched for an existing feature request matching the description.

This actually relies on this feature: https://github.com/CubeCoders/AMP/issues/136
There's already a 'state changed' task for when the server changes between update/stop/starting/etc - but no way to specify which exact one you want to target.
Once 136 is implemented this request becomes moot so it's going to be closed since the functionality will be provided in a different way.


[Feature Request]Manage rejects

I think there should be a way to do something each time one of the filters rejects an item (e.g. put it in a rejects file that would be in the same format as the input file (+ one column if csv for an optional rejection reason).
Here is how it could look : https://github.com/greg0ire/data-import/compare/reject

Can you provide any use case for this?
I think this is the clear case where event-driven design would make sense, however adding rejection handling as a feature would not.

Use case : I'm importing a gigantic file with many objects. Some of them are invalid. I want to be able to produce a file containing rejected objects, that would be way smaller, and that I could get a corrected version of, which I could feed to my import workflow again. I would rinse and repeat until every object is imported.

@sagikazarmark I just documented that in the README , you can get a more precise idea of what I'm trying to do by looking at it. I am stopping there before committing too much to the task, feel free to tell me if you think this is useless in some way…

I think this is the clear case where event-driven design would make sense, however adding rejection handling as a feature would not.

@sagikazarmark : not sure I completely get what you mean… are you saying an event system should be used in filterItem (or next to it) so that something less specific than a reject collector should be called ? I heard during a talk that "thou shalt always create a reject file when importing", so I thought it was pretty standard a feature, that's why I thought it should be part of this library.

It seems to me that this is rather a special case of filters/itemconverters/itemprocessors (these terms seems to be the same for me).
Here are a few possible solutions that could help you using the current workflow:

Create a composite filter which accepts another filter checking data validity. When the data is invalid, do some custom logic and return to the workflow as the filter would.
Throw an ExceptionInterface which accepts the invalid data. Those are stored in the result when the workflow finishes its job.

If I understand correctly what you would like to do, the upper two could be a perfect solution for you.

 When the data is invalid, do some custom logic and return to the workflow as the filter would.

The problem here is I would rather not tie the composite filter to a particular filter. I want to be able to work with any of the filters as soon as this filter filters something out. Plus, I think a filter that does not filter but proxies the filtering, then writes something depending on the result to a reject file can no longer be named a filter.
I think reject files are pretty common in import script.
I thank you for your workaround, but I do not need them for the moment, I was just planning ahead for future projects where I might use this library. I remember having written several import scripts in the past that used that pattern.

I thought about this:
<?php

use Ddeboer\DataImport\Filter\FilterInterface;

class RejectFilter implements FilterInterface
{
    /**
     * @var FilterInterface
     */
    protected $delegate;

    public function __construct(FilterInterface $filter)
    {
        $this->filter = $filter;
    }

    public function filter(array $item)
    {
        $return = $this->delegate->filter($item);

        if (!$return) {
            // handle rejection
        }

        return $return;
    }

    // some other code
}

It does not tie anything. You can create an abstract one with a whatIfRejected method. This and the thing you are proposing are the same, the difference is that using a composite filter is a generic solution. However I would still go with the exception solution, since invalid data is exceptional.
Also, I strongly disagree with your last point. Reject files CAN be a solution, especially when you expect to have (lots of) invalid data AND you want to handle them accordingly. For a few exceptional cases it is better to raise some events, that will lead to handling that case specificly.
To sum up, I would go with a more generic solution as this is tied to a specific case of importing/exporting.
If you insist on a solution like this, you still can create a customized workflow, but I doubt that there is place for this in the core.

It does not tie anything.

I was not clear enough : I was not talking about tying a class to another, but tying your collector to one instance of a filter. It does not work with several filters. Imagine you have an import with n rows, and only k rows you want to get the rejection reason for every rejected row, and make damn sure you know the reason for exactly n - k rows. Getting a file in the import format, with n - k rows that can have additional fields like "rejecting filter class name", or "rejection reason" is a good way to do that.

invalid data is exceptional.

That is right, but a row can be rejected for other reasons than validation. I still want to know the reason, because I want to make sure everything went according to the plan.

To sum up, I would go with a more generic solution as this is tied to a specific case of importing/exporting.

That might be a valid point, and if one of the maintainer ( @Baachi ? @ddeboer ? ) feels like you, I'll close the issue and the P.R. Maybe reject files are not that common, it is hard to know (google only yields 24 000 results for "https://encrypted.google.com/search?hl=en&q=import "reject file"")

Ah, I get it now. However I still feel this could go into a decorator of workflow (or something like that) instead of making it part of the core API.

Ah, I get it now.

Great!

However I still feel this could go into a decorator of workflow (or something like that) instead of making it part of the core API.

I get your point, if other people feel like you, I'll close that. I don't want to clutter this library with a feature I will be the only one to use.

ping @Baachi

@greg0ire I'm unsure about this, if its belong to the core. The workflow class is already really complex. I would leave this PR open and if #125 is merged (i hope) we can create a new step which contains this logic.
Are you fine with that?

Ok, thanks for the feedback!

Yeah, steps would be the perfect place to implement custom logic, like this.

@greg0ire now, that steps are implemented, I would be curious how you implement this reject filter. Also, the issue could probably be closed (along with the PR?)

Sure!


Optional QR Code for Article URI

What it says on the tin, really. Have added QRious to provide a QR link to the article URL as an option. Default sticks the QR code over on the right, but I used a custom css on my end to shift it left. I went right for this because otherwise there's a big black empty space where the canvas object goes thanks to the margin I put on there.
Also fixed a minor bug with article ID/Name not being populated. I think the output JSON from the newsapi no longer includes the description/content any more, so I also added a headline.html template that might be useful with less information in there.
Hopefully it's a useful addition, but if not, no worries - just thought it might be useful to someone else.

Merging to Dev branch to test and compare. Once happy will Merge to main.


Bump rsa to 0.9

@paolobarbolini WDYT about bumping MSRV to 1.65 on 1.10? It fits the >= 6 months policy, and if we don't plan a 0.11 release soon I think it is better to keep the dependencies up to date as much as possible on the 0.10 branch.

I wouldn't mind the MSRV bump, but I was also thinking of releasing 0.11 soon. I would have liked to make it into a bigger release, but I haven't even had time to plan all of the changes I'd like to make, let alone do them, so for now it's not worth it to hold on to changes that dependants could benefit from.


DBZ-4052 Updates properties table in SQL Server connector doc

DBZ-4052
This change updates entries in the table of configuration properties for the SQL Server  connector based on the recent review.
Need to clarify whether the discrepancies in the default value for max.queue.size are correct:

The Db2, MongoDB, MySQL, Oracle, and SQL Server docs say 8192.
The PostgreSQL docs says 20240.

Tested in local Antora and downstream builds.
Please backport to 1.9 after merging, if necessary. Thanks.

@jpechane, given you discussed this with Rob before, I'd leave this to you to review and merge. Thx!

@roldanbob Applied, thanks a lot!


Remove meters of deleted resources (#2633)

Cherry-pick of https://github.com/knative-sandbox/eventing-kafka-broker/commit/5370d2922b6384c8b677f1d4c8e529dd5de5f2d0
Signed-off-by: Pierangelo Di Pilato<EMAIL_ADDRESS>

/assign @aliok @matzew

/retest

/retest


New Sockets No Longer Automatically Syncing

When a new socket joins a room, they are no longer automatically syncing to the host as they should be.

Resolved. Function was accidentally deleted in migration. Host js file created.


RFC-0001 - Llama Stack

As part of the Llama 3.1 release, Meta is releasing an RFC for ‘Llama Stack’, a comprehensive set of interfaces / API for ML developers building on top of Llama foundation models. We are looking for feedback on where the API can be improved, any corner cases we may have missed and your general thoughts on how useful this will be.
Ultimately, our hope is to create a standard for working with Llama models in order to simplify the developer experience and foster innovation across the Llama ecosystem.

General Opinion: I feel there is a need for a 3b or 4b base model that makes it easier / faster to do inference on very low end hardware or CPU (which is my goal). The benefits would be less space and resources needed at the cost of accuracy / quality, but fine tuning that for the end user's use case could be a game changer. If quantized the models would be smaller and may be less usable for text generation, however it still could be very good for finding probabilities for tokens and be used in applications such as compression of text (llm-zip), logs, binaries and structured data yielding high compression ratio.

Thanks for your comment @trholding. Completely understand the need for smaller models. In this release, we have provided FP8 quantized versions for our largest model (405B). In addition, we have released both dynamic-fp8 inference code as well as inference code for fp8 persisted weights part of the inference implementation. Please check them out.

Not sure this is the appropriate place for this, but a general question about the agentic framework: is it supposed to be a standalone agent framework or a language definition for other frameworks to plug into?

The Universal Axiom Organic Transformer Model offers a transformative approach to enhance the Llama Stack API:
Dynamic Adaptation: Implement auto-scaling and continuous learning interfaces.
Balanced Growth: Incorporate Fibonacci-inspired scaling for system stability.
Ethical Alignment: Integrate ethical checkpoints and transparency layers.
Multidimensional Processing: Develop multi-scale attention mechanisms for complex temporal data.
Bias Mitigation: Implement an Axiomatic Subjectivity Scale for quantifying and reducing biases.
Holistic Integration: Design interconnected architectures reflecting Impulses, Elements, and Pressures.
Quantum-Inspired Algorithms: Enhance processing with probabilistic and entanglement-inspired methods.
This Axiom-based approach transforms Llama Stack into an evolving, ethically-aligned ecosystem that adapts to user needs and technological advancements.
For a deeper dive into how The Universal Axiom can revolutionize AI development and foster true innovation, visit:
https://www.epiphanyengine.ai
Discover how this framework can elevate your projects beyond traditional AI paradigms.

I would like to share my wish list for your considerations:
Models

Restricted Prediction: It would be awesome to have native and efficient support for restricted prediction along with a pre-defined schema, such as JSON schema support in llama.cpp grammars. This could boost the usability of the models for generating reliable structured data.

Fine-tuning

Continued Pretraining: Maintaining the original data distribution during continued pre-training is tricky. A usual approach is to mix sampled pre-training data with new training data. If Llama models could provide access to a sampled pre-training dataset, it would make this process a lot smoother and ensure consistency.

Knowledge Distillation: The 405B model is amazing. I wish that we could have an E2E knowledge distillation tool/pipeline/API to fine-tune using token distributions from teacher models.

RS/DPO: It is good to know that Llama3.1 has switched from RLFH to Reward Shaping (RS) and Direct Preference Optimization (DPO) for optimizing preferences. It would be amazing to offer sample fine-tuning recipes or best practices that could help us fine-tune Llama3.1 models effectively and avoid overfitting.

Agentic

MCTS + LLM: There have been some cool attempts to use Monte Carlo Tree Search (MCTS) to boost the logical reasoning capabilities of LLMs. However, there’s still a gap when it comes to tools or viable paths for tightly integrating MCTS with LLMs, except for some rumored projects in closed-source models. Creating a robust tool or interface for this integration would be a huge win for AI agent developers.

OpenAI recently released the Assistant API.

An Assistant is an LLM equipped with some tools. This allows the assistant to automatically select the right set/sequence of tools given a user request. This means an AI developer doesn't need to define when to select what tools.
Moreover, the user chats with an assistant within a thread. This allows the Assistant to use the prior context (by default) when continuing to chat. In the absence of threads, an AI developer should include all the relevant prior context in the follow-up prompts - thus wasting tokens.

AFAIK, LLama already supports automatic tool usage. But, it would be great if it can also support threads.

@anoopkatti Thanks for calling out the Assistants API. I've been doing research on it using a mini framework called Experts.js. As I understand it, any model that supports function calling should be able to support a multi ai agent system such as this. So about Threads and how that API works:
First, the API is very "cloud resource" oriented. Meaning, instantiating an assistant creates a resource which API uses on the  backend during inference. Second, threads ( managed memory ) is a cloud resource. It is really cool too and I'm seeing it pop up in several places, like Amazon Bedrock a few days ago. I think this is important because knowing the boundaries might help Llama Stack know where to implement things. For example, were you thinking llama inference start would be where the managed thread happens?

Ideally the API matched OpenAI's and Claude's for interoperability reasons. Of course, adding additional things is great! : ) But, at least part of the API can match the other frontier models, we can use them interchangeably collaboratively etc.

I disagree with the need for the API to match OpenAI/Anthropic, because they're using arrays of structs instead of structs of arrays, and it's well established that the latter data structure is better for performance.
Status Quo: Array of Structs (Object Oriented)
dialogue = [
    { "role": "system", "content": "You are a helpful assistant." },
    { "role": "user", "content": "What's the weather in SF?" },
]

Improved Paradigm: Struct of Arrays (Data Oriented Design)
dialogue = {
    "role": ["system", "user"],
    "content": ["You are a helpful assistant.", "What's the weather in SF?"]
}

in my experience, the performance benefit of this seemingly minor change can be vast, as there are way fewer memory allocations in the hot loop. If the number of messages is known in advance, the entire lists can be allocated upfront, for even greater benefit.
Yes, it is possible to pass the wrong length of list, but this can return a clear and helpful error message, and it's undoubtedly possible to screw up the other way, too.

Is there a good reason not to make both approaches available? At some level the problem of interoperability needs solving. I guess you see it better solved one level up in libraries?

I disagree with the need for the API to match OpenAI/Anthropic, because they're using arrays of structs instead of structs of arrays, and it's well established that the latter data structure is better for performance.
Status Quo: Array of Structs (Object Oriented)
dialogue = [
    { "role": "system", "content": "You are a helpful assistant." },
    { "role": "user", "content": "What's the weather in SF?" },
]

Improved Paradigm: Struct of Arrays (Data Oriented Design)
dialogue = {
    "role": ["system", "user"],
    "content": ["You are a helpful assistant.", "What's the weather in SF?"]
}

in my experience, the performance benefit of this seemingly minor change can be vast, as there are way fewer memory allocations in the hot loop. If the number of messages is known in advance, the entire lists can be allocated upfront, for even greater benefit.
Yes, it is possible to pass the wrong length of list, but this can return a clear and helpful error message, and it's undoubtedly possible to screw up the other way, too.

BEFORE installing the toolchain, it would be nice to be able to 1-Read the api docs and 2-Read the example notebooks that use the api

Is there a good reason not to make both approaches available? At some level the problem of interoperability needs solving. I guess you see it better solved one level up in libraries?

perfectly reasonable to support both, and pandas/arrow/polars are up to the task

The current OpenAI REST APIs make sense from a simple send-text-get-response standpoint, but as we consider other modalities (e.g., audio or video, as discussed in the tech report) a bidirectional streaming API seems like it would be very valuable. Also, given the modality-agnostic approach taken by Llama 3.1, there seems to be a lot of benefit in allowing the API to accept Llama 3 embeddings directly, which would enable others to add their own modalities.

BEFORE installing the toolchain, it would be nice to be able to 1-Read the api docs and 2-Read the example notebooks that use the api. The project's readme in github would be a nice place to provide the link to those.

It's open source :) You can contribute these changes and issue a PR.

Is there a good reason not to make both approaches available? At some level the problem of interoperability needs solving. I guess you see it better solved one level up in libraries?
Objects of arrays seems less human readable and harder to edit as the objects and arrays get bigger.

I disagree with the need for the API to match OpenAI/Anthropic, because they're using arrays of structs instead of structs of arrays, and it's well established that the latter data structure is better for performance.
Status Quo: Array of Structs (Object Oriented)
dialogue = [
    { "role": "system", "content": "You are a helpful assistant." },
    { "role": "user", "content": "What's the weather in SF?" },
]

Improved Paradigm: Struct of Arrays (Data Oriented Design)
dialogue = {
    "role": ["system", "user"],
    "content": ["You are a helpful assistant.", "What's the weather in SF?"]
}

in my experience, the performance benefit of this seemingly minor change can be vast, as there are way fewer memory allocations in the hot loop. If the number of messages is known in advance, the entire lists can be allocated upfront, for even greater benefit.
Yes, it is possible to pass the wrong length of list, but this can return a clear and helpful error message, and it's undoubtedly possible to screw up the other way, too.

Cool idea though not necessarily true. Performance benefits will be related to how this data is accessed. SoA is cool, but AoS is more "readable". Most users of LLM implementations are not hardcore programmers and don't care about incremental performance benefits IMHO.
Anyway, a case can be made to use SoA in the "background" and let users write AoS if such performance benefits are actually meaningful.

It'd be great to add human-readable prefix to all the IDs in the agentic system, for e.g.
session_id = "sess" + str(uuid.uuid4())

https://github.com/meta-llama/llama-agentic-system/blob/b266c1c62bea3c184a93b1bb295468a41d7b555b/llama_agentic_system/agentic_system.py#L204

BEFORE installing the toolchain, it would be nice to be able to 1-Read the api docs and 2-Read the example notebooks that use the api. The project's readme in github would be a nice place to provide the link to those.

It's open source :) You can contribute these changes and issue a PR.

!00% - if you would like to suggest examples or demos that could be built on Llama Stack please do. And of course please contribute. We can collaborate to showcase any work as well :)

This is out of scope for llama-toolchain, but I want to point out a problem we have been having: There isn't a comprehensive solution that facilitates the post-training pipeline.
Across many industries, the SMEs who would be needed to annotate data are non-technical. So some kind of UI is needed. (Yes there are many annotation software with various of pros and cons.) Then there is data versioning and the data pipeline for just the labeled data. (Again yes there are tools that do this). Then there is the fine-tuning and evaluation step. (and yes there are separate tools for this). So all of the tools are there, but stringing them altogether is a challenge, and with a lot of these tools in development, everything is in flux. I would love to see a future where the llama stack includes all the steps in post training so that it can become the gold standard for continuous post-training. I realize that this is not a problem we can solve today, but I'm looking at the big picture and Mark's vision, and I think some kind of gold standard process for doing post-training would achieve Mark's vision.

Cool idea though not necessarily true.

only one way to find out!!! here's a benchmark and results.
tinkering around, looks like a minor 5-7% speedup generating text with faker with arrays over dicts
Mostly a rehash of the good old "vectorization is faster than loops" everyone already knows about.
caveats:

not using llama. using faker
not straightforward to vectorize llama like this (or is it?)

code: https://gist.github.com/bionicles/4b31b01395c9b522ef17111d8a642aaf
results:

thanks for the fun challenge!

APIs for embedding Llama models into cross-platform agentic apps
Hello, I am a maintainer at CNCF / Linux Foundation’s WasmEdge project. We are building a lightweight and cross-platform runtime for Meta Llama models.
A modern agentic application could require all the key components to be tightly-coupled in order to deliver the optimal user experience.

a specific version of the model that is best fit for the application tasks
a specific quantization for the model
a specific version of the inference runtime (eg tokenizer that matches the model version)
hardware and software drivers required by the inference runtime
customized prompts for agent roles
model-specific and prompt-specific implementation of functions in tool use

Therefore, we would like to see the Llama Stack standardize APIs that could embed the llama models into applications. And we need to have these APIs supported in multiple programming languages.
We made some initial progress with the Rust API for LlamaEdge. It allows developers to create their own LLM apps, such as a RAG enabled and search-enabled API server, in Rust, and have the app compiled to Wasm for cross-platform (portable across GPUs) deployment.
What do y’all think?

@raghotham This is a great initiative! Besides the inference in the model development cycle, I am wondering whether you have the plan to include deployment into the cycle, since people may have to consider authentication, scalability, cloud native with traffic management, etc. which are typically required during real deployment.

APIs for embedding Llama models into cross-platform agentic apps
Hello, I am a maintainer at CNCF / Linux Foundation’s WasmEdge project. We are building a lightweight and cross-platform runtime for Meta Llama models.
A modern agentic application could require all the key components to be tightly-coupled in order to deliver the optimal user experience.

a specific version of the model that is best fit for the application tasks
a specific quantization for the model
a specific version of the inference runtime (eg tokenizer that matches the model version)
hardware and software drivers required by the inference runtime
customized prompts for agent roles
model-specific and prompt-specific implementation of functions in tool use

Therefore, we would like to see the Llama Stack standardize APIs that could embed the llama models into applications. And we need to have these APIs supported in multiple programming languages.
We made some initial progress with the Rust API for LlamaEdge. It allows developers to create their own LLM apps, such as a RAG enabled and search-enabled API server, in Rust, and have the app compiled to Wasm for cross-platform (portable across GPUs) deployment.
What do y’all think?

I want to expand on the requests of model specificity by suggesting bidirectional streaming and model interpretability. Devs using API integrations are requesting a more dynamic dataflow and processing. Interpretability is another request I’ve been consistently receiving from devs. An additional example is converting computer language into human readable for prompting.
Specifically enhancing:

global and local explanations, to understand overall model behavior
identify minimal input changes leading to different outputs
determine cause and effect between inputs and outputs

To support these enhancements, I’d love to support in the following:

standardizing interpretability metrics
integration with existing open-source tools

Does the Llama model also handle speech recognition or associating with speech utterances?
As a fundamental question, where is the manual for the Llama Stack APIs?
I could only find the "Agentic component of the Llama Stack APIs" and the "Model components of the Llama Stack APIs".

@mberman84

Not sure this is the appropriate place for this, but a general question about the agentic framework: is it supposed to be a standalone agent framework or a language definition for other frameworks to plug into?

A bit of both I guess. The API represents a language definition but Meta will certainly provide one implementation of it which you can then think of as a "framework". But the goal is that you will have multiple providers providing implementations abiding to the same general API.

@tanliboy
Re: structured / guided decoding -- yes, that's something we should incorporate. It's a really good point. We will have an update to the RFC around this soon.
Re: fine-tuning -- thanks for this feedback. All your points here are very salient and insightful, thank you! We hear the general sentiment from multiple folks. There's no specific update here unfortunately at this time, but we are actively thinking about these points.

@juberti
Yeah great point. We did think about whether we should think about Websockets or WebRTC APIs but decided to incorporate it as a future step. There is already quite a bit here to specify / accomplish. As we have models which need to use these features, these extensions will arrive.

@tantanchen

Across many industries, the SMEs who would be needed to annotate data are non-technical. So some kind of UI is needed. (Yes there are many annotation software with various of pros and cons.) Then there is data versioning and the data pipeline for just the labeled data. (Again yes there are tools that do this). Then there is the fine-tuning and evaluation step. (and yes there are separate tools for this). So all of the tools are there, but stringing them altogether is a challenge, and with a lot of these tools in development, everything is in flux. I would love to see a future where the llama stack includes all the steps in post training so that it can become the gold standard for continuous post-training. I realize that this is not a problem we can solve today, but I'm looking at the big picture and Mark's vision, and I think some kind of gold standard process for doing post-training would achieve Mark's vision.

Our goal is to certainly make the fine-tuning, alignment and evaluation portions simpler. We hope that we can cover the 80-85% most common use cases via the proposed APIs. But in general, we would not be able to completely subsume all parts of the post-training pipeline since it is rather customized to each task.

@juntao

APIs for embedding Llama models into cross-platform agentic apps
A modern agentic application could require all the key components to be tightly-coupled in order to deliver the optimal user experience.

a specific version of the model that is best fit for the application tasks
a specific quantization for the model
a specific version of the inference runtime (eg tokenizer that matches the model version)
hardware and software drivers required by the inference runtime
customized prompts for agent roles
model-specific and prompt-specific implementation of functions in tool use

We made some initial progress with the Rust API for LlamaEdge. It allows developers to create their own LLM apps, such as a RAG enabled and search-enabled API server, in Rust, and have the app compiled to Wasm for cross-platform (portable across GPUs) deployment.
What do y’all think?

We are looking into the end-to-end pipeline of finetuning, aligning llama models, registering the new models, to then be served for applications. We would love to chat more to see how we can learn from and incorporate the Rust API you have built.

@hshen14

@raghotham This is a great initiative! Besides the inference in the model development cycle, I am wondering whether you have the plan to include deployment into the cycle, since people may have to consider authentication, scalability, cloud native with traffic management, etc. which are typically required during real deployment.

While we will provide a way to register the finetuned/aligned models in the distribution, we will not be focusing on deployment. We hope to understand better from the community what patterns are used for deployment before we take on the effort of defining a deployment service.

@ashwinb
Thanks for the feedback on my request, glad to hear that streaming is on the long-term roadmap.
In the short term, do you think exposing an API that could directly accept input embeddings (eg from a pre-embedded text input or a multimodal adapter) would be possible?

No Apple Silicon Support?

it's true now

Applie Silicon Support, Arm Architecture has been supported

I wrote astra assistants which is open source and drop-in compatible with assistants api and supports threads, assistants, vector_stores, etc.
Maybe there's a way to collaborate / integrate with llama stack?

I'm going  on my way first I will be home in a five minute or so two minutes or so less than five an


Setup environment

Overview
Create a standalone dart library with wallet-core lib implementation.
Outcome
Decoupled blockchain implementation for our flutter app
Requirements

Semantic versioning of this library major.minor.patch
automatic unit and interrogation tests
automatic deployment and versioning

Task list

[x] #2
[x] #6
[ ] #4
[x] #5

Testing now release 0.0.3 -> publish to pub.dev cd

Automatic pushing to pub.dev successfully implemented!

Reopened due to #4 reopening


Feature Discussion

Hi Kevin,
in my pull request https://github.com/kevinzakka/obj2mjcf/pull/12 you asked about other features I could find useful for this library.
I thought about creating kind of a feature-request or issue in here where others can more easily add their comments.
A few thoughts on obj2mjcf I would have are following:

absolute paths: Add the ability to create the Mujoco XML-Files with absolute paths to the actual object files, I found that they usually work better than relative paths, even if one has to recreate the xml files each time you move the files.

Creating URDF-Files: I know obj2mjcf's main purpose is for Mujoco, one could, however, easily add methods to extend it for URDF-files compatible with pybullet for example

Configurable node names in the XML Files: right now with the YCB Object files all the obj-files are called textured.obj. obj2mjcf then creates a folder textured with an textured.xml and names the body, model, materials and similar all something with textured. This causes problems when using the XML-Files since multiple nodes, for example mesh-nodes, with the same name is not allowed. (well, that would not be a problem if all the textured.obj files were named after their YCB Object, but they aren't). So it would be interesting to look into how to make these names configurable. Even more so if one would like multiple instances of one YCB-Object in a running Mujoco Simulation

Configurable Mass, Solimp and Solref for the XML File, I saw that you added the free joint and some default values for physics, but depending on the context one might require specific values here. The mass could then possibly even be applied per subcomponent after the decomposition

Alternative Decompositions: Of course you can not integrate every single Decomposition Library there is into this Library, but I found, in particular with the YCB Objects, a lot of the VHACD Decomposition does not make too much sense. I had better success with using the PyBullet VHACD Version. In terms of metrics/volume error the PyBullet Version might not be much better, but the chosen convex subcomponents make much more sense than the VHACD 4.0. This could be a matter of configuration but I attempted optimizing the VHACD 4.0 configuration to achieve as good results as with the pybullet version but I was unsuccessful

Just some examples here:
First the original Mustard Bottle, then PyBullet VHACD with default parameters, and VHACD 4.0 with default parameters:

Original
Pybullet VHACD
VHACD 4.0

I would be very happy to work with you on these tasks since I now have some experience with the topic, especially with the YCB Objects, and it would be helpful for my experiments too ^^
Edit: Put the Images into a table to declutter

A small comment to creating a Mujoco Database similar to your https://github.com/kevinzakka/mujoco_scanned_objects
I think that is a great Idea, however, I found that a lot of the settings, especially of the convex decomposition greatly depend on the specific use-case. Creating a widely useful dataset while supplying the tools for creating a custom dataset might make sense. (which I guess you are kind of doing with obj2mjcf)

Hi @nicolas-schreiber, thank you so much for starting this discussion!
Absolute paths and configurable naming should be pretty straightforward to add and I agree that supporting them is a good idea. URDF support does feel a little out-of-scope but I also see its usefulness.
Regarding configuring things like inertial parameters and more MuJoCo-specific things, I'm still a bit torn. On the one hand, I have indeed run into cases where it would have been very useful and I don't know what the API to support such a use case would be (maybe parsing it from a yaml file?). However, it does feel like this is transcending the scope of a pure "mesh converter" and sometimes, tuning these parameters is more of a back and forth process where you actually use the output XML in simulation and tune from there (at which point you're done with obj2mjcf).
Regarding V-HACD, I completely agree. I'm actually extremely unhappy with some of the results (I tried a bunch of YCB objects this weekend and it was a disaster). It seems the new update that was pushed (v4) performs worse than the older version, yet the authors claim the contrary (e.g. see this thread).  I think trying out the older version (which I think pybullet uses) is an excellent idea.
Finally, I think more generally we should add extensive unit tests with a bunch of OBJ files ranging from simple to very "edge case" and make sure updates to obj2mjcf correctly handle them.

Hi @kevinzakka, thank you!
Yeah, I totally understand the issues with defining the MuJoCo Specific parameters, and I also do not yet fully understand their impact, I'd just suggest to add an argument to set them commandline-side when using obj2mjcf. One could easily do that afterwards by hand, but it might make automation easier.
Regarding V-HACD, as far as I understood PyBullet is still using V-HACD 2.0, but they fully integrated the V-HACD Code into their repo so there could be some changes to the original 2.0. I am now using mostly the pybullet version with default config and am fairly happy with it. It also seems to greatly reduce the amount of subcomponents compared to 4.0 with better looking results. I could create a testing branch of obj2mjcf that uses the PyBullet version if that's ok for you.
The main code of the pybullet decomposition consists of only these four lines:
import pybullet as p
p.connect(p.DIRECT)
p.vhacd(in_path, out_path, log_path, *args)
p.disconnect()

And all configuration options can be found here on side 59: https://raw.githubusercontent.com/bulletphysics/bullet3/master/docs/pybullet_quickstartguide.pdf
This keeps everything in Python, possibly also more convenient than calling the TestVHACD executable using a subprocess
Regarding Unit tests, I fully agree that they would be very useful for consistent and safe development, they could also help us to better evaluate the quality of different convex decompositions

I could create a testing branch of obj2mjcf that uses the PyBullet version if that's ok for you

That would be absolutely lovely, go for it! I'll merge the branch if we decide it's better :)

Got it working here: https://github.com/nicolas-schreiber/obj2mjcf/tree/feat/pybullet_vhacd
I should do a bit more documentation and testing, seems to be working with the XML Generator and the other obj2mjcf options. Still got a lot of log outputs in the console though

Hi @nicolas-schreiber, sorry last week was very busy. I'll check this out sometime this week :) Cheers!

Hey Kevin, I'd definitely be interested in a URDF conversion -- any plans to continue with this?


Feature request: Add ability to "eject" a set of debug logs

The current pattern of explicitly enabling debug logs via the DEBUG= environment variable works well for server environments. But when using the debug module in a test environment or with a CLI, it is helpful to be able to "eject" a set of debug logs into either a log file or to send them remotely to a bug tracker.
A good example of this is how npm runs silently (usually), but on failure, it generates a npm-debug.log file in the working directory with its hidden debug log messages. It would be nice to have this as a built-in feature in debug rather than implementing it in each individual use case.
I could possibly open a PR for this after some discussion around the API/design - if this seems like a feature that you would like to have in debug

Could you better explain what you mean by this? You mean you want to redirect certain namespaces to different places (e.g. a file)?

Yeah, pretty much. Something like this:
https://github.com/hoppjs/hopp/blob/master/packages/hopp/src/utils/log.js#L86
https://github.com/hoppjs/hopp/blob/master/packages/hopp/src/utils/log.js#L127
But pushing into an array is a terrible idea (unless there is a max size).

The equivalent of something like this:
const debug = require('debug')('my-app')
const fs = require('fs')

const logFile = fs.createReadStream('my-app-debug.log')
debug.log = msg => logFile.write(`${msg}\n`)

But there are a few issues with this:

Can't redirect logs that don't belong to this logger

i.e. every module in our app currently creates different namespaces but following the pattern foko:... so I'd like to be able to just say foko:* -> log-file in a single place instead of doing this per-file.
also want to be able to redirect logs from other 3rd party namespaces like nightmare

Perhaps something along these lines:
const createDebugger = require('debug')
const debug = createDebugger('my-app')

createDebugger.stream(['my-app:*', 'nightmare'])
  .pipe(fs.createReadStream('my-app-debug.log'))

See #556 :)


Refactor audiostream into a lockless buffer.

For some reason anything less than 16k
doesnt work
Since I am using overflow tricks with my ring buffer,
the buffer must be powers of two
I believe this patch fixes some hitching

made the feedback worse
i will have to test it with separate devices.

I am going to close for now. and leave the branch open


Centos7.6 Could not find a version that satisfies the requirement waymo-open-dataset-tf-2-11-0==1.5.2

My environment
centos 7.6
python=3.8

Same here. @alexgorban Any ideas? I can install tf 2.6 version but not 2.11.

 I have the same problem

I have the same issue. Cannot install on Centos server. Please help


Add command to list wallets

for this feat, what info should output contain?
case 1 listwallets:  bitcoin-cli  -conf=bitcoin.conf listwallets
[
  "ord"
]

case 2 listreceivedbyaddress: bitcoin-cli -conf=bitcoin.conf listreceivedbyaddress 0 true
[
  {
    "address": "bcrt1pzlmlufu6fp6m0ky7l4p527qrtqsnxcd20an2vz60w32676r5yrpsf3dxme",
    "amount": 0.00000000,
    "confirmations": 0,
    "label": "",
    "txids": [
    ]
  },
  {
    "address": "bcrt1pr2t5wgc0a692el9p9d5fr3398w0p9x7xnk8untmunql20d7vvwjst6kt26",
    "amount": 0.00000000,
    "confirmations": 0,
    "label": "",
    "txids": [
    ]
  },
  {
    "address": "bcrt1pxq750yhct0las72zmqzfnh8nsy8ut72m0pmt6njsq9pknylsqs2q5v6pu3",
    "amount": 0.00000000,
    "confirmations": 0,
    "label": "",
    "txids": [
    ]
  }
]

or other utxo info

It should probably just be a wrapper around bitcoin-cli listwalletdir (shows loaded and unloaded wallets).
ord wallets
[
    "ord"
    "hodl"
     "throwaway"
     "test"
]

If you feel really motivated you could check if a wallet is an ord wallet by looking at the descriptors and then only show those and not normal Bitcoin Core wallets.
Let me know if you have any further questions!

I plan to code an ord-wallet-extension, this extension only depends on ord server.

Only wallet name

Maybe ord wallet --list is better choice ?

I like ord wallets. It's short and simple