Django Channels Websocket with Callbacks

Context
I have an AsyncWebsocketConsumer in Django and I want to receive audio data (as bytes) from a frontend, transcribe it asycn with Deepgram and send it back to the frontend through the same Websocket connection.
I have gone through the Django-Deepgram tutorial. Unfortunately it is out of date because it is for the old SDK version, so I ported over the implementation with the new SDK.
Current Problem
The current problem I have is in the custom_transcription_file function below. The objective is :-

The frontend establishes a connection (sends some text data like the name of the person and the date)
The backend makes a custom file to store the transcript in and prepares to send the transcript back to the frontend
The frontend sends audio bytes and the backend sends back the transcription text data and stores the transcript in the designated text file.

The problem is that the frontend does not receive any text data back. The transcript correctly saves to the file but there is nothing being sent over the websocket connection.
Other information
My consumers.py file
from channels.generic.websocket import AsyncWebsocketConsumer
from dotenv import load_dotenv
from deepgram import DeepgramClient, LiveOptions, LiveTranscriptionEvents
from django.conf import settings
import os
import json

load_dotenv()
DEEPGRAM_API_KEY = os.getenv("DEEPGRAM_API_KEY")

def custom_transcription_file(name: str, date: str, **kwargs):

    transcript_dir = settings.TRANSCRIPTS_SAVE_PATH / date
    transcript_dir.mkdir(exist_ok=True)

    send_fn = kwargs["send_fn"]
    # TODO: Check that the send function is a callable

    transcript_file_name = transcript_dir / f"{name}.txt"
    with open(transcript_file_name, "w+") as outfile:
        outfile.write(f"=== CONVERSATION TRANSCRIPT WITH {name} ===\n\n")

    # Callback function for REGULAR MESSAGES
    def on_message(self, result, **kwargs):
        if result is None:
            return
        sentence = result.channel.alternatives[0].transcript
        if len(sentence) == 0:
            return

        # Print the transcript
        print("TRANSCRIPT: ", sentence)

        # Save the transcript to a file
        with open(transcript_file_name, "a") as outfile:
            outfile.write(f"You: {sentence}\n")

        # Send the transcript via the websocket connection to the frontend
        send_fn(text_data=json.dumps({"transcript": sentence}))

    return on_message

class TranscriptConsumer(AsyncWebsocketConsumer):
    async def connect(self):
        self.dg_client = DeepgramClient()
        self.dg_conn = self.dg_client.listen.asynclive.v("1")
        self.options = LiveOptions(
            model="nova",
            punctuate=True,
            language="en-US",
            channels=1,
            sample_rate=16000,
        )
        await self.dg_conn.start(self.options)
        await self.accept()
        print("Accepted connection")

    async def disconnect(self, close_code):
        print("Disconnecting")
        self.close(close_code)
        self.dg_conn.finish()

    async def receive(self, text_data=None, bytes_data=None):
        # This only happens at the start of a connection when
        # we have to send some metadata information like the name
        # of the person and the time.
        if text_data is not None:
            print("TEXT DATA RECEIVED ", text_data)
            info_dict = json.loads(text_data)
            name = info_dict.get("name")
            if name is None:
                return

            # We are expecting date of the form DD_MM_YYYY (with no spaces)
            date = info_dict.get("date")
            if date is None:
                return
            self.name = name
            self.date = date

            # Register the callbacks for all the transcripts.
            transcript_callback = custom_transcription_file(
                self.name, self.date, send_fn=self.send
            )
            self.dg_conn.on(
                LiveTranscriptionEvents.Transcript,
                transcript_callback
            )
            # TODO: Register callbacks for errors, utterances and metadata.

        if bytes_data is not None:
            await self.dg_conn.send(bytes_data)

My index.html file
<!DOCTYPE html>

        <title>Chat</title>

Transcribe Audio With Django

Connection status will go here

What I need help in ?

How do I make a callback function to Deepgram that will send the trancript back via the Websocket connection I have setup ?

Any help will be appreciated thanks.

Hi @kj3moraes
You might want to take a look at this first before implementing anything
https://developers.deepgram.com/docs/callback

Seems like you have an issue with connection between the UI and this backend component. I have a feeling that your send_fn might be blocking. I bet if you put a print statement after the send, you probably never end up seeing it.

Hey @dvonthenen ,
I don't think it is the send_fn because I am inheriting from Django's AsyncWebsocketConsumer and its send function is async as defined here.
I tried putting the print function after the send_fn and it managed to print out the statement. The code and the log are below
    # Callback function for REGULAR MESSAGES
    def on_message(self, result, **kwargs):
        if result is None:
            return
        sentence = result.channel.alternatives[0].transcript
        if len(sentence) == 0:
            return

        # Print the transcript
        print("TRANSCRIPT: ", sentence)

        # Save the transcript to a file
        with open(transcript_file_name, "a") as outfile:
            outfile.write(f"You: {sentence}\n")

        # Send the transcript via the websocket connection to the frontend
        send_fn(text_data=json.dumps({"transcript": sentence}))
        print("Attempting to check blocking")

HTTP GET /api/transcript/index.html 200 [0.01, <IP_ADDRESS>:60312]
WebSocket HANDSHAKING /listen [<IP_ADDRESS>:60320]
WebSocket CONNECT /listen [<IP_ADDRESS>:60320]
Accepted connection
TEXT DATA RECEIVED  {"name":"Keane","date":"4_1_2024"}
TRANSCRIPT:  Alright.
Attempting to check blocking
TRANSCRIPT:  You have connected
Attempting to check blocking
TRANSCRIPT:  and
Attempting to check blocking

(Console on broswer)

I don't think I can change the send function because it is an inherited method. I can override it however but I am not sure how that would integrate with the Deepgram callback. Do you have any suggestions for this ?

I just noticed that you are using the async client. You need async awaits on your call back functions and also on your send function.
Please see the example below
https://github.com/deepgram/deepgram-python-sdk/blob/main/examples/streaming/async_http/main.py

Hello @dvonthenen
Making on_message async and prepending await to send_fn does not work unfortunately. It simply won't send anything and now won't even write to the file.
I saw the example that you listed and in that on_message was async and I tried to do it that way but the aforementioned problem still stands. I don't believe it is a problem with the index.html file either because I am console logging any message the server sends back and the server does not send anything back - neither in the current implementation nor with async and await for the on_message and send_fn.

So I am trying to understand this, it looks like from the above logging you are getting the transcription back from deepgram?
TRANSCRIPT:  Alright.
Attempting to check blocking
TRANSCRIPT:  You have connected
Attempting to check blocking
TRANSCRIPT:  and
Attempting to check blocking

What is exactly the problem then?

Yes, but I want to send the these transcript sentences back to the client via the Websocket connection. I made a send_fn for this but the client receives no data.
I need to send data back to the client using the same websocket connection. Is there any workaround for this in the callback mechanism.

ok, so there isnt a problem with SDK and the transcription is working just fine.
You might need to debug your code then. can you put print statements inside your send_fn function?

first, if it's actually getting called, like first on enter...

de myFunc(data):
    print("enter...")
    // so on...

then print statements between key statements to see where it is falling apart inside your function.

de myFunc(data):
    print("before someImportantCall...")
    result = someImportantCall()
    print("after someImportantCall...")

   // your code continues on....

    print("before anotherImportantCall...")
    result = anotherImportantCall()
    print("after anotherImportantCall...")

Deepgram side of things works just fine. The user is trying to find help with the code they wrote.
I would probably take the problem to Django support and see if they can help with it.


Issue when compiling

Installed MagicSDK via Cocoapods
iOS Target SDK: 14.0

Getting the following error:
"Compiling for iOS 8.0, but module 'CryptoSwift' has a minimum deployment target of iOS 9.0"

Hi @codingalex
You may add this code snippet to the end of your file to eliminate the error.
post_install do |installer|
  installer.pods_project.targets.each do |target|

    # overwrite web3 packages to change deployment target to 9.0
    if ['Web3'].include? target.name
      target.build_configurations.each do |config|
        config.build_settings['SWIFT_VERSION'] = '5.3'
        config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
      end
    end
  end
end

A breaking version will be released to resolve the issue later on. Please let me know if you have any issue after adding this code snippet

Thanks! I added the code to the Podfile but when importing the SDK, I get the following error:
Failed to build module 'MagicSDK' from its module interface; it may have been damaged or it may have triggered a bug in the Swift compiler when it was produced

Just release a version of 2.0.0. Could you try it out? Please reply in this thread if it still doesn't work for you.

That fixed the issue. Thanks a lot!


remove useless code for generating .zbr-test-run-id

as only https://github.com/zebrunner/entrypoint/issues/10 is fixed we don't need anymore functionality which generate .zbr-test-run-id file for reference and attaching html/xml reports to launch. Milestone still TBD as related ticket should be fixed first!

PR
https://github.com/zebrunner/python-agent-robot/pull/7
TEST
Project repository no longer has .zbr-test-run-id file


An array of Node as [tree] or allow to hide the headers.

Its me again :) Hope you don't mind
const taskTree: Node<Task>[] = [{... }, {... }, ...];
Would be great if your module allowed to plug in an array of Nodes or allow to hide its headers because there's currently no way to have several nodes in the root level (or maybe I'm wrong?)
example usecase:

Hi @leawp , absolutely I don't mind! This project is still in its early stage, so all contributions are welcome!
You're right, there currently is no way to have more than one root node, but I agree that it would definitely be a valid use case. I'll definitely include support for this in the next release (which should come out shortly).

Great! Thanks. Are you accepting pull requests? I could probably work on something on the next weekend. If you add the array support then I could maybe add pagination or something since its related. Thanks again 👍


Parse error in fetched certificate propagates to CLI

pyhanko sign addsig --field signature1 --with-validation-info --use-pades pkcs12 output.pdf signed.pdf  emudhra.pfx --passfile password.txt
this above is the whole command.
which produces the following error.
`2021-12-04 18:54:37,804 - pyhanko.cli - ERROR - Generic processing error.
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/common_utils.py", line 145, in queue_fetch_task
wait_event: asyncio.Event = running_jobs[tag]
KeyError: 'http://www.e-mudhra.com/repository/cacerts/doccl2.crt'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/pyhanko/cli.py", line 80, in pyhanko_exception_manager
yield
File "/usr/local/lib/python3.9/site-packages/pyhanko/cli.py", line 831, in addsig_simple_signer
generic_sign_pdf(
File "/usr/local/lib/python3.9/site-packages/pyhanko/cli.py", line 841, in generic_sign_pdf
result = signers.PdfSigner(
File "/usr/local/lib/python3.9/site-packages/pyhanko/sign/signers/pdf_signer.py", line 1220, in sign_pdf
result = asyncio.run(
File<EMAIL_ADDRESS>line 44, in run
return loop.run_until_complete(main)
File<EMAIL_ADDRESS>line 642, in run_until_complete
return future.result()
File "/usr/local/lib/python3.9/site-packages/pyhanko/sign/signers/pdf_signer.py", line 1272, in async_sign_pdf
await signing_session.perform_presign_validation(pdf_out)
File "/usr/local/lib/python3.9/site-packages/pyhanko/sign/signers/pdf_signer.py", line 1419, in perform_presign_validation
signer_path = await self._perform_presign_signer_validation(
File "/usr/local/lib/python3.9/site-packages/pyhanko/sign/signers/pdf_signer.py", line 1476, in _perform_presign_signer_validation
await validator.async_validate_usage(key_usage)
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/init.py", line 283, in async_validate_usage
await self._validate_path()
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/init.py", line 127, in _validate_path
paths = await self._context.certificate_registry.async_build_paths(
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/registry.py", line 425, in async_build_paths
await self._walk_issuers(path, paths, failed_paths)
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/registry.py", line 477, in _walk_issuers
async for issuer in self.fetcher.fetch_cert_issuers(path.first):
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/requests_fetchers/cert_fetch_client.py", line 69, in fetch_cert_issuers
fetched_certs = await self.fetch_certs(
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/requests_fetchers/cert_fetch_client.py", line 56, in fetch_certs
return await self._perform_fetch(url, task)
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/requests_fetchers/util.py", line 37, in _perform_fetch
return await queue_fetch_task(
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/common_utils.py", line 176, in queue_fetch_task
return _return_or_raise(result)
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/common_utils.py", line 181, in _return_or_raise
raise result
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/common_utils.py", line 163, in queue_fetch_task
result = await async_fun()
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/requests_fetchers/cert_fetch_client.py", line 55, in task
return list(results)
File "/usr/local/lib/python3.9/site-packages/pyhanko_certvalidator/fetchers/common_utils.py", line 38, in unpack_cert_content
yield x509.Certificate.load(response_data)
File "/usr/local/lib/python3.9/site-packages/asn1crypto/core.py", line 230, in load
value, _ = _parse_build(encoded_data, spec=spec, spec_params=kwargs, strict=strict)
File "/usr/local/lib/python3.9/site-packages/asn1crypto/core.py", line 5672, in _parse_build
return (_build(*info, spec=spec, spec_params=spec_params), new_pointer)
File "/usr/local/lib/python3.9/site-packages/asn1crypto/core.py", line 5568, in _build
raise ValueError(unwrap(
ValueError: Error parsing asn1crypto.x509.Certificate - tag should have been 16, but 13 was found
Error: Generic processing error.`

Hi @ghoshpushpendu, thanks for your interest in this project!
The issue is that the server hosting http://www.e-mudhra.com/repository/cacerts/doccl2.crt serves a PEM-wrapped certificate instead of a DER-encoded one, and announces it as application/x-x509-ca-cert. This is wrong for two reasons:

Certificate links in an AIA extension must point to DER-encoded certificates.
The MIME definition of application/x-x509-ca-cert also requires raw DER.

pyhanko-certvalidator is currently lenient w.r.t. the first requirement in that it also accepts PEM if the Content-Type header is text/plain or application/x-pem-file, but if the server gets both the encoding and the MIME type wrong, then you get a parse error. That's mostly intentional, but the fact that the parse error propagates to the CLI is a bug indeed. I'll look into addressing that.
In the meantime, you can manually download the certificate at http://www.e-mudhra.com/repository/cacerts/doccl2.crt and pass in the file using the --other-certs flag (or add it to other-certs in your validation context in the config file). From a validation logic point of view, those are equivalent.
Hope that helps :)

I did a bugfix release of pyhanko-certvalidator (version 0.18.1) that should fix this bug---see linked commit. Note that I didn't change the parse logic to accept PEM certificates with wrong MIME types; the fix merely ensures that parse errors resulting from such mishaps don't propagate outside of the validation handler.
In other words, you'll now get a regular PathBuildingError instead of a ValueError. In either case, the problem can be remedied by manually downloading the certificate and adding it as an untrusted certificate (--other-certs) to your validation context, as per my previous comment.
For further information, see

https://pyhanko.readthedocs.io/en/latest/cli-guide/signing.html#embedding-revocation-info-with-pyhanko (third paragraph)
https://pyhanko.readthedocs.io/en/latest/cli-guide/config.html#named-validation-contexts (if you want to configure the extra certificates in the config file)

Hope that helps; if not, feel free to reopen. :)

Hi @ghoshpushpendu, thanks for your interest in this project!
The issue is that the server hosting http://www.e-mudhra.com/repository/cacerts/doccl2.crt serves a PEM-wrapped certificate instead of a DER-encoded one, and announces it as application/x-x509-ca-cert. This is wrong for two reasons:

Certificate links in an AIA extension must point to DER-encoded certificates.
The MIME definition of application/x-x509-ca-cert also requires raw DER.

pyhanko-certvalidator is currently lenient w.r.t. the first requirement in that it also accepts PEM if the Content-Type header is text/plain or application/x-pem-file, but if the server gets both the encoding and the MIME type wrong, then you get a parse error. That's mostly intentional, but the fact that the parse error propagates to the CLI is a bug indeed. I'll look into addressing that.
In the meantime, you can manually download the certificate at http://www.e-mudhra.com/repository/cacerts/doccl2.crt and pass in the file using the --other-certs flag (or add it to other-certs in your validation context in the config file). From a validation logic point of view, those are equivalent.
Hope that helps :)

this resolves the error and successfully generates the certificate
but the purpose of using "--with-validation-info" is not getting fulfilled as the PDF is not automatically validate it when opened.

validation-contexts:     default:         other-certs: other.txt     special-setup:         trust: trust.txt         trust-replace: true         other-certs: other.txt

pyhanko sign addfields --field  1/1,1,100,100/signature1 sample.pdf output.pdf
pyhanko sign addsig --field signature1 --with-validation-info --validation-context special-setup pkcs12 output.pdf signed.pdf  emudhra.pfx --passfile password.txt

pyhanko sign addsig --field signature1 --style-name mystyle --with-validation-info --validation-context special-setup --use-pades pkcs12 output.pdf signed.pdf  emudhra.pfx --passfile password.txt
fixes the issue

but the purpose of using "--with-validation-info" is not getting fulfilled as the PDF is not automatically validate it when opened.

I'm not sure what you mean by this; --with-validation-info is only about including prefetched revocation data. A viewers decision as to when it validates a signature has little to do with that, and isn't something you can reliably control as a signer...
But maybe I misunderstood your point. Anyway, if your issue is resolved now, then I suppose it doesn't matter :)

but the purpose of using "--with-validation-info" is not getting fulfilled as the PDF is not automatically validate it when opened.

I'm not sure what you mean by this; --with-validation-info is only about including prefetched revocation data. A viewers decision as to when it validates a signature has little to do with that, and isn't something you can reliably control as a signer...
But maybe I misunderstood your point. Anyway, if your issue is resolved now, then I suppose it doesn't matter :)

When signing PDF using a valid certificate , I was not able to run revocation check every time viewer opens the PDF.
So the PDF was showing as at least one signature has an issue
I am also not sure but --use-pades does the job.
After adding --use-pades it shows signed every time I open the PDF from anywhere without any extra action as a viewer.

That's interesting. For reference: which PDF viewer are you using?
The difference between adding --use-pades and not using it is where the revocation information is stored. Without the --use-pades flag, pyHanko will put that information in the revInfoArchival attribute of the signature. With --use-pades it gets written to the document security store.

Adobe Acrobat Reader DC


Support Optionals in Case Expressions

coverage: 100.0%. remained the same
when pulling 43e2377ef0258e26c4fa123250c11545d286eecf on jeffgbutler:improve-case-statement
into b611ad87d661749e9992b1545e4289d29327641e on mybatis:master.


[docs] Emphasize how to avoid failing tests when migrating from v4 to v5

Helps address #31030

[x] I have followed (at least) the PR section of the contributing guide.

Thanks for this addition @dwjohnston! I'm going to suggest a revision just for the sake of grammar and style. 👍


Node3d variable returns error when populated with a separate node that has its own script.

Tested versions
v4.3.stable.mono.official [77dcf97d8]
System information
Edition	Windows 10 Pro Version	22H2 Installed on	09/11/2021 OS build	19045.5011 Experience	Windows Feature Experience Pack 1000.19060.1000.0
Issue description
With a node and its own script, is assigned as a Node3d variable in a different script attached to a different node, if you try and access information from that variable it will return "object reference is not set to an instance of an object " in unique situations. It appears as if an attached script can impede on the access of that scripts node information, when a different script from a different node trys to call on it.
Steps to reproduce

In C#
Create two Node3D nodes each with their own script (NodeA + ScriptA , NodeB + ScriptB).
Inside ScriptA, create a Node3D variable  (  [Export]public Node3D thing;  ) and populate it with NodeB via drag-and-drop in the inspector.
Inside ScriptA, create a loop that debug-prints the position of that variable (  Debug.WriteLine(thing.Position);  )
Inside ScriptB, create a useless loop.
Run: It should return an error on the position of the node.
Remove ScriptB from NodeB and re run. The error is alleviated and the  position is reported properly .

Minimal reproduction project (MRP)
attached : test_1.zip

Could you please provide an MRP?

Zip ready to run

ScriptB inherits from Node, not Node3D, and when populating the thing variable, it is type of ScriptB, not Node3D, and as Node does not have position, ScriptB won't have it either. That is my theory at least.

If  I understand your premise correctly, if a script is attached to a Node3D the attributes of the type "3d" are basically dumped and may/may not now be accessed vie the script.
i.e. if one wanted the position for a Node3D without a script, It could be retrieved from the  Node3D type. If the node had a script attached, the position must be cashed in the script and retrieved  from inside the script.
To test if the "3d" type is lost,  have ScriptB cash the position of NodeB as a variable inside itself, then try and access it from ScriptA  as a cashed Node variable instead of a Node3D.
What if one would like to move the node around and sleep the script? seams problematic even if successful.

no. it's about inheritance, a crucial part of OOP. a way too quick fix is simply writing ScriptB correctly, that is, replacing the line
public partial class  ScriptB : Node
with
public partial class ScriptB : Node3D
at the top, as you are planning to attach it to a Node3D, not a Node.
The only interesting quirk about Redot is the fact that you can at all attach a script inheriting from Node to any type of node, which might have some uses, but has this major side effect, and for that reason I would recommend avoiding doing this at all costs, or at the very least until you know what you are doing.
On a sidenote, you can do a funny little experiment: tell ScriptB to print it's own position. It won't even compile :P

Well there ya go.
I could have swore I had changed the inheritance type Node3D; I had changed many things trying to isolate the problem (and changed them back, etc)  Obviously I missed that.
Thanks for the sanity check, apologies for the waste of time.


Revert adding a callback to the Encoder

Related to https://github.com/dapperlabs/cadence-private-issues/issues/64
Depends on https://github.com/onflow/atree/pull/290
Description
Reverts #287. The original requirement of knowing the size of the slabs to be encoded can be achieved using https://github.com/onflow/atree/pull/290

[ ] Targeted PR against main branch
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work
[x] Code follows the standards mentioned here
[x] Updated relevant documentation
[x] Re-reviewed Files changed in the Github PR explorer
[x] Added appropriate labels

Codecov Report

Merging #291 (f2d7eb9) into main (82ce4cc) will decrease coverage by 0.07%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #291      +/-   ##
==========================================
- Coverage   69.16%   69.10%   -0.07%
==========================================
  Files          14       14
  Lines        7319     7314       -5
==========================================
- Hits         5062     5054       -8
- Misses       1625     1627       +2
- Partials      632      633       +1

Impacted Files
Coverage Δ

encode.go
80.64% <ø> (ø)

array_debug.go
54.16% <100.00%> (ø)

basicarray.go
53.55% <100.00%> (ø)

map_debug.go
55.50% <100.00%> (ø)

storable.go
65.57% <100.00%> (-2.61%)
:arrow_down:

storage.go
79.41% <100.00%> (-0.52%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Allow LuisRecognizer to recognize without turnContext

Fixes #4157
Do We Want This?
In the linked issue, there's some discussion about whether or not this change is wanted, but no resolution. Personally, I think this would be very useful, but I'm not happy with:

This being the only RecognizeAsync() method that doesn't use any telemetry. It could, but LUIS telemetry currently requires TurnContext, so it would necessitate more changes
There were quite a few methods/overrides that had to be added to get this to work, whereas it seems like a relatively simple request. I'm not super C# smart and don't work in the AI library much, so maybe there's a better way?

Description
Allows developers to call <LuisRecognizer>.RecognizeAsync(<utterance>) without providing TurnContext, giving them more flexibility integrating LUIS with their bot.

Im OK with the refactor and understand comes from a Customer request but this turns the package into a generic LUIS API wrapper.

Thanks for the feedback, @munozemilio. I think your question needs to be reviewed by the team. @EricDahlvang, @gabog, @johnataylor, @carlosscastro, do you have any comments about this?


Test @tinyhttp/session

tests are almost identical to Express session module, so there are references to source of their tests.

[ ] SessionManager(opts)

[ ] more coming soon....

[ ] getSession(req, res)

[x] session.save(cb)

[x] Should save session to store (src)
[x] Should prevent end-of-request save (src)
[x] Should prevent end-of-request save on reloaded session

[x] session.touch(cb) (src)
[ ] session.cookie (src)
[x] session.originalMaxAge (src)
and the rest of session properties :D

[ ] Cookie

[ ] new Cookie(opts)

[x] expires is falsy be default
[x] httpOnly is true by default

this list is in progress, so pls ping once finished writing those tests

Thanks, @talentlessguy! Could you please assign it to me?

Hey, @talentlessguy! I'm not sure if I'm correctly adapting Express' end-of-request tests — could you please give me some tips on how to test that using this library?

@alcar I think the test should look smth like this:
// ...
function shouldSetSessionInStore(store) {
  let _set = store.set
  let count = 0

  store.set = function set () {
    count++
    return _set.apply(this, arguments)
  }

  return count === 1
}

const store = new MemoryStore()
    const getSession = SessionManager({
      store,
      secret: 'test',
    })

const { fetch } = InitAppAndTest(async (req, res) => {
    const session = await getSession(req, res)
    session.hit = true
    session.save(err => err ? res.end(err.message) : res.end('saved')
})

const res = await fetch('/').then(() => expect(shouldSetSessionInStore(store).toBe(true))

const text = await res.text()

expect(res.status).toBe(200)

expect(text).toBe('saved')

Yeah, I was doing something similar, but set doesn't seem to be called, so count never goes up and, consequently, the test fails. Do you think there may be something missing in the implementation?

@alcar more like the shouldSetSessionInStore function works not as expected. set is called (I think?) but not inside of shouldSetSessionInStore
prob worth rewriting that helper function

Hmm, I see! Okay, I'll give that a try.
Just for reference, here is what I currently have:
it('should prevent end-of-request save', async () => {
  const store = new MemoryStore()

  const getSession = SessionManager({
    store,
    secret: 'test',
  })

  const { fetch } = InitAppAndTest(async (req, res) => {
    const session = await getSession(req, res)

    session.save((err) => {
      if (err) {
        return res.end(err.message)
      }

      res.end('saved')
    })
  })

  await fetch('/').expectStatus(200).expectBody('saved')

  shouldSetSessionInStore(store)
})

function shouldSetSessionInStore(store: MemoryStore) {
  const _set = store.set

  let count = 0

  store.set = function set() {
    count++

    return _set.apply(this, arguments)
  }

  assert.ok(count === 1, 'should set session in store')
}

I was also wondering why they do two consecutive requests and set a cookie in their tests :thinking:

The tests below pass, but they're basically only checking if .set was called once. I'm not sure if I understand what kind of behavior we're trying to test.
it('should prevent end-of-request save', async () => {
  const store = new MemoryStore()

  const _set = store.set

  let setCount = 0

  store.set = function set() {
    setCount++

    return _set.apply(this, arguments)
  }

  const getSession = SessionManager({
    store,
    secret: 'test',
  })

  const { fetch } = InitAppAndTest(async (req, res) => {
    const session = await getSession(req, res)

    session.save((err) => {
      if (err) {
        return res.end(err.message)
      }

      res.end('saved')
    })
  })

  await fetch('/').expectStatus(200).expectBody('saved')

  expect(setCount).toBe(1)
})

it('should prevent end-of-request save on reloaded session', async () => {
  const store = new MemoryStore()

  const _set = store.set

  let setCount = 0

  store.set = function set() {
    setCount++

    return _set.apply(this, arguments)
  }

  const getSession = SessionManager({
    store,
    secret: 'test',
  })

  const { fetch } = InitAppAndTest(async (req, res) => {
    const session = await getSession(req, res)

    session.reload(() => {
      session.save((err) => {
        if (err) {
          return res.end(err.message)
        }

        res.end('saved')
      })
    })
  })

  await fetch('/').expectStatus(200).expectBody('saved')

  expect(setCount).toBe(1)
})

@alcar we're trying to test whether the session is saved at the end of HTTP response
regarding session.save:

This method is automatically called at the end of the HTTP response if the session data has been altered (though this behavior can be altered with various options in the middleware constructor). Because of this, typically this method does not need to be called.

Hmm, so, if I understood correctly, the tests above are enough because they confirm that .set is being called once, which means that it's only called by us, and not automatically in the end of the request?

@alcar I think yes?

@talentlessguy, I've just opened a PR (#173) with some tests! I don't think I'll have time to work on the remaining ones for now, so perhaps we should let someone else pick them up :confused:

@alcar alright, will check for ur tests then but won't close this issue

I took the decision to delete @tinyhttp/session
the current implementation is buggy as hell and is too huge to maintain with all other modules
better use next-session. it works with tinyhttp pretty well: https://github.com/hoangvvo/next-session


Update readme

The steps specified in the readme is stale and should be reviewed and updated.

Hi, Joe! I just wanted to register my interest in trying this out. For some reason, I'm getting the error ModuleNotFoundError: No module named 'bragi.metric_generator'; 'bragi' is not a package; that's after installing the package (or trying) using this git URL. If you find the time to tinker with the startup instructions, I'll be eager to try them out.

Hi, @robinsloan! I missed this, but am glad you're interested in taking bragi for a spin. I'll find some time this week to figure out what went wrong.


Framebuffer colorType is not tested

We need a unit test for the different color type values.

And note that colorType does not work for MRT when I tested it.

Solved with PR #129


v1 Release

v1 is set to release as soon as the following are taken care of:
Update: For v1, our focus will be getting it ready for Manifest v3, everything else we'll handle later, otherwise this extension will never be released. 😅

[ ] https://github.com/trakt-tools/universal-trakt-scrobbler/issues/156
[ ] Create new logo to differentiate from traktflix

For after v1 is released:

[ ] Fix Amazon Prime region bug (or at least display a warning indicating that it only works in Latin America for now)
[ ] Improve usability by adding some options directly in the popup (or show a tutorial when first installing the extension)
[ ] Add option to do initial sync (I'm currently working on it)
[ ] Make update page to display to traktflix users when they update to the new extension

This issue is just to keep track of it.

Given the age of this, could you consider already building proper extension artifacts even before v1/release to store? And as far as I see the extension itself is working flawlessly, so I'd like to use it but must admit that I am too lazy to keep installing it every time I restart firefox.

I might just put it on the store with a 0.x.x version or something.

It's in the Firefox store: https://addons.mozilla.org/en-US/firefox/addon/universal-trakt-scrobbler/
The Chrome store only accepts extensions with Manifest v3, so I'm working on making it compatible to put it there.

Is it possible to make manifest v3 just a fork?
Because other browsers are not working good with it yet.

It's in the Firefox store: https://addons.mozilla.org/en-US/firefox/addon/universal-trakt-scrobbler/
The Chrome store only accepts extensions with Manifest v3, so I'm working on making it compatible to put it there.

Is it possible to make manifest v3 just a fork? Because other browsers are not working good with it yet.

I intend to keep both for now. So far it's been relatively easy to do that, so that it builds v3 for Chrome and v2 for Firefox.


Integration of pre-commit

I create this issue based on the discussion of #338 to provide a dedicated channel on the intrgration of pre-commit.
Here is a list of hooks we could use:

[ ] Base setup in #341
[ ] CMake format/linting: https://github.com/cheshirekow/cmake-format-precommit
[ ] Clang-format and other C++ analyzer: https://github.com/pocc/pre-commit-hooks
[ ] Some checks on the .rst files used for the docs: https://github.com/pre-commit/pygrep-hooks

@hofbi, you may be missing
add-apt-repository deb http://apt.llvm.org/focal/ llvm-toolchain-focal-15 main

Just for documentation. It seems that version 15 has no specific release as far as I can see in https://apt.llvm.org/focal/dists/
However, using add-apt-repository "deb http://apt.llvm.org/focal/ llvm-toolchain-focal main" solved the issue. Thanks for the hint.

It seems that version 15 has no specific release as far as I can see

Yes, even version 14 was not released yet 😉 But, 15 is the first one that is able to format the code to the form that is not totally wrong ;-)


Ensure ex-data is always presentable

Ensure exceptions with ex-data are always inspectable.
Fixes #622. Fixes #616. Better fix for #586 than #587.

Since it's not wrapped in a result viewer, the notebook exception view can't resolve elisions in the ex-data now (before, we'd just print all the data with the inspect-wrapped-values trick. I'll see if I can resolve that easily

Found another case that needs to be handled, ex-infos with data and without a cause.


#8482: Add trace region in DRAM. Trace buffer is no longer preallocated

Resolves trace buffer corruption for multi-trace, where the intermediates of a previously run trace can corrupt the buffer for the current trace

Passing Post-Commit: https://github.com/tenstorrent/tt-metal/actions/runs/9454290805
Passing T3K: https://github.com/tenstorrent/tt-metal/actions/runs/9454288302


Remove assignee methods

While investigatin random test failure around
Investigation#assignee_team it became clear that Investigation#assignee= was swallowing  exceptions in the test.
I've removed it in favour of the real polymorphic associations that does not swallow exception belongs_to :assignable, polymorphic: true, optional: true (we could probably remove the optional: true but I'll keep this for a separate PR.
I've also address gross misuse of polymorphism and extract a couple method to the the User and Team polymorphic models. to remove redundant check to assignable.is_a?(User||Team) and let duck typing do the job.

@StupidCodeFactory we’re planning on renaming this to owner in #529 to match the term used in the UI.

@StupidCodeFactory we’re planning on renaming this to owner in #529 to match the term used in the UI.

Then that's a first step, you'll only have to rename the database fields assignable_type and assignable_id to owner_type and owner_id.


Added Go utilities functions

Added Go utilities functions

This repository is intended to show examples of simple operations with Couchbase, though I do not see any Couchbase-related examples here. Is this a partial commit?

opps sorry . It is just Utilities. I am deleting the pull request.

i cant see where i can delete my pull request . Just decline it.


Add build-sequence-summary.json

Machine readable version of the current markdown table
Useful in pipeline environments to filter skipped or prebuilt packages from a subsequent twine publish
Signed-off-by: Pris Nasrat<EMAIL_ADDRESS>

I've triggered a new release including this feature. Thank you for contributing!
https://github.com/python-wheel-build/fromager/releases/tag/0.36.0


Why there is no thumbnail support?

Just wondering why there is no support for image thumbnail?

What do you mean exactly? ICO files or are thumbnails not showing up in
explorer for you?
On Thu 14. Mar 2024 at 12:26, Andrejus @.***> wrote:

Just wondering why there is no support for image thumbnail?
—
Reply to this email directly, view it on GitHub
https://github.com/Wassimulator/CactusViewer/issues/32, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR5KALQMFA42DQOT6G3K2FTYYGCN7AVCNFSM6AAAAABEV5BHP6VHI2DSMVQWIX3LMV43ASLTON2WKOZSGE4DMMJQGY4DQNI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

On windows (explorer and desktop))  image files shows cactusviewer icon (i think) not a thumbnail as other apps i used and because cactusviewer  is just exe file, not installable like nomacs, so was wondering maybe there is a reason why it is not working/supported.

I just added an installer, let me know if this addresses the issue.

 When I removed your viewer with windows default viewer thumbnails still not working. Turns out it was windows feature that was turn off. Sorry for bothering and thanks for handmade style app.

No worries! Glad it was resolved for you one way or another. :)


Add RTL Support

@mustafaismail22 This looks nice. If I am not wrong, will it help with Arabic and related scripts which are right to left?
Also, good idea to keep a flag in the config.

Just merged it. Thanks for your contribution. Feel free to contribute more if you think there is something else you can improve too.

Yes, you are right 👍


feat: Ndef Format with optional NdefRecord provided

Is your feature request related to a problem? Please describe:

In practice when a user needs to load data onto the NFC tag and its not yet NdefFormatted you currently need to format it first and then do a second read (nfcTagScanned) event to be able to write the initial data that was intended since you can't currently format and write in the same event process.
Describe the solution you'd like:

Currently when the tag is formatted for Ndef its writing a blank Ndef record to the tag. If the Nfc.format() command could take a optional NdefRecord as a parameter it would allow for the initial data to be written in the same event process as the formatting process.
Describe alternatives you've considered:

Double tapping the tag but this isn't user friendly for the end user or alternatively allow for a write() after the format() command, currently this gives an error stating that the NFC tag isn't Ndef formatted yet
Additional context:

@easpinall Thank you for your request. Sorry for my late response. I am currently on vacation.
It should already be possible to do this in „one step“, see https://github.com/capawesome-team/capacitor-nfc/discussions/17#discussioncomment-6061724

Thanks, we have tried that and getting the same problem as @meisterm which is also depicted in the screen shot attached above.

I will check this and get back to you.

I just posted a comment to the discussion: https://github.com/capawesome-team/capacitor-nfc/discussions/17#discussioncomment-7326561
I close this issue as duplicate of https://github.com/capawesome-team/capacitor-nfc/discussions/17
We will continue there so I don't have to repost everything.


Admin permission prompt not showing + screen flickers when changing between tabs in settings

Main problem: Tasks that require admin permissions do not trigger the prompt when creating new files, pasting etc.
Another problem: When moving between tabs in the settings interface the window flickers
To reproduce main

Go to a folder that requires admin access
Try and create a new folder / file etc
No prompt is displayed

To reproduce 2nd issue

Open Files
Open settings
Move between options on left

System Information

OS Version:  Windows 10 20H2 19042.870
App version: v1.5

Duplicate of #2513.

Apologies I never seen this in my search!
How about the screen flickering?

@swolenutz1951 Can you upload a screen recording of that?

Not the best quality, but u can see a slight flickering on the right side.
On my end the flicker is a lot more prominent.
https://user-images.githubusercontent.com/81313695/112342685-57d03280-8cba-11eb-9d41-4f773d157aaa.mp4

@swolenutz1951 I see what you're talking about, it might just be a platform issue since we aren't doing anything special here. It might also have to do with the specifications of the device because I don't see the issue on my end.


Client freezing when teleporting to grand exchange

Describe the bug
Whenever I teleport to the GE after playing for a couple of minutes or hours my game freezes completely, I can click the sidebar with all the plugins but once I minimize the sidebar a copy of it freezes and covers some of the frozen game. I've recreated it and I think it happens because I click off the client and on to another tab while teleporting (I've tested again and it happens even if I don't click out).
To Reproduce
Steps to reproduce the behavior:

Be anywhere outside the GE
Wait a few minutes
Teleport back to the GE

Expected behavior
No freezing while teleporting to the Grand Exchange
Screenshots

Environment (please complete the following information):

OS: Windows 10
RuneLite version: <IP_ADDRESS>
Launcher version: 2.17

Additional context
https://pastebin.com/Kanrch1P

Issue was the new Roof Removal plugin, after disabling said plugin, the game stopped freezing when teleporting.

This should be fixed internally and working in our next release FYI


Unable to capture touch_state_data after CuEVM execution

Hello!
I want to see the results produced after the execution of CuEVM on the main branch. However, I can only output the world_state_data and the transaction, while the touch_state_data remains empty.

Hi, currently the touch state at that location (line 28)  is pre-execution. If you want to print it, you can try to print at line 42 in that code.
Please note that currently we do not output the state dump similar to geth yet, and printing state to stdout is not recommended as it will slow down the execution significantly.
For input and output state and interacting with CuEVM, we recommend you to use the library mode in python at the moment (only binary available, we will update the source soon):

Github Repo
Google Colab

Thank you for your response. I tried again and successfully achieved the desired result. This is a very meaningful project, and I look forward to your future updates.


Fix showing help message when “-h” is given as an input for an array (#149)

When argument is an array and no input is given but “-h”, if you throw an Error in Validate function, it prints error and short usage instead of help message.
'command -h'
This patch checks built-in flags before throwing a validation error.
Solves #149

Replace this paragraph with a description of your changes and rationale. Provide links to an existing issue or external references/discussions, if appropriate.
Checklist

[x] I've added at least one test that validates that my change is working, if appropriate
[x] I've followed the code style of the rest of the project
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary

Thanks for this, @ibrahimoktay!

@swift-ci Please test


wrong imports in templates in v2.0.0

Hi,
in
entity-template.java
and
entity-repository-test-template.java
you still use javax instead of jakarta...
import javax.persistence.Entity;
and
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
respectively.
This did not work at least for me together with Spring Boot 3.
I had to use jakarta.persistence...
Greetings and thank you for making available your library.
Hans-Peter

Thank you for letting me know. A fix is released now as version 2.0.1.


Slow boot time with a large repo size

Iroh has a very slow boot time, like more than 1 hour, when the node has a very large repo size.
This is likely due to disk access.  We should evaluate what happens at startup and see if we can make this faster.

In https://github.com/n0-computer/iroh/blob/main/iroh-bytes/src/store/flat.rs#L1205 there is a full scan of all partial and full entries on startup. This should be likely avoided, as this means a linear increase in boot time. I wonder if at this point having a DB or some more structure (to reference the metadata at least) makes sense, given this clearly does not scale anymore .

I started a version here that stores the overall entries in a redb DB: https://github.com/n0-computer/iroh/tree/perf-startup


Incorporate dimensionality validation in architecture editor

Created by: brollb
The architecture editor should incorporate dimensionality info (like http://nicodjimenez.github.io/DnnView/)

Created by: brollb
blocked by #173

Dimensionality of the data could be specified at each connection


Update actions dependencies

Codecov Report
Base: 81.70% // Head: 81.70% // No change to project coverage :thumbsup:

Coverage data is based on head (94da030) compared to base (33f1b28).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #166   +/-   ##
=======================================
  Coverage   81.70%   81.70%
=======================================
  Files          29       29
  Lines        2563     2563
=======================================
  Hits         2094     2094
  Misses        345      345
  Partials      124      124

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Create /var/lib/comin when bootstraping

INFO[0012] Cloning the repository 'https://framagit.org/ with rev '15ea3a9bb2fd3133f55cf8332ac8db889c21d39b'
ERRO[0012] Failed to save the state to '/var/lib/comin/state.json': 'open /var/lib/comin/state.json: no such file or directory'

Since the boostraping command has been removed, this issue is no longer relevant.


Qf 2598 django admin speed

Speed up django admin interface for large lists

Task linked: QF-2598 Enhance django admin interface

@suricactus thanks for your input - will implement.
What about indexing: ... index the fields you're filtering on for faster searches. You can add indexes to your models by adding the index=True attribute to your model fields ...
I see alot of CREATE INDEX ... on the db. Did you already consider this specifically when adding any filter and search options? Do you think this has optimization potential should be investigated?

@faebebin thanks a lot for your PR!
Sure, indexing is an ongoing project. I am adding indices as soon as I detect their absense. A lot of columns were added without thinking about the Admin performance. So yes, feel free to add indices where it is needed. Adding more indices for sure will speed up stuff, e.g. #539 was exactly doing this.


the code delete window.Modernizr will throw an error in IE8

it throws object doesn't support this action
see http://stackoverflow.com/questions/1073414/deleting-a-window-property-in-ie

may be our site or app should not support IE8, but we need to ensure modernizr's code won't break in old browsers, so that we can show a 'browser not support' message to user when tests not pass.


Add an initial cadence domain in the Docker image

IMHO Cadence domain is analogue of a database. Most official database images offer an option (usually an environment variable) to create a domain when the container is first started. This is mostly useful in development environments to avoid manual steps in the quick setup guide.
Something similar would be nice in case of Cadence as well.
Currently the only problem I see is there is no state in the container (which is not a problem per se), but there is no way to track whether the domain is created or not, other than in the cassandra database of course. However, there is no "ensure" option in the cadence CLI. So if the domain creation fails, where is no way to tell if it is because the domain already exists or for some other reason.
A possible solution would be adding an "ensure" command in the cadence CLI that creates the domain in an idempotent way (if necessary).

Duplicate of https://github.com/uber/cadence/issues/2343


How generate a Google graph from a date time csv file

Hello,
I'm totally newbie and need to generate a google graph from date time stamps in X axis and Temperature value in Y axis, something like this : https://jsfiddle.net/99guxm3b/4
I need the values to be parsed from a CSV file, this file with be automotically filled-in with datas every x minutes.
How should i format my CSV or TXT file to let that file readable in order to generate the lines accordlingly in the Google Graph function drawChart() ?
data.addRows([
[new Date(Year, Month, Day, Hours, Minutes, Seconds, Milliseconds), YaxisValue]
]);
or
data.addRows([
[new Date(Milliseconds), YaxisValue]
]);
Once CSV file properly defined , what function should i use to parse datas and generate the graph ?
If someone could show me the way to proceed from a jsfiddle.net example, i could help me a lot.
Regards,

You should report issues here not questions. Please use Stackoverflow to ask questions.

This lib doesn't deal directly with Google Visualization other than providing a simple demo. With that said, the parser has some more advanced capabilities that can be leveraged to properly prepare your input data.
If you were to use CSV you could store the values in the [new Date(Milliseconds), YaxisValue] format. Do parse toArrays() and input the resulting 2D array into the data.addRows.
To get the data from a file into a 2D array check out the Google Visualization Demo specifically lines 142-152.
Since the parser treats all data as text you'll need to add another step to cast the values to the correct types. That's where hooks become useful, specifically the onParseValue hook. The lib already includes a generic hook definition used to detect and cast scalar values:
$.csv.hooks.castToScalar
castToScalar: function(value, state) {
    var hasDot = /\./;
    if (isNaN(value)) {
      return value;
    } else {
      if (hasDot.test(value)) {
        return parseFloat(value);
      } else {
        var integer = parseInt(value);
        if(isNaN(integer)) {
          return null;
        } else {
          return integer;
        }
      }
    }
}

Use this as a template to create your own custom hook.
Since you already know the structure of the data you can erase the body of the hook that deals with type detection. Just make sure the function signature hook(value, state) is maintained. The state property is used to track the current row/col, and the value is the value currently being parsed -- this is what you'll need to cast and return.
Here are the properties of the state object.
state: {
  rowNum: 1,
  colNum: 1
}

So, to properly convert your data add conditionals for if(rowNum === 1) and if(rowNum === 2). When you're done defining the callback hook assign it to the onParseValue property of the parser definition as seen in lines 142-152 of the demo.
When the parser spits out a 2D array it should contain the data cast to the correct types. Simply, use it at the data source for your graph and it should just work.


Make reqwest an optional dependency

With this PR, reqwestis an optional dependency. It is still a default feature, and it is also used from the dev profile.
The parts in the code that use reqwest are compiled either if the relative feature is used or if cfg(test). However, there is still an issue if tests runs with --no-default-features, because test_suite is an integration test, therefore the test feature is not enabled and many tests fail.
If this behavior must be fixed, I am a bit unsure about the best solution. Surely one of them is making the tests inside the suite aware of the availability of reqwest in order to be automatically skipped, but I think that there should be a better way to handle the situation.
Closes #137

Awesome @dodomorandi !
Thank you very much for implementing this! :) I will make a new release in a few days


Added blurb

Added a blurb for the language
[Issue #552]

Thanks @jackhughesweb !! Succinct and well-put.


Overdrive not working from the macro bar for player

Hey folks,
So my Inventor player dragged the Overdrive action from the Actions tab of their character sheet down to their macro bar, but when they click it on the bar, they get an orange bar at the top of the screen saying they don't have permission.
If they click it directly from the character sheet, it works fine, and puts the Overdrive action into the chat log.
If I (as GM) do the process, it works fine for me whether it's the character sheet or the macro bar.
In my User Permission settings, players already have "Use Script Macros" checked.
No error shows up in the console when the player does this; and I have tried with all my modules disabled, with no change.
It just seems that if the player wants to run that Overdrive action from their macro bar, they cannot.

What does the body of the macro look like?

It's a script, and it has this in it:
game.pf2e.rollItemMacro("0TD8c8AuUO3us2yi");

Do they in fact have an item with that ID? It sounds like they made a macro directly from the compendium.

My player said that he dragged id directly from his PC sheet to the macro bar.  I wasn't beside him, so I can't say that for an exact surety, but I confirmed with him multiple times that was what he was doing, and he said yes.

Just went over to my friend's house today.  Confirmed that all he is doing is dragging the action from the actions tab of his sheet to the bar at the bottom.  From there, it will not work.  If he clicks it on his sheet, it works fine.  But will not work from the bar.


nixos/chromium: revert having programs.chromium.enable insert pkgs.chromium into the system closure

Description of changes
This pull request reverts the changes of https://github.com/NixOS/nixpkgs/pull/333240 and https://github.com/NixOS/nixpkgs/pull/334012 as per https://github.com/NixOS/nixpkgs/pull/333240#issuecomment-2290112770
Putting chromium in the system closure by enabling the module breaks previous expectations of module users. Previously, this would create policy files for chromium, google-chrome and brave as chromium based browsers.
Use cases relating to a browser other than chromium directly as well as only using home-manager's module system to configure other aspects of a chromium package (various use cases require overriding inputs to the chromium derivation) were not covered by this breaking change.
More design is needed before having policy and package options coexist properly in this module.
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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/)
24.11 Release Notes (or backporting 23.11 and 24.05 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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Use cases relating to a browser other than chromium directly... were not covered by this breaking change.

That's incorrect, that's what the .package option was for.


generate a json-schema file

it'd be nice to generate a json schema file so we can include support for kapp inside tools like this: https://github.com/gorkem/vscode-k8s/ so that we can get automatic completion and validation in VS Code / Che / Eclipse.
I wonder if we maybe need to add a line like:
kind: App

to make it easier to know what schema to use in the IDE plugin?

since the schema is gonna change, I'm hoping we can automate the generation of the schema as part of the build from the source - am sure the kubernetes project does something like this for its swagger stuff?

For reference:

Kubernetes JSON Schemas https://github.com/garethr/kubernetes-json-schema
OpenShift JSON Schemas https://github.com/garethr/openshift-json-schema
Tool to create json schema from OpenAPI https://github.com/garethr/openapi2jsonschema
Writing OpenAPI (fka Swagger) Specification https://apihandyman.io/writing-openapi-swagger-specification-tutorial-part-1-introduction/
OpenAPI Specification https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md
Validate your Kubernetes configuration files, supports multiple Kubernetes versions https://github.com/garethr/kubeval

We need to figure out how do we create a swagger API or openAPI.

@surajssd Thanks for recording all the links here. Will be helpful.

BTW here's the project which we use to generate Java DTOs & JSON Schemas for kubernetes and openshift
https://github.com/fabric8io/kubernetes-model - though its Java centric; there's probably an easier way in golang to go straight from the go code -> json schema

Right now the work is being done in https://github.com/surajssd/kedgeSchema
It can generate the schema but not sure if the schema is complete or correct

removing the image field
$ cat ./example/db.json
{
  "name": "database",
  "containers": [
    {
      "name": "db",
      "env": [
        {
          "name": "MYSQL_ROOT_PASSWORD",
          "value": "rootpasswd"
        },
        {
          "name": "MYSQL_PASSWORD",
          "value": "wordpress"
        }
      ],
      "envFrom": [
        {
          "configMapRef": {
            "name": "database"
          }
        }
      ]
    }
  ],
...

trying to validate
$ jsonschema -F "{error.message}" -i ./example/db.json ./configs/appspec.json
u'image' is a required property

errors out

changing the field type of name
$ cat ./example/db.json
{
  "name": 1,
  "containers": [
    {
...

errors out as:
$ jsonschema -F "{error.message}" -i ./example/db.json ./configs/appspec.json
1 is not of type u'string'

The file configs/appspec.json is the schema for kedge if I am not mistaken.

@surajssd This is a great start. We should break this issue into multiple issues and have checklist. WDYT?

@surajssd This is a great start. We should break this issue into multiple issues and have checklist. WDYT?

Yes I think so we can create a checklist to do that

[ ] Find the right place to place this jsonschema generation code
[ ] Put some explanation of how this generation works
[ ] Everytime we update anything in spec.go there has to be a parallel update in the base schema.
[ ] What K8s version do we base off of?
[ ] Versioning of the jsonschema

could we create new subcommand  for generating current jsonschema?  Something like kedge jsonschema that will output json schema to stdout?

how will #119  impact Json schema generation?

@kadel not sure how it will impact the jsonschema I wil need to find that because now we won't have one struct but multiple ones, so can't say anything now!

We need to make sure the generated json schema are stored as artifacts some where in the repository. And this file should be generated by CI for every release for now.

Find the right place to place this jsonschema generation code

Generation code resides in https://github.com/kedgeproject/kedge-jsonschema

Put some explanation of how this generation works

The repo has documentation of how to generate the configs, also the way code works can be understood by reading comments in code

Everytime we update anything in spec.go there has to be a parallel update in the base schema

This needs to be done filed an issue for this one https://github.com/kedgeproject/kedge/issues/280

What K8s version do we base off of?

right now it is based on k8s 1.7 https://github.com/kedgeproject/kedge-jsonschema/blob/master/scripts/k8s-release

Versioning of the jsonschema

this needs to be evaluated

Is there a place where I can find JSON schema for the latest release?

@kadel here:
https://github.com/kedgeproject/json-schema/tree/master/schema


Bug/dnn 6739bis

float.Parse() should always be Culture Neutral

this contains a number of unrelated commits - please update the commit (i.e. rebase or clean the branch)

And a new JIRA needs to be created - as this was not part of the initial problem.


Documentation cleanup

Various small improvements to the documentation.

Hey @siligam, I fixed the typo, thanks. Go ahead and push "approve" in the reviewer mode, and I'll put it in.


Make Godot Physics 3D constraint solving more deterministic

Godot version:
Master
OS/device including version:
n/a
Issue description:
PR #44112 has improved determinism for constraint solving in Godot Physics 2D.
A similar patch needs to be applied to Godot Physics 3D to make things consistent.
Note: Performance needs to be investigated too, as it seems this patch causes some slow down in physics steps in some cases.
Steps to reproduce:
n/a
Minimal reproduction project:
n/a

@narcissawright Can you upload a minimal reproduction project somewhere?
Note that there are no plans to make GodotPhysics 100% deterministic (and godot-jolt is not 100% deterministic either).

@narcissawright Can you upload a minimal reproduction project somewhere?
Note that while we welcome efforts to improve determinism, there are no plans to make GodotPhysics 100% deterministic (and godot-jolt is not 100% deterministic either).

Sure here is the test project. Uses left joystick input (device 0) to move, once the player capsule touches the blue goal, it then replays all the inputs and compares each frame. Sometimes when the player object passes over the floor triangles the collision result is different, and if so it will stop replaying and simulate that frame over and over, printing the differing results.
godotphysics3D_nondeterminism.zip


Make update_in_place opt-in (true by default)

Due to the codesign issues being redirected here SwiftUI Previews will crash in Xcode (using rules_xcodeproj) with
Exception Type:  EXC_BAD_ACCESS (SIGKILL (Code Signature Invalid))

This happens only in vendored_xcframeworks that already provide the slices I need for Apple Silicon so planning to conditionally disable this update_in_place logic only in "SwiftUI Previews" builds.
More generally how are we supposed to handle this codesign errors in Debug builds where a provisioning_profile is not set? My suggestion is to allow this conditional behavior while we discuss this, happy to file an issue if needed.

I wonder if theres arm64_sim slice why it's running it through this in the first place.

The internal dep contains these two slices in vendored_xcframeworks:
                    "identifier": "ios-arm64",
                    "platform": "ios",
                    "platform_variant": "",

                    "identifier": "ios-arm64_x86_64-simulator",
                    "platform": "ios",
                    "platform_variant": "simulator",

So IIUC it is supposed to hit this code path since import_middleman is created.

The other potential is it might fit better to just give them an ad-hoc signature
It's not clear to me how we would sign this in a generic way if it's not a device build, what would be the inputs to codesign?

I was more of thinking since it was a platform_variant simulator it doesn't need to be called - do you see what I mean? Othwerwise could try to do a force'd ad-hoc signature sans identity.

Closing in favor of https://github.com/bazel-ios/rules_ios/pull/769


Feature request: Hide scrollbar in iframe-* layout.

Is your feature request related to a problem? Please describe.
Hidden scrollbar from iframe (in iframe-* layout),
or Markdown code section (seems useless?)
Describe the solution you'd like
An option in iframe-* layout.
Describe alternatives you've considered
A hack for overflow the scrollbar element
iframe {
    height: 102% !important;
}

Can you share an example? Not sure what you are referring to

I think it is not necessary to add a new option for this. The following CSS can be a workaround:
<style>
iframe {
  height: 10000px !important;
  overflow: hidden !important;
}
</style>


apply for elevate?

After installing and configuring on macos, running "twe" shows "Fetching" then nothing appear.
Running "twe hi" to update the status i get:
"errors":[{"message":"You currently have Essential access which includes access to Twitter API v2 endpoints only. If you need access to this endpoint, you’ll need to apply for Elevated access via the Developer Portal. You can learn more here: https://developer.twitter.com/en/docs/twitter-api/getting-started/about-twitter-api#v2-access-leve","code":453}]}
I dug into twitter help but sounds there's no elevate plan anymore, and the free should be enough to post.
Any idea'

@micrem73 Thank you for reporting this.
It's because its API module Twii is using Twitter's API v1.1.
See https://github.com/LitoMore/twii/blob/89841eaabda4c3ab0daa23229e8bb6d36e3dc155/index.js#L15.
I will try to update it to v2.

Hi @micrem73 I just fixed the fetching issue. And the API is still using API v1. There is no need to upgrade to v2 for now.
But we can consider migrating to API v2 when we have more high-level features.

I rerun the install command.
Now on running "twe" i get:
mc@MicMac ~ % twe
/Users/mc/.nvm/versions/node/v16.13.0/lib/node_modules/twe/node_modules/conf/dist/source/index.js:90
throw new Error('Project name could not be inferred. Please specify the projectName option.');
^
Error: Project name could not be inferred. Please specify the projectName option.
at new Conf (/Users/mc/.nvm/versions/node/v16.13.0/lib/node_modules/twe/node_modules/conf/dist/source/index.js:90:23)
at file:///Users/mc/.nvm/versions/node/v16.13.0/lib/node_modules/twe/src/settings.js:22:14
at ModuleJob.run (node:internal/modules/esm/module_job:185:25)
at async Promise.all (index 0)
at async ESMLoader.import (node:internal/modules/esm/loader:281:24)
at async loadESM (node:internal/process/esm_loader:88:5)
at async handleMainPromise (node:internal/modules/run_main:65:12)

OK, let me check.

@micrem73 This should be fixed. Please upgrade with:
npm i -g twe@latest

BTW, feel free to share your thoughts about this project.
I'm thinking about spending more time on this project and would like to gather some user feedback.
Thank you.

Thanks for your prompt support.
Now the previous error is fixed running "twe", but this other message appears:
✖ [{"message":"You currently have access to a subset of Twitter API v2 endpoints and limited v1.1 endpoints (e.g. media post, oauth) only. If you need access to this endpoint, you may need a different access level. You can learn more here: https://developer.twitter.com/en/portal/product","code":453}]

@micrem73 You need to go to Twitter Developer Portal and re-created an Elevated app.

I will create a documentation to tell users how to create their own tokens later days.

Thanks. I deleted app and project, and recreate it. I see no ways to create it differently rather a "free" profile.

https://developer.twitter.com/en/portal/products/elevated
It is link work for you? You need to regenerate tokens once your app upgraded to Elevated.

I still fell into this loop time ago. This link redirect me to https://developer.twitter.com/en/portal/products where no mention of elevated is present. I'm aware now we are shifting to Twitter support rather than your sw, but all this confusion from them really sucks.


Repo sync for protected CLA branch

The pull request is created from master637466980860103479 to master to fix git push error for protected CLA branch

@ghogen : Thanks for your contribution! The author(s) have been notified to review your proposed change. @evanwindom

@ghogen : Thanks for your contribution! The author(s) have been notified to review your proposed change. @evanwindom


Enhance the behavior of Switch component

🔗 Linked issue

❓ Type of change

[ ] 📖 Documentation (updates to the documentation, readme or JSdoc annotations)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[x] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

Add  a named slot <slot name="thumb" />  to enable the injection of icons inside  the thumb
Update documentation to add usage of thumb named slot to inject icons inside the thumb

📸 Screenshots (if appropriate)

📝 Checklist

[x] I have linked an issue or discussion.
[x] I have updated the documentation accordingly.

Hi, Thanks
Before merging, please run
pnpm build:registry

Command in apps/www directory

@sadeghbarati done!


chore: remove redundant data availability header

The used version of this struct is in the celestia-app repo. This removes two other areas where the proto message is declared

I think technically breaking because removes something from the public API so modifying PR title to include !.


Golden Armor texture

The question
Hello, Im using your mod and trying to make a texture for golden armor, but somehow I can't seem to apply the texture on golden armor, the issue occures in properties
type=armor
items=golden_boots
texture.golden_layer_1=assets/minecraft/optifine/cit/slimefun/magical_armor/bee_armor/layer_1
nbt.CustomModelData=2200565

I also tried renaming everything to leather or even iron to try if the issue only happens with golden armor and yes, after renaming to iron or leather the texture works without any problem,
So, my question is,
Is there any issue with applying texture on golden armor?
Edit: using mc version 1.20.4 + latest released version of mod (1.1.5+1.20.4)
Checklist

[X] I checked the issues(both open and closed) and could not find a duplicate of my question

it must be gold not golden, my bad, didnt know that, mb
example
texture.gold_layer_1...


Add support for restore-keys with caching

See Matching a cache key and actions/toolkit/cache#restore-cache.

That's already possible?

What's the use case here?

The use-case is to leverage the cache to try and speed up builds. If a cache doesn't exist for the exact cache-key provided, then the workflow can load an existing cache that matches the restore-key prefix. This eliminates the need to freshly download each dependency for each workflow build (for git sources this means the git pull just verifies there is nothing new to download; if there are changes, it just needs to download the deltas).
In theory, it could also be used to avoid recompiling bits of code that have not changed, however that would be build system specific, so I'd say its a bit out of scope for this request.

I mean that's what cache-key option provides for you already. The restore keys are hardcoded to the flatpak-builder- & flatpak- along with the cache-key that you define. The reason why we allow you to set one is because the action keeps complaining that an action already defined this cache key which is completely wrong (an issue is already open on the cache action side) and we suggest people to assign it to flatpak-$git-commit-sha to avoid the issue.
I don't see what else we should provide

I am going to assume the latest releases should cover everything you might need for improving caching. Please re-open if that is not the case


[Bug] Error on click action after applying filter in table widget

Error: Error occurred while evaluating trigger: TypeError: Cannot read property 'step' of undefined
Steps to reproduce the behaviour:

Drag and drop a table widget
Click action on the default data
Apply filter [steps + contains +2]
Now click on action
Observe the error is displayed

Important Details

Version: [Cloud / Self-Hosted vx.x]
OS: [e.g.MacOSX]
Browser [e.g. chrome, safari]
Environment [production, release, deploy preview]

@vivekverma2312 please review as a release blocker

@ashit-rath I am able to repro the issue on release so re-opening the issue.


Removes Snyk

As covered in our eng all hands yesterday, we decided to stick with FOSSA.

Weird, the snyk job is still running?

Also, I'm guessing we're already aware, but just in case, tests are failing (cc @jiyoontbd)

Weird, the snyk job is still running?

This is expected, once we merge it the checks will stop!


border radius not working

i've tried both border Bottom Left and Right Radius inside the HeaderImageScrollView, but still no result, i tested this on default navigation options on different headers and everything working fine, but this specific header scroll is having issues, i've tried inside a view, outside the headerimagescrollview, inside contentContainerStyle, inside style={} with a custom stylesheet, and nothing, i don't want to drop this awesome header and start all over again on a different component just because the radius is not showing, i've already spent an entire day figuring this out

I've solved this by adding a negative top margin identical to my border radius to my main content view.


How can I mangle using this plugin ? what should I pass in options ?

This doesn't work
.uglify({
      compress: {
        conditionals: 1,
        drop_console: 0,
        comparisons: 1,
        join_vars: 1,
        booleans: 1,
        loops: 1
      },
      mangle: {
        reserved:['require']
      },
   }

Hey~! May I see the rest of your task?

Sure
export async function release(taskr) {   await taskr     .source(${target}/.js)     .uglify({       compress: {         conditionals: 1,         drop_console: 0,         comparisons: 1,         join_vars: 1,         booleans: 1,         loops: 1       },       mangle: {         reserved:['require']       },       'mangle-props' : {         keep_quoted : 1       }     })     .target(target)   await taskr     .source(${target}/**/)     .rev({       ignores: ['.html', '.json', '.txt']     })     .revManifest({ dest: releaseTarget, trim: target })     .revReplace()     .target(releaseTarget)   await taskr     .source(${releaseTarget}/.html)     .htmlmin()     .target(releaseTarget)   await taskr     .source(${releaseTarget}/.html)     .shell(sed -i -- 's/TITLE/${site_const.title}/g' $file)     .shell(sed -i -- 's/CDN/${cdn}/g' $file)   await taskr     .source(${releaseTarget}/**/*.{js,css,html,png,jpg,gif})     .precache({ stripPrefix: ${releaseTarget}/ })     .target(releaseTarget) }

Thanks! What errors do you see?

none, but I don't see my function names / properties mangled .. so something is wrong

The @tarkr/uglify pkg is outdated as it's still using Uglify 2.x
You'll have to change the mangle config you have to use the 2.x config.
I'd first just use mangle:true to verify that it's working before adding in customizations.

Yep, mangle works thx! however --mangle-props i.e '--mangle-props' : true, doesn't

I've no idea 😬 I'm pretty sure mangle-props is only meant to be an object, while mangle can take multiple definition types.
Will close this for now, but updating (all) packages is on my TODO list.
Thanks!


Make get_text_edit() a const function

fixes #75773

You also need to update the cpp file.

You also need to update the cpp file.

As well as documentation (add a qualifier to xml manually or via --doctool).

It seems that you've been using the web UI to make the edits. You will have to squash your commits now (you can refer to this documentation). For this you will have to use a local version of git.

Thanks, and congrats on your first merged pull-request!


Inference on new users using BotRGCN

Hi authors, thanks for the nice work!
May I know if I have a trained model using BotRGCN, how I could handle new users in the inference phase?
For example, the new user does not exist in the original dataset, do I need to get all its n-degree neighbors and construct a graph first before I can use the model? Is there any recommended way of doing so?
Thanks!

Hi, thanks for your interest in our work! To enable the inductive inference, you do need to induce a subgraph. I recommend you to implement it with torch_geoemetric.NeighborLoader.


ATS 10.0.0 crashes with segmentation fault SIG 11

I am trying to rewrite a header for a video streaming website where i am using a header_rewrite plugin to just convert a origin server response of 4xx code to 200 and also add certain headers. This essentially is a preflight request. This is not important but after the request is accepted and after that the video starts streaming but after some time the traffic server restarts .
The crashlog is a SIG 11 : Segmentation Fault but after that I do not know how to resolve the issue.
Just Before the crash in traffic.out file shows the following and a crash report is also generated but i don't know how to read the crashlog.
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpTunnel.cc:1178 (producer_handler)> (http_redirect) [54] enable_redirection: [0 0 0] event: 104, state: 10
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpSM.cc:3062 (tunnel_handler_server)> (http) [54] [&HttpSM::tunnel_handler_server, VC_EVENT_EOS/TS_EVENT_VCONN_EOS]
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpSM.cc:3135 (tunnel_handler_server)> (http) [54] finishing HTTP tunnel
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <Http1ServerSession.cc:121 (do_io_close)> (http_ss) [93] session close: nevtc 0x2ad9801befa0
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpTunnel.cc:1344 (consumer_handler)> (http_tunnel) [54] consumer_handler [user agent VC_EVENT_WRITE_COMPLETE/TS_EVENT_VCONN_WRITE_COMPLETE]
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpSM.cc:3341 (tunnel_handler_ua)> (http) [54] [&HttpSM::tunnel_handler_ua, VC_EVENT_WRITE_COMPLETE/TS_EVENT_VCONN_WRITE_COMPLETE]
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpSM.cc:2716 (main_handler)> (http) [54] HTTP_TUNNEL_EVENT_DONE, 2301
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpSM.cc:3011 (tunnel_handler)> (http) [54] [&HttpSM::tunnel_handler, HTTP_TUNNEL_EVENT_DONE]
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpSM.cc:8486 (clear)> (http_redirect) [PostDataBuffers::clear]
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpSM.cc:470 (state_remove_from_list)> (http) [54] [&HttpSM::state_remove_from_list, EVENT_NONE/VC_EVENT_NONE]
[Jul 11 08:31:07.210] [ET_NET 4] DEBUG: <HttpSM.cc:7239 (kill_this)> (http_seq) [54] Logging transaction
[Jul 11 08:31:07.212] traffic_crashlo NOTE: crashlog started, target=26750, debug=false syslog=true, uid=175 euid=0
[Jul 11 08:31:07.213] traffic_crashlo NOTE: logging to 0x9fcb30
[Jul 11 08:31:07.368] traffic_crashlo ERROR: wrote crash log to /opt/trafficserver/var/log/trafficserver/crash-2022-07-11-083107.log
traffic_server: received signal 11 (Segmentation fault)
traffic_server - STACK TRACE:
/opt/trafficserver/bin/traffic_server(_Z19crash_logger_invokeiP9siginfo_tPv+0x8e)[0x4ea38e]
/lib64/libpthread.so.0(+0xf630)[0x2ad9668b0630]
/lib64/libc.so.6(_IO_vfprintf+0x4a79)[0x2ad96752e079]
/opt/trafficserver/lib/libtscore.so.10(_ZNK5Diags8print_vaEPKc10DiagsLevelPK14SourceLocationS1_P13__va_list_tag+0xe88)[0x2ad965436ef8]
/opt/trafficserver/lib/libtscore.so.10(_ZNK5Diags8error_vaE10DiagsLevelPK14SourceLocationPKcP13__va_list_tag+0x27)[0x2ad965437977]
/opt/trafficserver/lib/libtscore.so.10(_ZN10LogMessage14message_helperENSt6chrono8durationIlSt5ratioILl1ELl1000000EEEERKSt8functionIFvPKcP13__va_list_tagEES7_S9_+0x42)[0x2ad96546a4d2]
/opt/trafficserver/lib/libtscore.so.10(_ZN10LogMessage23standard_message_helperE10DiagsLevelRK14SourceLocationPKcP13__va_list_tag+0x55)[0x2ad96546ada5]
/opt/trafficserver/lib/libtscore.so.10(_ZN10LogMessage7messageE10DiagsLevelRK14SourceLocationPKcz+0x7d)[0x2ad96546b2cd]
/opt/trafficserver/bin/traffic_server(_ZN12LogFieldList11marshal_aggEPc+0x107)[0x69a437]
/opt/trafficserver/bin/traffic_server(_ZN16LogObjectManager3logEP9LogAccess+0x738)[0x6b3b98]
/opt/trafficserver/bin/traffic_server(_ZN6HttpSM9kill_thisEv+0x45c)[0x59133c]
/opt/trafficserver/bin/traffic_server(_ZN6HttpSM12main_handlerEiPv+0x20f)[0x5919ff]
/opt/trafficserver/bin/traffic_server(_ZN10HttpTunnel12main_handlerEiPv+0x331)[0x601de1]
/opt/trafficserver/bin/traffic_server[0x84a49e]
/opt/trafficserver/bin/traffic_server[0x84a5ce]
/opt/trafficserver/bin/traffic_server(_Z15write_to_net_ioP10NetHandlerP18UnixNetVConnectionP7EThread+0x82a)[0x850aaa]
/opt/trafficserver/bin/traffic_server(_ZN10NetHandler18process_ready_listEv+0x2d8)[0x839118]
/opt/trafficserver/bin/traffic_server(_ZN10NetHandler15waitForActivityEl+0x24a)[0x8393ba]
/opt/trafficserver/bin/traffic_server(_ZN7EThread15execute_regularEv+0x902)[0x8a3092]
/opt/trafficserver/bin/traffic_server(_ZN7EThread7executeEv+0x1c2)[0x8a3732]
/opt/trafficserver/bin/traffic_server[0x8a0e32]
/lib64/libpthread.so.0(+0x7ea5)[0x2ad9668a8ea5]
/lib64/libc.so.6(clone+0x6d)[0x2ad9675dfb0d]

so i did a gdb debugging for the crash and using bt in gdb i got
#0  response_get (this=) at /home/nischal/trafficserver/proxy/hdrs/HTTP.h:1388
#1  HttpTransact::HandleCacheOpenReadHit (s=0x2b5da8e4fc20) at HttpTransact.cc:2803
#2  0x000000000057a911 in HttpSM::call_transact_and_set_next_state (this=0x2b5da8e4fb20, f=) at HttpSM.cc:7534
#3  0x000000000058db41 in HttpSM::state_api_callout (this=0x2b5da8e4fb20, event=, data=) at HttpSM.cc:1620
#4  0x0000000000599f8b in HttpSM::set_next_state (this=0x2b5da8e4fb20) at HttpSM.cc:7576
#5  0x000000000057d6d5 in HttpSM::do_hostdb_lookup (this=this@entry=0x2b5da8e4fb20) at HttpSM.cc:4315
#6  0x000000000059a172 in HttpSM::set_next_state (this=0x2b5da8e4fb20) at HttpSM.cc:7877
#7  0x000000000058db41 in HttpSM::state_api_callout (this=0x2b5da8e4fb20, event=, data=) at HttpSM.cc:1620
#8  0x0000000000599f8b in HttpSM::set_next_state (this=0x2b5da8e4fb20) at HttpSM.cc:7576
#9  0x000000000058db41 in HttpSM::state_api_callout (this=0x2b5da8e4fb20, event=, data=) at HttpSM.cc:1620
#10 0x0000000000599f8b in HttpSM::set_next_state (this=0x2b5da8e4fb20) at HttpSM.cc:7576
#11 0x00000000005902b3 in HttpSM::state_cache_open_read (this=0x2b5da8e4fb20, event=1102, data=) at HttpSM.cc:2672
#12 0x0000000000591988 in HttpSM::main_handler (this=0x2b5da8e4fb20, event=1102, data=0x2b5da8e519f0) at HttpSM.cc:2736
#13 0x00000000006135e3 in handleEvent (data=0x2b5da8e519f0, event=1102, this=0x2b5da8e4fb20) at /home/nischal/trafficserver/iocore/eventsystem/I_Continuation.h:219
#14 HttpCacheSM::state_cache_open_read (this=0x2b5da8e51988, event=, data=) at HttpCacheSM.cc:118
#15 0x00000000007746cf in handleEvent (data=0x2b5d7c065880, event=1102, this=0x2b5da8e51988) at /home/nischal/trafficserver/iocore/eventsystem/I_Continuation.h:219
#16 CacheVC::callcont (this=this@entry=0x2b5d7c065880, event=event@entry=1102) at P_CacheInternal.h:650
#17 0x000000000076f45f in CacheVC::openReadStartEarliest (this=0x2b5d7c065880) at CacheRead.cc:996
#18 0x000000000074a54d in CacheVC::handleReadDone (this=0x2b5d7c065880, event=, e=) at Cache.cc:2289
#19 0x000000000074df89 in AIOCallbackInternal::io_complete (this=0x2b5d7c065a10, event=, data=) at /home/nischal/trafficserver/iocore/aio/P_AIO.h:122
#20 0x00000000008a195f in handleEvent (data=0x1d61b00, event=1, this=) at I_Continuation.h:219
#21 EThread::process_event (this=0x2b5d5c21a010, e=0x1d61b00, calling_code=1) at UnixEThread.cc:153
#22 0x00000000008a1f06 in EThread::process_queue (this=this@entry=0x2b5d5c21a010, NegativeQueue=NegativeQueue@entry=0x2b5d5cb60330, ev_count=ev_count@entry=0x2b5d5cb6032c,
nq_count=nq_count@entry=0x2b5d5cb60328) at UnixEThread.cc:188
#23 0x00000000008a291d in EThread::execute_regular (this=this@entry=0x2b5d5c21a010) at UnixEThread.cc:244
#24 0x00000000008a3732 in EThread::execute (this=0x2b5d5c21a010) at UnixEThread.cc:349
#25 0x00000000008a0e32 in spawn_thread_internal (a=0x1d5cba0) at Thread.cc:79
#26 0x00002b5d54e77ea5 in start_thread () from /lib64/libpthread.so.0


Terrain Control on Spigot 1.12 not working

Hi - I've had several reports that the current build here is not working as it was built on pre5 and not the final GA release of 1.12. Can you repackage it and the I can update Spigot's Compatible Plugins and my spreadsheet showing it is?  Thanks -Steve

I can also attest that TC does not work on Spigot 1.12, having updated a 1.11.2 server that had TC running to 1.12, newly generated terrain is purely vanilla.

@smmmadden @Jamdog Does build 182 work?

I see there were updates made to the resource here, but it doesn't appear it is ready yet for mainstream testing.

Fixed in PR https://github.com/MCTCP/TerrainControl/pull/542


Is it working now? And if not, does the string "Log date: xxx" appear on the log file when the next day has come?

NOPE
no new file, no new "log data line"
23:39:DEBUG:Flushing 0 client(s) output data...
23:39:DEBUG:Done flushing clients output data.
23:39:Garbage Collection: started.
23:39:Garbage Collection: done. 482 Objects accounted for.
23:39:World data saved   (../saves/sphereworld.scp).
23:39:Player data saved  (../saves/spherechars.scp).
23:39:Multi data saved   (../saves/spheremultis.scp).
23:39:Context data saved (../saves/spheredata.scp).
23:39:World save completed, took 0.3200 seconds.
23:59:DEBUG:Flushing 0 client(s) output data...
23:59:DEBUG:Done flushing clients output data.
23:59:Garbage Collection: started.
23:59:Garbage Collection: done. 482 Objects accounted for.
23:59:World data saved   (../saves/sphereworld.scp).
23:59:Player data saved  (../saves/spherechars.scp).
23:59:Multi data saved   (../saves/spheremultis.scp).
23:59:Context data saved (../saves/spheredata.scp).
23:59:World save completed, took 0.0460 seconds.
00:19:DEBUG:Flushing 0 client(s) output data...
00:19:DEBUG:Done flushing clients output data.
00:19:Garbage Collection: started.
00:19:Garbage Collection: done. 482 Objects accounted for.
00:19:World data saved   (../saves/sphereworld.scp).
00:19:Player data saved  (../saves/spherechars.scp).
00:19:Multi data saved   (../saves/spheremultis.scp).
00:19:Context data saved (../saves/spheredata.scp).
00:19:World save completed, took 0.0180 seconds.```

Can you try with the latest commit?

confirm workin - resolved
tested linux 64 debug build

NEW PROBLEM.
only this i written in the log
Log date: 2018/08/19 00:10:33
00:10:DEBUG:Flushing 0 client(s) output data...
Log date: 2018/08/19 18:28:36

not even the log file is created
actually is not created the correct file with correct date
but is created sphere1970-01-01.log
containing only the old ouptut with log file creation
tryed also with root and sphere also
only LINUX is affected
WINDOWS working correctly
Log date: 1970/01/01 01:00:00
16:16:DEBUG:PACKET FILTER: Hooked packet 0x2 with function updatecharacter.
Log date: 1970/01/01 01:00:00
16:24:DEBUG:PACKET FILTER: Hooked packet 0x2 with function updatecharacter.
Log date: 1970/01/01 01:00:00
16:30:DEBUG:PACKET FILTER: Hooked packet 0x2 with function updatecharacter.

little rectification:
also on windows have some misbehaviour
SO:
windows:
logdate & packet hook ->sphere1970-01-01.log
normal log -> sphereTODAYDATE.log
LINUX:
logdate & packet hook ->sphere1970-01-01.log
normal log -> file not created, no log..

Now it should work

confirmed working logging
WAIT confirm for file change on DAY change
disapeared the "Log date" line.

Confirm working newfile on change date.
The new file has also the "log date" at the beggining.
Lunching sphere on new day without log does NOT have "log date" at beggining, only on new file past rhe midnight.
Not perfect but it does his job.


Change to using cp instead of rsync

I tested this locally with docker-compose and all runs happily.


add: visual feedback on codeblock action clicks

Part of https://github.com/sourcegraph/cody/issues/1096
feat: add visual feedback when code block actions clicked

Add CheckCodeBlockIcon SVG
Update CodeBlockActionButtons to briefly show CheckIcon on click
Add timeouts to revert CheckIcon back to the original after 5 seconds
Display error message on insert click when no file or editor is opened.

Test plan

https://github.com/sourcegraph/cody/assets/68532117/e260369e-be2a-4d7c-8623-f34e2a74b1cd

Thank you @abeatrix!
I just updated the Figma with the states here.
For the copy button, instead of the check could we use this version of the copy icon I just made with a check in it?
<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="currentColor">
	<path d="M3,1L2,2v10l1,1V2h6.4l-1-1H3z"/>
	<path d="M7.8,14.7c-0.2-0.2-0.3-0.5-0.4-0.7H5V4h5l3,3v0.1c0.3,0.1,0.7,0.2,1,0.3V6.6L10.4,3H5L4,4v10l1,1h3C8,14.9,7.9,14.8,7.8,14.7z"/>
	<path fileRule="evenodd" clipRule="evenodd" d="M9.8,8.7c1.8-1.2,4.3-0.8,5.6,1.1s0.8,4.3-1.1,5.6c0,0,0,0,0,0c-1.8,1.2-4.3,0.7-5.5-1.1C7.5,12.4,8,9.9,9.8,8.7z M11.9,13.7l2.4-3.2l-0.8-0.6l-2.1,2.8l-1.3-1l-0.6,0.8l1.7,1.4L11.9,13.7L11.9,13.7z"/>
</svg>

For "Save Code to File…" we don't need to change it from what's on main.
For "Insert at Cursor", is it possible to change it to disabled when no file is open, rather than keep it there and show an error?

For the copy button, instead of the check could we use this version of the copy icon I just made with a check in it?

ok!

For "Save Code to File…" we don't need to change it from what's on main.

ok!

For "Insert at Cursor", is it possible to change it to disabled when no file is open, rather than keep it there and show an error?
That would require some structure change that i'm afraid I won't have capacity to work on before the oct release, as we currently create the buttons when the chat view is loaded and when new chat is added.


Usage with pwm

Hi,
I’ve been trying to use this plugin to expose a switch that works as an ’on/off’ device to control the backlight of a display. I’m currently using wiringpi with the commands ‘gpio -g pwm 19 0’ to turn it off and ‘gpio -g pwm 19 60’ for full brightness.
Is there a way to achieve this using this plugin?

No, it doesn‘t. But you may try my fork. It supports software PWM. The homebridge config has to look like this then:
{
"accessory": "GPIODevice",
"name": "Außenlicht",
"type": "Lightbulb",
"pin": 4,
"pwmMode": true,
"pwmValue": 1
}


chore: add dependabot assignees

Thank you for contributing to errors!
Please add a summary of your change
chore: add dependabot assignees
Does your change fix a particular issue?
Fixes #(issue)
Check list:

[ ] Mark if documentation changes are required.
[ ] Mark if tests were added or updated to cover the changes.

Codecov Report

Merging #13 (fffc35c) into main (39928f6) will not change coverage.
Report is 1 commits behind head on main.
The diff coverage is n/a.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
@@           Coverage Diff           @@
##             main      #13   +/-   ##
=======================================
  Coverage   97.37%   97.37%
=======================================
  Files           6        6
  Lines         534      534
=======================================
  Hits          520      520
  Misses         12       12
  Partials        2        2

Flag
Coverage Δ

unittests
97.37% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


feat(app): about Module Slideouts

closes #9305
Overview
This PR creates the About Module slideout to get the module's serial and version number and to update the module if an update is available.
(note: the new AlertItem is not created yet so using the old one for now)

Changelog

Created the AboutModuleSlideout component and test

Review requests

when you open the overflow menu on the module cards, click on About Module and you should get the module's information. It should work for all module cards regardless of the module. When heater shaker has an emulator, it should work for that as well.
you should see the title, the version number and serial number. And if an update is available, you should see the AlertItem banner and a button. (note: the AlertItem is still using the old alert item so designs don't match)
the button should update the module (using updateModule)
the link on the banner should just console.log - I am not sure where it should link to, the ticket didn't specify.
if run is in progress, the firmware update button should be disabled

There are several TODO comments left to remind us to go back and do them: see ticket https://github.com/opentrons/opentrons/issues/9545
Risk assessment
low

hey @shlokamin thanks for the video, its super helpful. each slideout should gray out all of the content behind it. if a user clicks anywhere on that gray area, it closes the modal. so in the scenario in the video, once you've opened a slideout, clicking to the left of the slideout should close it, and then a user would have to hover and click another item in the menu to see a different slideout.
does that make sense?

cool yeah makes sense thanks @emilywools! ill make a new ticket that describes that so we can merge what we have


controller logs aren't well formatted w/ ipld

controller logs to stdout look like
 INFO    controller      log/log.go:35   retrieval task  {"uuid": {}, "miner": {}, "payload_cid": {}, "car_export": {}, "status": "", "duration (ms)": 2347}

We should really serialize those in a better way

My commit message from https://github.com/filecoin-project/dealbot/pull/109 was lost since we squash-merged, unfortunately. Closing manually.


Tighten update conditions according to changes in the Api3ServerV1

Closes #351

Updated airnode-protocol-v1 package to version 1.1.2
Added new update condition that checks value of fulfillment data is changed compared to on-chain record
Because the feature updating Beacon sets with signed data is deprecated,  I refactored the current implementation to use the function updateBeaconSetWithBeacons.  Even though this implementation is working under e2e test, it is probably incomplete. Instead of removing Beacon set updates, I did this refactoring, because it'll be helpful while we are updating the function updateBeaconSets in near future.
Refactored e2e tests not to use deprecated update protocol PSP which is used while initializing test beacons
Renamed DapiServer to Api3ServerV1, thanks a lot @acenolaza

@acenolaza Lots of thanks for helping me to rename DapiServer -> Api3ServerV1.
Solved the e2e error. This is because adminRoleDescription is changed from DapiServer admin to Api3ServerV1 admin, address for the contract (apiServerV1) is changed.
Imo, it'd be better to merge this PR, after https://github.com/api3dao/airnode-protocol-v1 is rolled back and new npm package is published.

after https://github.com/api3dao/airnode-protocol-v1 is rolled back and new npm package is published

Changes have been rolled back so I guess all we need now is a new npm package to be published and start testing Airseeker using the new contracts rocket (Assuming that contracts have also been re-deployed)

Contract factories are missing in new package v1.2.2. I notified Burak about this issue. After this issue solving :-D we can merge this.