Issue: How to return a stream in api

Issue you'd like to raise.
So, I've tried to create a custom callback and try to return a stream but got no luck:
class MyCallbackHandler(BaseCallbackHandler):
    def on_llm_new_token(self, token, **kwargs) -> None:
        # print every token on a new line
        yield token

llm = ChatOpenAI(temperature=0, model_name="gpt-3.5-turbo-0301", openai_api_key="openai_api_key", streaming=True, callbacks=[MyCallbackHandler()])

@app.route('/api/chatbot', methods=['GET', 'POST'])
@token_required
def chatbot(**kwargs) -> str:
    # rest of code
    tools = toolkit.get_tools()
    agent_chain = initialize_agent(tools=tools, llm=llm, agent=AgentType.CONVERSATIONAL_REACT_DESCRIPTION,
                                   memory=memory, verbose=True)
    response = agent_chain.run(input=input_text)

    return app.response_class(response)

Suggestion:
I am thinking of return the on_llm_new_token as a stream from the custom callback, but I get no idea of doing that. How to return a stream, pls give me a solution!

Generated by a 🤖
Answer
To return a stream in your API, you can use Flask's Response class with a generator function. Modify your MyCallbackHandler class to store tokens, create a generator function to yield tokens, and modify your API route to return a streamed response. Here's how you can do it:

Modify the MyCallbackHandler class to store tokens:

class MyCallbackHandler(BaseCallbackHandler):
    def __init__(self):
        self.tokens = []

    def on_llm_new_token(self, token, **kwargs) -> None:
        self.tokens.append(token)

Create a generator function to yield tokens:

def token_generator(callback_handler):
    for token in callback_handler.tokens:
        yield token

Modify your API route to return a streamed response:

@app.route('/api/chatbot', methods=['GET', 'POST'])
@token_required
def chatbot(**kwargs) -> str:
    # rest of code
    tools = toolkit.get_tools()
    my_callback_handler = MyCallbackHandler()
    agent_chain = initialize_agent(tools=tools, llm=llm, agent=AgentType.CONVERSATIONAL_REACT_DESCRIPTION,
                                   memory=memory, verbose=True, callbacks=[my_callback_handler])
    response = agent_chain.run(input=input_text)

    return app.response_class(token_generator(my_callback_handler), mimetype='text/plain')

This will return a streamed response with each token on a new line. Note that the mimetype is set to 'text/plain' for simplicity, but you can change it to suit your needs
Sources

docs/snippets/modules/model_io/models/llms/how_to/streaming_llm.mdx
langchain/callbacks/streaming_aiter.py
langchain/llms/openai.py

This response is meant to be helpful and give you a place to start. It is not meant to be a precise solution.
Please leave a 👍 if this is helpful and 👎 if it is irrelevant.

@devstein after all tokens is generated, the callback_handler.tokens still has len = 0. Otherwise, this is still not I want, I can achieve this by @stream_with_context which is when I get all the answer, then I make the answer (which is already a string) a stream. However what I want to achieve is whenever there is a token, I get that token and because of that, that will be a stream. I think, in llama index, the response_gen works like that. However, I d like to make it a chat, so I am trying to make this agent work like response_gen.

Hey @dinhan92 the previous response was generated by my agent 🤖 , but it looks directionally correct! Thanks for the reference to llama index behavior
I'm not positive, but believe the answer is to use the async arun and run the async task in separate thread and return the generate that yields each token as they arrive. You'll also want to make sure that streaming=True for the underlying LLM call.
This is also how Llama Index implements their response_gen functionality. First they create a custom streaming callback like my agent commented above, then they start a new thread for the LLM streaming call.
Hope this helps!

I believe this would also be fixed by #8991.

@diegoquezadac Do did you manage to get stream response?
`async def send_message(user_query: str) -> AsyncIterable[str]:
callback = AsyncIteratorCallbackHandler()
agent = create_csv_agent(
    ChatOpenAI(
        temperature=0,
        model="gpt-4",
        openai_api_key=settings.openai_normandy_key,
        streaming=True,
        callbacks=[callback],
    ),
    local_csv_file
    agent_type=AgentType.OPENAI_FUNCTIONS,
    handle_parsing_errors=True,
)

response_schemas = [
    ResponseSchema(
        name="answer_explaintion",
        description="Explain how get got the answer.",
    ),
    ResponseSchema(
        name="answer",
        description="Execute the python code and return the results in json format.",
    ),
    ResponseSchema(
        name="question_answered",
        description="boolean field, set to true only if question was answered with very high confidence",
        type="boolean",
    ),
]
output_parser = StructuredOutputParser.from_response_schemas(response_schemas)
user_query = (
    + "Here is the user question"
    + user_query
)

async def wrap_done(fn: Awaitable, event: asyncio.Event):
    """Wrap an awaitable with a event to signal when it's done or an exception is raised."""
    try:
        await fn
    except Exception as e:
        # TODO: handle exception
        print(f"Caught exception: {e}")
    finally:
        # Signal the aiter to stop.
        event.set()

# Begin a task that runs in the background.
run = asyncio.create_task(agent.arun(input=user_query))

async for token in callback.aiter():
    yield token

await run`

@ nsiddarthreddy
openai.proxy = {
            "http": "http://<IP_ADDRESS>:7890",
            "https": "http://<IP_ADDRESS>:7890"
        }

callback = AsyncIteratorCallbackHandler()

llm = OpenAI(
    openai_api_key= os.environ["OPENAI_API_KEY"],
    temperature=0,
    streaming=True,
    callbacks=[callback]
)
embeddings = OpenAIEmbeddings()

# faq
loader = TextLoader("static/faq/ecommerce_faq.txt")
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
texts = text_splitter.split_documents(documents)

docsearch = Chroma.from_documents(texts, embeddings)

faq_chain = RetrievalQA.from_chain_type(
    llm,
    chain_type="stuff",
    retriever=docsearch.as_retriever(),
)

@tool("FAQ")
def faq(input) -> str:
    """"useful for when you need to answer questions about shopping policies, like return policy, shipping policy, etc."""
    print('faq input', input)
    return faq_chain.acall(input)

tools = [faq]

memory = ConversationBufferMemory(memory_key="chat_history", return_messages=True)

conversation_agent = initialize_agent(
    tools,
    llm,
    agent="conversational-react-description",
    memory=memory,
    verbose=True,
)

 async def wait_done(fn, event):
    try:
        await fn
    except Exception as e:
        print('error', e)
        # event.set()
    finally:
        event.set()

async def call_openai(question):

    # chain = faq(question)
    chain = conversation_agent.acall(question)

    coroutine = wait_done(chain, callback.done)

    task = asyncio.create_task(coroutine)

    async for token in callback.aiter():
        # print('token', token)
        yield f"{token}"

    await task

app = FastAPI()

@app.get("/")
async def homepage():
    return FileResponse('static/index.html')

@app.post("/ask")
def ask(body: dict):
    return StreamingResponse(call_openai(body['question']), media_type="text/event-stream")

if __name__ == "__main__":
   uvicorn.run(host="<IP_ADDRESS>", port=8888, app=app)

After I use agent.arun, I get this error: error faq() takes 1 positional argument but 2 were given。
There is no problem when using faq_chain.acall(input) directly
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
Thought: Do I need to use a tool? No
AI: 你好！很高兴认识你！
Finished chain.
INFO: <IP_ADDRESS>:65193 - "POST /ask HTTP/1.1" 200 OK
Entering new AgentExecutor chain...
Thought: Do I need to use a tool? Yes
Action: FAQ
Action Input: 如何更改帐户信息error faq() takes 1 positional argument but 2 were given
Suggestion:
No response


Modify check on standard instance

In a scenario with multiple instances, the services' files won't be created if the default haproxy package is used.
The title itself MUST be different between the instances, but the package could be the same for all of them.

Hello @surprisingb ,
Thank you for your contribution, but it looks like the unit tests are failing. In order to merge your PR, please fix the errors. Please let us know if you need any help.

Hi @lionce,
I've looked at the code but I'm not really sure about this.
The error thrown on the unit tests are like this:
1) haproxy::instance_service when on any platform with title group1 and custom settings installs the customhaproxy package
     Failure/Error: content => template($haproxy_unit_template),

     Puppet::PreformattedError:
       Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Function Call, Could not find template '' (file: /home/travis/build/puppetlabs/puppetlabs-haproxy/spec/fixtures/modules/haproxy/manifests/instance_service.pp, line: 107, column: 20) (line: 2) on node travis-job-2538e14a-d52e-4ac6-9729-124276d3de8b.c.eco-emissary-99515.internal

but the $haproxy_unit_template parameter is undef by default, and I didn't change anything related to this.

Hey @surprisingb ,
I'll have a look on this!
Cheers!

Hi @surprisingb,
Could you please rebase this to the latest changes on master ?
Thank you.

I rebased my repo but the error it's still the same.

Hi @surprisingb,
After looking through the failing test, apparently this change forces the haproxy_unit_template parameter (https://github.com/puppetlabs/puppetlabs-haproxy/blob/master/manifests/instance_service.pp#L42) to become required at https://github.com/puppetlabs/puppetlabs-haproxy/blob/master/manifests/instance_service.pp#L112.
So to get this working as it should could you try, as a first step, setting the haproxy_unit_template.
I hope this gives you a clear track on getting the tests passing.
Please feel free to reach out if you have difficulties with this.
Thanks.

Hi @carabasdaniel, I defined a default service unit template, I'm still getting an error:
1) haproxy::instance_service when on any platform with title group1 and custom settings installs the customhaproxy package
     Failure/Error:
       subject.should contain_package('customhaproxy').with(
         'ensure' => 'present',
       )

     Puppet::Error:
       Could not find resource 'Service[haproxy-haproxy]' in parameter 'before' (file: /home/travis/build/puppetlabs/puppetlabs-haproxy/spec/fixtures/modules/haproxy/manifests/instance_service.pp, line: 120) on node travis-job-abfb9ec9-3745-4ec5-9880-c406d71f2401.c.eco-emissary-99515.internal

Line 120 refers to before      => Service["haproxy-${title}"],, but the title should be group1, why is it looking for Service[haproxy-haproxy]?
I also just found this note that I didn't see before, and maybe this specific use case is what the note is referring to... What do you think?

Hello @surprisingb , in order to fix the tests (Could not find resource 'Service[haproxy-haproxy]' in parameter 'before'), you should add a pre_condition block with service {'haproxy-#{title}': }
let(:pre_condition) do
      <<-PUPPETCODE
        service {'haproxy-#{title}': }
      PUPPETCODE
    end

The error is pointing to haproxy because title is still haproxy - check this line .
You also should update the paths when title is different than haproxy  e.g. this line
I hope this helps you on getting the tests passing!
If you need any help, feel free to contact us. :)
Cheers!

Hello @surprisingb ,
Please let us know if you're still working on this PR! If you need any help don't hesitate to ask. Thanks!
Cheers!

Hello @surprisingb ,
i've updated your branch to include latest updates from master and fixed the failing tests.
Cheers!

Codecov Report

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

@@            Coverage Diff            @@
##             master     #348   +/-   ##
=========================================
  Coverage          ?   16.66%
=========================================
  Files             ?        1
  Lines             ?        6
  Branches          ?        0
=========================================
  Hits              ?        1
  Misses            ?        5
  Partials          ?        0

Continue to review full report at Codecov.

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


Set defaults for Json options

Fixes https://github.com/aspnet/AspNetCore/issues/9519

@aspnet-hello triage https://dev.azure.com/dnceng/public/_build/results?buildId=183985&view=logs

This comment was made automatically. If there is a problem contact<EMAIL_ADDRESS>I've triaged the above build. I've created/commented on the following issue(s)
https://github.com/aspnet/AspNetCore-Internal/issues/1929
https://github.com/aspnet/AspNetCore-Internal/issues/2451
https://github.com/aspnet/AspNetCore-Internal/issues/2250

I am unable to merge this change because the blazor tests are too flaky...
@SteveSandersonMS I think your recent change to make tests more reliable might have made them more unreliable? https://github.com/aspnet/AspNetCore/commit/e0007f4f4bf6f0bd42d16c5d2e5cec2023b42a96

@BrennanConroy Sorry for the inconvenience.
Something has changed to make the components E2E tests start being flaky since yesterday, but I don't know what. It started before I made the change you mention (my change was an attempt to address it, but didn't).
I've been investigating extensively and have got as far as this, which might fix it.


ODP compiler doesn't always properly uninstall bundles

I have problem with bundle that's unpacked during installation. Build fails as it's not able to delete lib jars. There are 6 jars, but only 5 remained on disk.
Domino is on Windows, so I checked open handles and nhttp.exe seems to hold those files until restart.
Maybe just throwing some warning instead of complete fail of build would be better in such case. I'll have to downgrade to 1.2 and keep those files in place.

Interesting... is there a specific stack trace you get? That may help with generating a warning. I've only used Linux VMs for this. Though, either way, it does sound like it's the same root cause, so hopefully fixing it will cover Windows too.


Theme Plugins

Global options for styling your project defined in a theme.evidence.yaml or similar.
Styling tokens

Tokens for

Chart config

Colours, similar consumed by e-charts config

Layout options

Respected by our default layout, available to a custom layout component

Closing in favor of https://github.com/evidence-dev/evidence/issues/2499


use corpus without punctuations always decode strings without punctuations

Thanks for your great work! I have trained an english language model without punctuations using kenlm, and ctcdecode always outputs strings without punctuations?
I also have trained  an english language model with punctuations and ctcdecode could output punctuations.
In my opinion, beam search will always predict punctuations, language model just gives a correction. I also find that ngrams are the same before language model scoring when using english language model with and without punctuations in ctcdecode/ctcdecode/src/ctc_beam_search_decoder.cpp.
So I want to know  how should I modify the code to get punctuations with language model without punctuations?

I think its not possible ...
beach search cant always predict punctuations . punctuation is also like one of charector
say ..i have  "Oh !"  Beam search predicts it Oh & ! and feed to your language model for finding probability of (Oh,!)  your language model finds prob and decodes it
if you dont have "!" in your language model ..it is impossibe for you to predit
beam search may or may not predict punctuvations take a example word "late" it can decode "iate" if it can mistake " l " with "i" why cant it mistake " ! " with " l "

I think its not possible ...
beach search cant always predict punctuations . punctuation is also like one of charector
say ..i have "Oh !" Beam search predicts it Oh & ! and feed to your language model for finding probability of (Oh,!) your language model finds prob and decodes it
if you dont have "!" in your language model ..it is impossibe for you to predit
beam search may or may not predict punctuvations take a example word "late" it can decode "iate" if it can mistake " l " with "i" why cant it mistake " ! " with " l "
both are same for CTC decode

You are right. There is a dictionary in the code, so it could not predict punctuations with a language model without punctuations.


Fix problem with running conda activation on the main thread.

https://dev.azure.com/devdiv/DevDiv/_workitems/edit/1289875?src=WorkItemMention&src-action=artifact_link
Don't run conda activation events on the main thread.

@bschnurr or @int19h can you guys take a look? Thanks

@int19h did you have any more comments? I don't think the JTF.Run is the thing to use. According to the bug logged and debugging the code, JTF.Run will force the conda run onto the main thread. We don't need JTF if we don't need to talk back to main thread so I think Task.Run should be fine.
Additionally Task.Run is used elsewhere in PTVS


Refactor Feature Flags code snippets

Hi @heitorlessa. I'm already working on it and will send a PR.


Equality to H3

Hey! Thanks for this.
Is it algorithmically EXACTLY the same as H3?
Specifically, given a point and a resolution, will the H3 index will be the same?

There are some difference in term of implementation but for a given input the output should be the same yeah 👍
Actually, a large part of the test suite ensure that h3o produces the same result as h3 (and the C binding of h3o used to pass the H3 test suite)

Amazing. Many thanks for this awsome work


New-SSHSession -Verbose:$false not working

Does anyone know how to get rid of the following line when connecting to a new host? I've tried adding "-Verbose:$false" in the New-SSHSession cmdlet but it doesn't seem to do the trick
VERBOSE: Set host key for w.x.y.z to aa:bb:cc:dd.....

sadly the way I implemented it from the host side you can not disable it.

I have the same problem,
This is work fine on 3.0.0
This not work (verbose:$false) on 3.0.4
I think this line don't have if (MyInvocation.BoundParameters.ContainsKey("Verbose")) before:
https://github.com/darkoperator/Posh-SSH/blame/faf38d3cd8b9b0d424e2b154a69e6b75b482d06e/Source/PoshSSH/PoshSSH/NewSessionBase.cs#L333
I don't code in C# sorry if it's not the cause , i try to help

Same problem here.
It works on 3.0.1 and it is broken after that.
This verbose message is displayed even if -Verbose:$false or $VerbosePreference = 'SilentlyContinue' are set. It is impossible to remove this VERBOSE: Set host key for w.x.y.z to aa:bb:cc:dd..... messages when a new host key is added to the hosts.json file.
In Posh-SSH/Source/PoshSSH/PoshSSH/NewSessionBase.cs, Replacing Line 333 by :
if (MyInvocation.BoundParameters.ContainsKey("Verbose"))
     {
       Host.UI.WriteVerboseLine(string.Format("Set host key for {0} to {1}", computer1, fingerPrint));
 }

And Line 336 by :
if (MyInvocation.BoundParameters.ContainsKey("Verbose"))
     {
       Host.UI.WriteVerboseLine("Host key is not updated in store.");
 }

Should do the trick based on the rest of your code.
Hope it will help 😄


Add checkseum.c to ocaml-git libraries

I'm not sure if this is totally right, but I needed to add this to get Irmin to build after upgrading some opam packages.

Hmmhmm, I think the situation it's because we just merge mirage/ocaml-git#303 which use the last version of decompress. Then, because dependency on checkseum.{c,ocaml} is not transitive, indeed, you need to add it in front of git-{unix,mirage}.
However, I'm not sure than you need to do this to the irmin-git package which is a library, and by this way, don't need to link to the checkseum implementation. In other words, checkseum.{c,ocaml} needs to be linked only on executable or libraries which you want to enforce one of these implementations - as you can see, git does not need to be linked with checkseum.

I see, so this should just be added to irmin-unix instead? In that case, I think we should include a note about this requirement somewhere in the documentation for irmin-git too.

Note: this situation is transitory and should be improved when dune will support build variants.

Okay, glad to hear there’s a more general fix planned but it looks like build variants are still being worked on heavily. What should we do in the meantime? I have no problem just keeping these changes in my local repo if this isn’t something we should worry about right now.


[Doc]Fix tenant typo for debezim mysql source

Fixes https://github.com/apache/pulsar/issues/5189
Master Issue: https://github.com/apache/pulsar/issues/5189
Motivation
Currently, the tenant name for the new version of the document is incorrectly written, resulting in that the tenant cannot be found.
Modifications
Fix tenant name from pubilc to public

run java8 tests


Work in editor but not in Android device

When I run in android device, the authorized website pop up successfully and then I press agree, it jump back to my app.  But no music information shows up.
It works in editor only if I log in to the spotify account and keep it open, I am not sure why but is working.

There is a system for debugging in Editor using the MobileSpotifyService, info here
Are you building the demo scene onto your android device? Or is it a custom scene? If you could try building the demo scene and see if the error still occurs. If so, a debug message would be a lot more helpful that just a generic "not working". Make sure you've followed the setup instructions for your platform and read the FAQ incase that covers your question

For the editor mode, it works fine.  I build it from the mobile demo scene to my android devices. I think is the AUTHENTICATION problem maybe cause by VPN.
In the test user's account, my test app already show up in "Apps with access to your Spotify information"
The Error Log:
10-17 11:20:47.160 16989-16989/? E/WebViewLibraryLoader: can't load with relro file; address space not reserved
10-17 11:20:52.232 16914-17029/? E/Unity: Unable to find libc
10-17 11:20:56.260 16914-16929/? E/Unity: PlatformNotSupportedException: Operation is not supported on this platform.
at Newtonsoft.Json.Utilities.DynamicReflectionDelegateFactory.CreateDynamicMethod (System.String name, System.Type returnType, System.Type[] parameterTypes, System.Type owner) [0x00018] in :0
at Newtonsoft.Json.Utilities.DynamicReflectionDelegateFactory.CreateDefaultConstructor[T] (System.Type type) [0x00010] in :0
at Newtonsoft.Json.Serialization.DefaultContractResolver.GetDefaultCreator (System.Type createdType) [0x00005] in :0
at Newtonsoft.Json.Serialization.DefaultContractResolver.InitializeContract (Newtonsoft.Json.Serialization.JsonContract contract) [0x00093] in :0
at Newtonsoft.Json.Serialization.DefaultContractResolver.CreateObjectContract (System.Type objectType) [0x00007] in :0
at Newtonsoft.Json.Serialization.DefaultContractResolver.Crea
10-17 11:20:56.287 658-1093/? E/volume_listener: check_and_set_gain_dep_cal: Failed to set gain dep cal level
10-17 11:20:56.290 1863-1869/? E/ANDR-PERF-OPTSHANDLER: Warning: Resource [2, 0] not supported for core 1. Instead use resource for core 0
10-17 11:20:56.290 1863-1869/? E/ANDR-PERF-RESOURCEQS: Failed to apply optimization [2, 2, 0]
10-17 11:21:32.181 892-1533/? E/NotificationService: Suppressing notification from package by user request.
10-17 11:21:40.794 1780-1791/? E/Auth: [GoogleAccountDataServiceImpl] getToken() -> BAD_AUTHENTICATION. Account: ELLIDED:-1304470698, App: com.google.android.gms, Service: oauth2:https://www.googleapis.com/auth/games
ryu: Long live credential not available.
at hay.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):131)
at izb.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):114)
at iye.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):2)
at iyc.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):17)
at iyc.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):11)
at gxj.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):44)
at gxj.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):97)
at gxt.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):3)
at gxq.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):3)
at gxq.c(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):6)
at gzo.getAuthToken(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):10)
at android.accounts.AbstractAccountAuthenticator$Transport.getAuthToken(AbstractAccountAuthenticator.java:244)
at android.accounts.IAccountAuthenticator$Stub.onTransact(IAccountAuthenticator.java:113)
at android.os.Binder.transact(Binder.java:627)
at dxw.onTransact(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):3)
at android.os.Binder.transact(Binder.java:627)
at aams.onTransact(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):18)
at android.os.Binder.execTransact(Binder.java:697)
10-17 11:21:40.850 1780-1791/? E/Auth: [GoogleAccountDataServiceImpl] getToken() -> BAD_AUTHENTICATION. Account: ELLIDED:2436866, App: com.google.android.gms, Service: oauth2:https://www.googleapis.com/auth/games
ryu: Long live credential not available.
at hay.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):131)
at izb.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):114)
at iye.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):2)
at iyc.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):17)
at iyc.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):11)
at gxj.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):44)
at gxj.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):97)
at gxt.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):3)
at gxq.a(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):3)
at gxq.c(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):6)
at gzo.getAuthToken(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):10)
at android.accounts.AbstractAccountAuthenticator$Transport.getAuthToken(AbstractAccountAuthenticator.java:244)
at android.accounts.IAccountAuthenticator$Stub.onTransact(IAccountAuthenticator.java:113)
at android.os.Binder.transact(Binder.java:627)
at dxw.onTransact(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):3)
at android.os.Binder.transact(Binder.java:627)
at aams.onTransact(:com.google.android.gms<EMAIL_ADDRESS>(090400-271418971):18)
at android.os.Binder.execTransact(Binder.java:697)

Okay, that's more info. However, it seems like there's two problems. First one being with Newtonsoft.Json having "Platform not supported.". I suggest swapping out Newtonsoft with Json.NET. This step is usually only required for iOS, however it seems like it could fix your problem here. Check out step 7 and step 8 of the iOS setup steps on how to do it
Second seems to be authorization to Google failing. I have no idea how to fix that one. However fixing the above might fix that 🤷♂

After I fixed the first one, it's working on devices and player panel.  But the profiler panel info is missing:
Spotify4Unity - Can't load Private Profile information of authorized user - System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
at System.Collections.Generic.Dictionary`2+Enumerator[TKey,TValue].MoveNext () [0x00016] in :0
at System.Net.Http.Headers.HttpHeaders+d__19.MoveNext () [0x000ac] in <563a3e1913224be7a9f3b1f34e6e98a7>:0
at System.Net.Http.Headers.HttpRequestHeaders.AddHeaders (System.Net.Http.Headers.HttpRequestHeaders headers) [0x00025] in <563a3e1913224be7a9f3b1f34e6e98a7>:0
at System.Net.Http.HttpClient.SendAsync (System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption, System.Threading.CancellationToken cancellationToken) [0x000be] in <563a3e1913224be7a9f3b1f34e6e98a7>:0
at System.Net.Http.HttpClient.SendAsync
I have two more questions, can I pause or play songs in my app?  And can I just provide several songs as options for my user?

Sorry for the late response. That problem is one that I know about and trying to fix

Yes you can play/pause songs in your app. But just as stated on the asset store page, the user must have Spotify Premium to control playback.
You can display multiple songs in your app and as long as you pass the Song Uri to the Play() function of the service, it will begin to play. Check out the IntelliSense of the function for more help

Hey there!
We're enjoying the functionality of your plugin.
On this bug...
This issue does not present itself when build using the mono scripting back end.
We have full Spotify control with this build (send & receive data).
However...
This issue is still persisting while building with the following setup:
Back end: IL2CPP
Architecture: x64
We can send Spotify instructions. But we cannot receive Spotify data (e.g. Track info, Play State...)
debugging logcat:
#########
1/2 - On getting Spotify data
#########
AndroidPlayer(ADB@<IP_ADDRESS>:34999) NotSupportedException: System.Reflection.Emit.DynamicMethod::.ctor   at System.Reflection.Emit.DynamicMethod..ctor (System.String name, System.Type returnType, System.Type[] parameterTypes, System.Type owner, System.Boolean skipVisibility) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.Utilities.DynamicReflectionDelegateFactory.CreateDynamicMethod (System.String name, System.Type returnType, System.Type[] parameterTypes, System.Type owner) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.Utilities.DynamicReflectionDelegateFactory.CreateDefaultConstructor[T] (System.Type type) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.Serialization.DefaultContractResolver.InitializeContract (Newtonsoft.Json.Serialization.JsonContract contract) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.Serialization.DefaultContractResolver.CreateObjectContract (System.Type objectType) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.Serialization.DefaultContractResolver.CreateContract (System.Type objectType) [0x00000] in <00000000000000000000000000000000>:0    at System.Func2[T,TResult].Invoke (T arg) [0x00000] in <00000000000000000000000000000000>:0
at System.Collections.Concurrent.ConcurrentDictionary2[TKey,TValue].GetOrAdd (TKey key, System.Func2[T,TResult] valueFactory) [0x00000] in <00000000000000000000000000000000>:0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x00000] in <00000000000000000000000000000000>:0
at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in <00000000000000000000000000000000>:0
at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <00000000000000000000000000000000>:0
at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <00000000000000000000000000000000>:0
at SpotifyAPI.Web.Models.Paging1[T].HasNextPage () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0    at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0    at SpotifyAPI.Web.SpotifyWebClient+<>c__DisplayClass16_1.<UploadRaw>b__1 () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0    at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00000] in <00000000000000000000000000000000>:0  --- End of stack trace from previous location where exception was thrown ---   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.ConditionalWeakTable2[TKey,TValue].GetValue (TKey key, System.Runtime.CompilerServices.ConditionalWeakTable2+CreateValueCallback[TKey,TValue] createValueCallback) [0x00000] in <00000000000000000000000000000000>:0    at SpotifyAPI.Web.Models.Paging1[T].HasNextPage () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.Finish (System.Boolean bUserDelegateExecuted) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetException (System.Object exceptionObject) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at SpotifyAPI.Web.Models.Paging1[T].HasNextPage () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0    at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0    at SpotifyAPI.Web.SpotifyWebClient+<>c__DisplayClass16_1.<UploadRaw>b__1 () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0    at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00000] in <00000000000000000000000000000000>:0  --- End of stack trace from previous location where exception was thrown ---   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.StrongBox1[T].System.Runtime.CompilerServices.IStrongBox.set_Value (System.Object value) [0x00000] in <00000000000000000000000000000000>:0
at Spotify4Unity.SpotifyServiceBase+<>c__DisplayClass94_0.b__0 () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.SendOrPostCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.Exec () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.Exec () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.ExecuteTasks () [0x00000] in <00000000000000000000000000000000>:0
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00000] in <00000000000000000000000000000000>:0
at UiMaster+d__44.MoveNext () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunCallback (System.Threading.ContextCallback callback, System.Object state, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.Finish (System.Boolean bUserDelegateExecuted) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetException (System.Object exceptionObject) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at Spotify4Unity.SpotifyServiceBase+<>c__DisplayClass94_0.b__0 () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.SendOrPostCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.Exec () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.Exec () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.ExecuteTasks () [0x00000] in <00000000000000000000000000000000>:0
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.b__6_0 (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.SendOrPostCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.Exec () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.Exec () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.ExecuteTasks () [0x00000] in <00000000000000000000000000000000>:0
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
UnityEngine.UnitySynchronizationContext:Exec()
UnityEngine.UnitySynchronizationContext:Exec()
UnityEngine.UnitySynchronizationContext:ExecuteTasks()
(Filename: currently not available on il2cpp Line: -1)
`
##########
2/2 - using SpotifyService.WebAPI
###########
AndroidPlayer(ADB@<IP_ADDRESS>:34999) JsonSerializationException: Unable to find a constructor to use for type SpotifyAPI.Web.Models.AvailabeDevices. A class should either have a default constructor, one constructor with arguments or a constructor marked with the JsonConstructor attribute. Path 'error', line 1, position 9.   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateNewObject (Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract objectContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, Newtonsoft.Json.Serialization.JsonProperty containerProperty, System.String id, System.Boolean& createdFromNonDefaultCreator) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <00000000000000000000000000000000>:0    at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <00000000000000000000000000000000>:0    at SpotifyAPI.Web.Models.Paging1[T].HasNextPage () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at SpotifyAPI.Web.SpotifyWebClient+<>c__DisplayClass16_1.b__1 () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at SpotifyAPI.Web.SpotifyWebClient+<>c__DisplayClass16_1.b__1 () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at System.Net.Http.HttpMessageInvoker.SendAsync (System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at System.Net.Http.HttpClientHandler+<>c.b__64_0 (System.Object l) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.UnwrapPromise1[TResult].InvokeCore (System.Threading.Tasks.Task completingTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.UnwrapPromise1[TResult].Invoke (System.Threading.Tasks.Task completingTask) [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0    at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.TaskFactory1[TResult].FromAsyncCoreLogic (System.IAsyncResult iar, System.Func2[T,TResult] endFunction, System.Action1[T] endAction, System.Threading.Tasks.Task1[TResult] promise, System.Boolean requiresSynchronization) [0x00000] in <00000000000000000000000000000000>:0
at System.AsyncCallback.Invoke (System.IAsyncResult ar) [0x00000] in <00000000000000000000000000000000>:0
at System.Net.SimpleAsyncCallback.Invoke (System.Net.SimpleAsyncResult result) [0x00000] in <00000000000000000000000000000000>:0
at System.Net.HttpWebRequest.SetResponseData (System.Net.WebConnectionData data) [0x00000] in <00000000000000000000000000000000>:0
at System.AsyncCallback.Invoke (System.IAsyncResult ar) [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunCallback (System.Threading.ContextCallback callback, System.Object state, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at Mono.Net.Security.MobileAuthenticatedStream+<>c__DisplayClass66_0.b__0 () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at Mono.Net.Security.MobileAuthenticatedStream.InnerWrite (System.Boolean sync, System.Threading.CancellationToken cancellationToken) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at Mono.Net.Security.MobileAuthenticatedStream.InnerRead (System.Boolean sync, System.Int32 requestedSize, System.Threading.CancellationToken cancellationToken) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at Mono.Net.Security.AsyncProtocolRequest.ToString () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <00000000000000000000000000000000>:0
at System.Action.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction (System.Action action, System.Boolean allowInlining, System.Threading.Tasks.Task& currentTask) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task.FinishContinuations () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.Tasks.Task1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[TResult].Create () [0x00000] in <00000000000000000000000000000000>:0
at Mono.Net.Security.MobileAuthenticatedStream+<>c__DisplayClass66_0.b__0 () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ContextCallback.Invoke (System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ExecutionContext.RunInt
`
Any help would be much appreciated!

Hi, the "Unable to find constructor..." is fixable like said above, by using Json.NET. Unless you wish to clone SpotifyAPI.NET and add in the constructors 🤷♂
However, the NotSupportedException is a new one for me. Is it related to this? Also, which version of Unity are you working in? I'm not too knowledgeable about the Android build process but there are a couple other people who had the same error and had it fixed


About refcoco

Hello!I have a question regarding the evaluation metrics used in your paper. Specifically, in the code snippet:
iou_ = box_iou(p, g).item()
iou += iou_
if iou_ > 0.7:
acc += 1
return iou / max(num_samples, 1), acc / max(num_samples,  1)
Is the RefCOCO score you refer to in the paper the iou / max(num_samples, 1) or acc / max(num_samples, 1)?
Thank you for your time and help!

Hi, sorry I just saw your question. The metrics we report in the paper is IoU, not accuracy.


LC hard addition

I would like to add lc 115 that is DISTINCT SUBSEQUENCES and lc 135 that is CANDY

sure

Please add labels for hacktoberfest


Development: Enforce websocket messaging service usage

Checklist
General

[ ] I tested all changes and their related features with all corresponding user types on a test server.
[ ] This is a small issue that I tested locally and was confirmed by another developer on a test server.
[X] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[X] I chose a title conforming to the naming conventions for pull requests.

Server

[X] Important: I implemented the changes with a very good performance and prevented too many (unnecessary) database calls.
[X] I followed the coding and design guidelines.groups for all new REST Calls (security).
[X] I documented the Java code using JavaDoc style.

Motivation and Context

As discussed in the Developer's meeting 21.07.2023, we don't want to use the messaging template directly anymore but use the WebsockerMessagingService as a facade.
Description

I added an architecture test to enforce this decision via tests and adapted all wrong usages
Review Progress

Performance Review

[X] I confirm that the server changes (in particular related to database calls) are implemented with a very good performance

Code Review

[ ] Code Review 1
[ ] Code Review 2

Closed in favour of #6951.
Added the test there


fix the closed ledger did not delete after expired

Motivation
Fixes #9057
When current ledger closed, if there is no incoming traffic, the read position of the cursor is still point to the last entry of the closed ledger,  that casue the slowestReaderLedgerId point to the closed ledger in internalTrimConsumedLedgers() and fail to delete the closed ledger.
Modifications
When close current ledger, if cursor's read position point to the last entry of current ledger, move the position to the new created ledger.


No completion suggestion for '${defaultBuildTask}'

Testing #81637
In the launch.json file there is no completion suggestion for ${defaultBuildTask}. There are suggestions for other variables:

New completion suggestion text: "The name of the default build task. If there is not a single default build task then a quick pick is shown to choose the build task."


Include Dummy User Feedbacks !!

Include "Our Reviews" in Footer section . The theme should match with website !!

I would like to work on this
Kindly give more detail about this issue

create dummy reviews for the website
link it in section "Our Reviews"
Our Reviews will be placed in footer section
//The reviews are dummy reviews just for demonstration

@c4coderandcreator

Ya great !!  3-4 more and in slide way !!

Hey @Petsamuel  Any Update

im just seeing this I'll work on this now, sorry about that.

im just seeing this I'll work on this now, sorry about that.

ok !

im just seeing this I'll work on this now, sorry about that.

ok !

Hi @c4coderandcreator, sorry for reaching out to you late
I run into complications with my PC.
I may not deliver this issue on time...
In case there is anyone who wants to work you can assign it to them.

Sure @Petsamuel  !! Thanks for informing !! Also I wish you resolve your issues soon !!


Update Ramsey/Uuid to latest

Hi there,
Ramsey Uuid has been updated. Please update the dependency.

edit -
nevermind.  I checked the repo and I don't know how..but the latest is 2.8. My composer.json has a 3.0.x so I'm confused.

Hi, Could you please update the Ramsey/uuid dependency?


python311Packages.gremlinpython: 3.6.3 -> 3.6.4

Diff: https://github.com/apache/tinkerpop/compare/refs/tags/3.6.3...3.6.4
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 232690 run on x86_64-linux 1

12 packages built:

python310Packages.awswrangler
python310Packages.awswrangler.dist
python310Packages.cassandra-driver
python310Packages.cassandra-driver.dist
python310Packages.gremlinpython
python310Packages.gremlinpython.dist
python311Packages.awswrangler
python311Packages.awswrangler.dist
python311Packages.cassandra-driver
python311Packages.cassandra-driver.dist
python311Packages.gremlinpython
python311Packages.gremlinpython.dist


--cgroup-parent is coming to Docker 1.6.0

Seems like docker/docker#11428 was merged and will be available in Docker 1.6.0, which addresses docker/docker#6791. I'm curious how this impacts this project?

I need to test this, but I believe cgroup parent doesn't work as you would think with systemd.  Hopefully I'm wrong.

As 1.6 is released: any chance you've tested this?

I'll test once Docker 1.6 lands in CoreOS alpha.  I assume that will be in the next day or so.

Someone has an example with --cgroup-parent and systemd?

Sorry to report the --cgroup-parent does nothing but rename the scope on systemd.  For systemd it's a useless feature.  In Docker 1.7 it will hopefully change.  More info here https://github.com/docker/libcontainer/pull/549 but it won't address what systemd-docker does.
There is a separate PR in Docker 1.7 https://github.com/docker/docker/pull/10427 that will actually make systemd-docker work much much better.  Ironically it disables the use of the systemd cgroup manager but this allows us to launch Docker containers in systemd that doesn't involve manually changing cgroups.

@ibuildthecloud thanks for the answer, i will check later when docker 1.7 is available.

I have docker 1.6 installed
docker --version
Docker version 1.6.0, build 4749651
but I don't see option of -cgroup-parent, can somebody help me with an example too.
ocker --version
Docker version 1.6.0, build 4749651
vagrant@vagrant-ubuntu-trusty-64:/vagrant/example$ docker
Usage: docker [OPTIONS] COMMAND [arg...]
A self-sufficient runtime for linux containers.
Options:
--api-cors-header=                   Set CORS headers in the remote API
-b, --bridge=                        Attach containers to a network bridge
--bip=                               Specify network bridge IP
-D, --debug=false                    Enable debug mode
-d, --daemon=false                   Enable daemon mode
--default-ulimit=[]                  Set default ulimits for containers
--dns=[]                             DNS server to use
--dns-search=[]                      DNS search domains to use
-e, --exec-driver=native             Exec driver to use
--fixed-cidr=                        IPv4 subnet for fixed IPs
--fixed-cidr-v6=                     IPv6 subnet for fixed IPs
-G, --group=docker                   Group for the unix socket
-g, --graph=/var/lib/docker          Root of the Docker runtime
-H, --host=[]                        Daemon socket(s) to connect to
-h, --help=false                     Print usage
--icc=true                           Enable inter-container communication
--insecure-registry=[]               Enable insecure registry communication
--ip=<IP_ADDRESS>                         Default IP when binding container ports
--ip-forward=true                    Enable net.ipv4.ip_forward
--ip-masq=true                       Enable IP masquerading
--iptables=true                      Enable addition of iptables rules
--ipv6=false                         Enable IPv6 networking
-l, --log-level=info                 Set the logging level
--label=[]                           Set key=value labels to the daemon
--log-driver=json-file               Containers logging driver
--mtu=0                              Set the containers network MTU
-p, --pidfile=/var/run/docker.pid    Path to use for daemon PID file
--registry-mirror=[]                 Preferred Docker registry mirror
-s, --storage-driver=                Storage driver to use
--selinux-enabled=false              Enable selinux support
--storage-opt=[]                     Set storage driver options
--tls=false                          Use TLS; implied by --tlsverify
--tlscacert=~/.docker/ca.pem         Trust certs signed only by this CA
--tlscert=~/.docker/cert.pem         Path to TLS certificate file
--tlskey=~/.docker/key.pem           Path to TLS key file
--tlsverify=false                    Use TLS and verify the remote
-v, --version=false                  Print version information and quit
Commands:
attach    Attach to a running container
build     Build an image from a Dockerfile
commit    Create a new image from a container's changes
cp        Copy files/folders from a container's filesystem to the host path
create    Create a new container
diff      Inspect changes on a container's filesystem
events    Get real time events from the server
exec      Run a command in a running container
export    Stream the contents of a container as a tar archive
history   Show the history of an image
images    List images
import    Create a new filesystem image from the contents of a tarball
info      Display system-wide information
inspect   Return low-level information on a container or image
kill      Kill a running container
load      Load an image from a tar archive
login     Register or log in to a Docker registry server
logout    Log out from a Docker registry server
logs      Fetch the logs of a container
port      Lookup the public-facing port that is NAT-ed to PRIVATE_PORT
pause     Pause all processes within a container
ps        List containers
pull      Pull an image or a repository from a Docker registry server
push      Push an image or a repository to a Docker registry server
rename    Rename an existing container
restart   Restart a running container
rm        Remove one or more containers
rmi       Remove one or more images
run       Run a command in a new container
save      Save an image to a tar archive
search    Search for an image on the Docker Hub
start     Start a stopped container
stats     Display a stream of a containers' resource usage statistics
stop      Stop a running container
tag       Tag an image into a repository
top       Lookup the running processes of a container
unpause   Unpause a paused container
version   Show the Docker version information
wait      Block until a container stops, then print its exit code
Run 'docker COMMAND --help' for more information on a command.

@vaibhavkhanduja
docker run --help
Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
Run a command in a new container
-a, --attach=[]            Attach to STDIN, STDOUT or STDERR
--add-host=[]              Add a custom host-to-IP mapping (host:ip)
-c, --cpu-shares=0         CPU shares (relative weight)
--cap-add=[]               Add Linux capabilities
--cap-drop=[]              Drop Linux capabilities
--cgroup-parent=           Optional parent cgroup for the container
--cidfile=                 Write the container ID to the file
--cpuset-cpus=             CPUs in which to allow execution (0-3, 0,1)
-d, --detach=false         Run container in background and print container ID

Ping re: https://github.com/docker/docker/pull/10427, which is now merged. How does this affect (the necessity of) systemd-docker?

It doesn't make it not required but it will make it such that it will work almost perfectly with no cgroup hackery.  But this means you have to disable systemd integration on a systemd system.

Post 1.7 release I will update systemd-docker to use cgroup-parent combined with disabling systemd integration.

@ibuildthecloud That sounds great. A pair of followup questions:

I'm not super familiar with systemd. What are the consequences/pros/cons of disabling systemd integration?
What are your thought's on @ibukanov's comment on https://github.com/docker/docker/issues/6791:

A simpler solution then using @ibuildthecloud's systemd-docker is to start a docker container in the background in ExecStartPre via run -d container or start container and then using ExecStart=/usr/bin/docker logs -f container. This way systemd, before starting any dependent units, waits until docker run -d or docker start returns and that happens only when the container is started. Then the logs command sends the initial startup logs to systemd and journal and then continue to do so as the new logs arrive until the container stops.
With this approach one also needs to put -/usr/bin/docker stop container both to ExecStop and ExecStopPost. The latter ensures that if /usr/bin/docker logs dies before the container terminates, then systemd still stops the container. Note that by just using ExecStopPost without ExecStop one will not get the termination logs into the journal as systemctl stop will kill the logs command before ExecStopPost stops the container.

I am not @ibuildthecloud, but that simpler solution is simlistic, in that the container is still not supervised at all. The big command streaming the logs to stdout is now docker logs and not docker run, but that's most of the difference.

@ibuildthecloud Docker 1.7 has been out for a bit, still planning to update systemd-docker?

@ibotty I use that docker run -d followed by docker log trick as it allows to properly express container dependencies and make sure, for example, that if B needs A due to --link=A or --net=container:A, then restarting A either from docker or systemd also restarts B after docker starts A. Surely it does not allow for systemd to manage the container, but at least it ensures reliable startup and running.

@ibuildthecloud Any update on this issue?


It fails to install in laravel 10 due to a dependency requirment of php unit v 9.5

This is composers error

zman/zman[v1.3.0, ..., v1.3.2] require phpunit/phpunit ^9.5 -> found phpunit/phpunit[9.5.0, ..., 9.6.5] but it conflicts with your root composer.json require (^10.0
Please let me know if you can update this to offer phpunit 10.0

Thanks

This was meant for local testing only, so it was moved to the require dev section. Try the latest version, that should fix your issue

I wouldn't say that's 100% of the story. Anyway I am prepping an upgraded version as we speak to support phpunit v10 (which in turn will mean dropping php 8.0 support - fine w/ me)


add handshake RTT tests with IETF QUIC

Fixes #860. Depends on #1482.

Codecov Report

Merging #1484 into master will decrease coverage by 0.02%.
The diff coverage is 77.78%.

@@            Coverage Diff             @@
##           master    #1484      +/-   ##
==========================================
- Coverage   89.19%   89.17%   -0.02%
==========================================
  Files         121      121
  Lines        8443     8446       +3
==========================================
+ Hits         7530     7531       +1
- Misses        619      621       +2
  Partials      294      294

Impacted Files
Coverage Δ

server_tls.go
77.57% <100%> (ø)
:arrow_up:

internal/protocol/connection_id.go
86.21% <100%> (ø)
:arrow_up:

client.go
83.91% <71.43%> (+0.15%)
:arrow_up:

session.go
72.09% <0%> (-0.27%)
:arrow_down:

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 58eae32...69e9784. Read the comment docs.


How many training steps to train wavtokenizer?

@jishengpeng
https://huggingface.co/novateur/WavTokenizer/blob/main/wavtokenizer_smalldata_frame40_3s_nq1_code4096_dim512_kmeans200_attn.yaml
in config above num_steps are 20000000, which is 10M steps for generator and discriminator, but comment says 1M steps per module, and paper says model is trained 500K steps per module
what is true?

@jishengpeng https://huggingface.co/novateur/WavTokenizer/blob/main/wavtokenizer_smalldata_frame40_3s_nq1_code4096_dim512_kmeans200_attn.yaml
in config above num_steps are 20000000, which is 10M steps for generator and discriminator, but comment says 1M steps per module, and paper says model is trained 500K steps per module
what is true?

1M


Make setup.py less of a disaster

 Issue by thieman
Sunday May 26, 2013 at 03:19 GMT
Originally opened as https://github.com/thieman/dagobah/issues/3

Even if the only improvement made was to figure out how to make package_data work on directories, that would be huge.

 Comment by brainwane
Thursday Oct 31, 2013 at 03:11 GMT

We could use something like

joinedupnames = [os.path.join(dirpath,filename) for dirpath, _dirname, filenames in os.walk('daemon/static/lib/') for filename in filenames]

earlier in setup.py and then refer to joinedupnames in the package data.

 Comment by brainwane
Thursday Oct 31, 2013 at 16:21 GMT

Could we list the files in MANIFEST.in and then, in setup.py, set include_package_data=True?

 Comment by thieman
Saturday Nov 02, 2013 at 20:29 GMT

That would still leave us the problem of defining files when we really want to define folders, right?


Preventing of race conditions in script filter in yii.js works incorrectly

I found these issues during writing tests for yii.js.
The fix (#12651, https://github.com/yiisoft/yii2/commit/1ab204e481c15a5969098363509407694e7965e1) for #10358 is incorrect. Not only it's not intuitive for understanding (mostly because of the way if checks are written), contains copy paste, magic numbers, it also causes some bugs.
The content of initScriptFilter() after applying this fix:
function initScriptFilter() {
    var hostInfo = getHostInfo();
    var loadedScripts = {};

    var scripts = $('script[src]').map(function () {
        return this.src.charAt(0) === '/' ? hostInfo + this.src : this.src;
    }).toArray();
    for (var i = 0, len = scripts.length; i < len; i++) {
        loadedScripts[scripts[i]] = true;
    }

    $.ajaxPrefilter('script', function (options, originalOptions, xhr) {
        if (options.dataType == 'jsonp') {
            return;
        }

        var url = options.url.charAt(0) === '/' ? hostInfo + options.url : options.url;

        if (url in loadedScripts) {
            var item = loadedScripts[url];

            // If the concurrent XHR request is running and URL is not reloadable
            if (item !== true && !isReloadable(url)) {
                // Abort the current XHR request when previous finished successfully
                item.done(function () {
                    if (xhr && xhr.readyState !== 4) {
                        xhr.abort();
                    }
                });
                // Or abort previous XHR if the current one is loaded faster
                xhr.done(function () {
                    if (item && item.readyState !== 4) {
                        item.abort();
                    }
                });
            } else if (!isReloadable(url)) {
                xhr.abort();
            }
        } else {
            loadedScripts[url] = xhr.done(function () {
                loadedScripts[url] = true;
            }).fail(function () {
                delete loadedScripts[url];
            });
        }
    });

    // Filter for CSS is not related with this fix so its code is not included for brevity
}

Let's abstract from using pjax and consider simpler examples using $.getScript() jQuery function. Calls of it will trigger $.ajaxPrefilter.
1st problem - Setting resolving callbacks only for the 1st request
Let's say we have 2 concurrent requests:
$.getScript('/js/concurrent.js');
$.getScript('/js/concurrent.js');

and 2nd will succesfully complete earlier.
As a result, 1st one will be immediately aborted. However, script will not be marked as loaded, because of this code:
loadedScripts[url] = xhr.done(function () {
    loadedScripts[url] = true;
}).fail(function () {
    delete loadedScripts[url];
});

These callbacks are only set for the 1st request and all subsequent requests will be considered as concurrent and handled differently. So the implementation relies on the fact that 1st request always finishes earlier.
So it's possible to load /js/concurrent1.js again even without marking it as "reloadable".
2nd problem - Designed to work with pairs of XHR
This part:
// Abort the current XHR request when previous finished successfully
item.done(function () {
    if (xhr && xhr.readyState !== 4) {
        xhr.abort();
    }
});
// Or abort previous XHR if the current one is loaded faster
xhr.done(function () {
    if (item && item.readyState !== 4) {
        item.abort();
    }
});

is designed to work with pairs of XHR. So even it can work for 2 requests, if we talking about concurrent requests, why limit their count to 2? It can be 3, 4, 5, etc.
At least having 3 concurrent requets:
$.getScript('/js/concurrent.js');
$.getScript('/js/concurrent.js');
$.getScript('/js/concurrent.js');

can cause unpredictable behavior too.
3rd problem - Not adapted to the case of concurrent requests to different urls
At the beginning, when $.ajaxPrefilter is fired, url variable is calculated:
var url = options.url.charAt(0) === '/' ? hostInfo + options.url : options.url;

Then it's used in marking script as loaded or deleting it in case of fail:
loadedScripts[url] = xhr.done(function () {
    loadedScripts[url] = true;
}).fail(function () {
    delete loadedScripts[url];
});

But again, if we are talking about concurrent requests, this can also easily happen:
$.getScript('/js/concurrent1.js');
$.getScript('/js/concurrent2.js');

Two requests are done to 2 different urls and not immediately completed. Let's say /js/concurrent2.js completes earlier. Then url for the /js/concurrent1.js will be undefined because it was overwriitten when the callbacks were attached to /js/concurrent1.js.
So for the /js/concurrent1.js:
loadedScripts[url] = true;

is identical to:
loadedScripts[undefined] = true;

which is a valid JS (we can set a object property with a key undefined), but obviously it's not what we expected. So it's possible to load /js/concurrent1.js again even without marking it as "reloadable".
4th problem - xhr.abort() calls xhr.fail()
You can read details in this blog article for example.
So when we have:
$.getScript('/js/concurrent.js');
$.getScript('/js/concurrent.js');

If 2nd request will complete earlier, 1st one will be immediately aborted, but along with abort(), fail() callback will be called and will try to delete it from loaded scripts.

So to fix 1 and 2 we need to consider all script loading requests as a queue (not divide them to pairs or separate 1st, they are all concurrent) and additionally separate them by the url to fix 3. So @nkovacs was on the right track in https://github.com/yiisoft/yii2/issues/10358#issuecomment-163218693.
In case of a success of one of the requests we can abort all concurrent requests to the same url and mark the script as loaded clearing the queue. It's better to add locking mechanism during this clenup and not accept any other requests to this url to prevent errors and additional race conditions. Because cleanup code is synchronous (not depend on the network connection) and executes way faster, it's an admissible thing to do and should not affect UX.
With fail we can just delete this request from this url's / asset's queue and hope that some others will complete successfully. If all will fail, we need to mark the script as not loaded. As I think, accepting new requests is valid during fail cleanup and will not cause any errors or race conditions.
Fix for 4 is apparently easy, we need to check textStatus parameter value to be equal abort:
xhr.fail(function (jqXHR, textStatus) {
    if (textStatus === 'abort') {
        return;
    }

    // The rest of the code

So to fix 1 and 2 we need to consider all script loading requests as a queue (not divide them to pairs or separate 1st, they are all concurrent) and additionally separate them by the url to fix 3. So @nkovacs was on the right track in https://github.com/yiisoft/yii2/issues/10358#issuecomment-163218693.
In case of a success of one of the requests we can abort all concurrent requests to the same url and mark the script as loaded clearing the queue. It's better to add locking mechanism during this clenup and not accept any other requests to this url to prevent errors and additional race conditions. Because cleanup code is synchronous (not depend on the network connection) and executes way faster, it's an admissible thing to do and should not affect UX.
With fail we can just delete this request from this url's / asset's queue and hope that some others will complete successfully. If all will fail, we need to mark the script as not loaded. As I think, accepting new requests is valid during fail cleanup and will not cause any errors or race conditions.
Fix for 4 is apparently easy, we need to check textStatus parameter value to be equal abort:
xhr.fail(function (jqXHR, textStatus) {
    if (textStatus === 'abort') {
        return;
    }

    // The rest of the code

1st problem - Setting resolving callbacks only for the 1st request

... So the implementation relies on the fact that 1st request always finishes earlier.

No, it was not designed to rely on that fact.
Let's inspect that code step-by-step:

$.getScript('/js/concurrent.js');. The produced XHR promise will be called first
Line :440 is reached, the XHR gets stored  in the loadedScripts variable, done and fail handlers are attached to the XHR.
$.getScript('/js/concurrent.js');. Concurrent request is started, the produced XHR promise will be called second
As the URL is present in the loaded list and does not equal true, the first XHR is still running, so the line :420 is reached.
The first XHR request gets additional done event handler on line :425. That handler is designed to cancel the sencond XHR request, if the first is successfully loaded earlier.
The second XHR request gets additional done event handler on line :431. That handler is designed to cancel the first XHR request, if the second is successfully loaded earlier.

2nd problem - Designed to work with pairs of XHR

can cause unpredictable behavior too.

Yes, it looks quite unpredictable.

3rd problem - Not adapted to the case of concurrent requests to different urls

From my POV, only requests to the same URL are concurrent. Could you explain how can be concurrent a pair of requests to different URLs?

4th problem - xhr.abort() calls xhr.fail()

I didn't know that, but it worked somehow =/ Thank you for digging in

Generally I agree with your ideas of the filter enhancements.

As for the 1st problem, let me explain again.
We are calling 2 requests at the same time:
$.getScript('/js/concurrent.js');
$.getScript('/js/concurrent.js');

Let's name 1st request "A" and the 2nd - "B".
1) The A receives done and fail callbacks and this XHR added to mark the script as "in the process of loading" and to refer to it later:
loadedScripts[url] = xhr.done(function () {
    loadedScripts[url] = true;
}).fail(function () {
    delete loadedScripts[url];
});

2) For the B this code is not executed (because url is in loadedScripts now) and some handling of the concurrent requests is performed via attaching callbacks and calling xhr.abort():
// Abort the current XHR request when previous finished successfully
item.done(function () {
    if (xhr && xhr.readyState !== 4) {
        xhr.abort();
    }
});

// Or abort previous XHR if the current one is loaded faster
xhr.done(function () {
    if (item && item.readyState !== 4) {
        item.abort();
    }
});

The A and "B" are still in the process of loading.
3) Now imagine that B request finishes first.
In its done callback the A request will be aborted using xhr.abort(). As a result (see 4th problem), this code will be additionally executed for the A:
delete loadedScripts[url];

But this part will be never called:
loadedScripts[url] = true;

because A request was aborted and only fail() callback was fired. So even if the script was loaded successfully with the B, it was not marked as "loaded" and it's possible to load it again even if it's not "reloadable":
$.getScript('/js/concurrent.js');

Do you understand it now? I reproduced it in tests even before I found 2nd problem.

From my POV, only requests to the same URL are concurrent. Could you explain how can be concurrent a pair of requests to different URLs?

Even they are not concurrent in the way requests for the same url are, just imagine the case when we loading 2 different scripts at the same time:
$.getScript('/js/script1.js');
$.getScript('/js/script2.js');

If 1st will not be completed at the moment of running $.ajaxPrefilter for script2.js, url variable will be overwritten and lost (undefined) for the script1.js as a result.
So script1.js will not be correctly marked as loaded and like in 1st problem, it's possible to load it again even if this script is not set as "reloadable":
$.getScript('/js/script1.js');


Curl mentioned twice

Hi,
just noticed you have mentioned curl twice under Command Line Apps, cheers.

thanks


Package WebAssembly build of libSQL

We currently only support local database with Node, but with a WebAssembly build of libSQL can unlock that in other environments such as the browser. IOW, we need a libsql package similar to<EMAIL_ADDRESS>and write that up to the client SDK.

+1 to this.
If you're going to port this to browser, I'd recommend backing it with the Origin Private File System and ensuring it can be used from a web worker for improved performance, possibly adopting a Comlink like API for accessing from other threads.

+1


Basic Delegate Trust

Spec
Delegate Trust
Citizens may delegate voting rights to another Citizen.
This earns Citizens rewards as described in the Reputation section of this paper.
Delegations mimic the relative voting of the delegatee.
Example: If delegatee casts 1/10 of their Trust Tokens on a proposal it follows with 1/10 of the Trust Tokens of the delegator.
[%] of Trust Tokens cast delegatee = [%] of Trust Tokens cast of delegator
Implementation
Could do this relatively easily with a delegations table on the proposals contract
If one has made delegations, they can't vote themselves
delegations can have a weight 1 - 100

Delegate votes need to be by Categories (Alliances, Proposals, Referendums for now)
You can only assign one Citizen to vote for you on that category.
You voting power is fully available on all Categories (not split)

Hello I have some questions:

How long does voice delegation last? I mean, a user needs to call another action to cancel voice delegation or does it have a duration period?

Is there any limit of delegators a user can have? I mean, the user A can be the delegatee of any number of users?

Yes there needs to be a cancel function
The user can either assign another trust delegate or cancel delegation any time
It lasts forever although I think the trust delegate should also be able to cancel - if they don’t want to do it anymore.
No limit on number of users

On Dec 5, 2020, at 07:44, Ian Mendoza Jaimes<EMAIL_ADDRESS>wrote:

Hello I have some questions:
How long does voice delegation last? I mean, a user needs to call another action to cancel voice delegation or does it have a duration period?
Is there any limit of delegators a user can have? I mean, the user A can be the delegatee of any number of users?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


Unable to Install the Deb Package

I have my build system producing .deb and .rpm packages. This is all working within my build process to produce the two packages.
From my gitlab build ...
dotnet-deb MyApp.csproj -r:linux-x64 -f:net6.0 -c:Release

This is being built on PopOS 22.04.
I've set up a VM for testing this package also running PopOS 20.04.
I copied this deb package to the VM and double-clicked it to start the install. It immediately bombed with:
com.github.donadigo.eddy
Installation Failed
child process exited with code 100

Looking around, code 100 is a generic error so not much use on it's own. So I decided to try sudo apt-get.
cd to the location on disk
sudo apt-get install MyApp.1.0.0.linux-x64.deb

This errors with:
Reading package lists ... Done
Building dependency tree... done
Reading state information... done
E: unable to locate package MyApp.deb
E: Couldn't find any package by glob 'MyApp.deb'
E: Couldn't find any package by regex 'MyApp.deb'

I have created a few icon files and a .desktop file that are packaged within my *.deb package and a PostInstallScript element like this:
<PropertyGroup>
        <PostInstallScript>
            <![CDATA[
cp -p myapp.xpm /usr/share/pixmaps/
cp -p myapp.png /usr/share/icons/hicolor/48x48/apps/
cp -p myapp.svg /usr/share/icons/hicolor/scalable/apps/
cp -p myapp.desktop /usr/share/applications/
            ]]>
        </PostInstallScript>
    ...

Does anyone have any clues as to what's going on here? At this stage I'm not even sure what to google for potential solutions.
The first E: error line is just monumentally confusing as it appears to not even find the package at all.
Any pointers would be really appreciated.

Instead of sudo apt-get install MyApp.1.0.0.linux-x64.deb, try to use sudo apt install ./MyApp.1.0.0.linux-x64.deb or sudo dpkg -i MyApp.1.0.0.linux-x64.deb (more correct way, but doesn't installs dependencies automatically).

Also it is better to use <LinuxPath> instead of postinst script:
    <Content Include="myapp.xpm" CopyToPublishDirectory="Always">
	   <LinuxPath>/usr/share/pixmaps/myapp.xpm</LinuxPath>
    </Content>
    <Content Include="myapp.png" CopyToPublishDirectory="Always">
	   <LinuxPath>/usr/share/icons/hicolor/48x48/apps/myapp.png</LinuxPath>
    </Content>
    <!-- and so on -->

Ahhhhhhh, thank you. Will go investigate. Strinctly speaking there shouldn't be any dependencies. I'll AOT compiling my .NET 6 application so at least that element is simpler. Thanks for the response.

I've made a bit of a discovery. Using apt install revealed an issue:
Package dependency problems
Package depends on libssl1.1

So I started looking for a solution to that, which I think is a relevant <RpmDotNetDependency Include="libunwind" Version="" /> (I couldn't see any examples of a <DebDotNetDependency... here. So would an <RpmDotNetDependency work?
Whilst I was investigating this, I came across this post. Where it seems to suggest 1.1 is now deprecated.

Ubuntu 22.04 uses libssl3, and thus libssl1.1 is deprecated at this point.
Creating a new package for Ubuntu 22.04 that uses an obsolete libssl version seems like a very bad idea. Also, messing with versions for systemwide libraries like libssl is a similarly a very bad idea, which may have unpredictable consequences in the future.
So one option is that if you will continue to use Ubuntu 22.04, you should convert into using libssl3 for your apps.
Another option is to run legacy apps inside a VM or container, where you could install an older version of Ubuntu (e.g. 20.04) that has libssl1.1 installed.
These two options seem to be the most viable paths to take in your situation.

So I'm unsure what to do at this point. I'm installing onto an instance of PopOS based on Ubunto 22.04.
Another comment on that SO thread reads:

You need to understand that libssl1.1 is no longer used in Ubuntu 22.04. So you have some options: 1) Either understand what you're doing, and make things work with libssl3 or 2) Run your legacy app in a container or VM using on older version of Ubuntu (e.g. 20.04) that has libssl1.1. Mixing libssl1.1 into Ubuntu 22.04 is a very bad idea.

Any pointers on how to navigate this would be appreciated. I'm honestly not sure what would be introducing this dependency within my application so I'm assuming it's something to do with the packaging process itself.

Add <SelfContained>False</SelfContained> to csproj file, this should remove libssl requirement. Exactly, the app will require only dotnet-runtime-6.0 package and nothing more.

I couldn't see any examples of a <DebDotNetDependency

They're almost identical with RpmDotNetDependency.
<!-- An working example of using Deb/Rpm dependencies and recommended package list from my project (https://github.com/atauenis/webone) -->
  <ItemGroup Condition="$(SelfContained)==false">
    <DebDotNetDependencies Include="dotnet-runtime-6.0" />
    <RpmDotNetDependencies Include="dotnet-runtime-6.0" />
  </ItemGroup>

  <ItemGroup>
    <DebDependency Include="imagemagick-6.q16" />
    <DebRecommends Include="ffmpeg" />
    <DebRecommends Include="youtube-dl" />
  </ItemGroup>

  <ItemGroup>
    <RpmDependency Include="ImageMagick" />
  </ItemGroup>

There also a some syntax for setting package versions, it is diffrent for Deb and Rpm. I have almost no experience with it, but probably it may be found in deb/rpm manuals (e.g. man deb-control in Debian and something similar in RedHat-like about RPM). At least for debs, the syntax from Debian manpage is working.

Thanks for this, will investigate.
One issue here is I cannot remove self-contained=true as it's a requirement for the AOT compilation.


fix: fix: update schema to reflect new columns in proposals

Update schema.sql file to reflect new columns in proposals

Please don't merge, I'll do some change in the columns, removing vp_usd and vp_eth and add scores_total_value also add a column in votes. These columns will later be exposed in the API.


The whole page should be localized

Right now, when you click on a translation on the top right, nothing changes besides the lessons' content itself.
What should change:

lessons content
lessons links in navbar
starting page for each language should show up instead of always English
navbar itself

@gemantzu have you checked the code itself to see if it has gettext setup? We may just need to generate the localses?

no, doing so right now. The translation landing page though and the navbar localized lessons should not be gettext specific, I think it's code specific

Hm, I see that the navbar lesson titles are coming from gettext, AND the setup for the english version is there. Are we good with this option, or do you think we should rely on the lessons themselves to provide these titles?

I noticed it also! Its a minor thing since all lessons are translated but cause a bad impression for people who won't speak english since looks like the localization won't work in first glance.

#192 should do the trick!

All that's needed now for all languages, is to have each .po file in here translated accordingly.

Closing out this issue since it was added in #192, feel free to re-open or create a new issue if there is more work, but since we have the ground work laid for full-page translations I think we can close it safely.