Testing platform produces an error with dotnet test

Describe the bug
Created a new test project with the new Microsoft.Testing.Platform which seems to be working with dotnet run command but not with dotnet test
Steps To Reproduce
Created a new NUnit test app:
If I run dotnet run I get the following output:
C:\prog\NUnit.TempTests> dotnet test
Test run for C:\prog\NUnit.TempTests\bin\Debug\net8.0\NUnit.TempTests.dll (.NETCoreApp,Version=v8.0)
Microsoft (R) Test Execution Command Line Tool Version 17.10.0 (x64)
Copyright (c) Microsoft Corporation.  All rights reserved.
Starting test execution, please wait...
A total of 1 test files matched the specified pattern.
Testhost process for source(s) 'C:\NUnit.TempTests\bin\Debug\net8.0\NUnit.TempTests.dll' exited with error: Error:
An assembly specified in the application dependencies manifest (testhost.deps.json) was not found:
package: 'Newtonsoft.Json', version: '13.0.1'
path: 'lib/netstandard2.0/Newtonsoft.Json.dll'
. Please check the diagnostic logs for more information.
Test Run Aborted.

 07. 16.) [win-x64 - .NET 8.0.7]
Passed! - Failed: 0, Passed: 5, Skipped: 0, Total: 5, Duration: 317ms - NUnit.TempTests.dll (win-x64 - .NET 8.0.7)
For some reason it seems like the Json reference flows through the test command which I'm not sure how it's supposed to be possible. The test itself is not using Newtonsoft.Json at all.
Expected behavior
Should produce the same run result and output.
Actual behavior
Throws the error above.
Additional context
I did made my tweaks to be able to make the NUnit-Vnext branch to be able to work. But that's not supposed to cause this error at all.
If you need any context / info please feel free to reach out to me.
Best,
Bálint

Add the <TestingPlatformDotnetTestSupport>true</TestingPlatformDotnetTestSupport> property to your .csproj

@nbalu please have a look at https://learn.microsoft.com/dotnet/core/testing/unit-testing-platform-integration-dotnet-test for more informations.
We are aware this is a little cumbersome to have these different flags and maybe we should have them linked for NUnit (cc @OsirisTerje) but we had to have as many safeguards as possible when we have released this new platform. The number of edge cases or undocumented scenarios of VSTest is so high that we were sure to end up in some places where something would not work and we wanted to ensure there was always an easy way out for users.

Thanks Guys, that was helpful.
 Though right now I feel like I'm turning on flags that should be just simply be controlled by Microsoft.Testing.TestPlaform.
So people might be using:
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.x" />
or
<PackageReference Include="Microsoft.Testing.Platform" Version="1.x" />

But not both thus flags could controlled by Platform as a shipped default props. As .net is great because of their sane defaults / no config hell. IMHO selecting the package could imply the flavour of the "runner". Or am I wrong here?
Running still not working as expected, got a wierd bug in the servicecollection dispose. I'll try to figure out what might be wrong with my setup reading through the docs pages. Though this should not be happening.
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests> dotnet test
  Determining projects to restore...
  All projects are up-to-date for restore.
  Microsoft.Testing.Platform.Extensions.TestRunner -> C:\prog\TestRunner\TestRunner\Microsoft.Testing.Platform.Extensions.TestRunner\bin\Debug\net8
  .0\Microsoft.Testing.Platform.Extensions.TestRunner.dll
  TestRunner.Agent.NUnit.TempTests -> C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTe
  sts.dll
  Run tests: 'C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll' [net8.0|x64]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed: Tests fail
ed: .NET Testing Platform v1.3.1+359466b83c (UTC 2024. 07. 16.) [win-x64 - .NET 8.0.7] [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTe
sts\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed: Unhandled
exception. System.ObjectDisposedException: The CancellationTokenSource has been disposed. [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.Tem
pTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Syst
em.Threading.CancellationTokenSource.get_Token() [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.c
sproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Micr
osoft.Testing.Platform.Services.CTRLPlusCCancellationTokenSource.get_CancellationToken() in /_/src/Platform/Microsoft.Testing.Platform/Services/CTR
LPlusCCancellationTokenSource.cs:line 25 [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Micr
osoft.Testing.Extensions.Telemetry.AppInsightsProvider.IngestLoopAsync() in /_/src/Platform/Microsoft.Testing.Extensions.Telemetry/AppInsightsProvi
der.cs:line 143 [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Micr
osoft.Testing.Platform.Helpers.TaskExtensions.TimeoutAfterAsync(Task task, TimeSpan timeout, Boolean observeException, String filePath, Int32 lineN
umber) in /_/src/Platform/Microsoft.Testing.Platform/Helpers/TaskExtensions.cs:line 121 [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempT
ests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Micr
osoft.Testing.Extensions.Telemetry.AppInsightsProvider.DisposeAsync() in /_/src/Platform/Microsoft.Testing.Extensions.Telemetry/AppInsightsProvider
.cs:line 324 [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Micr
osoft.Testing.Platform.Helpers.DisposeHelper.DisposeAsync(Object obj) in /_/src/Platform/Microsoft.Testing.Platform/Helpers/DisposeHelper.cs:line 2
5 [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Micr
osoft.Testing.Platform.Hosts.CommonTestHost.DisposeServiceProviderAsync(ServiceProvider serviceProvider, Func`2 filter, List`1 alreadyDisposed, Boo
lean isProcessShutdown) in /_/src/Platform/Microsoft.Testing.Platform/Hosts/CommonTestHost.cs:line 184 [C:\prog\TestRunner\TestRunner\TestRunner.Ag
ent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Micr
osoft.Testing.Platform.Hosts.CommonTestHost.RunAsync() in /_/src/Platform/Microsoft.Testing.Platform/Hosts/CommonTestHost.cs:line 56 [C:\prog\TestR
unner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Micr
osoft.Testing.Platform.Builder.TestApplication.RunAsync() in /_/src/Platform/Microsoft.Testing.Platform/Builder/TestApplication.cs:line 252 [C:\pro
g\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Test
ingPlatformEntryPoint.Main(String[] args) in C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\obj\Debug\net8.0\TestPlatformEntryPoint
.cs:line 19 [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:    at Test
ingPlatformEntryPoint.<Main>(String[] args) [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj
]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:  [C:\prog\
TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed: === COMMAN
D LINE === [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed: C:\Program
 Files\dotnet\dotnet.exe exec C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll
--internal-msbuild-node testingplatform.pipe.55bf509ac5d84be2988104264d00ffab  [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\Test
Runner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:  [C:\prog\
TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\bin\Debug\net8.0\TestRunner.Agent.NUnit.TempTests.dll : error run failed:  [C:\prog\
TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\Users\Timi\.nuget\packages\microsoft.testing.platform.msbuild\1.2.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(248,5): error
 MSB4018: The "InvokeTestingPlatformTask" task failed unexpectedly. [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agen
t.NUnit.TempTests.csproj]
C:\Users\Timi\.nuget\packages\microsoft.testing.platform.msbuild\1.2.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(248,5): error
 MSB4018: System.ArgumentNullException: Value cannot be null. (Parameter '_outputFileStream') [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit
.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\Users\Timi\.nuget\packages\microsoft.testing.platform.msbuild\1.2.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(248,5): error
 MSB4018:    at Microsoft.Testing.Platform.Helpers.ArgumentGuard.IsNotNull(Object argument, String paramName) in /_/src/Platform/Microsoft.Testing.
Platform/Helpers/ArgumentGuard.cs:line 16 [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\Users\Timi\.nuget\packages\microsoft.testing.platform.msbuild\1.2.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(248,5): error
 MSB4018:    at Microsoft.Testing.Platform.MSBuild.InvokeTestingPlatformTask.Execute() in /_/src/Microsoft.Testing.Platform.MSBuild/Tasks/InvokeTes
tingPlatformTask.cs:line 238 [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\Users\Timi\.nuget\packages\microsoft.testing.platform.msbuild\1.2.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(248,5): error
 MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [C:\prog\TestRunner\TestRunner\TestR
unner.Agent.NUnit.TempTests\TestRunner.Agent.NUnit.TempTests.csproj]
C:\Users\Timi\.nuget\packages\microsoft.testing.platform.msbuild\1.2.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(248,5): error
 MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingCon
text, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [C:\prog\TestRunner\TestRunner\TestRunner.Agent.NUnit.TempTests\Tes
tRunner.Agent.NUnit.TempTests.csproj]

And still dotnet run works as expected :)

So people might be using:
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.x" />
or
<PackageReference Include="Microsoft.Testing.Platform" Version="1.x" />

Having multiple packages is indeed a solution although it could not work as in your example.
One of the problem of VSTest, and current approach is that the test frameworks depends on some object model package shipped by VSTest but they don't declare this dependency and the user references Microsoft.NET.Test.Sdk that ships a version of this object model. Because of this design, the potential conflicts will happen at runtime and not compile time. This is also causing some issues where sometime people are not adding Microsoft.NET.Test.Sdk (because that's not super natural).
Instead, with the new platform, the user references only NUnit packages and there is no conflicting version of the new "object model". It would be possible for NUnit to continue shipping NUnit3TestAdapter as the old adapter (working only with VSTest) and to ship some new package working with the new platform.
One downside of this, and the reason we didn't do that on MSTest, is that it makes it harder for people to try it out. For example, right now it's relatively easy to keep all your infra has before and to occasionally (let's say only on your machine) run passing the flag enabling the runner. Again, we now have about 8 months of feedback on MSTest side and things are going really well so this is something that could totally be done now.
About the errors, I actually see 2 problems, one with dotnet test and one with dotnet exec. Can you confirm this log is from only one run? It seems that the version of Microsoft.Testing.Platform.MSBuild (1.2.1) is different from Microsoft.Testing.Platform (1.3.1). I'll investigate the ObjectDisposedException.

Yes it's from a single run.
My bad haven't checked that if a new version exists. I just had the time to play around with it after weeks/months maybe.

I found the issue for the object disposed exception but I will wait for @MarcoRossignoli on Monday to discuss best fix.

I think it's fixed by #3306, I'll cherry-pick and do a bug fix release of the platform.

1.3.2 solved the execution problem and the output is working as expected thanks for the help👍


VDS example

Add information on the VDS API and a downloadable example to the data access page.
Resolves #74

Test error because they can't run two times at the same time?

Test error because they can't run two times at the same time?

I don't follow.

Test error because they can't run two times at the same time?

I don't follow.

You had one test failing and that fail looked kind of like it failed because both branch and pr-merge were running at the same time. Or did you have any other understanding of it? If you agree, then I suggest creating an issue unless we are promptly moving this testing away from jenkins.

Test error because they can't run two times at the same time?

I don't follow.

You had one test failing and that fail looked kind of like it failed because both branch and pr-merge were running at the same time. Or did you have any other understanding of it? If you agree, then I suggest creating an issue unless we are promptly moving this testing away from jenkins.

I created an issue, but @joakimmoller is already working on Github Actions, so it might soon be redundant.


chore: release version 2.0.0

:robot: Preparing to release next version
2.0.0 (2024-12-12)
⚠ BREAKING CHANGES

add optional servicename to backgroundserviceoptions

Features

add optional servicename to backgroundserviceoptions (47bc37a)

Bug Fixes

deps: update System.Text.Json transitive dependency to fix security vulenrability (a61ede8)

This pull request was generated by release-please.

:robot: Created releases:

v2.0.0
:sunflower:


[PcGamerBridge] - Add all articles, full content and images

Previously, this bridge was only capturing the "buying guides" style articles that were in a list on the front page. (maybe to due backend changes at pcgamer?)
I've modified it to now feature all articles, news, reviews, buying guides, etc. It also gives you the complete article content including text and images instead of just the tagline.

Thank you !


Update the scalar-ist e2e test workflow

Update the scalar-ist e2e test workflow

@ypeckstadt san,
Auditor support added for Scalar-ist e2e test. e8f1a06
Could you please take a look when you get a chance?


Verbose argument needs to be applied within g.getmeta

Even if verbose = FALSE, g.getmeta would print "Loading chunk 1..." when do.parallel = FALSE. This might occur also in other functions, it would be good to double check that.

Note: This is being address as part of https://github.com/wadpac/GGIR/pull/646.
Please remember to tag issues in both commit messages and PRs as that would help track progress on open issue.

Closing because PR has been merged.


Enhance the endpoint to fetch the file contents of the configuration server with the possibility to specify a version

The configuration server offers the possibility to fetch the content of configuration files of the workspace branch (which is used by the UI for example). Currently, the workspace branch is always used as a basis.
In this ticket this endpoint should be extended so that a specific version can be specified (based on the commit ID) to which the resulting filte content refers. This should make it possible to get the content of a file in a specific version (commit). It should be possible to specify the ID using a request parameter called version.
Example: /api/v1/files/example.yml?version=e3004bed2cf2ba75a4d49d5383919223be58bc5f
By default, the content of the file located in the latest version of the workspace branch should be used (for example, if no version parameter is specified).
It should also be possible to fetch the file content of file located on the configuration server's live branch. For this purpose, a special verison id can be reserved, e.g. live, which causes to use the current live branch as basis of the file content.
Example: /api/v1/files/example.yml?version=live
This enhancement should only refer to the read access of the file content (GET /api/v1/files/...). Write access to specific versions should not be allowed!

closed by #910


NotFoundError: Error code: 404 - {'detail': 'Not Found'}

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
'''
!pip -q install langchain openai tiktoken  pypdf InstructorEmbedding faiss-cpu
!pip install sentence-transformers==2.2.2
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.llms import OpenAI
from langchain.chains import RetrievalQA
from langchain.document_loaders import PyPDFLoader
from langchain.document_loaders import DirectoryLoader
from InstructorEmbedding import INSTRUCTOR
from langchain.embeddings import HuggingFaceInstructEmbeddings
from google.colab import drive
drive.mount('/content/gdrive', force_remount=True)
root_dir = "/content/gdrive/MyDrive"
path = "/content/gdrive/MyDrive/Documents/inek"
loader = DirectoryLoader(path , glob="./*.pdf", loader_cls=PyPDFLoader)
documents = loader.load()
text_splitter = RecursiveCharacterTextSplitter(
chunk_size=1000,
chunk_overlap=200)
texts = text_splitter.split_documents(documents)
len(texts)
texts[3]
import pickle
import faiss
from langchain.vectorstores import FAISS
from langchain.embeddings import HuggingFaceInstructEmbeddings
instructor_embeddings = HuggingFaceInstructEmbeddings(model_name="asafaya/kanarya-750m"
)
db_instructEmbedd = FAISS.from_documents(texts, instructor_embeddings)
retriever = db_instructEmbedd.as_retriever(search_kwargs={"k": 3})
docs = retriever.get_relevant_documents("Ketosiz hastalığı nedir kimlerde görülür?")
api_key= "sk-ac2d3761ef1e42e2aa18c4fc9cb381ec"
base_url = "https://api.deepseek.com/v1"
client = OpenAI(api_key=api_key, base_url=base_url)
qa_chain_deepseek = RetrievalQA.from_chain_type(
llm=client,
chain_type="stuff",
retriever=retriever,
return_source_documents=True
)
query = "Ketosiz hastalığı nedir kimlerde görülür?"
llm_response = qa_chain_deepseek(query)
print(llm_response["result"])
'''
Error Message and Stack Trace (if applicable)
NotFoundError                             Traceback (most recent call last)
 in <cell line: 16>()
14
15 query = "Ketosiz hastalığı nedir kimlerde görülür?"
---> 16 llm_response = qa_chain_deepseek(query)
17 print(llm_response["result"])
30 frames
/usr/local/lib/python3.10/dist-packages/openai/_base_client.py in _request(self, cast_to, options, remaining_retries, stream, stream_cls)
978
979             log.debug("Re-raising status error")
--> 980             raise self._make_status_error_from_response(err.response) from None
981
982         return self._process_response(
NotFoundError: Error code: 404 - {'detail': 'Not Found'}
Description

I'm getting NotFoundError: Error code: 404 - {'detail': 'Not Found'}
Please help me that why I'm getting this error.

System Info

I m also getting the same error.
Can you tell me whether this issue is fixed or not??

File "/anaconda3/lib/python3.11/site-packages/openai/_base_client.py", line 1013, in _request
raise self._make_status_error_from_response(err.response) from None
openai.NotFoundError: Error code: 404 - {'detail': 'Not Found'}
I am also getting the same error. Please help.

try change base_url = "https://api.deepseek.com/v1" to  base_url = "https://api.deepseek.com"

Maybe is your llm endpoint setting error, you should use "http://:/api/v1/chat/completions" as parameter of llm.


Create READ.me

Purpose is for test bot

...

Does this introduce a breaking change?

[ ] Yes
[ ] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test

Get the code

cd [repo-name]
git checkout [branch-name]
npm install

Test the code

What to Check
Verify that the following are valid

...

Other Information

nice one


[Bug]: Error from npm_translate_lock when using pnpm.patchedDependencies

What happened?
If you have a pnpm.patchedDependencies entry in package.json, then npm_translate_lock will produce an error like:
Error in fail: ERROR: patch_args for package<EMAIL_ADDRESS>contains a strip prefix that is incompatible with a patch applied via `pnpm.patchedDependencies`.

`pnpm.patchedDependencies` requires a strip prefix of `-p1`. All applied patches must use the same strip prefix.

npm_translate_lock's support for pnpm.patchedDependencies should extend to supplying a default patch_args value of ["-p1"] for packages that appear in pnpm.patchedDependencies, since that's the format pnpm uses.
Version
Development (host) and target OS/architectures:
Output of bazel --version: bazel 6.1.0
Version of the Aspect rules, or other relevant rules from your
WORKSPACE or MODULE.bazel file: rules_js-1.33.1
Language(s) and/or frameworks involved: Javascript
How to reproduce
No response
Any other information?
No response

I have an old PR that does this, but I don't think we reached an agreement: https://github.com/aspect-build/rules_js/pull/837.

Fixed in https://github.com/aspect-build/rules_js/pull/1694


Remove semvar lock from travis

Please stop making pull requests like these to my repositories (and preferably all repositories but that's up to them).  They add nothing and only serve clog up my inbox when more important PR's and issues deserve my attention.
This build only runs the linter so changing node versions is literally pointless


Tzwhere not working

Hi,
I have use your example to see how it's working. Buts nothing apear...
In the folder test, I have the file test.js with your example :
var tzwhere = require('tzwhere')
tzwhere.init();

var whiteHouse = {'lat': 38.897663, 'lng': -77.036562};

// Determine the timezone of the White House
console.log(tzwhere.tzNameAt(whiteHouse['lat'], whiteHouse['lng']));

// Determine the current offset from UTC, in milliseconds, of the White House's timezone
console.log(tzwhere.tzOffsetAt(whiteHouse['lat'], whiteHouse['lng']));

And in the second file test2.js I have this :
console.log('test');

If I use node test2.js, I have my test, but with node test.js, I have nothing......

Same here. On Windows the module cannot be loaded anymore. The code execution stops at require('tzwhere').

+1

+1...
any trick ?

+1

Just change the version, like in the previous link, or wait for the next release.
The pull request was accepted.

@jmengelle why do you say it was accepted while it's been open for a year?

My bad, it was just the test success mark.
Never mind.
Still, this work, i used this fix a 2 days ago.


Missing code of conduct

Please add a Code of Conduct to your project.
https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.
see also: https://opensource.guide/code-of-conduct/

Code of conduct has been added: https://github.com/fkurz/vpnctl/blob/main/CODE_OF_CONDUCT.md Thanks! :)


Add interfaces to lib/pickles

This PR aims at adding basic interface files to all modules within lib/pickles.
When possible, it also adds some lightweight documentation and, occasionally, lightweight refactoring of code.
Dependencies
Merge after #11858 #11898

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-mina

!ci-build-mina

!ci-build-mina

!ci-build-mina

!ci-build-me


Adding Custom Header from claims

In order to add complete custom header parameter to upstream from claims. Currently claims header parameter is prefixied with "X-Auth", which may not be suitable in many cases. Also asked a question in issues: #531

Questions:

is the pipe | safe divider? Can be pipe used in the claim name?
doc/examples should be updated as well
how it will affect other default X-Auth- request headers? for example:

add-claims:
- given_name|X-Auth-Email

What will be in the X-Auth-Email header in this case: email or give_name or duplicated headers with the same name and different values?

pipe seem to be safe divider so far from my research, claims are usually scoped with : or - , not with pipe.
Could you please let me know where can i update docs / examples ?
Currently as it is using map , it will be over written by which ever is defined later part.

also relates to this issue: https://issues.redhat.com/projects/KEYCLOAK/issues/KEYCLOAK-12343 ... would really appreciate seeing this merged.

Any updates on this ?


How to do that session expiring automatically?

I want that the session expires after 72 hours. What part of the MEAN.JS code I need to modify to do that? I'm not very familiar with ExpressJS. Thank you so much!

I believe you are looking to set a maxAge for session cookie, something like this: http://stackoverflow.com/questions/10429557/whats-the-correct-way-to-use-maxage-with-express-js.
In MEAN.JS you just have to add cookie: {maxAge: 259200} to the "Configure Express session" block in config/lib/express.js.

Thank you a lot!

Hi @aralroca,
I created a PR to address this problem: https://github.com/meanjs/mean/pull/803

Updated PR https://github.com/meanjs/mean/pull/804 has been merged so this is already available to you in master branch @aralroca
Thanks for letting us know!


Parsing fails when fct is empty

rs-ucan throws a generic parsing error if fct is empty. It took a while to figure out what was going on. 😅
I'm actually not sure if this is a bug in rs-ucan, or if other libraries should always build UCANs with fct fields, even when the set is empty?
I'll write a test case once I know if the fix should go here or elsewhere. :)

fct is an array; is the failure condition when fct is empty or undefined? Are you using UCANs generated by another library?

Could you also verify that the UCAN in question checks out in the validator? https://ucan.xyz/validator/

Did some spec delving on this topic, and filed https://github.com/ucan-wg/rs-ucan/issues/98

Amazing, thanks – I didn't even get a chance to look at this and you've already got it. Let me know if I can help at all with the implementation, still getting my rust legs so I'm not extremely confident in doing a Correct implementation, but happy to do the work! I'll close the issue I filed in the meantime.

Should be fixed in the release that is going out now :+1: thanks for calling our attention to this!


How to test a single RGB image?

Thank you very much for your work. If I want to test an RGB image, can I get a semantic segmentation graph through the model input picture, and I want clear visualization results, can I get a more precise semantic segmentation graph?

Compile and install the post_process program.
Transform input image to a two channel direction map (pred_flux), refer to test.py.
https://github.com/JianqiangWan/Super-BPD/blob/3c44638117625001ea0a92616f339c6ae4d5b956/post_process/demo.py#L34-L42
The final segmentation result has no semantic information，and post-processing includes the construction and connection process of the Region Adjacency Graph (RAG), we didn't output the RAG.


When duplicating a subtree, keep connections

When duplicating multiple nodes at a time, the connections between those nodes are broken in the clone.
The connections should be preserved.

Done


improvement: i18ize "Toggle color scheme"

(I'd squash the two commits)

Thanks for this pull request :)


Init scripts refactor - fixes #9

This supersedes #15, is now rebased on master.
This fixes all points in #9.
Apart from those points, it:

sets systemd loading as default,
runs AlexaPi under a non-privileged user alexapi. - Yes, finally!

Important remarks:

You need to be on Raspbian Jessie, because it runs under a normal user and touches GPIO which wasn't possible on older versions. I hope folks at Arch Linux implemented the same thing, since it should be in kernel anyway. @maso27 Can you test please?
When systemd restarts AlexaPi on crash, it isn't run with the silent option, therefore says Hello again. I wasn't able to find a way to achieve this. But I don't think it's such a problem. That being also due to the fact, that these watchdogs are borderline cases and AFAIK there is no need for it. It's there just in case.
If you're gonna try the classic init and then native systemd, apart from rm /etc/init.d/AlexaPi and installing with the new option, you have to actually restart the Pi, in order for systemd to reload the change for some reason. I guess it's confused because it previously had to use a non-native file and now we want to use native ... I don't know, I doesn't really matter.
It won't work on OpenWRT, because the start-stop-daemon there doesn't offer all the capabilities a full-sized does. We'll probably have to have a special init script for that OS. It's probably gonna be like the one that was here before, but I didn't want to keep it alongside, because we need to test anyway, so when we get there (AlexaPi running even on OpenWRT), we'll make one.

@alexa-pi/coreteam Please test.

I installed this today (in raspbian) and exercised the systemctl commands.  Works well.
I'll look into getting it into Arch next.  I haven't played with the pi's GPIO in Arch: I'll have to see how it works.

Great. You'll have to do the install manually though for now.

@alexa-pi/coreteam Any progress on CR / testing?

I'm having trouble getting arch onto a pi.  I was working on a pi 1b, but that image from archlinuxarm isn't working for me.
I need some time to try the pi 2 image on my pi 2 board (my son wanted some music and has "borrowed" it with the most recent Alexa install).

Ok.  It took a little time, but I got it to run on Arch Linux on the Pi 2. (Had to create the image from another Arch box, for some reason it never worked under Raspbian.)
In case folks are interested, here's what I had to do:

"python" => "python2" everywhere (including all other scripts)
"apt-get update" => "pacman -Sy"
"apt-get install xxxx -y" => "pacman -S xxxx --noconfirm"
"pip" => "pip2"
"python-dev" => "python2"
"libasound2-dev" => "alsa-lib" and "alsa-utils"
"libpulse-dev" => "libpulse"
remove "python-alsaaudio"
add "gcc" to list of things to install
add "RPi.GPIO=>0.6.2" to requirements.txt
add "dtparam=audio=on" to /boot/config.txt
shairport-sync is already a package in archlinux repos, so just "pacman -S shairport-sync --noconfirm" to replace most of the build steps there.

I ran the install as root, and systemd doesn't seem to be working with user alexapi.
I changed user and group to root in AlexaPi.service, and it starts at boot.
Not sure that any of this is what you had in mind, but it's cool to have it working.
I'd say, from a raspbian perspective, that this is ready to merge.
I'm not sure how we would handle multiple architectures though.

@maso27 Thank you for the list - we'll use that when creating OS platforms to support Arch!
I wanted someone to test (/ getting it to work) running in under the alexapi user to see if that also works by default in Arch. Anyway, I have a spare SD card, so I'm gonna give it a shot.

@maso27 Nice work, man! I am testing inits-refactor-2 with Arch on a Pi3 and a headless Zero right now. Did you happen to look at "trick the environment" at https://wiki.archlinux.org/index.php/Python ?

Alright. I can see that it's not there by default. We need to add the group gpio, if it's not there, add the user alexapi there and set some udev rules - [1], [2]. @maso27 @illperipherals You can try this if you want to and see if it works for you so we can do it. Running under non-root is an important thing.
However I'd do that in a separate PR. Maybe along with the OS platforms so it all sets up automatically?
It's a small change, but seems to be quite off topic for this PR and it will require additional testing. And we don't advertise that we support other distributions already, since it's not finished yet (even though even I personally have it running on Arch after manual install).
So OK to merge this as it is?

I am wrapping up my config on the Zero right now. One small thing that has bitten me twice is when you get to the part on whether you want to retain your config file... if you hit the enter key anywhere in the install process by accident, it feeds you through that...
Not a huge deal, but thought wrapping with stty might fit under this PR?
Thoughts?

@illperipherals Can you elaborate or post a screenshot? I'm not entirely sure what you mean.

@renekliment When asked for the Amazon credentials in setup.sh, it allows empty values (from hitting CR during the long foreground process).

@maso27 What does your system load look like on this build?

@illperipherals I see. Please file an issue regarding that, since it doesn't concern init scripts / starting the app and should therefore come in another PR.

@illperipherals I hadn't seen the "trick the environment" thing, but that could prove quite useful.  I use OctoPrint with my 3D printers, and they recently switched to a virtual environment for running it.  Worth investigation, for sure.
And on the Arch install with an RPi2, it looks like the load of a quiescent alexa is 2.6% CPU, 5.4% memory.
Better than I expected.
@renekliment I definitely agree that it's good to get away from the root requirement.  I'll look into adding the GPIO group and device when next I get the chance.
But yeah, I'd say this is good to merge.

Great, merging.
ad Arch for RPi: It's a shame that it's not there by default as in Raspbian, but whatever. Arch is kinda DIY and we can totally do this by ourselves.

I know it's off-topic, but I got Arch to start with user/group alexapi.
I figured since I started writing about it here I'd put what I had so others could see it.
My steps:
groupadd gpio -r
usermod -a -G gpio alexapi
nano /etc/udev/rules.d/99-gpio.rules
Insert the following (3 lines):
SUBSYSTEM=="bcm2835-gpiomem", KERNEL=="gpiomem", GROUP="gpio", MODE="0660" SUBSYSTEM=="gpio", KERNEL=="gpiochip*", ACTION=="add", PROGRAM="/bin/sh -c 'chown root:gpio /sys/class/gpio/export /sys/class/gpio/unexport ; chmod 220 /sys/class/gpio/export /sys/class/gpio/unexport'" SUBSYSTEM=="gpio", KERNEL=="gpio*", ACTION=="add", PROGRAM="/bin/sh -c 'chown root:gpio /sys%p/active_low /sys%p/direction /sys%p/edge /sys%p/value ; chmod 660 /sys%p/active_low /sys%p/direction /sys%p/edge /sys%p/value'"
Reboot, and voila!

@maso27 Awesome! We'll somehow include this, so users don't have to do it themselves.


fix RegistryProtocolTest.testExport run fail

What is the purpose of the change
fix RegistryProtocolTest.testExport run fail
see #7575
Brief changelog
Verifying this change

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [Dubbo-XXX] Fix UnknownException when host config not exist #XXX. Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Run mvn clean install -DskipTests=false & mvn clean test-compile failsafe:integration-test to make sure unit-test and integration-test pass.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #7576 (a289daa) into master (7410cfe) will decrease coverage by 0.31%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #7576      +/-   ##
============================================
- Coverage     59.03%   58.71%   -0.32%
+ Complexity      527      492      -35
============================================
  Files          1076     1076
  Lines         43417    43417
  Branches       6339     6339
============================================
- Hits          25631    25493     -138
- Misses        14944    15096     +152
+ Partials       2842     2828      -14

Impacted Files
Coverage Δ
Complexity Δ

...e/dubbo/registry/consul/ConsulRegistryFactory.java
0.00% <0.00%> (-100.00%)
0.00% <0.00%> (-2.00%)

...g/apache/dubbo/registry/consul/ConsulRegistry.java
0.00% <0.00%> (-60.59%)
0.00% <0.00%> (-31.00%)

...bo/config/event/listener/LoggingEventListener.java
37.50% <0.00%> (-25.00%)
0.00% <0.00%> (ø%)

...bo/rpc/cluster/support/FailbackClusterInvoker.java
52.45% <0.00%> (-18.04%)
0.00% <0.00%> (ø%)

...o/remoting/transport/ChannelHandlerDispatcher.java
60.00% <0.00%> (-10.00%)
0.00% <0.00%> (ø%)

...ng/transport/dispatcher/all/AllChannelHandler.java
82.75% <0.00%> (-6.90%)
0.00% <0.00%> (ø%)

.../threadpool/manager/DefaultExecutorRepository.java
79.03% <0.00%> (-4.84%)
0.00% <0.00%> (ø%)

...ng/transport/dispatcher/WrappedChannelHandler.java
58.69% <0.00%> (-4.35%)
0.00% <0.00%> (ø%)

...ava/org/apache/dubbo/config/DubboShutdownHook.java
70.21% <0.00%> (-4.26%)
0.00% <0.00%> (ø%)

...mmon/serialize/kryo/utils/AbstractKryoFactory.java
75.43% <0.00%> (-3.51%)
0.00% <0.00%> (ø%)

... and 17 more

Continue to review full report at Codecov.

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


MNT: Re-render the feedstock

Hi! This is the friendly conda-forge-admin automated user.
I've re-rendered this feedstock with the latest version of conda-smithy (1.1.2) and noticed some changes.
If the changes look good, then please go ahead and merge this PR.
If you have any questions about the changes though, please feel free to ping the 'conda-forge/core' team (using the @ notation in a comment).
Remember, for any changes to the recipe you would normally need to increment the version or the build number of the package.
Since this is an infrastructural change, we don't actually need/want a new version to be uploaded to anaconda.org/conda-forge, so the version and build/number are left unchanged and the CI has been skipped.
Thanks!

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

It's the friendly automated conda-forge-admin here again.
Just to let you know, I've updated this PR so that it has the latest render from conda-smithy (version 1.3.2).
If there are no problems with it, please consider merging this PR.
If there are concerns about it, please ping the 'conda-forge/core' team (using the @ notation in a comment).
Thanks!

Merged to get this out of the way.


client api only support web(javascipt)?

I want to connect to media server by android devices. Is there any sample code that works in android? Thanks.

The media server does not have any signaling protocol, so you can use whatever you may like.
Unfortunately there is no sample code for a client demo for android


How many reminders can we register?

Hi I found the page helpfull but I am missing the information how many reminders per actor we can register, I gues it is not unlimited!?

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

ID: 70a492fe-4ea3-2972-e4bd-e25f95b210bf
Version Independent ID: 31b848a4-c9ce-bf05-d3c3-c171d7696741
Content: Reliable Actors timers and reminders - Azure Service Fabric
Content Source: articles/service-fabric/service-fabric-reliable-actors-timers-reminders.md
Service: service-fabric
GitHub Login: @tomvcassidy
Microsoft Alias: tomcassidy

@mtrmmsoftware
Thanks for your feedback! We will investigate and update as appropriate.

@mtrmmsoftware
I'm going to assign this to the document author so they can take a look at it accordingly.
@tomvcassidy
Can you please check and add your comments on this doc update request as applicable.

Thanks for your dedication to our documentation. Unfortunately, at this time we have been unable to review your issue in a timely manner and we sincerely apologize for the delayed response. Though the scope of our feedback channel here on GitHub covers specific documentation fixes, we can help redirect you to the right support channel to get an answer to your question: [reference to alternative product/service or community endpoint]. Because this issue does not relate to documentation, we are closing this issue. #please-close


composer fails to install extensions

When building the webserver image, the following message is now observed:
Step 15/64 : RUN cd /rw && composer install
 ---> Running in 03f0089a1d3f
Composer is operating significantly slower than normal because you do not have the PHP curl extension enabled.
No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information.
Loading composer repositories with package information

  [Composer\Downloader\TransportException]
  Peer fingerprint did not match

install [--prefer-source] [--prefer-dist] [--prefer-install PREFER-INSTALL] [--dry-run] [--dev] [--no-suggest] [--no-dev] [--no-autoloader] [--no-progress] [--no-install] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--apcu-autoloader] [--apcu-autoloader-prefix APCU-AUTOLOADER-PREFIX] [--ignore-platform-req IGNORE-PLATFORM-REQ] [--ignore-platform-reqs] [--] [<packages>]...

The command '/bin/sh -c cd /rw && composer install' returned a non-zero code: 1
ERROR: Service 'ropewiki_webserver' failed to build : Build failed

Solutions that don't seem to work:

Updating composer
Use https for packagist
Modifying IPv6

Obsolete with #12


Warning log using ElasticSearch plugin

version: 4.14.0
provider: shedlock-provider-elasticsearch
config: @EnableSchedulerLock(defaultLockAtMostFor = "1m")
Shedlock work properly but in the next release, Elasticsearch 8.X, Elastic will no longer support the "type" of document in their databases so the in the path /shedlock/lock/, the 'lock' should be remove (because you will not be able to put different document type in the same index)
for now we have this warning message on each use:
2020-09-15 12:55:03.041  WARN 56140 --- [   scheduling-1] org.elasticsearch.client.RestClient      : request [POST http://localhost:9200/shedlock/lock/testTask/_update?timeout=1m] returned 1 warnings: [299 Elasticsearch-7.8.0-757314695644ea9a1dc2fecd26d1a43856725e65 "[types removal] Specifying types in document update requests is deprecated, use the endpoint /{index}/_update/{id} instead."]
this part could be removed now to avoid problems in next release

Hi, thanks a lot for reporting. Currently I am busy. Can you please provide a PR? Or maybe the original committer @florian-perrotti?

for now, to make the warning disapear, you can instantiate the provider with index type "_doc" which is the current default for elastic for compatibility:
    @Bean     public ElasticsearchLockProvider lockProvider(RestHighLevelClient restHighLevelClient) {         return new ElasticsearchLockProvider(restHighLevelClient,"_doc");     }

It's not clear how to clenly migrate:

I can change the default type - but this will create a multi-type index
I can make the constructor with the type deprecated - this would prevent users to apply the workaround mentioned above

The best approach most likely is to remove the constructor with type and stop using the type altogether, but I am not sure what would be the consequece, if there is already a lock in the index with the old type.

https://www.elastic.co/guide/en/elasticsearch/reference/current/removal-of-types.html


Create new APIs for 3rd party services

Now working more than 10 new APIs based on Go lang and Python


Residence

Would it be possible to add residence support (free version on there plugin description) where i can somehow choose a specific area where certain perms are allowed?
Thanks

PR it.

https://www.spigotmc.org/resources/residence-1-7-10-up-to-1-12.11480/
http://ltcraft.lt/Residence/

Yes, create a pull request.

i don't know what to do after i click New Pull Request

Write the code which adds the hook, and then pull request your changes back into this repo.
I don't have time to add new conditions myself, as my time is occupied maintaining my other projects.

oh alright maybe someone else who knows how to do that can do it for me
thanks anyways.


composer: add timeouts to composer construction during startup

Composer must have a way to either automatically timeout collectors that fail to connect to a remote server, or explicitly abort them. This could be done in terms of an AbortHandle or a timeout.
Introduced https://github.com/astriaorg/astria/pull/278 multiple composers are started concurrently, all connecting to different servers. Because there is no timeout set for any of them, just one
misbehaving can stall the entire composer service from coming up.

This issue is stale because it has been open 45 days with no activity. Remove stale label or this issue
be closed in 7 days.

This issue was closed because it was stale


Port ember-core to cats-effect-3

ember-server and ember-client are blocked on server and client, respectively, but @ChristopherDavenport did a good job packing most of it into ember-core.

has this been picked up by someone?

Not yet.  It's going to be one of the trickier ones, but we love volunteers and are here to help!

@rossabaker emberCore takes it's cat-effect dependency from core. Changing the cats-effect version in core might break other modules that are depending on it?

On the cats-effect-3 branch, I think we should keep up with the latest milestone, which is 3.0.0-M3. I think it's ready to go, unless there's some specific breaking change you're looking for on a later snapshot.
You're right, as we bump that, we risk breaking modules that were already working.  Hopefully those changes will be minimal and easy to keep up with.  Whenever we bump that dependency, we should recompile the modules that are already ported.

@rossabaker sorry for the late reply. If I understand this correctly, I need to make the changes in cats-effect-3 branch?

seeing a few java.lang.NoSuchMethodError: io.chrisdavenport.vault.Key$.newKey(Lcats/effect/kernel/Sync;)Ljava/lang/Object; errors on running ember-core/test. I don't see any branch on the vault repo to migrate to cats-effect 3. I think I should start with that first?

Yes, that's the right branch.
The vault errors should be fixed on release of https://github.com/ChristopherDavenport/vault/pull/175. @ChristopherDavenport, anything we can do to help that one along?

@rossabaker https://github.com/ChristopherDavenport/vault/pull/175 does not use cats effect 3.0.0-M3

@rossabaker @ChristopherDavenport anything I can do to make progress on this?

We just merged a copy into the cats-effect-3 branch while we await the release.  We don't want to release that way, but it'll get us unblocked as we continue the CE3 port.

Incorrectly autoclosed when cats-effect-3 branch was merged.

Incorrectly autoclosed when cats-effect-3 branch was merged.


Link to site

Hi
The link to your site upsets Firefox because the cert is for Github ...

Hopefully fixed. There was an issue with urls and subdomain mismatch.


CI: Rename cloud-ardana-maintenance-gating to cloud-maintenance-gating

This changes renames cloud-ardana-maintenance-gating to
cloud-maintenance-gating and removes the templating function. This
change is necessary to use the same job for multiple cloud versions at
the same time.

@stefannica @JanZerebecki Can you please re-review? Thanks.


unpackerr lost connection to sonarr / radarr after working for some time

system: synology 918+ DSM 7.2 installed in container manager
Symptom: unpackerr not unpacking files. was previously working then stopped.
Errors:
[ERROR] 2024/01/06 14:28:03 Sonarr (http://<IP_ADDRESS>:8989): api.Get(v3/queue): httpClient.Do(req): Get "http://<IP_ADDRESS>:8989/api/v3/queue?includeUnknownSeriesItems=true&page=1&pageSize=500&sortDirection=ascending&sortKey=timeleft": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
Unpackerr config:
[[sonarr]]
  url = "http://<IP_ADDRESS>:8989"
  api_key = "mykey*****************mykey"
  paths = ['/SonarrDownloads']
  protocols = "torrent"
  timeout = "30s"
  delete_orig = false

Progress:
I believe the problem is connectivity between unpackerr, docker and sonarr. I intentionally put in the incorrect key and changed port and IP numbers inside the unpackerr conf and get the same code. the only thing changed since the time it was working where some network settings like the VPN provider and the gateway.
I have tried:

changing all the network settings back (this was a while ago when it was changed so my best attempts)
changing to DHCP then back to static, changing the DNS to manual and automatic, changing the gateway
The address inside unpackerr put into a browser and it opens sonarr fine
re coping the API key
changing security parameters inside sonarr
radarr shows the exact same error
restarting the DSM
increasing the timeout time to 30s
I tried pinging the docker container it fails to connect. But I'm not sure if that's even possible or how the docker bridge network connection behaves.
Thanks for any advice

It didn't lose connection, it times out after waiting 30s for a response
On Sat, Jan 6, 2024, 11:23 AM instrumentek @.***> wrote:

system: synology 918+ DSM 7.2 installed in container manager
Symptom: unpackerr not unpacking files. was previously working then
stopped.
Errors:
[ERROR] 2024/01/06 14:28:03 Sonarr (http://<IP_ADDRESS>:8989):
api.Get(v3/queue): httpClient.Do(req): Get "
http://<IP_ADDRESS>:8989/api/v3/queue?includeUnknownSeriesItems=true&page=1&pageSize=500&sortDirection=ascending&sortKey=timeleft":
context deadline exceeded (Client.Timeout exceeded while awaiting headers)
Unpackerr config:
[[sonarr]]
url = "http://<IP_ADDRESS>:8989"
api_key = "mykey*****************mykey"
paths = ['/SonarrDownloads']
protocols = "torrent"
timeout = "30s"
delete_orig = false
Progress:
I believe the problem is connectivity between unpackerr, docker and
sonarr. I internally put in the incorrect key and changed port and IP
numbers inside the unpackerr conf and get the same code. the only thing
changed since the time it was working where some network settings like the
VPN provider and the gateway.
I have tried:

changing all the network settings back (this was a while ago when it
was changed so my best attempts)
changing to DHCP then back to static, changing the DNS to manual and
automatic, changing the gateway
The address inside unpackerr put into a browser and it opens sonarr
fine
re coping the API key
changing security parameters inside sonarr
radarr shows the exact same error
restarting the DSM
increasing the timeout time to 30s
I tried pinging the docker container it fails to connect. But I'm
not sure if that's even possible or how the docker bridge network
connection behaves.
Thanks for any advice

—
Reply to this email directly, view it on GitHub
https://github.com/Unpackerr/unpackerr/issues/372, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB7PQWYSLFYAUE5F5YTWEFTYNF26ZAVCNFSM6AAAAABBPU4UKOVHI2DSMVQWIX3LMV43ASLTON2WKOZSGA3DQNZQHA3TEOA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

More info:
From the logs on the same day it stopped working the VPN was changed.
it updated successfully:
[INFO] 2023/12/12 21:55:51 [Sonarr] Updated (http://<IP_ADDRESS>:8989): 0 Items Queued, 0 Retrieved
the first error:
[ERROR] 2023/12/12 22:01:11 Sonarr (http://<IP_ADDRESS>:8989): api.Get(v3/queue): httpClient.Do(req): Get "http://<IP_ADDRESS>:8989/api/v3/queue?
logs from DSM on the 12'th
Info | System | 12/12/2023 12:45 | xxxxxxx | VPN profile [Connection] was   created.
Info | System | 12/12/2023 12:44 | xxxxxxx  | VPN profile [AirVPN] was deleted.
Info | System | 12/12/2023 12:35 | xxxxxxx | VPN profile [AirVPN] was created.
Info | System | 12/12/2023 12:34 | xxxxxxx  | VPN profile [AirVPN] was deleted.
Info | System | 12/12/2023 12:32 | xxxxxxx  | VPN profile [AirVPN] was created.
Info | System | 12/12/2023 12:31 | xxxxxxx  | VPN profile [AirVPN] was deleted.
Warning | System | 12/12/2023 12:22 | SYSTEM | VPN profile [NordVPN] was   disconnected by server.
Info | System | 12/12/2023 12:22 | xxxxxxx  | VPN profile [NordVPN] was   disconnected by user.
Info | System | 12/12/2023 12:22 | xxxxxxx  | VPN profile [AirVPN] was created.
Info | System | 12/12/2023 10:40 | xxxxxxx  | VPN profile [NordVPN] is connecting   to [xxxxxxx ]. (protocol[OpenVPN],

It didn't lose connection, it times out after waiting 30s for a response>

I assumed its not connecting to sonarr anymore because I get the same errors if I enter incorrect credentials into the unpacker conf. I should also add; I do not use a firewall and I disabled the router firewall. sonarr / radarr are outside docker directly on the DSM. I'm assuming some communication problem surpassing that barrier.

Attach the log file please.

SOLUTION:
disable and delete VPN connection, disable "enable multiple gateways" option, set gateway to <IP_ADDRESS>. this fixed the issue.
I have yet to try and reenable things to determine what killed it exactly. I want to wait untill all the extraction back log is done. The goal being to have a functional VPN

You isolated sonarr with the VPN and unpackerr could not reach it. Removing the VPN removed the isolation. Need to figure out how to use docker networking to connect from container to container without the host ip.

it's interesting because nord VPN worked, when i switched to airVPN is when the problem occured. Sonar runs locally on this DSM. I'm not networking expert but perhaps creating a rule in a routing table?

I don't use Synology or a VPN. I have very little ability to help you troubleshoot that part of this equation.

OK, thanks for input. problem is outside of unpackerr.
please close issue


Plus - Add LTI 1.3 / LTIAdvantage Provider to Sakai

Dear Dr. @csev, interesting development here!
Am I reading the code correctly that this PR also adds support for a Tool's JWKS URL? (Besides or instead of copy pasting the keys) And could you confirm Sakai does not support that yet, pls?.
P.S. In our tool we had also decided to have new code for LTI 1.3 (like you do now)

The PR on #10877 was merged after this was closed and deleted


Can't support NS7

Can't support NS7

Duplicate of #422

@dapriett When will the Nativescript 7 PR will be merged #420?

It still needs some more work to be done. As everyone is working on it in their free time there's no guarantee when it can be merged. Sadly :-) But it is on the way.


chore(release): v1.1.0 🎉

:robot: I have created a release *beep* *boop*
1.1.0 (2021-11-09)
Features

run: enable executing files inside of artifacts with isolated node module imports for testing (3dc2190)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/uladkasach/simple-artifact-builder/releases/tag/v1.1.0 :sunflower:


Separate UI state from config

Problem
config should contain only configuration state. It currently contains: configuration state, current project data (tunings and their notes), UI state (selections).
Approach
This is a 'could-do' issue that helps code comply with the principle of separating concerns. It carries regression risk if implemented wholly. It can be ignored for the time being, but the problem might become significant when we provide explicit interfaces for configuration options.
While it's beneficial to save UI state that the user is invested in, it should really be separated out into UI state, and perhaps persisted as a UI state object, so that invested selections are restored over sessions.
Some UI state, like tunings[].notes[].selected would need to be separated out, and use serializable references. Most of the code addresses tunings and notes by .id, but look out for synchronization issues when arrays of objects are mutated.

Gut instinct is to leave this alone until a feature needs the states to be separated.


why resnet152 result is poor

same as title

Overfitting. The dataset is small-scale and easy. @luuuyi

@michuanhaohao thanks

@michuanhaohao Hi, I recently try using ResNet50 and ResNet50v2(pre-activation) as backbone, surprisingly, the v2 performs poorer than v1. Any idea why it happens? Thanks.


add financial period endpoint

https://trello.com/c/qT7fuTec/427-be-endpoint-list-of-financial-periods-covered-by-the-data
Change description
Returns the start and end reporting dates, as a string representation of the Python datetime object. This format can be changed (eg to a normal string) if required by the front end

[X ] Unit tests and other appropriate tests added or updated
[X ] README and other documentation has been updated / added (if needed)
[X ] Commit messages are meaningful and follow good commit message guidelines (e.g. "FS-XXXX: Add margin to nav items preventing overlapping of logo")

How to test
If manual testing is needed, give suggested testing steps
Screenshots of UI changes (if applicable)

The work for this has been done on https://github.com/communitiesuk/funding-service-design-post-award-data-store/pull/94 PR so closing this


Account alias resolution

Feature request

Open a separate issue to discuss whether we want to implement alias as part of Iroha or delegate this to external service (I would prefer to keep alias resolution as a separate service outside Iroha to not complicate the codebase)

Motivation
https://github.com/hyperledger/iroha/issues/2085#issuecomment-1991254965
Who can help?
No response

closed in favor of #2086

As long as transaction.payload.authority is AccountId, aliases should be resolved before the transaction building.
Otherwise the transaction signature will be affected by aliases, which means verifiers should consider alias history of the transaction authority

you make a good point for the case of having alias resolution as external service

My last post didn't say anything so let me redefine the motive to external name services:
Since the transaction authority is the client itself, it is already in the config in a resolved format.
Rather, the problem with having an internal name service (or an internal entrypoint for external name services) is that API has to accept aliases as a variant of other account IDs in the request (e.g. transfer destination).
If we want to treat aliases as optional, it should not affect the current API.
The problem then is that such an external name service needs to have the same security as Iroha:
Suppose the name service has been hacked. Your destination alias will resolve to the scammer's address. This would mean that the name service spoiled the security provided by Iroha.
So the name service would be a decentralized system. In blockchains, it seems to be common to use blockchain for name service.
My suggestion is to deploy another chain dedicated to aliases, and having clients communicate with it to resolve aliases as needed.
I think we can learn from ENSv2, which is moving core functionalities from the mainnet to L2

My last post didn't say anything

No, it said something:
if clients built a transaction with unresolved names, the signature should be verified with that unresolved names, which means the name resolution would penetrate deeper than the authentication, which would be a cost on every verifier

Draft happy path
Prerequisites:

A resolver is a Torii endpoint of a node of another Iroha network deployed as a name service

Resolution on sending requests:

Client accepts AccountAddr as user input, which is either AccountAlias (e.g. alice@wonderland) or AccountId
Client detects AccountAlias before building a transaction/query and query the resolver to resolve them

Request contains an array of FindAssetDefinitionById (e.g. alice#wonderland)
Response contains an array of AccountId (e.g. alice#wonderland.owner) which is the same order as the request

Client replaces every AccountAlias with the AccountId and sign the transaction/query

Reverse-resolution on receiving responses:

Client receives a query result
Client detects AccountId and query the resolver to reverse-resolve them

Request contains an array of FindAccountKeyValueByIdAndKey (e.g<EMAIL_ADDRESS>Response contains an array of JsonString which is the same order as the request

Client replaces some AccountId with the primary AccountAlias (e.g. aliases.0) and show the query result

Questions

Do we assume that the name service will support multiple Iroha chains? If so, should aliases be unique across chains?
How does a single endpoint guarantee that aliases are correctly resolved?
How to prevent rewriting of the resolution requests/responses by intermediaries?


Augmenting transform

(Great lib!)
Is there a way to augment the transform property on the dragging element?
I was hoping to achieve this effect by using transform: scale on the dragging element, but the transforms added by this lib override it. As far as I know there's no way to stack transforms in CSS.
If not, perhaps I could think through an API and PR it. Or maybe the library could check if there's a transform property, and just replace the translateY piece of it. Thoughts?

Sorry for the slow reply — was out of the country last week.
I’d be very open to a API proposal/PR for this :D

This effect could me managed by including a transition and transform: scale() in a child element... for example:
{{#sortable-item tagName="li" classNames="sortable-item"}}
   <a class="tab-style">  content  </a>
{{#sortable-item}}

In this case, you wont set any css style to the "sortable-item" class, but let all style be applied in the "tab-style" class.
The transform used to sort the elements will be applied in the "sortable-li", and then... just do the magic:
.sortable-item a.tab-style{
  transition: all 0.3s
}
.sortable-item.is-dragging a.tab-style{
  transform: scale(1.5)
}

Good luck! =)

@raelbr nice! Thanks :D

I like this - I'll reopen if I have any problems once I get a chance to try it out :)


nixos/tests/prometheus-exporters: split into single tests

Motivation for this change
Generates a set of tests, with one for each exporter, rather than one large test for all exporters.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg test prometheus.blackbox

two more:
@GrahamcOfBorg test prometheus-exporters.node prometheus-exporters.dovecot


Create iptables folder during firewall set up if it doesn't exist.

The /etc/iptables doesn't always exist (like in Pop_OS! for me). Create it if necessary.

Let's merge?


AuthOverride with custom user claims

I have invoked the firebase new app with an authoverride option where i pass a UID which has a custom claim like role as admin . However this seems to be failing(Permission Denied) at the firebase rules of the realtime database where i have a write condition for auth.token.role === admin .
The objective here is that I'd like the firebase admin sdk to be validated against any firebase rules . Since service accounts are exempted from firebase rules , I thought of using the authoverride option . However even though the UID that I pass as authoverride has the required claims (validated using GetUser as well ) . I still see a Permission Denied .

Do you have other rules that might be failing before it even gets to the custom claims? See rules are not filters.
Here is a similar question on SO https://stackoverflow.com/questions/58447913/firebase-permission-denied
Please use Stack Overflow for usage questions in the future. Thanks!


Volume Description and Driver options are not shown anywhere

Version - v1.0.1
Steps to Reproduce:

Add glusterfs & convoy glusterfs catalogs
Go to Storage Pool and add a volume with a description & driver options
Create a service using that volume

Results: After you use the volume, there is no details page for it.  So you can't see the description or driver options that you added to that volume.
Expected: Allow Volume name to be link to description page that would show you description, driver options and Mount information.

Version - closing in favor of #9338


Regression with ARIMA errors (Cochrane Orcutt)

Summary of changes
-Added RegressionARIMA model , extending TimeSeriesModel
-fit regression model with AR(1) error
-Two unit tests for the methods

Thanks @mbaddar1!  I've left some comments on the PR.

@sryza would you check please ?

Thanks for updating the patch! Some additional stylistic comments below.

On further thought, I'm just going to merge this and then apply some stylistic fixes on top of it.  Thanks @mbaddar1 !

@sryza welcome :+1:


ClassLocator class' ImportedClasses is never initialized

The changes in 282be5fd22a0040ef29f8678ab9ea0dc8b78a62a removed all initializations of the class variable 'ImportedClasses' of ClassLocator. So, an 'UndefinedObject does not understand #lookup:' error is signalled when trying to read an STBClassProxy.
Steps to reproduce:

Open a clean Dolphin image.
Create a new class, MyClass
Export it to a binary file by evaluating this code:
MyClass binaryStoreOn: (FileStream write: 'MyClass.bin' text: false).
Close the image, without saving the changes.
Open a clean Dolphin image.
Try to import the exported class, evaluating this code:
Class binaryReadFrom: (FileStream read: 'MyClass.bin' text: false).

Obtained result: An 'UndefinedObject does not understand #lookup:' error is signalled.
Expected result: the class MyClass is imported from the binary file and available in the image.

We can fix the error, but I'm afraid your expected result is not what will happen. STB has never supported saving/restoring individual classes like that, only as part of binary packages. See the Web applet stuff, which has never been included amongst the loaded content of the Dolphin 7 image, and so almost certainly doesn't work any more.


RadialBar Size issue

Hi!
I'm trying to understand Radial bar "size" property.
If I set a number (integer) the chart is render and a kind of calculation happen with the heigth. A little bit like if we set undefined, but the result is different. But it's hard to dynamically set it because  we don't know how this is calculated and we cannot replicated the calculation to get what we need.
If I enter "100%", the middle of the chart is rendered but no bar. Same for "100px" for example.
I think that "100%" should work but it doesn't seem to work.
So actually, the size parameters is impossible to use in radial bar (except if you have a specific height that never change, this is possible to find the size integer to use).

Yes, the size property was intended to provide a fixed size to the radial-bars, but it seems they cause more issues in the positions.
The correct way to control the size of any chart type would be to set the chart.height and chart.width properties.
Then to control the size of specific elements of radial bars, setting radialBar.hollow.margin or radialBar.hollow.size would help.

@junedchhipa I think I understand what you mean. And I think I didn't explain well enough.
Is this normal that in this example: https://sandboxjc.bubbleapps.io/version-test/radial there's a lot of free space (margin) all around the chart? I would think that if no title and legend are shown, this should be centered and use 100% width. I tested with your codepen example, and this seem fine. So not sure what is causing this issue. I will continue to test and will send all settings later. Thanks

After playing a bit more with the demo, it's seem that this is the normal behavior actually. The chart seem to use a specific width and height and keep space for title, legend and anything else around the chart (addtext for example) instead of adjusting automatically to available space. Is this expected behavior?


Nothing being pulled

A week after the last time I used Pull from Duolingo, I've finished another unit and it's time to pull the latest new cards.
I successfully logged in, then it started pulling vocabulary.  However, I got an error message that says "Expected value: line 1 column 1 (char 0)".
I've tried a couple times, getting the same result.  I also thought that maybe this was due to a lack of cards to download, so I deleted some cards I suspended.  Even after the cards were deleted, I still got the same error. (Don't worry about my studying; these were duplicate words that Duolingo listed twice.)
  Or am I just having a bad day?

I can confirm that I have been having the same issue since last week.

I want to add that it appears to be a change on Duolingo's side.  Duolingo Ninja (https://duolingoninja.com/) claims that something changed on March 9, which is right after I last successfully synced.

Indeed they have changed something. https://www.duolingo.com/vocabulary/overview returns 404.

Hi folks, just wanted to check in to acknowledge this issue. I'll be able
to take a look tomorrow!
On Fri, Mar 15, 2024, 10:02 PM eriksolg @.***> wrote:

Indeed they have changed something.
https://www.duolingo.com/vocabulary/overview returns 404.
—
Reply to this email directly, view it on GitHub
https://github.com/JASchilz/AnkiSyncDuolingo/issues/76#issuecomment-2001677213,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABO2Q4C2753PQW44TPXWV7DYYPG6FAVCNFSM6AAAAABEW7XCT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBRGY3TOMRRGM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Alright! Thanks for reporting this, and I'm seeing the same things that you are.
Given the previous recent changes that made login difficult and now this change, I've removed the plugin from the Ankiweb plugin index. That said, I'll continue to try to maintain it at least for a while here in this repository for manual installation, if a solution comes up to this recent change. My feeling is that Duolingo is probably just not interested in maintaining a stable interface for third-party plugins and that that makes it a bit too unstable to support for the general Anki community.
It looks like the corresponding issue in the Duolingo library that I use in this plugin is https://github.com/KartikTalwar/Duolingo/issues/139. I'll follow that to see if their community has a fix. Right now I'm kind of pessimistic that a fix will come out, but in any case it'll likely take a couple of weeks or more if one does come out. I'll continue to keep my eye out on this!

@JASchilz a fix has come #141 :)

Roger! Will take a look this weekend. :)

Alright! I took a look. I'm still running into an error when I try integrating it, but my copy of the duolingo library has diverged from the Kartik's copy and so it seems likely the the cause is in that divergence.
I haven't had much time to debug this this weekend, but if you have this method working in the Kartik's project then it seems very likely that I can debug any issue in my copy without too much work, hopefully next weekend.
I'm doing my work in branch https://github.com/JASchilz/AnkiSyncDuolingo/tree/fix-from-gigajuwels if anyone else is wanting to take a look.

Hey folks! Just wanted to let you know that I'm continuing to address this issue. I'm able to use @gigajuwels fix to retrieve vocabulary, however it's not quite a one-to-one replacement, so it might be a couple of weeks before I get it integrated and this issue closed.

Hey there - I gave a go at fixing this - python is definitely not my forte so I could use some feedback. I also have never used Anki or your plugin in its previous working state so it was a fair bit of guess work and not sure how migration would go.
Not sure if this is something you still have on your plate -- My solution  mostly works (when I hardcode a few things it works great on my account) but I still need to figure out the Auth values with the new login API I took from your gitlab and I am looking at how to provide/set the learnLanguage. I also added the audio we get from the new vocab API.
Hoping to get these things polished up in a few days if anything for my personal use but happy to open a PR and get feedback too if it's helpful.

Hey @tomtaylz , thanks for this and your work on moving this issue forward.
There's a couple of challenges here that I'm working with:

One is that I don't use this stuff myself regularly, so there's a big spin up time. I put a few hours today into cleaning up my fork of the duolingo library, with the hopes of making it really easy to maintain with auto documentation and doctests. And I think I've now got a good handle on how to get the necessary information out.
The second issue is that it doesn't look like there's any way to get the "gid" out of the vocabulary words--kind of a unique system identifier for each word--which I was using in this plugin to avoid importing the same word twice. I think I can come up with another new unique identifier, but as it will be different from the old one that might mean that there will be some challenge with duplicate cards when importing from whatever new version of the plugin I release the first time.

Gimme one more day to try to work this out, and then I might accept your help. :)

OK folks, I've created a release candidate which I can use to pull my words from Duolingo. Check out https://github.com/JASchilz/AnkiSyncDuolingo/releases/tag/3.0.0rc1 and the installation instructions there.
Perhaps the biggest disruptive change, in response to Duolingo's own changes to their service in March, is that the plugin is unable to de-duplicate any cards pulled using a previous version of this plugin. I figure that if this is a hurdle to jump, maybe users can share any strategies here for how to address this.
Also note that I'm unable to retrieve any new words until after you've completed a lesson. In other words, the plugin won't retrieve words after the first time that you encounter them, it will only retrieve words from lessons that you've completed.
I'm also creating an issue to help set expectations about my ability to maintain this plugin and invite any new maintainer who would like to take it on: https://github.com/JASchilz/AnkiSyncDuolingo/issues .

Thanks @JASchilz I'll cherry pick some of your work to get my local branch in a better state too. I'm happy to help at least in the short term but full disclosure around EOY there's a likelihood I'll drop off more too (aggressively chasing a language right now to prepare for a trip) - I could create a PR for some cleanup and for my audio additions for feedback.

@tomtaylz seeing your changes would be appreciated.
I'd consider posting them more for posterity and not for hopes of getting them merged by me. In #78 I call out that I'm not able to give this project the full attention that I'd like to as owner, and invite a new maintainer. Having your code available could be interesting for that new maintainer, but I'm unlikely to be able to give it the diligence of a full review.

@tomtaylz seeing your changes would be appreciated.
I'd consider posting them more for posterity and not for hopes of getting them merged by me. In #78 I call out that I'm not able to give this project the full attention that I'd like to as owner, and invite a new maintainer. Having your code available could be interesting for that new maintainer, but I'm unlikely to be able to give it the diligence of a full review.

Do I need to be added for permissions to write? On a new computer so just want to verify its not something wrong with my setup before I go down that rabbit hole :)

@tomtaylz oh, how did you encounter the 403? I don't quite understand the scenario yet. :)
If you were asking about contributing your branch to the repository, I was thinking more along the lines of if you've got a fork on GitHub of this project you can link to it here so that it's available for other people to see in the future. :)

@tomtaylz oh, how did you encounter the 403? I don't quite understand the scenario yet. :)
If you were asking about contributing your branch to the repository, I was thinking more along the lines of if you've got a fork on GitHub of this project you can link to it here so that it's available for other people to see in the future. :)

ah, I was just trying to push a branch and submit a PR for feedback, but happy to fork and take that approach also.

Here's my fork here against master - I'll create a video and create a release over there as well https://github.com/tomtaylz/AnkiSyncDuolingoAudio/commit/97873700bdec2ada0e28babc3728f45fdcbff3bc

Here's the addition of the audio player - https://github.com/JASchilz/AnkiSyncDuolingo/pull/80

I'm pretty new to API but I really loved this library before the API change and want to help however I can
https://www.duolingo.com/2017-06-30/users/{user_id}/courses/{short_language}/en/practice-lexemes
works similarly to the POST "learned-lexemes" from the new get_vobabulary method. If you send in the skillId's one at a time, you can get the vocabulary of that specific unit. It also returns lexemeId's like the old API but only for the first 5 lexemes for some reason. They can also be grouped together with unit tags in the Anki deck since they all come from the same skill. It may be possible to get the lexemeId's with different arguments/json payloads, but I haven't found the golden ticket yet.

https://www.duolingo.com/2017-06-30/words-list/supported-courses
returns a json of duolingo courses offered in each language. Not useful on it's own, but there may be an accessible node hidden somewhere.
I hope someone smarter than me finds this information useful and helpful in restoring this library

Hi BNaturelle, have you tried the release candidate, linked at
https://github.com/JASchilz/AnkiSyncDuolingo/issues/76#issuecomment-2212515743
? :) Hope it gets this working again for you. :)
On Tue, Jul 9, 2024, 2:46 PM BNaturelle @.***> wrote:

I'm pretty new to API but I really loved this library before the API
change and want to help however I can
https://www.duolingo.com/2017-06-30/users/{user_id}/courses/{short_language}/en/practice-lexemes
works similarly to the POST "learned-lexemes" from the new get_vobabulary
method. If you send in the skillId's one at a time, you can get the
vocabulary of that specific unit. It also returns lexemeId's like the old
API but only for the first 5 lexemes for some reason. They can also be
grouped together with unit tags in the Anki deck since they all come from
the same skill. It may be possible to get the lexemeId's with different
arguments/json payloads, but I haven't found the golden ticket yet.
image.png (view on web)
https://github.com/JASchilz/AnkiSyncDuolingo/assets/175161541/3dc87a73-9603-4f7b-88d4-85ed320128de
https://www.duolingo.com/2017-06-30/words-list/supported-courses
returns a json of duolingo courses offered in each language. Not useful on
it's own, but there may be an accessible node hidden somewhere.
I hope someone smarter than me finds this information useful and helpful
in restoring this library
—
Reply to this email directly, view it on GitHub
https://github.com/JASchilz/AnkiSyncDuolingo/issues/76#issuecomment-2218784271,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABO2Q4ENM3GWB7JGYPYJWYLZLRK3VAVCNFSM6AAAAABEW7XCT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMJYG44DIMRXGE
.
You are receiving this because you were mentioned.Message ID:
@.***>

@JASchilz  Thanks a ton for the RC. This plugin is pretty much the only motivation for me to continue using Duolingo.
Hopefully somebody would volunteer for continuing maintaining it.

3.0.0rc1 works fine, but I'm working to address some of the four "breaking changes" that you listed
The plugin has no means to avoid pulling words that you already pulled using a previous version of the addon
I'd really like to solve this to make it compatible with previous versions. I spent a lot of time adding details about gender, cases, and conjugation to my old Anki deck generated from this add-on. I think the only way this can be done is with lexemeIds from the hidden Duolingo dictionary (which still has yet to be found). I found a partial list from with "practice-lexemes" (mentioned above), which seems promising, but not a great solution.
I have no idea about the gender or pronounciation fields. We can hope that they'll be accesible from the same endpoint as the lexemeIds like before. Maybe that's just wishful thinking.
This will only pull learned words from completed lessons.
Fix for the "get_vocabulary" method in duolingo.py
`current_courses = self._get_data_by_user_id()["currentCourse"]["pathSectioned"]
progressed_skills_Ids = []
progressed_skills = []
for section in current_courses:
completedUnits = section["completedUnits"]
units = section["units"]
for unitIndex in range(len(units)):
unit = units[unitIndex]
if unitIndex>completedUnits:
break
levels = unit["levels"]
for level in levels:
if level['type'] != 'skill':
continue
pathLevelClientData = level["pathLevelClientData"]
if "skillId" in pathLevelClientData:
levelSkill = [pathLevelClientData['skillId']]
elif "skillIds" in pathLevelClientData:
levelSkill = pathLevelClientData["skillIds"]
else:
levelSkill = []
for levelSkillId in levelSkill:
if levelSkillId not in progressed_skills_Ids:
progressed_skills_Ids.append(levelSkillId)
if unitIndex < completedUnits:
finishedLevels = 1
finishedSessions = 1234
else:
finishedLevels = 0
finishedSessions = level["finishedSessions"]
new_obj = {
"finishedLevels": finishedLevels,
"finishedSessions": finishedSessions,
"skillId": {
"id": levelSkillId
}
}
progressed_skills.append(new_obj))`
This will create a less bloated list of all progressed skills from partially and fully completed units.

Got it, @BNaturelle, your help is appreciated! Am I right in understanding that the flow would be:

Use your code snippet above to retrieve a list of partially and fully completed skills
Then use this list against both the practice-lexemes and the learned-lexemes endpoint, to retrieve both the fully learned words and the new words.

Regarding de-duplicating, I suspect that some other kind of solution might be necessary. For example, is there someone that has a plugin that allows you to merge cards somehow based on a field match? If so, it might be possible to pull down the new cards and merge the new GID values onto your old cards. Then the new version of the plugin would be able to de-duplicate them.

You're partially right. The code snippet does indeed generate a list of partially and fully completed lexemes, and is intended to be used in the payload of a POST request to the learned-lexemes endpoint. It can also be used against the practice-lexemes endpoint, but it returns a vocab list that is much shorter and less useful than the previous endpoint.
The get_vocabulary method written by gigajuwels works fine, but it crawls lesson-type levels as well as practice-type levels (even though lessons are the only ones that introduce new skills), leading to repeated, unnecessary entries in the list. It also only crawls levels in completed units, ignoring completed levels in partially complete units. The snippet provided is a small improvement as it crawls only lesson-type levels, and includes levels in partially completed units.
Sorry if I'm suggesting changes here in an inconvenient way. I'm new to github/collaborative coding in general and don't know how to make forks or suggested changes yet. But, the snippet is specifically to replace lines 387-422 of duolingo.py in version 3.0.0rc1.

Got it. I did give this a shot and was able to get in-progress words from
it.
To help set expectations I'm working long hours at my day job right now. So
it will take me at least till next weekend to integrate this. But I do feel
"spun back up" on this project so it shouldn't take much extra time.
Your code looked and worked great. If you were to figure out how to do a
merge request, I'd accept it.
And in either case I can work in the part about hitting both endpoints.
On Sun, Jul 14, 2024, 5:37 PM Paige Genest @.***> wrote:

You're partially right. The code snippet does indeed generate a list of
partially and fully completed lexemes, and is intended to be used in the
payload of a POST request to the learned-lexemes endpoint. It can also be
used against the practice-lexemes endpoint, but it returns a vocab list
that is much shorter and less useful than the previous endpoint.
The get_vocabulary method written by gigajuwels works fine, but it crawls
lesson-type levels as well as practice-type levels (even though lessons are
the only ones that introduce new skills), leading to repeated, unnecessary
entries in the list. It also only crawls levels in completed units,
ignoring completed levels in partially complete units. The snippet provided
is a small improvement as it crawls only lesson-type levels, and includes
levels in partially completed units.
Sorry if I'm suggesting changes here in an inconvenient way. I'm new to
github/collaborative coding in general and don't know how to make forks or
suggested changes yet. But, the snippet is specifically to replace lines
387-422 of duolingo.py in version 3.0.0rc1.
—
Reply to this email directly, view it on GitHub
https://github.com/JASchilz/AnkiSyncDuolingo/issues/76#issuecomment-2227544659,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABO2Q4E4QZBE7QBMG4N5OJLZMMKVLAVCNFSM6AAAAABEW7XCT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRXGU2DINRVHE
.
You are receiving this because you were mentioned.Message ID:
@.***>

thx for your services

@BNaturelle I believe I've integrated your code into the latest release candidate: https://github.com/JASchilz/AnkiSyncDuolingo/releases/tag/3.0.0rc2 .
However, once I started developing on this I found that the same practice words were showing up on both the practice and learned endpoints. I didn't expect that and I'm not sure what the cause is, but I added some de-duplication code so that at least it wouldn't result in multiple notes for the same word.
You can take a look at the latest version of that code in this branch: https://github.com/JASchilz/AnkiSyncDuolingo/blob/fix-from-new-library/duolingo_sync/duolingo/duolingo.py#L375-L499

This is expected. The practice-lexemes endpoint has several challenges that I havent been able to address.

It only returns a maximum of 29 lexemes and does not seems to support pagination or longer outputs (like the learned-lexemes does with ?startIndex= or ?limit=). Although it takes the same payload, they do not seem to take the new arguments. In fact, the POST to practice-lexemes on Duolingo.com uses no arguments at all
It seems to return a random list of learned words from all completed lessons. This can produce a more useful list by parsing the progressed_Skills list and running it once for each skill/lesson, then concatenating the ouptuts. However, if there are more than 29 new words in that skill/lesson, it will return an incomplete list of words. This approach is also more than 7 times slower than learned-lexemes which returns a maximum of 200 words (as opposed to 29)

The practice-lexemes endpoint is less useful in almost every way. The only strength (and the reason I brought it up in the first place) is because it is the only reliable way of generating a word bank with lexemeIds like the old API did. It worked best as a unique identifier, and didn't have issues with homographs like the new "{word}-{lang}" identifiers do. Getting a full list of lexemeIds seems to be like a pipe dream at this point, mainly because of the unintuitive and undocumented nature of Duo's new API. To make matters worse, in new lessons (https://www.duolingo.com/2017-06-30/sessions) the lexemes are now called "kc"s with "kc_Ids" - and lexemIds are labelled "legacy_id"s of type "lex". I don't even know what kc means or why it's replacing lexemes, but I'm hoping that it means they're transforming their word bank's back end in some meaningful way.
I'll probably check back every month or two to see if Duo implemented anything new that can be scraped, but otherwise I don't see how to improve from here. I haven't been able to scrape gender, pronunciation, etc at all. Adding lesson tags is very doable, but maybe not something you want to bother implementing. I'd be willing to give it a try if that's something that interests you.

Thanks for that summary and your spelunking of this API. I'll give
skill-by-skill iteration (and skill tagging) a shot.
On Mon, Jul 22, 2024, 11:05 AM Paige Genest @.***>
wrote:

This is expected. The practice-lexemes endpoint has several challenges
that I havent been able to address.

It only returns a maximum of 29 lexemes and does not seems to
support pagination or longer outputs (like the learned-lexemes does with
?startIndex= or ?limit=). Although it takes the same payload, they do not
seem to take the new arguments. In fact, the POST to practice-lexemes on
Duolingo.com uses no arguments at all
It seems to return a random list of learned words from all
completed lessons. This can produce a more useful list by parsing the
progressed_Skills list and running it once for each skill/lesson, then
concatenating the ouptuts. However, if there are more than 29 new words in
that skill/lesson, it will return an incomplete list of words. This
approach is also more than 7 times slower than learned-lexemes which
returns a maximum of 200 words (as opposed to 29)

The practice-lexemes endpoint is less useful in almost every way. The only
strength (and the reason I brought it up in the first place) is because it
is the only reliable way of generating a word bank with lexemeIds like the
old API did. It worked best as a unique identifier, and didn't have issues
with homographs like the new "{word}-{lang}" identifiers do. Getting a full
list of lexemeIds seems to be like a pipe dream at this point, mainly
because of the unintuitive and undocumented nature of Duo's new API. To
make matters worse, in new lessons (
https://www.duolingo.com/2017-06-30/sessions) the lexemes are now called
"kc"s with "kc_Ids" - and lexemIds are labelled "legacy_id"s of type "lex".
I don't even know what kc means or why it's replacing lexemes, but I'm
hoping that it means they're transforming their word bank's back end in
some meaningful way.
I'll probably check back every month or two to see if Duo implemented
anything new that can be scraped, but otherwise I don't see how to improve
from here. I haven't been able to scrape gender, pronunciation, etc at all.
Adding lesson tags is very doable, but maybe not something you want to
bother implementing. I'd be willing to give it a try if that's something
that interests you.
—
Reply to this email directly, view it on GitHub
https://github.com/JASchilz/AnkiSyncDuolingo/issues/76#issuecomment-2243524472,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABO2Q4E4SWISWBESGK4GS3LZNVCWLAVCNFSM6AAAAABEW7XCT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBTGUZDINBXGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

Glad I could help. The unit/skill names are listed in many different subfolders, but I've found the following to be easiest to crawl:
self._get_data_by_user_id()["currentCourse"]["skills"][i][j]["name"] with iterable i,j. Good luck :)

I took a quick look at the requests to Duolingo since I wanted to grab all the learned words and there's a good way to do this. I'll have to take a look at this projects code, but I can probably make a PR for it.
If anyone else is interested in doing it, the relevant steps are (untested, but this is what I was going to do when I get time):

https://www.duolingo.com/2017-06-30/users/$USER_ID?fields=currentCourse

Parse this for completed sections (loop through pathSectioned, and get IDs where totalUnits == completedUnits, then loop through "units", then loop through each of "levels", grabbing the finishedSessions and pathLevelMetadata.skillId values)

Create a dict like this:

{
    "progressedSkills": [
        {
            "finishedLevels": 1,
            "finishedSessions": 4,
            "skillId": {
                "id": "3b30749ae4846333bc559fbd065ce19c"
            }
        },
        {
            "finishedLevels": 1,
            "finishedSessions": 4,
            "skillId": {
                "id": "8316b5a750e4963e60a823864b24d684"
            }
        }
    ]
}

POST it to https://www.duolingo.com/2017-06-30/users/23003194/courses/es/en/learned-lexemes/count to get the total lexemeCount
take that, and the previously created dict, and POST it to https://www.duolingo.com/2017-06-30/users/23003194/courses/es/en/learned-lexemes?limit=50&sortBy=LEARNED_DATE&startIndex=0

Should have the count at the same level as "progressedSkills" like "lastTotalLexemeCount": 1234
limit has a maximum possible value of 2000, otherwise it will return a 400

Now you've got all the learned words, their translations, and even a link to the audio! Example:
{
    "text": "madre",
    "translations": [
        "mother"
    ],
    "audioURL": "https://d1vq87e9lcf771.cloudfront.net/beaes/a8f2bc5e64d9fe0fce3021a56898f978",
    "isNew": false
}


Update request: pcsx2 2.1.17 → 2.1.98

Package name: pcsx2
Latest released version: 2.1.98

Current version on the unstable channel: 2.1.17
Current version on the stable/release channel: 1.7.5587

[x] Checked the nixpkgs pull requests

Notify maintainers
@AndersonTorres @hrdinka @GovanifY @matteo-pacini

Note for maintainers: Please tag this issue in your PR.

Add a :+1: reaction to issues you find important.

As you wish:
https://github.com/NixOS/nixpkgs/pull/336420


Community detection memory tracking

Description
Community detection memory tracking was not working properly when multiple threads were used so it was fixed.
Add thread memory tracking to community detection.
Requires PR436 and PR1631 before merging
Note to reviewer (!!!):
Review with suffix ?w=1 to ignore whitespaces changes which are automatically made by IDE (and there are a lot of them).
Link for reviewing

Pull request type

[X] Bugfix
[ ] Algorithm/Module
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

Release note:
Community detection now respects memory limits and doesn't crash database.
Related issues
closes #379
closes #219
closes https://github.com/memgraph/memgraph/issues/955
######################################
Reviewer checklist (the reviewer checks this part)
Module/Algorithm

[ ] Core algorithm/module implementation
[ ] Query module implementation
[ ] Unit tests
[ ] End-to-end tests
[ ] Code documentation
[ ] README short description
[ ] Documentation on memgraph/docs
[ ] Update GQLALchemy signatures in query builder using query module signature generator

######################################

@imilinovic, quick question, what's the issue related? Can you link it? 👀

I think the test to check that this works can't be done because of the following:
Memory limit is always being respected but the problem was that memory counting was wrong. The only way would be to compare it with the system memory (or see if the system crashes when setting the limit close to available RAM on the machine) which I don't think is possible at least not with the current MAGE testing infrastructure.