Revise approved/invite to proposal email text and hyperlink

When a concept note is invited for a proposal two e-mails are sent out:

The determination itself with the determination message. This is sent for every determination. We want it to look like this:

Dear Jane Doe,

Your application has been reviewed and the outcome is: Approved

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. …

Read the full determination here: http://apply.otf.test/apply/submissions/1233/determination/6543/

Here is the link to start creating your proposal: http://apply.otf.test/apply/submissions/1233/
If you have any questions, please submit them here: http://apply.otf.test/apply/submissions/1233/#communications

If you have any issues accessing the submission system or other general inquiries, please email us at<EMAIL_ADDRESS>
Kind Regards,
The OTF Team

The invite for proposal invite e-mail. We want it to look like this:

Dear Jane Doe,

We’ve reviewed your Concept note and think it could be a good fit for OTF funding. We would like to invite you to submit a Proposal with more details about your project.

You can find more information about what we’d like to see in your Proposal here: https://guide.opentech.fund/general-funding-guidelines

The system will allow you to save a draft of your Proposal as you work on it. When you feel it is ready for our review, please click the “Submit” button and we’ll know to take a look at it. We’ll reply to you with feedback on your Proposal as quickly as possible.

Here is the link to start creating your proposal: http://apply.otf.test/apply/submissions/1234/
If you have any questions, please submit them here: http://apply.otf.test/apply/submissions/1234/#communications

If you have any issues accessing the submission system or other general inquiries, please email us at<EMAIL_ADDRESS>
Kind Regards,
The OTF Team

Priority

High (keeping you from completing day-to-day tasks)

Affected roles

Staff
Applicants

When a concept note is invited for a proposal two e-mails are sent out:

The determination itself with the determination message. This is sent for every determination. It look like this.

Dear Jane Doe,

Your application has been reviewed and the outcome is: Approved

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. …

Read the full determination here: http://apply.otf.test/apply/submissions/1233/determination/6543/

You can find more information here: http://apply.otf.test/apply/submissions/1233/
If you have any questions, please submit them here: http://apply.otf.test/apply/submissions/1233/#communications

If you have any issues accessing the submission system or other general inquiries, please email us at<EMAIL_ADDRESS>
Kind Regards,
The OTF Team

The invite for proposal invite e-mail. It look like this.

Dear Jane Doe,

We’ve reviewed your Concept note and think it could be a good fit for OTF funding. We would like to invite you to submit a Proposal with more details about your project.

You can find more information about what we’d like to see in your Proposal here: https://guide.opentech.fund/general-funding-guidelines

The system will allow you to save a draft of your Proposal as you work on it. When you feel it is ready for our review, please click the “Submit” button and we’ll know to take a look at it. We’ll reply to you with feedback on your Proposal as quickly as possible.

You can find more information here: http://apply.otf.test/apply/submissions/1234/
If you have any questions, please submit them here: http://apply.otf.test/apply/submissions/1234/#communications

If you have any issues accessing the submission system or other general inquiries, please email us at<EMAIL_ADDRESS>
Kind Regards,
The OTF Team

@fourthletter The line "You can find more information about what we’d like to see in your Proposal here" is already present it seems.

@fourthletter The determination e-mail links to the concept note, not the new proposal. So saying "Here is the link to start creating your proposal" is incorrect.

I change the determination e-mail text to "Link to your application:" instead.

The PR is being deployed to test now, will be done in a few minuts and then you can test.

@frjo I edited the email content above.
We are directing applicants directly to the submission: https://test-apply.opentech.fund/apply/submissions/38/
Could they start drafting their proposal using the above link? Or does the applicant need to be directed here:

@fourthletter A bit unclear if you want to send them to the dashboard or directly to the proposal? I think a direct link like now is better.
Sent with GitHawk

@frjo
In the email #2, the url after the sentence "You can find more information about what we’d like to see in your Proposal here:" is blank and does have the intended url to the guide.

The guide url setting was missing on test, I added it a little while ago.
Sent with GitHawk

On live it had until today a small spelling error in the setting name. Fixed now.
Sent with GitHawk

@frjo Thank you! 💥


Incorrect side-effect computation

We use custom state manager with modifiers proxy:
function setShowPreloader(data, payload) {
	data.view.showPreloader = payload
}

function setImageSrc(data, payload) {
	data.src = payload
}

const bindState = (state, modifiers) => {
	const res = {}
	for (const key of Object.keys(modifiers))
	{
		res[key] = payload => modifiers[key](state, payload)
	}
	return res
}

const state = {
	view: {
		showPreloader: true,
	},
	src: '',
}
const controller = bindState(state, {
	setShowPreloader,
	setImageSrc,
})
controller.setShowPreloader(false)
controller.setImageSrc('http://localhost/image.png')
console.log(state.view.showPreloader, state.src) // expected: false 'http://localhost/image.png'
                                                 // received: false ''

after compilation setImageSrc will be removed (but setShowPreloader not).
repro:
https://closure-compiler-debugger.appspot.com/#input0%3Dfunction%2520setShowPreloader(data%252C%2520payload)%2520%257B%250A%2509data.view.showPreloader%2520%253D%2520payload%250A%257D%250A%250Afunction%2520setImageSrc(data%252C%2520payload)%2520%257B%250A%2509data.src%2520%253D%2520payload%250A%257D%250A%250Aconst%2520bindState%2520%253D%2520(state%252C%2520modifiers)%2520%253D%253E%2520%257B%250A%2509const%2520res%2520%253D%2520%257B%257D%250A%2509for%2520(const%2520key%2520of%2520Object.keys(modifiers))%250A%2509%257B%250A%2509%2509res%255Bkey%255D%2520%253D%2520payload%2520%253D%253E%2520modifiers%255Bkey%255D(state%252C%2520payload)%250A%2509%257D%250A%2509return%2520res%250A%257D%250A%250Aconst%2520state%2520%253D%2520%257B%250A%2509view%253A%2520%257B%250A%2509%2509showPreloader%253A%2520true%252C%250A%2509%257D%252C%250A%2509src%253A%2520''%252C%250A%257D%250Aconst%2520controller%2520%253D%2520bindState(state%252C%2520%257B%250A%2509setShowPreloader%252C%250A%2509setImageSrc%252C%250A%257D)%250Acontroller.setShowPreloader(false)%250Acontroller.setImageSrc('http%253A%252F%252Flocalhost%252Fimage.png')%250Aconsole.log(state.view.showPreloader%252C%2520state.src)%250A%26input1%26conformanceConfig%26externs%26refasterjs-template%26COMPUTE_FUNCTION_SIDE_EFFECTS%3Dtrue%26REMOVE_DEAD_CODE%3Dtrue%26CLOSURE_PASS%3Dtrue%26PRESERVE_TYPE_ANNOTATIONS%3Dtrue%26PRETTY_PRINT%3Dtrue

Sorry for the radio silence. Thanks for the explanation, this indeed looks like an incorrect removal.

This is very reflective behavior so the compiler will have a hard time with it.  We need to figure out where the compiler is seeing the definition for setImageSrc.


window is not defined

Hi :),
I have integrated the editor.js following the documentation for this repo, But I am having problem with windows.
Additional: I am using next js 9 (SSR).
let me know your thoughts, Thanks
window is not defined
ReferenceError: window is not defined
    at Object.<anonymous> (D:\workspace\\-frontend\node_modules\@editorjs\editorjs\dist\editor.js:12:198)
    at Module._compile (internal/modules/cjs/loader.js:701:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:712:10)
    at Module.load (internal/modules/cjs/loader.js:600:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:539:12)
    at Function.Module._load (internal/modules/cjs/loader.js:531:3)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at Object.<anonymous> (D:\workspace\\-frontend\node_modules\@stfy\react-editor.js\dist\react-editorjs.cjs.js:7:32)
    at Module._compile (internal/modules/cjs/loader.js:701:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:712:10)
    at Module.load (internal/modules/cjs/loader.js:600:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:539:12)
    at Function.Module._load (internal/modules/cjs/loader.js:531:3)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)

Fixed!

Hey @wilfredonoyola, I run into the same issue. Could you please describe your solution? Thanks!

Also curious about a solution to this — hoping to integrate EditorJS with a server-side rendered React app.

Create a separate component for the editor, and then import that dynamically (using nextjs's dynamic import):
import dynamic from 'next/dynamic';
const Editor = dynamic(() => import('../src/components/editor'));

const IndexPage = () => {
  return <Editor />;
};

I am facing the same issue, please let me know what you use as a workaround.

Create a separate component for the editor, and then import that dynamically (using nextjs's dynamic import):
import dynamic from 'next/dynamic';
const Editor = dynamic(() => import('../src/components/editor'));

const IndexPage = () => {
  return <Editor />;
};

Thank you, this is working! May I know, why dynamic import was required in this case.

Create a separate component for the editor, and then import that dynamically (using nextjs's dynamic import):
import dynamic from 'next/dynamic';
const Editor = dynamic(() => import('../src/components/editor'));

const IndexPage = () => {
  return <Editor />;
};

Thank you, this is working! May I know, why dynamic import was required in this case?

@rakshit087 When you import the Editor component statically it gets executed immediately. In its componentDidMount it creates a a new instance of the EditorJS class, which somwhere inside it interacts with window. Since we're using function components, we need to wait for window to load in order to interact with it. By importing it dynamically, we're injecting the Editor JS script a bit later when the Editor component gets mounted. That timing is right, because that's when our app can use the window, hence it doesn't crash.

Create a separate component for the editor, and then import that dynamically (using nextjs's dynamic import):
import dynamic from 'next/dynamic';
const Editor = dynamic(() => import('../src/components/editor'));

const IndexPage = () => {
  return <Editor />;
};

Thank you, this is working! May I know, why dynamic import was required in this case?

@rakshit087 When you import the Editor component statically it gets executed immediately. In its componentDidMount it creates a a new instance of the EditorJS class, which somwhere inside it interacts with window. Since we're using function components, we need to wait for window to load in order to interact with it. By importing it dynamically, we're injecting the Editor JS script a bit later when the Editor component gets mounted. That timing is right, because that's when our app can use the window, hence it doesn't crash.

Thank you! It is working now.
I also added ssr: false (After browsing some stack overflow).
Here is my code now.
const MyEditor = dynamic(   () => {     return import("../components/Editor");   },   { ssr: false } );


Update gRPC-C++.podspec

Hactobertest-2022

Extra line is added for better code readablity

You'll also need to sign the CLA for us to be able to accept this cleanup.


Packaging-related issues for .NET 5.0

I have started working on creating a .NET 5.0 package for Fedora based on source-build. I am using this issue to track all the individual issues. Some of them may also be tracked separately.

The just-built SDK contains no native/unmanaged debug information. Looks like all information has been stripped from the just-built SDK.
runtime somehow lost the ability to keep debug info. It also lost flags to configure whether to keep debug info.
For now, hacking around the strip_symbol and install_with_stripped_symbols in runtime/eng/native/functions.cmake things work: https://gist.github.com/omajid/3033f0d77c4e6d58fd2fffb0da685c12#file-runtime-dont-strip-patch
A more correct/flexible fix needs to be merged into runtime.

Fedora's LDFLAGS break runtime build.
I tried a quick hack (https://gist.github.com/omajid/3033f0d77c4e6d58fd2fffb0da685c12#file-cflags-patch) for https://github.com/dotnet/runtime/issues/35727 and that seems to have fixed it :shrug:

Private.SourceBuilt.Artifacts.*.tar.gz is missing.

cc @tmds @RheaAyase @aslicerh

Closing since each issue is now being tracked separately.

Tracked as https://github.com/dotnet/runtime/pull/39203

Tracked as https://github.com/dotnet/runtime/pull/39191

Tracked as https://github.com/dotnet/source-build/issues/1647


Make git repo handling more robust

Fixes #1565
Description
Always handle low level git errors gracefully.
Testing
Unit and functional tests added.
Checklist

Include reference to internal ticket "Fixes WB-NNNN" (and github issue "Fixes #NNNN" if applicable)

@vanpelt do you want this in the upcoming release?


Update README for accuracy, especially "features"

Removes duplicated information both within the README and between README and other docs
Removes rename notice
Updates list of features with current status
Updates tagged versions

Fixes #1211

Thanks for the review @ryane, it's rebased and fixed!


Add trust mode for pgAdmin and auto-authente the db in compose file

It's possible to have the local db compose stack auto authenticated. If it's only for localhost, it might be more convenient to add a pass file and set the postgres auth method to trust. This way, you won't need to enter a password in the browser, and the database will already be authenticated when you load in.
For reference, you can check out this recent project I worked on that has a local dev database + pgadmin:
https://github.com/robert-cronin/jueju/tree/main/backend/local-db
I can add it in if it's a good idea!

Yes please!


Working with multiprocess Firefox

Electrolysis, also known as e10s, is the next major compatibility change coming to Firefox. In a nutshell, Firefox will run on multiple processes now, running each content tab in a different one. This should improve responsiveness and overall stability, but it also means many add-ons will need to be updated to support this.

We will be talking more about these changes in this blog in the future. For now we recommend you start looking at the available documentation.

– https://blog.mozilla.org/addons/2015/04/08/add-ons-update-63/

First step is to set up TravisCI target that runs tests with e10s enabled:
https://wiki.mozilla.org/Electrolysis#Enabling_and_Disabling_Electrolysis

Running tests with Nightly does not seem to be a worthy effort:  cfx builder does not support e10s (running unsigned addon requires setting xpinstall.signatures.required=false etc).
Mozilla mentioned that they will provide an unbranded browser version that has signature verification disabled and can be used for development and tests:

An unbranded version of Firefox 42 should be available when 42 reaches beta.
– https://groups.google.com/forum/#!topic/mozilla.addons.user-experience/GX3yQBS4o6s

I plan to wait for it and update Travis config around that time.
Good news is that I've run tests on Firefox 43.0a1 and all passed.
Seems that chrome shims are enough for it to work without change.
But just in case shims are changed in future, some materials on e10s for future reference:

https://timtaubert.de/blog/2011/08/firefox-electrolysis-101/
https://developer.mozilla.org/en-US/Add-ons/SDK/Guides/Multiprocess_Firefox_and_the_SDK
https://developer.mozilla.org/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers

Closed by https://github.com/lidel/ipfs-firefox-addon/issues/26


Track GitLive master + Gradle 8 upgrades

Instead reviewing this mix of ours and theirs I looked at https://github.com/GitLiveApp/firebase-kotlin-sdk/compare/master...splendo:firebase-kotlin-sdk:feature/track-master kind of skipping over changes we made previously.
Probably some issues upstreaming are unavoidable, but this looks good for us.
One small additional suggestion, let's merge prelease to main after this.


Asynchronous string set hangs indefinitely

Hi, I am using lettuce 5.0.0.Beta1. I have some code that uses counters to make frequency estimations. The code polls, sets and increments integer or floating point values. However, once I call an asynchronous set, it hangs indefinitely.
It produces the following log from cli monitor:
1495198663.168116 [0 <IP_ADDRESS>:52554] "GET" "nnn.net#/IE8#referer#entropy"
1495198663.170460 [0 <IP_ADDRESS>:52554] "GET" "nnn.net#/IE8#referer#www.google.com"
1495198663.171878 [0 <IP_ADDRESS>:52554] "INCR" "nnn.net#/IE8#referer#www.google.com"
1495198663.173119 [0 <IP_ADDRESS>:52554] "SADD" "nnn.net#/IE8#referer#possibleValues" "www.google.com"
1495198663.176016 [0 <IP_ADDRESS>:52554] "SMEMBERS" "nnn.net#/IE8#referer#possibleValues"
1495198663.177475 [0 <IP_ADDRESS>:52554] "GET" "nnn.net#/IE8#referer#www.google.com"
1495198666.394139 [0 <IP_ADDRESS>:52554] "GET" "nnn.net#/IE8#referer#www.google.com"
< here SET is invoked in java code >

After the seventh request, the client hangs and after a long delay, it launches a
com.lambdaworks.redis.RedisCommandTimeoutException: Command timed out.
I have written a test case to reproduce the problem. This test case hangs and fails after a timeout with the following stacktrace:
Exception in thread "Thread-0" Exception in thread "Thread-1" com.lambdaworks.redis.RedisCommandTimeoutException: Command timed out
	at com.lambdaworks.redis.LettuceFutures.await(LettuceFutures.java:113)
	at com.lambdaworks.redis.LettuceFutures.awaitOrCancel(LettuceFutures.java:92)
	at com.lambdaworks.redis.FutureSyncInvocationHandler.handleInvocation(FutureSyncInvocationHandler.java:63)
	at com.lambdaworks.redis.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)
	at com.sun.proxy.$Proxy8.incr(Unknown Source)
	at java.lang.Thread.run(Thread.java:745)
com.lambdaworks.redis.RedisCommandTimeoutException: Command timed out
	at com.lambdaworks.redis.LettuceFutures.await(LettuceFutures.java:113)
	at com.lambdaworks.redis.LettuceFutures.awaitOrCancel(LettuceFutures.java:92)
	at com.lambdaworks.redis.FutureSyncInvocationHandler.handleInvocation(FutureSyncInvocationHandler.java:63)
	at com.lambdaworks.redis.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)
	at com.sun.proxy.$Proxy8.incr(Unknown Source)

If you remove the calls to async.set, the test will succeed. At least, it did in my case. Notice that my original code wasn't multithreaded.

Thanks for the code sample. Your code runs into an encoding error.
In your code you erase generics with
StatefulRedisConnection<String, String> connection = client.connect();
RedisStringCommands sync = connection.sync();

and then you pass an Integer value with
 async.set("check" + i, 0);

Your connection uses a String codec so it expects String keys and values. Using Integer causes an EncoderException. As soon as you add a completion listener to the future (whenComplete(…) or similar) you can obtain the error:
io.netty.handler.codec.EncoderException: Cannot encode command. Please close the connection as the connection state may be out of sync.

Thanks, I fixed this. However the error was so cryptic and the mistake so trivial it took me an hour to figure out. I used it as fire&forget so I never got an encoder error.

That's the idea behind fire and forget.


Upgrade for 4.0

New structure (which is very flexible) for future M4 packages.
(Auto generated from cookie-cutter)

Codecov Report

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

@@            Coverage Diff            @@
##             master       #2   +/-   ##
=========================================
  Coverage          ?   88.88%
=========================================
  Files             ?        5
  Lines             ?       18
  Branches          ?        0
=========================================
  Hits              ?       16
  Misses            ?        2
  Partials          ?        0

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 dbc7e64...eb15aab. Read the comment docs.


texconv.exe does not return exit code different from 0 on failure

I'm trying to use texconv.exe as one of different steps in an automated script.
I realized texconv.exe does not return an exit code different from 0 even if it fails, which makes error detection difficult in scripted environments.
Could you please return a non-zero exit code on failures?
Thank you.

Fixed in this commit: https://github.com/microsoft/DirectXTex/commit/2a1a884507544e999071366a4c571c6212dc9bc6


CB-6161 Fix HDFS user home directory creation for HA configuration

Is it possible to cherry-pick this commit to CB 2.19?

if it's need for 2.19 I will open against it, but in the jira the version is 2.20

The bug is there on 2.19 as well, probably even on earlier releases. @akanto set the fix version to 2.20 but I this bug is severe enough to land in 2.19.

retest this please


results appear truncated, way to see all the results

load more results when you scroll down?

Part of changes to elastic search on going.


White page after starting server

After installing and starting the latest commit my browser only displays a white page with a small bar running across when I direct the browser to the login page. On the mainpage it only shows "This is HomePage components !"
Console shows only this:
fw@ubuntu:~/tinder/tinder$ npm start

><EMAIL_ADDRESS>start /home/fw/tinder/tinder
> cross-env NODE_ENV=development babel-watch server

Server started ✓

Access URLs:
-----------------------------------
Localhost: http://localhost:3000
      LAN: http://<IP_ADDRESS>:3000
-----------------------------------
Press CTRL-C to stop

webpack built 6ea8c893d8614d4423be in 12546ms

I'm having same issue,  got any solution ?

same issue here

It's and authentication problem. As a workarount I reinstalled the chrome extension and updated the CHROME_EXTENSION_ID in Sagas.

project is no longer being maintained - but @crorodriguezro has the right idea here. you need to update the extension id (or pass in the auth token)

Same issue here - this seems to have started only after the last time I logged out of facebook, so I'm guessing that facebook has changed 1 or more details about how their auth works and that this new way breaks flamite. I end up on an almost-entirely-white (except for only a thin horizontal gray line 60px from the top) page with the URL:
http://localhost:3000/login/EAAGm0PX4ZCpsBAMwt2a5vbN0EvkIZCkGBAg4r4UT5JZCACXpAmx6bsxcdtCtJwqZC9Qqg5Sanw5Y2r8UP6g3tOx9hzzIxZCCp0rJszpjNVmL3ZAVyg1YEXXtco9rYvYBzrnn2yI9hNT1c3KUd1zDu7AQ8ZC0qJ2gHETdIKXCTvQvnkvZA6gGLh4HjD8FMUtGZBR2...
Deleting and then reinstalling the extension did absolutely nothing. I even ended up with exactly the same Chrome Extension ID. Can anyone else confirm/verify this? Anyone know anything about a recent change in Facebook's auth details?


No error message, but Glide score seems not updating the model?

Dear authors,
I'm trying to replicate your results with Glide. However, I find something strange here.
The loss during agent training is very small, and can even be ignored. Does it really updates the GRU model?
Also I find the score for all the smiles generated are almost zero, that means the Augmented likelihood is the same as the Prior likelihood in the REINVENT model. So based on my understanding, in the training process, the GRU model is rarely updated. That would explain that Glide-agent achieves a better diversity as it is seldomly updated towards the goal comparing to SVM-agent.
Final loss = 0.28316137194633484

       Step 1   Fraction valid SMILES: 94.0          Time elapsed: 0.35h Time left: 519.37h
  Agent   Prior   Target   Score             SMILES
 -22.14   -22.11  -22.11    0.00     CCCNc1ccc(C(=O)Nc2ccc(S(C)=O)cc2)cc1
 -17.82   -17.28  -17.28    0.00     CC(C)OCc1c(C(=O)O)cnn1-c1ccccc1
 -21.45   -21.30  -21.30    0.00     COc1ccccc1NC(=O)c1cc(=O)c(OC)c(OC)[nH]1
 -22.65   -23.19  -23.19    0.00     Cc1c(N)ccc2nnc(CN3CCOc4ccccc4C3)n12
 -20.10   -21.72  -21.72    0.00     Cc1cccc2nc(CN(CC(F)(F)F)C(C)C)c(=O)n(C)c12
 -18.49   -18.68  -18.68    0.00     CC(=O)NC(Nc1ccc(F)c(Cl)c1)C(=O)O
 -23.05   -23.22  -23.22    0.00     CC(C)CCC(=O)N1CC(O)c2ccccc2C1(C)C
 -15.84   -15.53  -15.53    0.00     COc1ccc(CNC(=O)CC2OC(=O)c3ccccc32)cc1
 -17.34   -16.60  -16.60    0.00     CN(C)CCN(Cc1ccccc1)C(=O)NCC1CC1
 -18.51   -19.00  -19.00    0.00     COc1ccc(CN2CCCC(NC(=O)c3ccccc3)C2)c(OC)c1

Am I miss something here? Currently the program is running all good and no error pops up.
@MorganCThomas @David-Araripe

@MorganCThomas  I'm using Schrodinger Suite 2021-3, Build 137.
I tried to run the *.in file with the following command, but it still not working. It seems the params are different in this version.
$SCHRODINGER/glide -WAIT -NOJOBID -NOLOCAL 4_46-1.in                                    [21:15:30]
Error reading Glide input file: Unknown SIF keywords: POSE_OUTTYPE, LIGANDFILE
(for more info, set SCHRODINGER_PYTHON_DEBUG environment variable)

Also, I checked the contents in *.in file. No path for grid file or receptor file is provided. Is it correct?
GRID_CENTER   9.670825000000002, 5.386608482758621, -10.233612534482761
GRIDFILE   6CM4_default_noWat-default_grid.zip
INNERBOX   10, 10, 10
OUTERBOX   28.390522627890697, 28.390522627890697, 28.390522627890697
RECEP_FILE   6CM4_default_noWat-default_grid.maegz
POSE_OUTTYPE  ligandlib_sd
LIGANDFILE  ./result/molscore/2021_10_26_gru_GlideDock_DRD2_22_09_39/GlideDock/4/4_46-1_ligprep.sdf
OUTPUTDIR  ./result/molscore/2021_10_26_gru_GlideDock_DRD2_22_09_39/GlideDock/

I've found a typo (in my code) that may be responsible: there should be 3 spaces between the keyword and parameter. But I can see only 2 between POSE_OUTTYPE onwards. Try inserting an extra space between the last 3 lines and re-running to see if it works. GRIDFILE should also be an absolute path, otherwise it won't work running it anywhere but where the gridfile is located.
In the meantime, I'll update the code and push it today. Please let me know if the suggested changes help.

#30 #

I checked with Glide's support team. Seem there're two steps to run Glide, first generate grid, then run docking. However, the default one which combines both procedures, which causes this error.
I believe it should be a problem with the script. To make it only run docking could solve this problem. I'm not using MolScore now. So it would not bother me again.

Ah yes of course, the Glide input file that you pass to MolScore is for a docking run, not grid generation (which should be done manually before hand). So if glide_template was was a path to a template.in file that was simply:
GRIDFILE   <absolute_path>/6CM4_default_noWat-default_grid.zip
PRECISION   SP

I will actually work. You're confusing it by adding the Grid generation keywords GRID_CENTER, INNERBOX, OUTERBOX.


Add SSM model and PutParameter example

This fixes #383.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

ah, looks like clippy is upset about some names in SSM 🤷🏻


feat: add in verified CI bot

Instructions

PR target branch should be against development
PR title name should follow this format: https://github.com/mParticle/mparticle-workflows/blob/stable/.github/workflows/pr-title-check.yml
PR branch prefix should follow this format: https://github.com/mParticle/mparticle-workflows/blob/stable/.github/workflows/pr-branch-check-name.yml

Summary

Add in GPG Key to CI step

Testing Plan

Run CI release job

Master Issue

Closes https://go.mparticle.com/work/SQDSDKS-3579

:tada: This PR is included in version 0.9.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 0.9.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Build failing due to missing torchaudio dependencies

I can't get cuda-comfyui to install due to torchaudio not finding some dependencies.
How I'm installing comfyui:
home.packages = [
  inputs.nix-comfyui.packages.${pkgs.system}.cuda-comfyui
];

(Update: Installing via overlay as comfuiPackages.comfyui didn't help either)
System is NixOS-unstable in a flake setup
Error log:
sudo nixos-rebuild switch --fast
building the system
error: builder for '/nix/store/sqh4970w81bvawj1vm63hlbmd6dcw8a4-python3.11-torchaudio-2.3.1.drv' failed with exit code 1;
       last 25 log lines:
       > error: auto-patchelf could not satisfy dependency libavfilter.so.9 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg6.so
       > warn: auto-patchelf ignoring missing libavutil.so.56 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
       > warn: auto-patchelf ignoring missing libavcodec.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
       > warn: auto-patchelf ignoring missing libavformat.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
       > warn: auto-patchelf ignoring missing libavdevice.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
       > warn: auto-patchelf ignoring missing libavfilter.so.7 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
       > error: auto-patchelf could not satisfy dependency libavutil.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
       > error: auto-patchelf could not satisfy dependency libavcodec.so.60 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
       > error: auto-patchelf could not satisfy dependency libavformat.so.60 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
       > error: auto-patchelf could not satisfy dependency libavfilter.so.9 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
       > warn: auto-patchelf ignoring missing libavutil.so.57 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
       > warn: auto-patchelf ignoring missing libavcodec.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
       > warn: auto-patchelf ignoring missing libavformat.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
       > warn: auto-patchelf ignoring missing libavdevice.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
       > warn: auto-patchelf ignoring missing libavfilter.so.8 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
       > warn: auto-patchelf ignoring missing libavutil.so.56 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
       > warn: auto-patchelf ignoring missing libavcodec.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
       > warn: auto-patchelf ignoring missing libavformat.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
       > warn: auto-patchelf ignoring missing libavfilter.so.7 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
       > warn: auto-patchelf ignoring missing libavutil.so.57 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
       > warn: auto-patchelf ignoring missing libavcodec.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
       > warn: auto-patchelf ignoring missing libavformat.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
       > warn: auto-patchelf ignoring missing libavfilter.so.8 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
       > auto-patchelf failed to find all the required dependencies.
       > Add the missing dependencies to --libs or use `--ignore-missing="foo.so.1 bar.so etc.so"`.
       For full logs, run 'nix log /nix/store/sqh4970w81bvawj1vm63hlbmd6dcw8a4-python3.11-torchaudio-2.3.1.drv'.
error: 1 dependencies of derivation '/nix/store/8zp8sibb5ri6qf75z7k4cmagivf3dvhh-python3-3.11.10-env.drv' failed to build
error: 1 dependencies of derivation '/nix/store/3vz3kc62bxlzpyjn6wvrnj98i4l2inzz-comfyui.drv' failed to build
error: 1 dependencies of derivation '/nix/store/l2455xgfhd1zqrzcsdaar3vba9w2390r-home-manager-path.drv' failed to build

Builder log:
Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing wheel setup hook
Using wheelUnpackPhase
Sourcing pypa-install-hook
Using pypaInstallPhase
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Sourcing python-namespaces-hook
Sourcing python-catch-conflicts-hook.sh
Running phase: unpackPhase
@nix { "action": "setPhase", "phase": "unpackPhase" }
Executing wheelUnpackPhase
Finished executing wheelUnpackPhase
Running phase: patchPhase
@nix { "action": "setPhase", "phase": "patchPhase" }
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Running phase: configurePhase
@nix { "action": "setPhase", "phase": "configurePhase" }
no configure script, doing nothing
Running phase: buildPhase
@nix { "action": "setPhase", "phase": "buildPhase" }
no Makefile or custom buildPhase, doing nothing
Running phase: installPhase
@nix { "action": "setPhase", "phase": "installPhase" }
Executing pypaInstallPhase
Successfully installed torchaudio-2.3.1-cp311-cp311-manylinux1_x86_64.whl
Finished executing pypaInstallPhase
Running phase: pythonOutputDistPhase
@nix { "action": "setPhase", "phase": "pythonOutputDistPhase" }
Executing pythonOutputDistPhase
Finished executing pythonOutputDistPhase
Running phase: fixupPhase
@nix { "action": "setPhase", "phase": "fixupPhase" }
shrinking RPATHs of ELF executables and libraries in /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/libtorchaudio.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/_torchaudio_sox.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/libtorchaudio_sox.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/libctc_prefix_decoder.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/pybind11_prefixctc.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/_torchaudio.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg6.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
shrinking /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
checking for references to /build/ in /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1...
patching script interpreter paths in /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1
shrinking RPATHs of ELF executables and libraries in /nix/store/lnr5mb3i4r6qg7nf51ppabzz2mwakbzx-python3.11-torchaudio-2.3.1-dist
checking for references to /build/ in /nix/store/lnr5mb3i4r6qg7nf51ppabzz2mwakbzx-python3.11-torchaudio-2.3.1-dist...
patching script interpreter paths in /nix/store/lnr5mb3i4r6qg7nf51ppabzz2mwakbzx-python3.11-torchaudio-2.3.1-dist
Executing pythonRemoveTestsDir
Finished executing pythonRemoveTestsDir
automatically fixing dependencies for ELF files
{'append_rpaths': [],
 'extra_args': [],
 'ignore_missing': ['libavcodec.so.58',
                    'libavcodec.so.59',
                    'libavdevice.so.58',
                    'libavdevice.so.59',
                    'libavfilter.so.7',
                    'libavfilter.so.8',
                    'libavformat.so.58',
                    'libavformat.so.59',
                    'libavutil.so.56',
                    'libavutil.so.57'],
 'keep_libc': False,
 'libs': [PosixPath('/nix/store/ymhcg6x5jrw3hx8ik1cji6awiybgp9f7-libglvnd-1.7.0/lib'),
          PosixPath('/nix/store/iyprpvv0wjzjm18a4zilfybphjgspi4k-libICE-1.1.1/lib'),
          PosixPath('/nix/store/9vgqv085m51lpimnn6y3rchhjxz6nw8l-libSM-1.2.4/lib'),
          PosixPath('/nix/store/qrj5f1mb08k5jg7y9ikzb1njli0gvmxz-libX11-1.8.10/lib'),
          PosixPath('/nix/store/hpd1dss7lmrywlr37vncyzbhzp6rgri5-libXext-1.3.6/lib'),
          PosixPath('/nix/store/566jyp236h118ad005mxqs7sb9ivv4yj-libXrender-0.9.11/lib'),
          PosixPath('/nix/store/pacbfvpzqz2mksby36awvbcn051zcji3-glibc-2.40-36/lib'),
          PosixPath('/nix/store/w47qirkm40jxlwndipwavi1mgg78d6y3-libxcrypt-4.4.36/lib'),
          PosixPath('/nix/store/m761lp9x14i33hb3q7a8wm52rsnk6ab1-expat-2.6.4/lib'),
          PosixPath('/nix/store/jq1ydifw3ip1vx94dl8w8bgvr07l6s3x-glib-2.82.1/lib'),
          PosixPath('/nix/store/wgxkcd838xdgbkfs6s8nw93djgwww6pw-ncurses-abi5-compat-6.4.20221231/lib'),
          PosixPath('/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib'),
          PosixPath('/nix/store/y6bcc1vzg315zzzpir608zkhnmvp49kc-zlib-1.3.1/lib'),
          PosixPath('/nix/store/6lrq4lg6cm64hx2sfq619lnj3i4fq1y8-ffmpeg-7.1-dev/lib'),
          PosixPath('/nix/store/cmmpljxjw31bl8498is1kqfi9h33a9v6-ffmpeg-7.1-bin/lib'),
          PosixPath('/nix/store/zvnrn6j28vh0j22hs588z2914028q6b5-ffmpeg-7.1-lib/lib'),
          PosixPath('/nix/store/3gjmkhdwrx47id53a855sscjvsnzjx69-sox-unstable-2021-05-09-dev/lib'),
          PosixPath('/nix/store/5by70vshp6alsc05ghvib809cmbwyawp-sox-unstable-2021-05-09-lib/lib'),
          PosixPath('/nix/store/57rynidl369bk9nzqxkb97197dcsdwji-sox-unstable-2021-05-09/lib'),
          PosixPath('/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib'),
          PosixPath('/nix/store/9xrzzbipx2rlszpgqq1ijhgrdpvz7y98-python3.11-filelock-3.15.4/lib'),
          PosixPath('/nix/store/igyzv5c2v672mhmx1ha1i7062y6rggqs-python3-3.11.10/lib'),
          PosixPath('/nix/store/jdd7bai6x7irg8zbazw6dqgvngfklm5c-python3.11-fsspec-2024.6.1/lib'),
          PosixPath('/nix/store/2fa1cvcgzci2dyqgw1fw3dmx0ppcrfnd-python3.11-aiohttp-3.10.5/lib'),
          PosixPath('/nix/store/r342g9bckip0ssznr62wmfp84igjdn9a-python3.11-aiohappyeyeballs-2.4.0/lib'),
          PosixPath('/nix/store/3dww1cch16qnj2d5iljhmxbix1wwnmwn-python3.11-aiosignal-1.3.1/lib'),
          PosixPath('/nix/store/lb6h1334xnv426y4hcwrqzxda03xzrva-python3.11-frozenlist-1.4.1/lib'),
          PosixPath('/nix/store/y9lq69n58xjsdmmdrs75y3hlgh0aqk4s-python3.11-attrs-24.2.0/lib'),
          PosixPath('/nix/store/47zakr3mar4srbiaadr8hc21vx5qgbv1-python3.11-multidict-6.0.5/lib'),
          PosixPath('/nix/store/b74s38c07w9cl3prybmwx7c7mjd90qzv-python3.11-yarl-1.9.4/lib'),
          PosixPath('/nix/store/fvqvrjf4n03x9plx2p9lyym8803jdcm2-python3.11-idna-3.8/lib'),
          PosixPath('/nix/store/0gacgyrp0drslpc3lpww65mk0y7nyv51-python3.11-jinja2-3.1.4/lib'),
          PosixPath('/nix/store/jg2cn3h8421c0svhbzwv0cdlfw05n8x0-python3.11-markupsafe-2.1.5/lib'),
          PosixPath('/nix/store/2hx74phdgdgmqbmrzn595d8246z9h1s9-python3.11-networkx-3.3/lib'),
          PosixPath('/nix/store/c1xzlrspbgqmfz5wks67k18rph1iclq3-python3.11-nvidia-cublas-cu12-<IP_ADDRESS>/lib'),
          PosixPath('/nix/store/qnc1mdv6f3zmf456rl9ss6zvhl5sl02b-python3.11-nvidia-cuda-cupti-cu12-12.1.105/lib'),
          PosixPath('/nix/store/qa7g4p19c25jmd7d5xvvzlx77wwffa53-python3.11-nvidia-cuda-nvrtc-cu12-12.1.105/lib'),
          PosixPath('/nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib'),
          PosixPath('/nix/store/hf63mwpdraxkhd33plm17nvvj6nkklck-python3.11-nvidia-cudnn-cu12-<IP_ADDRESS>/lib'),
          PosixPath('/nix/store/q3bjbpzpvlhifi3a93v7zixsslfsw7r2-python3.11-nvidia-cufft-cu12-<IP_ADDRESS>/lib'),
          PosixPath('/nix/store/2silyrcywa05hcz3f41dkravr29gj8jk-python3.11-nvidia-curand-cu12-<IP_ADDRESS>/lib'),
          PosixPath('/nix/store/i2cp9x9nf50vsrvp41j5g4g8rgglbmrq-python3.11-nvidia-cusolver-cu12-<IP_ADDRESS>/lib'),
          PosixPath('/nix/store/9xzzb2qgk01myrlpbhk0fiap0m90ag9p-python3.11-nvidia-cusparse-cu12-<IP_ADDRESS>/lib'),
          PosixPath('/nix/store/ygvgwcry2w5achy8glxp4lglf16g8fxs-python3.11-nvidia-nvjitlink-cu12-12.6.20/lib'),
          PosixPath('/nix/store/ygvgwcry2w5achy8glxp4lglf16g8fxs-python3.11-nvidia-nvjitlink-cu12-12.6.20/lib'),
          PosixPath('/nix/store/r5lqgf26rj3arbl2iaq0rwfkjcmgww1b-python3.11-nvidia-nccl-cu12-2.20.5/lib'),
          PosixPath('/nix/store/y8zq3brmrd85sn41ldphp8pycb3zk63z-python3.11-nvidia-nvtx-cu12-12.1.105/lib'),
          PosixPath('/nix/store/4qqh9098zim5i366wkhgq6rby342av3i-python3.11-sympy-1.13.2/lib'),
          PosixPath('/nix/store/afz6ir37rdzvqbsvqvrzlfy6vb4j79z1-python3.11-mpmath-1.3.0/lib'),
          PosixPath('/nix/store/axfadv2vk3bzxjfpzj5kbly47gf0rimw-python3.11-triton-2.3.1/lib'),
          PosixPath('/nix/store/jp8d8dzyxh1maz14bih5wgh0vc0p3ik9-python3.11-typing-extensions-4.12.2/lib'),
          PosixPath('/nix/store/2yhb6kzfkmm738cp0xb0ymxc2vgd92ix-python3.11-setuptools-75.1.0/lib'),
          PosixPath('/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib'),
          PosixPath('/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib'),
          PosixPath('/nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib')],
 'paths': [PosixPath('/nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1'),
           PosixPath('/nix/store/lnr5mb3i4r6qg7nf51ppabzz2mwakbzx-python3.11-torchaudio-2.3.1-dist')],
 'recursive': True,
 'runtime_dependencies': []}
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/libtorchaudio.so
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libcudart.so.12 -> found: /nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib
    libgomp.so.1 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/_torchaudio_sox.so
    libtorchaudio_sox.so -> found: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib
    libtorch_python.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib:/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/libtorchaudio_sox.so
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libsox.so -> found: /nix/store/5by70vshp6alsc05ghvib809cmbwyawp-sox-unstable-2021-05-09-lib/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/5by70vshp6alsc05ghvib809cmbwyawp-sox-unstable-2021-05-09-lib/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/libctc_prefix_decoder.so
    libc10_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libcudart.so.12 -> found: /nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/pybind11_prefixctc.so
    libctc_prefix_decoder.so -> found: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib
    libtorch_python.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libcudart.so.12 -> found: /nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib:/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib/_torchaudio.so
    libtorchaudio.so -> found: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib
    libtorch_python.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torchaudio/lib:/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg6.so
    libtorio_ffmpeg6.so -> found: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib
    libtorch_python.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libavutil.so.58 -> not found!
    libavcodec.so.60 -> not found!
    libavformat.so.60 -> not found!
    libavdevice.so.60 -> not found!
    libavfilter.so.9 -> not found!
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib:/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
    libtorio_ffmpeg4.so -> found: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib
    libtorch_python.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libavutil.so.56 -> not found!
    libavcodec.so.58 -> not found!
    libavformat.so.58 -> not found!
    libavdevice.so.58 -> not found!
    libavfilter.so.7 -> not found!
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib:/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libcudart.so.12 -> found: /nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib
    libavutil.so.58 -> not found!
    libavcodec.so.60 -> not found!
    libavformat.so.60 -> not found!
    libavfilter.so.9 -> not found!
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
    libtorio_ffmpeg5.so -> found: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib
    libtorch_python.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libavutil.so.57 -> not found!
    libavcodec.so.59 -> not found!
    libavformat.so.59 -> not found!
    libavdevice.so.59 -> not found!
    libavfilter.so.8 -> not found!
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib:/nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libcudart.so.12 -> found: /nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib
    libavutil.so.56 -> not found!
    libavcodec.so.58 -> not found!
    libavformat.so.58 -> not found!
    libavfilter.so.7 -> not found!
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
searching for dependencies of /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
    libtorch.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cpu.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libtorch_cuda.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libc10.so -> found: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib
    libcudart.so.12 -> found: /nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib
    libavutil.so.57 -> not found!
    libavcodec.so.59 -> not found!
    libavformat.so.59 -> not found!
    libavfilter.so.8 -> not found!
    libstdc++.so.6 -> found: /nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib
    libgcc_s.so.1 -> found: /nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
setting RPATH to: /nix/store/7hdxpcbi473xk24shhqc2l01zav7x9z6-python3.11-torch-2.3.1/lib/python3.11/site-packages/torch/lib:/nix/store/snyh6wys245lijzwl5yrvivlf1hwslw3-python3.11-nvidia-cuda-runtime-cu12-12.1.105/lib/python3.11/site-packages/nvidia/cuda_runtime/lib:/nix/store/97f3gw9vpyxvwjv2i673isvg92q65mwn-gcc-13.3.0-lib/lib:/nix/store/nhdjqagplar2fdrqnrxlab8vg9i36b3d-gcc-13.3.0-libgcc/lib
auto-patchelf: 27 dependencies could not be satisfied
error: auto-patchelf could not satisfy dependency libavutil.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg6.so
error: auto-patchelf could not satisfy dependency libavcodec.so.60 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg6.so
error: auto-patchelf could not satisfy dependency libavformat.so.60 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg6.so
error: auto-patchelf could not satisfy dependency libavdevice.so.60 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg6.so
error: auto-patchelf could not satisfy dependency libavfilter.so.9 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg6.so
warn: auto-patchelf ignoring missing libavutil.so.56 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
warn: auto-patchelf ignoring missing libavcodec.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
warn: auto-patchelf ignoring missing libavformat.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
warn: auto-patchelf ignoring missing libavdevice.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
warn: auto-patchelf ignoring missing libavfilter.so.7 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg4.so
error: auto-patchelf could not satisfy dependency libavutil.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
error: auto-patchelf could not satisfy dependency libavcodec.so.60 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
error: auto-patchelf could not satisfy dependency libavformat.so.60 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
error: auto-patchelf could not satisfy dependency libavfilter.so.9 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg6.so
warn: auto-patchelf ignoring missing libavutil.so.57 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
warn: auto-patchelf ignoring missing libavcodec.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
warn: auto-patchelf ignoring missing libavformat.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
warn: auto-patchelf ignoring missing libavdevice.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
warn: auto-patchelf ignoring missing libavfilter.so.8 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/_torio_ffmpeg5.so
warn: auto-patchelf ignoring missing libavutil.so.56 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
warn: auto-patchelf ignoring missing libavcodec.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
warn: auto-patchelf ignoring missing libavformat.so.58 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
warn: auto-patchelf ignoring missing libavfilter.so.7 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg4.so
warn: auto-patchelf ignoring missing libavutil.so.57 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
warn: auto-patchelf ignoring missing libavcodec.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
warn: auto-patchelf ignoring missing libavformat.so.59 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
warn: auto-patchelf ignoring missing libavfilter.so.8 wanted by /nix/store/h6270hzd7vphilkbvsxps4wv3753hrv5-python3.11-torchaudio-2.3.1/lib/python3.11/site-packages/torio/lib/libtorio_ffmpeg5.so
auto-patchelf failed to find all the required dependencies.
Add the missing dependencies to --libs or use `--ignore-missing="foo.so.1 bar.so etc.so"`.

Possibly of note regarding the builder log:
I don't quite get why this gets passed as an argument to the torchaudio builder:
'ignore_missing': ['libavcodec.so.58',
                    'libavcodec.so.59',
                    'libavdevice.so.58',
                    'libavdevice.so.59',
                    'libavfilter.so.7',
                    'libavfilter.so.8',
                    'libavformat.so.58',
                    'libavformat.so.59',
                    'libavutil.so.56',
                    'libavutil.so.57'],

I tried adding ffmpeg and ffmpeg_6 but could not figure out how to propagate it through the builder:
(inputs.nix-comfyui.packages.${pkgs.system}.cuda-comfyui.overrideAttrs(oldAttrs: {
          propagatedBuildInputs = (oldAttrs.propagatedBuildInputs or []) ++ [pkgs.ffmpeg_6-full pkgs.ffmpeg_6-full.lib pkgs.ffmpeg_6-full.lib.dev];

          buildInputs = (oldAttrs.buildInputs or []) ++ [pkgs.ffmpeg_6-full pkgs.ffmpeg_6-full.lib pkgs.ffmpeg_6-full.lib.dev];
          nativeBuildInputs = (oldAttrs.nativeBuildInputs or []) ++ [pkgs.ffmpeg_6-full pkgs.ffmpeg_6-full.lib pkgs.ffmpeg_6-full.lib.dev];

          # propagatedBuildInputs = (oldAttrs.propagatedBuildInputs or []) ++ [pkgs.ffmpeg-full pkgs.ffmpeg-full.lib pkgs.ffmpeg-full.lib.dev];

          # buildInputs = (oldAttrs.buildInputs or []) ++ [pkgs.ffmpeg-full pkgs.ffmpeg-full.lib pkgs.ffmpeg-full.lib.dev];
          # nativeBuildInputs = (oldAttrs.nativeBuildInputs or []) ++ [pkgs.ffmpeg-full pkgs.ffmpeg-full.lib pkgs.ffmpeg-full.lib.dev];
}))

Adding ffpmeg-full or ffmpeg_6-full to my packages didn't help either.

I have the same issue.

@Sntx626 Using haras's PR fixed it for me https://github.com/dyscorv/nix-comfyui/pull/6


MAG-286 [ORFS-97] Implement RAID creation/deletion in Monorail

Add original Hogan render to support complex template in task render
Add Create, Delete RAID tasks

This PR is sub story of ORFS-97
@RackHD/corecommitters @iceiilin @WangWinson @pengz1 @sunnyqianzhang

Need to add require('hogan.js') in on-core/spec/helper.js to make the build pass

Also, I should mention, this is super cool. I'm really excited to have this feature and start defining tasks like this!

Adding a ticket for follow-on documentation: https://hwjiraprd01.corp.emc.com/browse/MON-669

@benbp commit again to address you comments.
1.rename task file and injectable name
2.add more test case to test command template in task
3.fix some style issue.

:+1: thanks!

+1


Calling MatLab from inside Docker

@rykahsay please send me info or notes about how you've made calls from containerized apps to MatLab running on the host. It's good to reuse a tried and true method!
@pmcneely will finish building the predictmod container afterward.

These instructions show you how to run a shell script ("glycan_finder.sh") on the host from a container. In this case the script "glycan_finder.sh" uses MatLab which is only available on the host only.
Make directory and then make fifo
$ mkdir -p /software/pipes/
$ mkfifo /software/pipes/mypipe

Create /software/pipes/execpipe.sh with the following content
#!/bin/bash
out_file="/data/shared/glygen/pipe_output/output.txt"
while true; do eval "$(cat /software/pipes/mypipe)" &> $out_file; done

Add to cronjobs so that it starts on boot
$ sudo crontab -e
@reboot /software/pipes/execpipe.sh

Use docker run as follows to mount /software/pipes folder of the host
sudo docker run -dit --name $docker_container -p <IP_ADDRESS>:$port:80  -v /software/pipes:/hostpipe $docker_image

Now your script  /software/pipes/glycan_finder.sh can be executed in the container as
$ sh /hostpipe/glycan_finder.sh


Add switch (web) 3.0.0 documentation

The soon-to-be-released Switch widget is version 3.0.0.
This PR updates the documentation for this widget under Marketplace Guide > Widgets section.

Here's the JIRA for releasing Switch 3.0.0

Please do not merge until Switch is released. I have marked this WIP in the title until then.

@ConnorLand ready to merge.


Fix port descriptions

Port 465 is for implicit SSL/TLS connections, and port 587 is for StartTLS, so I fixed those descriptions.
Ports 110, 143, and 587 are actually plain text by default, with the option to upgrade to StartTLS, so I noted that as well.
(I haven't tested all of these myself to verify, but am taking this from what I know about email ports.  See e.g. SSL vs TLS vs STARTTLS.)

I'm not sure that the descriptions are correct. For port 587 I think the server insists on getting a STARTTLS, so it is not a plain-text port at all. I don't think it is possible to submit e-mail messages on port 587 in plain text. On the other hand I'm pretty sure that both 110 and 143 are plain-text even though they might support STARTTLS (not sure). Personally I would not expose them as there is a clear risk that a client will send user name and password in the clear.

For port 587 I think the server insists on getting a STARTTLS, so it is not a plain-text port at all. I don't think it is possible to submit e-mail messages on port 587 in plain text. On the other hand I'm pretty sure that both 110 and 143 are plain-text even though they might support STARTTLS (not sure).

Okay, that makes sense; I didn't really test plaintext or STARTTLS since I only need implicit TLS.  I can test these if you'd like.

Personally I would not expose them as there is a clear risk that a client will send user name and password in the clear.

I agree; I disable plaintext ports on my installs.

Please do; if we document the ports the documentation should be correct.

This has been hanging for a long time. Shall we close it, or would you like to verify the above and get it in?

Ello, looked into this(but not yet tested).
Dovecot default configuration is to prevent supporting plaintext auth/usage, STARTTLS is enforced to establish a secure connection. docker-mailserver Dovecot config doesn't appeear to deviate from that.
Regarding SSL/TLS, the docs state:

ssl=yes and disable_plaintext_auth=yes: SSL/TLS is offered to the client, but the client isn’t required to use it. The client isn’t allowed to use plaintext authentication, unless SSL/TLS is enabled first. However, if non-plaintext authentication mechanisms are enabled they are still allowed even without SSL/TLS.

Depending on how secure they are, the authentication is either fully secure or it could have some ways for it to be attacked.

ssl=required: SSL/TLS is always required, even if non-plaintext authentication mechanisms are used. Any attempt to authenticate before SSL/TLS is enabled will cause an authentication failure.

This projects related ssl dovecot config is following upstream default of yes, which is presumably fine, since non-plaintext authentication isn't enabled by default:

If you have only plaintext mechanisms enabled (e.g. auth { mechanisms = plain login } ), ssl=yes and ssl=required are completely equivalent because in either case the authentication will fail unless SSL/TLS is enabled first.

That is followed up by a word of caution that regardless of yes or `required, lack of conformance of the protocol can result in leaking credentials:

With both ssl=yes and ssl=required it’s still possible that the client attempts to do a plaintext authentication before enabling SSL/TLS, which exposes the plaintext password to the internet.

There's further clarification that ssl=required encrypts the entire connection, while disable_plaintext_auth=yes only encrypts the auth exchange?(unclear if ssl=yes is equivalent for plaintext auth here, presumably it is).
And then advice of best practice:

Nowadays you most likely should be using SSL/TLS anyway for the entire connection, since the cost of SSL/TLS is cheap enough. Using both SSL/TLS and non-plaintext authentication would be the ideal situation since it protects the plaintext password even against man-in-the-middle attacks.

Finally there is mention of exceptions where those settings don't apply, and the connection is assumed secure because it's on localhost, or the remote IP is the same as the host, there's also trusted IPs(which I assume can be anything on the internal docker network).
Meanwhile, the supported auth mechanisms are PLAIN and LOGIN, Dovecot docs point out that LOGIN is obsolete:

The LOGIN mechanism is obsolete, but still used by old Outlooks and some Microsoft phones.

Further down there is a section about usage with a proxy, where you might be enforcing TLS connections to the server at a different layer and terminating them before reaching dovecot, in which case changing the settings like below can treat it as one would with HTTPS(443) being routed to HTTP(80) in reverse proxies?:

ssl = no
disable_plaintext_auth = no

There is some more coverage about the auth_mechanisms option covered in dovecot docs. General advice as best practice these days is to enforce TLS which makes plaintext auth safe(but should be cautioned with STARTTLS). Note @tomav expressed wanting to tackle this since back in 2016,

login should be dropped(if still valid for a minority, could be referenced in docs for enabling).
plain should probably be kept, STARTTLS will be enforced, but has potential to be insecure outside of docker-mailserver with non-conforming clients. Docs should have examples with the port omitted/commented out and advise that implicit TLS ports should be preferred.

For testing, you can check ports 25, 110, 143, 587 with STARTTLS as described here:
openssl s_client -starttls smtp -connect mail.example.com:25
openssl s_client -starttls smtp -connect mail.example.com:587
openssl s_client -starttls imap -connect mail.example.com:143

Ports 110, 143, 587 should enforce STARTTLS, port 25 is required to make STARTTLS support optional when exposed on the host to allow inbound mail from the public internet. Not that everyone follows that, especially with MTA-STS/DANE?

TL;DR

For port 587 I think the server insists on getting a STARTTLS, so it is not a plain-text port at all.

docker-mailserver enforces TLS, but this is not required when supporting 587 on an SMTP server.
Do note the port is still plain-text to begin with, even with enforcement of TLS for transit, prior to establishing the TLS connection all data exchanged is in plain-text. Some clients are known to insecurely send credentials prior to TLS being established.

I don't think it is possible to submit e-mail messages on port 587 in plain text.

It is. 587 is a submissions port, STARTTLS enforcing TLS is optional, but supplying credentials is required.

I'm pretty sure that both 110 and 143 are plain-text even though they might support STARTTLS (not sure).

These ports were originally plain-text only prior to STARTTLS which provides opt-in TLS support. Dovecot by default(and this project) is configured to enforce TLS for 110 and 143(failure to negotiate TLS rejects connection).
This can still be insecure prior to establishing TLS connection, thus implicit TLS ports 993 and 995 are encouraged instead. Same applies for 587.

How about the following, or is the associated notes too long for the README?
Exposed ports

Protocol
Opt-in Encryption1
Forced Encryption
Purpose

SMTP
25
N/A
Relay2

ESMTP
587
4653
Submission

POP3
110
995
Retrieval

IMAP4
143
993
Retrieval

Originally plain-text only, STARTTLS when supported on both ends of a connection will upgrade to a secured TLS connection. This can be enforced instead of optional, rejecting the connection if it cannot be established securely. Enforcement in docker-mailserver is default for ports 110, 143, 587. Port 25 when exposed to the internet is expected to be opt-in, as not all legitimate email received supports securing the connection.
Receives email from external servers on the internet. Many hosting providers and ISPs block port 25(outbound) as it requires no authentication, risking misconfigured servers to become an Open Relay for spam. It is required to be exposed to the public internet if you intend to receive email to an inbox. Sending outbound email in docker-mailserver by default is restricted to your submission ports(465, 587), see PERMIT_DOCKER ENV for relaxing that.
Since 2018 with RFC 8314, port 465 is a submission port(requires authentication), not a secure variant of port 25.

NOTE: While STARTTLS can establish secure connections, doing so requires conformance between both parties which is not always guaranteed. A third-party may intercept and perform a downgrade attack preventing a secure connection that would otherwise be supported, when STARTTLS is enforced it would prevent the email from being sent.
Where possible, it is encouraged to prefer ports 465, 993, 995 for implicit TLS to secure connections. If you do not need ports 25, 110, 143, do not map them to the host ports. They will still be available within the internal docker network for your own containerized services to use.

I think it is a bit long even though the content is good. Perhaps the table, a short note on best practice and a link to a wiki page?

How about this revision? Would you like me to raise a new PR for it?
The other content can be placed in the wiki(and the wiki link can be updated to an appropriate section for it), but I think these notes are important enough to convey to the user up front when they're viewing this overview on ports.
I know for me, it was fairly confusing how the ports were to be used or what I needed. Especially with conflicting information about port 465 on the internet, or how secure is STARTTLS(and why it exists when there are secure ports etc). Further compounded with docs about reverse proxies being added to the mix, and how STARTTLS doesn't mix well into that and LetsEncrypt.

Protocol
Opt-in Encryption1
Forced Encryption
Purpose

SMTP
25
N/A
Relay2

ESMTP
587
4653
Submission

POP3
110
995
Retrieval

IMAP4
143
993
Retrieval

A connection may be secured over TLS when both ends support STARTTLS. On ports 110, 143 and 587, docker-mailserver will reject a connection that cannot be secured. Port 25 is required to support insecure connections.
Receives email and filters for spam and viruses. You should prefer the submission ports(which require authentication) to submit outgoing email. Unless a relay host is configured, outgoing email will leave the server via port 25(thus outbound must not be blocked by your provider).
Submission port since 2018, RFC 8314. Originally a secure variant of port 25.

See the wiki for further details and best practice advice, especially regarding security concerns.

Looks good, please raise a new PR.

Apologies for the delay on my part, this got buried on my todo list.
Thanks @polarathene for all the research and your revision to the port info!  I agree that the table looks much better, so I'll go ahead and close this PR.


Add links to free DataCamp Code-Alongs

This PR adds links to some more free resources for people to get acquainted with the topics of the cookbooks without having to configure their system.

Hey! Thanks so much for this.
Could we move this into the details tag as an option alongside Scrimba? These guides would also be great to add here:
https://js.langchain.com/docs/additional_resources/tutorials

Hey @jacoblee93!

Good call on including it in the details tag. I went ahead and restructured things.
I also added the guides to the tutorials section as you suggested.
Thanks

Thank you!

Oh, hey sorry just dug in and it looks like it's a paid course... would prefer to not have that in the details pages since that's the case.
I'm ok with having it under Tutorials but could you add something about the course not being free?

Yes it's a Python course. It's free (but a registration is required). Is there a better location to include links to Python content?

Ah ok, yes then the LangChain Python repo:
https://github.com/langchain-ai/langchain


Added DoDEdits

Thanks for this addition @ethanleep! If you want to run your bot on the shared instance running at Wikimedia Tools let me know.


TS2416 wrong detection in Mapped Types

Bug Report
🔎 Search Terms
TS2416 wrong detection
🕗 Version & Regression Information
Bug reporoduce on 4.9.5 and nighlty build too
Please keep and fill in the line that best applies:

This is the behavior in every version I tried, and I reviewed the FAQ for entries about TS2416

⏯ Playground Link
Playground link with relevant code
💻 Code
I 'll try to make it shorter but can't sorry.
type PropertiesType<T extends { [key in string]: any }> = T extends { [key in string]: infer V } ? V : never;

interface PropertyValue<Property, Value> {
    readonly property: Property;
    readonly value: Value;
}

function namedValue<Owner, Property extends keyof Owner>(object: Owner, propertyName: Property): PropertyValue<Property, Owner[Property]> {
    return {
        property: propertyName,

        get value(): Owner[Property] {
            return object[propertyName];
        }
    };
}

type BooleanValue = boolean;

type ClassIndex = 1 | 2;
type PropertyIndex = 1 | 2 | 3;
const PREFIX = "p";

interface OwnerWrapper<CI extends ClassIndex> {

    readonly input1: Input<CI, 1>
    readonly input2: Input<CI, 2>
    readonly input3: Input<CI, 3>
}

type Input<CI extends ClassIndex, PI extends PropertyIndex> = PropertyValue<keyof OwnerInputs<CI, PI>, PropertiesType<OwnerInputs<CI, PI>>>;

type OwnerInputs<CI extends ClassIndex, PI extends PropertyIndex> = {
    readonly [key in `${typeof PREFIX}/${CI}_${PI}`]: BooleanValue;
};

type WorkaroundForBug<CI extends ClassIndex> = {
    readonly [key in `|ignore|${CI}`]?: never;
};

type Owner<CI extends ClassIndex> =
    OwnerInputs<CI, PropertyIndex>

// & WorkaroundForBug<CI> //COMMENT THIS WA

class OwnerWrapperImpl<CI extends ClassIndex> implements OwnerWrapper<CI> {

    readonly input1;
    readonly input2;
    readonly input3;

    constructor(private readonly _index: CI,
                private readonly _valueHolder: Owner<CI>) {
        this.input1 = namedValue(this._valueHolder, this.inputTopicName(1));
        this.input2 = namedValue(this._valueHolder, this.inputTopicName(2));
        this.input3 = namedValue(this._valueHolder, this.inputTopicName(3));
    }

    private inputTopicName<PI extends PropertyIndex>(port: PI): keyof OwnerInputs<CI, PI> {
        return `${PREFIX}/${this._index}_${port}`;
    }
}

//Proff that this property realy boolean;

const owner: OwnerWrapper<1> = new OwnerWrapperImpl(1, {
    "p/1_1": true,
    "p/1_2": true,
    "p/1_3": true
})
const thisIsReallyBoolean1: boolean = owner.input1.value
const thisIsReallyBoolean2: boolean = owner.input2.value
const thisIsReallyBoolean3: boolean = owner.input3.value

🙁 Actual behavior
Property 'input2' in type 'OwnerWrapperImpl<CI>' is not assignable to the same property in base type 'OwnerWrapper<CI>'.
  Type 'PropertyValue<`p/${CI}_2`, Owner<CI>[`p/${CI}_2`]>' is not assignable to type 'Input<CI, 2>'.
    Type 'boolean' is not assignable to type 'PropertiesType<OwnerInputs<CI, 2>>'.(2416)

System report error only if Owner type doesn't mix with other types with Generic. If and any FAKE field using maped type bug doesn't reproduce.
🙂 Expected behavior
Code will compile without error and without WA WorkaroundForBug type

Please reduce this down to something shorter than more clearly demonstrates the issue.

I'l try to reduce sample
type PropertiesType<T extends { [key in string]: any }> = T extends { [key in string]: infer V } ? V : never;

interface PropertyValue<Value> {
    readonly value: Value;
}

type ClassIndex = 1 | 2;
type PropertyIndex = 1 | 2;

interface OwnerWrapper<CI extends ClassIndex> {

    readonly input1: Input<CI, 1>
}

type Input<CI extends ClassIndex, PI extends PropertyIndex> = PropertyValue<PropertiesType<OwnerInputs<CI, PI>>>;

type OwnerInputs<CI extends ClassIndex, PI extends PropertyIndex> = {
    readonly [key in `${CI}_${PI}`]: boolean;
};

type WorkaroundForBug<CI extends ClassIndex> = {
    readonly [key in `|ignore|${CI}`]?: never;
};

type Owner<CI extends ClassIndex> =
    OwnerInputs<CI, PropertyIndex>

// & WorkaroundForBug<CI> //UNCOMMENT THIS FOR FIX COMPILE ERROR

class OwnerWrapperImpl<CI extends ClassIndex> implements OwnerWrapper<CI> {

    readonly input1;  //---- COMPILE ERROR HERE. Type 'boolean' is not assignable to type 'PropertiesType<OwnerInputs<CI, 1>>'.

    constructor(private readonly _index: CI,
                private readonly _valueHolder: Owner<CI>) {
        const vh = this._valueHolder;
        const i = this._index;
        this.input1 = {
            get value() {
                return vh[`${i}_1`];
            }
        }
}

//BUT this work fine
const b1: PropertiesType<OwnerInputs<ClassIndex, 1>> = true;

A short repro is usually around 5-15 lines, not 45+. If this is the shortest manifestation of the bug, we almost certainly would not dedicate scheduled time to fixing it.


Fix: show all resources

Overview
Fixes #3011
GE has been calling the DevX API openapi/tree endpoint to get the consolidated open api tree document with both versions. This leads to a huge file.
Currently the built in Javacript response.json() function truncates the content as it parses the response string to JSON. This leads to some of the children not being passed from the browser to the code hence losing some nodes along the way.
This new implementation

makes parallel calls to get the content of each version.
changes the schema so that the resources in state are grouped by the version
removes the function that was used to filter nodes based on their version as the items are already versioned

Demo
security/auditLog

security/auditLog/queries

Notes
Optional. Ancillary topics, caveats, alternative strategies that didn't work out, anything else.
Testing Instructions

Switch to beta
In the query input, type in security/ and confirm you get auditLog as one of the options
Select auditLog and add a / to trigger a new autocomplete action and confirm you get queries as one of the options

@thewahome  what changed to trigger this bug ?

It was an unknown issue that had always existed


Widget get built twice

Can you reopen this issue? #33566
Months ago there was another comment but the issue didn't reopened. And I just commented with another example. Can you take a look at it please?

Flutter does not guarantee Widget.build will be called the minimum number of times possible. You should structure your application in a way that assumes build will be called on every frame - anything less is an optimization.

@jonahwilliams
Build on every frame is the same mistake that Unity have had for years. Please don't do the same.
I would like you to really focus on this:

Our other main goal is to improve Flutter's quality (...) and the development experience (1)

Also, your latest version mentions many performance improvements (2), I think this issue is align with that, for next releases.


UART: fix bug in baudrate->BRR

Some UART speeds were incorrectly set and reported.
Source:
STM32F405 reference manual
30.3.4 page 965:
USARTDIV is an unsigned fixed point number that is coded on the
USART_BRR register.
Note:
• When OVER8=0, the fractional part is coded on 4 bits and programmed by the
DIV_fraction[3:0] bits in the USART_BRR register
• When OVER8=1, the fractional part is coded on 3 bits and programmed by the
DIV_fraction[2:0] bits in the USART_BRR register, and bit
DIV_fraction[3] must be kept
cleared.

Thanks for that amazing fix ;-)


Anubarak and LostVikings missing trait in v4.1.0

HeroesDataParser version: 4.1.0 (FDE)
Platform: Windows 10 Enterprise (Korean)
Game Version: <IP_ADDRESS>132

When extracting output with the following command:
~\hdp\HeroesData 'H:\Heroes of the Storm' -o . -l kokr -l enus --json

The resulting JSON files are missing Anub'arak's trait, Scarab Host.
Also, the Lost Vikings' trait (Viking Hoard) is present in each of the individual viking units (HeroBaleog, HeroErik, HeroOlaf), but missing in the top-level LostVikings.abilities object. I assume this is unintentional, as the rest of the Viking abilities are there.

Actually it was intentional, but I will add all the individual Viking unit abilities to the Viking's hero controller as it will make it easier to get all their abilities.


Updated ISPN-5568 KeyAffinityService race condition on view change

https://issues.jboss.org/browse/ISPN-5568
Update for https://github.com/infinispan/infinispan/pull/3590

No changes needed for 7.2.x after git rebase --interactive master --onto 7.2.x

Pushed to both master and 7.2.x


DEPR: Deprecate str.split return_type

Closes #9847, Closes #9870. Default value is expand=False to be compat withreturn_type='series'. May better to change the default to True in future (and show warning about it)?
CC @jreback @jorisvandenbossche @sreejata

@jreback, @mortada Thanks, updated.

Looks good!
Another thing I encountered while reviewing: there is no good explanation of the n kwarg of split in the docstring, and the default differs between str_split/docstring (default of None) and the signature of split itself (default of -1)

@jorisvandenbossche Explanation of n is written as notes, thus moved it to main part. Also, modified the docstring to meet the str.split without changing the default values. Or may better to change defaults as None and -1 has the same meaning?
I also found current arg names are different from standard str.split (sep and maxsplit ) ...

merged via https://github.com/pydata/pandas/commit/8b8984258cbede113d362c18508f85fcef4eaaf5
@sinhrks thank you!
if you have minor doc changes, pls fee free to make another PR.


ng update can't deal with different package registry

Command
update
Is this a regression?

[ ] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
No response
Description
When run ng update in an angular project with dependencies from jsr registry it brokes. It brokes even if the configuration file .npmrc is present with @jsr:registry=https://npm.jsr.io.

This package can be updated by running npm install @nostrify/nostrify@npm:@jsr/nostrify__nostrify@latest, that's a lot of @, but works.
To perform update having that dependencies as it currently is, I must remove then, update angular and then include they again.
Minimal Reproduction
Reproduction:
npm install -g @angular/cli@17
ng new my-project
npx jsr add @nostrify/nostrify @nostr/tools
ng update
You can also reproduce this by clonning this repository and running ng update in devcontainer.
Exception or Error
root@1a8eee8c8227:/bug-update-jsr# ng update
Using package manager: npm
Collecting installed dependencies...
Found 24 dependencies.
✖ Migration failed: 404 Not Found - GET https://registry.npmjs.org/@nostr%2ftools - Not found
  See "/tmp/ng-AfTjrC/angular-errors.log" for further details.

root@1a8eee8c8227:/bug-update-jsr# ng update @angular/cli
The installed Angular CLI version is outdated.
Installing a temporary Angular CLI versioned 18.2.11 to perform the update.
✔ Packages successfully installed.
Using package manager: npm
Collecting installed dependencies...
Found 24 dependencies.
Fetching dependency metadata from registry...
✖ Migration failed: 404 Not Found - GET https://registry.npmjs.org/@nostrify%2fnostrify - Not found
  See "/tmp/ng-3BFR3I/angular-errors.log" for further details.

No response

I searched for issues in angular/angular before opening it, but now I see I was directed to angular/angular-cli and my issue is a duplicated of https://github.com/angular/angular-cli/issues/28834. So, I'm closing it as duplicated.


Broken production build

I connected D1 in settings and it throws this error in the console, any idea, what's causing this?

Demo - https://nuxt-todos-edge-5ij.pages.dev/
Code - https://github.com/fayazara/nuxt-todos-edge/

Works perfectly in local btw

You may want to add copy/paste the migrations in your D1 database in the console:

How do I do this?

You create a D1 database, open the console of it.
Then copy the content of https://github.com/Atinux/nuxt-todos-edge/blob/main/server/db/migrations/0000_sloppy_starfox.sql in it

Worked, thanks !!