Clone appchannel response body to prevent GC

Description
Clone appchannel response body to prevent GC
Root cause:
I dump tcp packets of server and client side with wireshark

You can open the captured packets on wireshark by downloading this high_freq.pcapng.gz

Based on the investigation, actorservice returned correct json format response when proxy called actor and its method. but when dapr sidecar for actor client returned the corrupted response data to proxy client.
For example, two invocation requests, such as A and B, come to dapr sidecar for invocation in a row with almost several ns time gap, where A comes first and B next. actorservice returns the response for B and then response for A. but B's response body is same as A's response body, but no header change. B's headers are not changed and content-length is correct for B's original body.
so when proxy tried to deserialize B's response body, it was failed because B's response body was A's and B's data was truncated or B's data included garbage data.
Fix
To prevent GC from deallocating response body by ReleaseResponse before returning data over internal grpc channel, this fix clones the body payload and sends it to the internal grpc channel response.
https://github.com/dapr/dapr/blob/eaf2cad054fd918b382aab756f23870ab2966257/pkg/channel/http/http_channel.go#L106
Issue reference
#1833
Checklist
Please make sure you've  completed the relevant tasks for this PR, out of the following list:

[x] Code compiles correctly
[x] Created/updated tests
[x] Unit tests passing
[ ] End-to-end tests passing
[ ] Extended the documentation / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Specification has been updated / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Provided sample for the feature / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]

/ok-to-test

Let's perf this also.
Would it not be a better place for this to be in the app channel?
Meaning, to copy the response body to a new byte array before calling ReleaseResponse.

/ok-to-perf

Let's perf this also.
Would it not be a better place for this to be in the app channel?
Meaning, to copy the response body to a new byte array before calling ReleaseResponse.

no InvokeServiceReponse is the right place to clone the body. The response object must use copied object. otherwise, it will be GCed.

/ok-to-perf

Like I wrote above, we were misusing the http client.
The response body should be copied before ReleaseResponse. This is explained well here:
https://davidbacisin.com/writing/using-fasthttp-for-api-requests-golang

Let's perf this also.
Would it not be a better place for this to be in the app channel?
Meaning, to copy the response body to a new byte array before calling ReleaseResponse.

no InvokeServiceReponse is the right place to clone the body. The response object must use copied object. otherwise, it will be GCed.

Yeah this is the correct place, that's actually where I meant.

Like I wrote above, we were misusing the http client.
The response body should be copied before ReleaseResponse. This is explained well here:
https://davidbacisin.com/writing/using-fasthttp-for-api-requests-golang

Thanks for sharing the link, the article mentions following: about copying:
Copying of data is non-starter because it allocates memory when a main advantage of fasthttp is being able to avoid allocating memory.

Like I wrote above, we were misusing the http client.
The response body should be copied before ReleaseResponse. This is explained well here:
https://davidbacisin.com/writing/using-fasthttp-for-api-requests-golang

I also explained the detail in description with root cause. Fast http client allows user to release request and response object on demand.
We do not need to always clone the body of response but this particular case requires to clone body because we need to ensure that data is valid until gRPC response is sent to caller.
We have used this code from the beginning. But we could not discover this issue because we did not test it correctly under high load scenario. I assume high rps made GC work diligently. So that we can find this issue.
With this fix, I confirm that data corruption issue is resolved in user's code.

https://davidbacisin.com/writing/using-fasthttp-for-api-requests-golang

From the link above:
"Note that we must be sure not to use the response buffer after it has been released back to the pool in order to avoid data races."

Like I wrote above, we were misusing the http client.
The response body should be copied before ReleaseResponse. This is explained well here:
https://davidbacisin.com/writing/using-fasthttp-for-api-requests-golang

I also explained the detail in description with root cause. Fast http client allows user to release request and response object on demand.
We do not need to always clone the body of response but this particular case requires to clone body because we need to ensure that data is valid until gRPC response is sent to caller.
We have used this code from the beginning. But we could not discover this issue because we did not test it correctly under high load scenario. I assume high rps made GC work diligently. So we could find this issue.
With this fix, I confirm that data corruption issue is resolved in user's code.

Well, actually we did clone the buffer (the right way) in the beginning, this was the last commit to the file that still had the correct behavior before we changed it.
But that doesn't matter, it was a hard to find bug and it's great we caught it now, also kudos for fixing it quickly.

Like I wrote above, we were misusing the http client.

The response body should be copied before ReleaseResponse. This is explained well here:

https://davidbacisin.com/writing/using-fasthttp-for-api-requests-golang

I also explained the detail in description with root cause. Fast http client allows user to release request and response object on demand.

We do not need to always clone the body of response but this particular case requires to clone body because we need to ensure that data is valid until gRPC response is sent to caller.

We have used this code from the beginning. But we could not discover this issue because we did not test it correctly under high load scenario. I assume high rps made GC work diligently. So we could find this issue.

With this fix, I confirm that data corruption issue is resolved in user's code.

Well, actually we did clone the buffer (the right way) in the beginning, this was the last commit to the file that still had the correct behavior before we changed it.
But that doesn't matter, it was a hard to find bug and it's great we caught it now, also kudos for fixing it quickly.
This fix seemed to have also improved latency by ~9.1%.

Oh you're right. I made this bug while refactoring it. My bad.


Is this go-sdk will have the future plan to support other contracts?

Is this go-sdk will have the future plan to support other contracts?
Such as go-sdk to call:
https://raydium.io/pools/
pools. and do all the automation and data analysis by this go-sdk?

Hi there, I will support SPL program first.
I think it is also good to support the other contracts.
I will consider with it.

@yihau did you add support for SPL program?
What are the challenges you see to adding support for other contracts, like Raydium?


[Issue] Lock-on is unpredictable when multiple valid targets are available.

MC Version: 1.20.1
Loader: Fabric
Loader Version: 0.15.11
Mod version: 1.0.1
Issue: When using the lock-on key when multiple enemies are nearby, its difficult to predict which target will be selected, which makes it very difficult to make use of when in a crowd of enemies. This issue is lessened when you lower the lock-on range, but this is not ideal as it both limits the player to only locking on to nearby enemies, and also does not fully solve the issue.
Expected behavior: The lock-on should select whichever mob fits the critera of both being the closest to the players cursor, and then the closest to the player. I.e. the mod should check to see what mob the player is looking at, and then prioritize that mob, and then if two mobs share the same proximity to the cursor, it should check to see which is closer to the player physically.

Nevermind, I accidentally opened this issue on the original project. This is in reference to a fork.


Bump aes-gcm to v0.8; chacha20poly1305 to v0.7

These releases use the new cipher crate:
https://github.com/RustCrypto/traits/tree/master/cipher
Otherwise they're drop-in replacements.

Thanks!


lastConnection, firstConnection, knownConnection all throw and error

I am getting below error when trying to reuse connection. I suspect it is related to the issue of store that was reported previously:
Exception in thread "main" java.lang.NoSuchFieldError: READ_UNKNOWN_ENUM_VALUES_USING_DEFAULT_VALUE
        at com.fasterxml.jackson.databind.deser.std.EnumDeserializer.createContextual(EnumDeserializer.java:211)
        at com.fasterxml.jackson.databind.DeserializationContext.handlePrimaryContextualization(DeserializationContext.java:836)
        at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.resolve(BeanDeserializerBase.java:550)
        at com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCache2(DeserializerCache.java:294)
        at com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCacheValueDeserializer(DeserializerCache.java:244)
        at com.fasterxml.jackson.databind.deser.DeserializerCache.findValueDeserializer(DeserializerCache.java:142)
        at com.fasterxml.jackson.databind.DeserializationContext.findNonContextualValueDeserializer(DeserializationContext.java:644)
        at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.resolve(BeanDeserializerBase.java:539)
        at com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCache2(DeserializerCache.java:294)
        at com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCacheValueDeserializer(DeserializerCache.java:244)
        at com.fasterxml.jackson.databind.deser.DeserializerCache.findValueDeserializer(DeserializerCache.java:142)
        at com.fasterxml.jackson.databind.DeserializationContext.findRootValueDeserializer(DeserializationContext.java:654)
        at com.fasterxml.jackson.databind.ObjectMapper._findRootDeserializer(ObjectMapper.java:4956)
        at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4826)
        at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3817)
        at it.auties.whatsapp.util.Smile.readValue(Smile.java:93)
        at it.auties.whatsapp.controller.DefaultControllerSerializer$SmileFile.read(DefaultControllerSerializer.java:369)
        at it.auties.whatsapp.controller.DefaultControllerSerializer$SmileFile.read(DefaultControllerSerializer.java:356)
        at it.auties.whatsapp.controller.DefaultControllerSerializer.deserializeStoreFromId(DefaultControllerSerializer.java:208)
        at it.auties.whatsapp.controller.DefaultControllerSerializer.deserializeStore(DefaultControllerSerializer.java:196)
        at it.auties.whatsapp.controller.Store.of(Store.java:398)
        at it.auties.whatsapp.api.OptionsBuilder.<init>(OptionsBuilder.java:23)
        at it.auties.whatsapp.api.WebOptionsBuilder.<init>(WebOptionsBuilder.java:13)
        at it.auties.whatsapp.api.ConnectionBuilder.createConnection(ConnectionBuilder.java:108)
        at it.auties.whatsapp.api.ConnectionBuilder.firstConnection(ConnectionBuilder.java:91)

it's a version conflict, one of your dependencies is using an older version of Jackson

I am building the original Whatsapp4j project. None of my dependencies is
involved.
git clone https://github.com/Auties00/Whatsapp4j.git
cd Whatsapp4j
maven clean package
On Sat, May 27, 2023 at 8:47 AM Alessandro Autiero @.***>
wrote:

it's a version conflict, one of your dependencies is using an older
version of Jackson
—
Reply to this email directly, view it on GitHub
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565396979,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>

I am building the original Whatsapp4j project. None of my dependencies is involved. git clone https://github.com/Auties00/Whatsapp4j.git cd Whatsapp4j maven clean package
…
On Sat, May 27, 2023 at 8:47 AM Alessandro Autiero @.> wrote: it's a version conflict, one of your dependencies is using an older version of Jackson — Reply to this email directly, view it on GitHub <#304 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A . You are receiving this because you authored the thread.Message ID: @.>

Can you try now?

I am getting this now:
[ERROR] Plugin com.github.auties00:protobuf-serialization-plugin:2.0.3 or
one of its dependencies could not be resolved: The following artifacts
could not be resolved:
com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 (absent):
com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 was not found
in https://repo.maven.apache.org/maven2 during a previous attempt. This
failure was cached in the local repository and resolution is not
reattempted until the update interval of central has elapsed or updates are
forced -> [Help 1]
On Sat, May 27, 2023 at 11:07 AM Alessandro Autiero <
@.***> wrote:

I am building the original Whatsapp4j project. None of my dependencies is
involved. git clone https://github.com/Auties00/Whatsapp4j.git cd
Whatsapp4j maven clean package
… <#m_2626908554068669879_>
On Sat, May 27, 2023 at 8:47 AM Alessandro Autiero @.> wrote: it's a
version conflict, one of your dependencies is using an older version of
Jackson — Reply to this email directly, view it on GitHub <#304 (comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565396979>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.>
Can you try now?
—
Reply to this email directly, view it on GitHub
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565478518,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>

I am getting this now: [ERROR] Plugin com.github.auties00:protobuf-serialization-plugin:2.0.3 or one of its dependencies could not be resolved: The following artifacts could not be resolved: com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 (absent): com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 was not found in https://repo.maven.apache.org/maven2 during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of central has elapsed or updates are forced -> [Help 1] On Sat, May 27, 2023 at 11:07 AM Alessandro Autiero < @.> wrote:
…
I am building the original Whatsapp4j project. None of my dependencies is involved. git clone https://github.com/Auties00/Whatsapp4j.git cd Whatsapp4j maven clean package … <#m_2626908554068669879_> On Sat, May 27, 2023 at 8:47 AM Alessandro Autiero @.> wrote: it's a version conflict, one of your dependencies is using an older version of Jackson — Reply to this email directly, view it on GitHub <#304 (comment) <#304 (comment)>>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A . You are receiving this because you authored the thread.Message ID: @.> Can you try now? — Reply to this email directly, view it on GitHub <#304 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A . You are receiving this because you authored the thread.Message ID: @.**>

Maven central might not have gotten the update yet, wait 10/20 minutes

still not working here.
On Sat, May 27, 2023 at 11:54 AM Alessandro Autiero <
@.***> wrote:

I am getting this now: [ERROR] Plugin
com.github.auties00:protobuf-serialization-plugin:2.0.3 or one of its
dependencies could not be resolved: The following artifacts could not be
resolved: com.github.auties00:protobuf-serialization-plugin:jar:2.0.3
(absent): com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 was
not found in https://repo.maven.apache.org/maven2 during a previous
attempt. This failure was cached in the local repository and resolution is
not reattempted until the update interval of central has elapsed or updates
are forced -> [Help 1] On Sat, May 27, 2023 at 11:07 AM Alessandro Autiero
< @.
> wrote: … <#m_-4169878552150758207_> I am building the original
Whatsapp4j project. None of my dependencies is involved. git clone
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git cd Whatsapp4j maven clean
package … <#m_2626908554068669879_> On Sat, May 27, 2023 at 8:47 AM
Alessandro Autiero @.> wrote: it's a version conflict, one of your
dependencies is using an older version of Jackson — Reply to this email
directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) <#304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565396979>>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.>
Can you try now? — Reply to this email directly, view it on GitHub <#304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565478518>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.
**>
Maven central might not have gotten the update yet, wait 10/20 minutes
—
Reply to this email directly, view it on GitHub
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565542678,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIFHZBOQAQBW5OOQ4J3XIIPS3ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>

still not working here.
On Sat, May 27, 2023 at 11:54 AM Alessandro Autiero <
@.***> wrote:

I am getting this now: [ERROR] Plugin
com.github.auties00:protobuf-serialization-plugin:2.0.3 or one of its
dependencies could not be resolved: The following artifacts could not be
resolved: com.github.auties00:protobuf-serialization-plugin:jar:2.0.3
(absent): com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 was
not found in https://repo.maven.apache.org/maven2 during a previous
attempt. This failure was cached in the local repository and resolution is
not reattempted until the update interval of central has elapsed or updates
are forced -> [Help 1] On Sat, May 27, 2023 at 11:07 AM Alessandro Autiero
< @.
> wrote: … <#m_-4169878552150758207_> I am building the original
Whatsapp4j project. None of my dependencies is involved. git clone
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git cd Whatsapp4j maven clean
package … <#m_2626908554068669879_> On Sat, May 27, 2023 at 8:47 AM
Alessandro Autiero @.> wrote: it's a version conflict, one of your
dependencies is using an older version of Jackson — Reply to this email
directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) <#304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565396979>>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.>
Can you try now? — Reply to this email directly, view it on GitHub <#304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565478518>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.
**>
Maven central might not have gotten the update yet, wait 10/20 minutes
—
Reply to this email directly, view it on GitHub
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565542678,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIFHZBOQAQBW5OOQ4J3XIIPS3ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>

should work now

I am able to compile now. But the application is not showing the bar code
anymore. It hangs and after 30 seconds it dies.
On Sat, May 27, 2023 at 1:35 PM Alessandro Autiero @.***>
wrote:

still not working here.
On Sat, May 27, 2023 at 11:54 AM Alessandro Autiero <
@.***> wrote:
I am getting this now: [ERROR] Plugin
com.github.auties00:protobuf-serialization-plugin:2.0.3 or one of its
dependencies could not be resolved: The following artifacts could not be
resolved: com.github.auties00:protobuf-serialization-plugin:jar:2.0.3
(absent): com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 was
not found in https://repo.maven.apache.org/maven2 during a previous
attempt. This failure was cached in the local repository and resolution is
not reattempted until the update interval of central has elapsed or updates
are forced -> [Help 1] On Sat, May 27, 2023 at 11:07 AM Alessandro Autiero
< @.
> wrote: … <#m_-4169878552150758207_> I am building the original
Whatsapp4j project. None of my dependencies is involved. git clone
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git cd Whatsapp4j maven clean
package … <#m_2626908554068669879_> On Sat, May 27, 2023 at 8:47 AM
Alessandro Autiero @.> wrote: it's a version conflict, one of your
dependencies is using an older version of Jackson — Reply to this email
directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) <#304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565396979>>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.>
Can you try now? — Reply to this email directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565478518>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.
**>
Maven central might not have gotten the update yet, wait 10/20 minutes
—
Reply to this email directly, view it on GitHub
#304 (comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565542678
,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIFHZBOQAQBW5OOQ4J3XIIPS3ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>
should work now
—
Reply to this email directly, view it on GitHub
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565609857,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIEMXNWMYNYW366NDPTXII3M7ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>

I am able to compile now. But the application is not showing the bar code
anymore. It hangs and after 30 seconds it dies.
On Sat, May 27, 2023 at 1:35 PM Alessandro Autiero @.***>
wrote:

still not working here.
On Sat, May 27, 2023 at 11:54 AM Alessandro Autiero <
@.***> wrote:
I am getting this now: [ERROR] Plugin
com.github.auties00:protobuf-serialization-plugin:2.0.3 or one of its
dependencies could not be resolved: The following artifacts could not be
resolved: com.github.auties00:protobuf-serialization-plugin:jar:2.0.3
(absent): com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 was
not found in https://repo.maven.apache.org/maven2 during a previous
attempt. This failure was cached in the local repository and resolution is
not reattempted until the update interval of central has elapsed or updates
are forced -> [Help 1] On Sat, May 27, 2023 at 11:07 AM Alessandro Autiero
< @.
> wrote: … <#m_-4169878552150758207_> I am building the original
Whatsapp4j project. None of my dependencies is involved. git clone
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git cd Whatsapp4j maven clean
package … <#m_2626908554068669879_> On Sat, May 27, 2023 at 8:47 AM
Alessandro Autiero @.> wrote: it's a version conflict, one of your
dependencies is using an older version of Jackson — Reply to this email
directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) <#304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565396979>>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.>
Can you try now? — Reply to this email directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565478518>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.
**>
Maven central might not have gotten the update yet, wait 10/20 minutes
—
Reply to this email directly, view it on GitHub
#304 (comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565542678
,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIFHZBOQAQBW5OOQ4J3XIIPS3ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>
should work now
—
Reply to this email directly, view it on GitHub
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565609857,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIEMXNWMYNYW366NDPTXII3M7ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>

can you try to delete your old sessions also make sure you are using the latest commit

Here is what I do:

I deleted the maven repository ~/.m2/repository/
Changed the whatsapp4j library version to 38.0.500 to make sure there is
no possible conflict
Then build the library: mvn clean install -DskipTests
Added the new dependency to my project with version 38.0.500
Delete my target folder manually
Built my project: mvn clean package
Delete the whatsapp4j folder in home rm -rf ~/.whatsapp4j/
Run my project
Project get stuck at the stage where it should show the QR

Change the dependency back to 3.4.0
Redo the cleanup and build process
Things work normally with 3.4.0
I tried this many times.
On Sat, May 27, 2023 at 3:33 PM Alessandro Autiero @.***>
wrote:

I am able to compile now. But the application is not showing the bar code
anymore. It hangs and after 30 seconds it dies.
On Sat, May 27, 2023 at 1:35 PM Alessandro Autiero @.***>
wrote:
still not working here.
On Sat, May 27, 2023 at 11:54 AM Alessandro Autiero <
@.***> wrote:
I am getting this now: [ERROR] Plugin
com.github.auties00:protobuf-serialization-plugin:2.0.3 or one of its
dependencies could not be resolved: The following artifacts could not be
resolved: com.github.auties00:protobuf-serialization-plugin:jar:2.0.3
(absent): com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 was
not found in https://repo.maven.apache.org/maven2 during a previous
attempt. This failure was cached in the local repository and resolution is
not reattempted until the update interval of central has elapsed or updates
are forced -> [Help 1] On Sat, May 27, 2023 at 11:07 AM Alessandro Autiero
< @.
> wrote: … <#m_-4169878552150758207_> I am building the original
Whatsapp4j project. None of my dependencies is involved. git clone
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git cd Whatsapp4j maven clean
package … <#m_2626908554068669879_> On Sat, May 27, 2023 at 8:47 AM
Alessandro Autiero @.> wrote: it's a version conflict, one of your
dependencies is using an older version of Jackson — Reply to this email
directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) <#304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565396979>>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.>
Can you try now? — Reply to this email directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
(comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565478518>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.
**>
Maven central might not have gotten the update yet, wait 10/20 minutes
—
Reply to this email directly, view it on GitHub
#304 https://github.com/Auties00/Whatsapp4j/issues/304 (comment)
#304 (comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565542678
,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIFHZBOQAQBW5OOQ4J3XIIPS3ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>
should work now
—
Reply to this email directly, view it on GitHub
#304 (comment)
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565609857
,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIEMXNWMYNYW366NDPTXII3M7ANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>
can you try to delete your old sessions also make sure you are using the
latest commit
—
Reply to this email directly, view it on GitHub
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565658583,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO6PLIA6TAGO4LPYORYAONTXIJJITANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>

can you show me your code, I'll also check if maybe i missed something on
the repo asap
On Sat, May 27, 2023, 21:46 open-sudo @.***> wrote:

Here is what I do:

I deleted the maven repository ~/.m2/repository/
Changed the whatsapp4j library version to 38.0.500 to make sure there is
no possible conflict
Then build the library: mvn clean install -DskipTests
Added the new dependency to my project with version 38.0.500
Delete my target folder manually
Built my project: mvn clean package
Delete the whatsapp4j folder in home rm -rf ~/.whatsapp4j/
Run my project
Project get stuck at the stage where it should show the QR

Change the dependency back to 3.4.0
Redo the cleanup and build process
Things work normally with 3.4.0
I tried this many times.
On Sat, May 27, 2023 at 3:33 PM Alessandro Autiero @.***>
wrote:

I am able to compile now. But the application is not showing the bar code
anymore. It hangs and after 30 seconds it dies.
On Sat, May 27, 2023 at 1:35 PM Alessandro Autiero @.***>
wrote:
still not working here.
On Sat, May 27, 2023 at 11:54 AM Alessandro Autiero <
@.***> wrote:
I am getting this now: [ERROR] Plugin
com.github.auties00:protobuf-serialization-plugin:2.0.3 or one of its
dependencies could not be resolved: The following artifacts could not be
resolved: com.github.auties00:protobuf-serialization-plugin:jar:2.0.3
(absent): com.github.auties00:protobuf-serialization-plugin:jar:2.0.3 was
not found in https://repo.maven.apache.org/maven2 during a previous
attempt. This failure was cached in the local repository and resolution
is
not reattempted until the update interval of central has elapsed or
updates
are forced -> [Help 1] On Sat, May 27, 2023 at 11:07 AM Alessandro
Autiero
< @.
*> wrote: … <#m_-4169878552150758207_> I am building the original
Whatsapp4j project. None of my dependencies is involved. git clone
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git
https://github.com/Auties00/Whatsapp4j.git cd Whatsapp4j maven clean
package … <#m_2626908554068669879_> On Sat, May 27, 2023 at 8:47 AM
Alessandro Autiero @.> wrote: it's a version conflict, one of your
dependencies is using an older version of Jackson — Reply to this email
directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) <#304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
(comment)
<
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565396979

,
or unsubscribe

https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIANRMMGR22LIXUH5SLXIHZW5ANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.>
Can you try now? — Reply to this email directly, view it on GitHub <#304
https://github.com/Auties00/Whatsapp4j/issues/304 #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
https://github.com/Auties00/Whatsapp4j/issues/304 (comment) #304
(comment)
<
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565478518

,
or unsubscribe

https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A

https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A

<
https://github.com/notifications/unsubscribe-auth/AO6PLIDTNOIMQQAGOP4JSQLXIIKEDANCNFSM6AAAAAAYREHM2A
. You are receiving this because you authored the thread.Message ID: @.*
**>
Maven central might not have gotten the update yet, wait 10/20 minutes
—
Reply to this email directly, view it on GitHub
#304 https://github.com/Auties00/Whatsapp4j/issues/304 (comment)
#304 (comment)
<
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565542678>
,
or unsubscribe

https://github.com/notifications/unsubscribe-auth/AO6PLIFHZBOQAQBW5OOQ4J3XIIPS3ANCNFSM6AAAAAAYREHM2A

.
You are receiving this because you authored the thread.Message ID:
@.***>
should work now
—
Reply to this email directly, view it on GitHub
#304 (comment)
<
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565609857>
,
or unsubscribe

https://github.com/notifications/unsubscribe-auth/AO6PLIEMXNWMYNYW366NDPTXII3M7ANCNFSM6AAAAAAYREHM2A

.
You are receiving this because you authored the thread.Message ID:
@.***>
can you try to delete your old sessions also make sure you are using the
latest commit
—
Reply to this email directly, view it on GitHub
<
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565658583
,
or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/AO6PLIA6TAGO4LPYORYAONTXIJJITANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you authored the thread.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://github.com/Auties00/Whatsapp4j/issues/304#issuecomment-1565660619,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGXJIWNP7OMDKZY5CUTTZTDXIJK2TANCNFSM6AAAAAAYREHM2A
.
You are receiving this because you commented.Message ID:
@.***>

Here is a simple project that reproduces the issue: https://github.com/kubecutle/reproducer.git. If I change pom version to 3.4.0, everything works as expected. if you build the main branch with version 38.0.500, app starts but does not show the QR code.

the latest commit should fix this error, please lmk


go2rtc behind Nginx?  Confused on process for media streaming

Hello!
I'm trying to use go2rtc as a (mostly) standalone service for 2 way audio.  I want to access it from behind a reverse proxy using Nginx for several reasons.  My nginx connection is running off of a separate device than go2rtc is, but they both have a direct local network connection to each other.
Attempting to set up a basic nginx proxy doesn't connect my streams together, even when I'm just proxying across the given local network.  Do I need a turn server?  Do I need to forward my webRTC port outside of nginx?  I couldn't really make sense of this with the docs, and I was hoping for some clarification.
My end goal is simple: I want a functional (mostly) standalone go2rtc behind nginx, which I can access from external networks.  Nginx is running on a separate device from go2rtc.  Is this achievable? Thank you very much!

WebRTC not only streaming technology
WebRTC not using HTTP protocol. This is P2P technology

WebRTC not only streaming technology

WebRTC not using HTTP protocol. This is P2P technology

...Huh?
This clarifies absolutely nothing.  I don't understand the point you're trying to make here, as it doesn't seem like any of my questions were addressed directly.  Go2rtc is definitely using HTTP - it's using a web interface.  Maybe WebRTC isn't, but that's not really the point here.  Plenty of other WebRTC services can work behind reverse proxies using TURN and STUN servers (and some without), as I was discussing above.  You've literally got references to using nginx in the readme, but provide no additional context for it or how it is to be configured.  I see there's a STUN server port option for go2rtc but again there's no clarity on how I would use that for the goal I'm trying to achieve.
Are you saying here that nginx won't work for the go2rtc web interface whatsoever?  If so, why are references to nginx found in the docs?  I really just do not understand your response here.  Is there anything I could make clearer in regards for what I'm trying to do?
Thanks.

Unfortunately, I don't have time to tech peoples to use Nginx and WebRTC technologies.
I want too say, if you can't setup WebRTC, you can use MSE technology. It transferred via HTTP and shouldn't be difficult for setup.
And STUN technology doesn't have "port". WebRTC port in config used for transferring video data.
For basic usage users may install Home Assistant, WebRTC integration and many things will work without additional setup out of the box.

Unfortunately, I don't have time to tech peoples to use Nginx and WebRTC technologies.

I don't really see basic documentation as being beneath a project whatsoever.

I want too say, if you can't setup WebRTC, you can use MSE technology. It transferred via HTTP and shouldn't be difficult for setup.

I've used Nginx and WebRTC with multiple other applications in other arrangements - that doesn't help me get it working with go2rtc.
MSE also doesn't work for me, as I can't use 2 way audio with MSE.  As stated in my OP, that's the whole point of what I'm trying to use go2rtc for.

And STUN technology doesn't have "port". WebRTC port in config used for transferring video data.

I don't understand the significance of any differences here - go2rtc's config literally has an option for setting a stun port, does it not?  I must not be understanding the point that you are getting at.

For basic usage users may install Home Assistant, WebRTC integration and many things will work without additional setup out of the box.

I'm wholly unsatisfied with using HA for NVR purposes.  It's very suboptimal and needlessly tangential to my rather simple goal.  I merely want a way to add better management to go2rtc's interface, and frankly I don't think a simple sample config for nginx is asking a lot given that a standard non-go2rtc template isn't going to cut it - especially when you reference nginx in your readme already.

@occasionallyword Hey did you manage to find a solution to your issue and establish a working externally accessible standalone go2rtc instance? I recall someone @pergolafabio in a thread I made on another topic saying they managed to do it at the bottom of the thread. If you're still having issues you could ask them #371.
I wouldn't hold out much hope in getting any help for Alex, he's a good dev, but in my experience any request for assistance with topics he regards as too "noob" are met with responses that come across pretty arrogant and are generally not helpful. Not a slight at him, btw. I don't blame him for not wanting to spend his time explaining simple things to people and we all have things we're good and less good at.

A couple of weeks ago I had over 400 unanswered issues on github totalling from all my projects. Right now I have about 180 unanswered issues on the go2rtc project. I can't allow myself to waste time on things not directly related to the project.

I'd argue that improving documentation to provide a clear process for users to set up an externally accessible go2rtc instance would benefit the project. But of course I understand your perspective. Like I said you're a great dev, but you're just one person and can't be expected to provide in depth support. Sadly people should temper their expectations, as frustrating as that may be.

Hope this helps the OP out. for the record I was only referencing my old thread because another user there indicated they implemented what the OP of this thread wanted.
On and off-note, my ticket for the https issue was closed and was caused by go2rtc webui only supporting its default port xD, maybe something to include the docs or just remove the option to change the default webui port from the HA addon entirely since it will cause a 502 error.

Addon ingress port is really fixed. Making it dynamic is a solvable but challenging task. I don't think I'll have time to do it.

Makes sense. Its a bit deceiving how easy it is to alter the default ingress port even in the HA addon last time I used it. If you're not planning to make it dynamic any time soon, might be worth disabling editing on that port field or noting in the docs somewhere that ingress port is fixed and shouldn't be changed from the default for the time being.

There are several options for configuring WebRTC in the documentation https://github.com/AlexxIT/go2rtc#module-webrtc

Of which I am aware, and asked for clarity in regards to in my original post for a very specific use case.  None was provided.    I fail to see how that benefits anyone  - certainly not you or go2rtc's goals.

Configuring HTTP(S) access, in my opinion, is really basic knowledge. Not related to this project.
For Hass users, I've made a number of easy choices:
* WebRTC integration (sharing Hass auth and SSL)

* go2rtc addon (sharing Hass auth and SSL)

If these simple options don't suit you - you need to explore the option that you like better.

You might have the slightest validity if this was a basic and standard reverse proxy configuration.  In one comment you claim that WebRTC can't be put behind HTTPS, yet then in the next you speak down to people for, "not having basic knowledge" - all the while your documentation references putting WebRTC behind a reverse proxy with HTTPs.  It's asinine to act like I'm the problem here.
Again, I really can't understand how posting a sample config with maybe two paragraphs to explain things is anything other than pride/ego on your part.  You've spent more time arguing against said documentation than it would've taken to simply share the configs that you reference in your own documentation.  That doesn't even factor in the fact that better documentation would result in less issues for you and an easier way to solve issues when they do come up again.
Actually helping people make use of your tool might be, "beneath you" in your own eyes, but I'd really wonder what you could possibly be hoping to achieve with this project if that wasn't your goal.  If you aren't going to help, you could at least not go out of your way to come across as rude as possible.

as a side note, i used indeed nginx proxy, created an extra conf file with below data , <IP_ADDRESS> is my HA instance running the go2rtc addon

server {
    server_name MYDOMAIN.com;
    ssl_certificate /ssl/fullchain.pem;
    ssl_certificate_key /ssl/privkey.pem;
    listen 443 ssl http2;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
    location / {
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
		proxy_set_header Connection "Upgrade";
		proxy_set_header X-Forwarded-Host $host;
        proxy_pass http://<IP_ADDRESS>:1984;
    }
}

That way i can access the go2rtc addon without opening ports, offcourse then you need to password protect your instance, used a strong user/pass here in the go2rtc config , i asked @AlexxIT to make a pointer to /ssl share, and he did that immediately, thnx again for that!!
api:
  listen: ":1984"    # default ":1984", HTTP API port ("" - disabled)
  username: "XXXXX"  # default "", Basic auth for WebUI
  password: "YYYYY"   # default "", Basic auth for WebUI
  origin: "*"        # default "", allow CORS requests (only * supported)
  #tls_listen: ":1985" # default "", enable HTTPS server
  #tls_cert: /ssl/fullchain.pem
  #tls_key: /ssl/privkey.pem

I don't see anything special in this config which would address the WebRTC concerns I am experiencing.  As I stated earlier, using MSE isn't helping me out at all.  I'd rather use my actual NVR to view things at that point - the entire functionality that I am looking for is 2 way audio support, which only comes via WebRTC under the current implementation.  Did you configure any STUN/TURN settings which weren't included here?
They aren't inherently necessary for WebRTC connections behind a reverse proxy, but they are often the go-to solution for projects.

@occasionallyword Hey did you manage to find a solution to your issue and establish a working externally accessible standalone go2rtc instance? I recall someone @pergolafabio in a thread I made on another topic saying they managed to do it at the bottom of the thread. If you're still having issues you could ask them #371.
I wouldn't hold out much hope in getting any help for Alex, he's a good dev, but in my experience any request for assistance with topics he regards as too "noob" are met with responses that come across pretty arrogant and are generally not helpful. Not a slight at him btw. I don't blame him for not wanting to spend his time explaining simple things to people and we all have things we're good and less good at.

I haven't been able to find a solution, no.  Thank you for your interest though.

I'm using Supervised Hass installation and go2rtc installed as addon.
This is configuration.yaml
http:
  use_x_forwarded_for: true
  trusted_proxies: [ <IP_ADDRESS> ]

This is docker-compose.yml
version: '3'
services:
 caddy:
    image: caddy:alpine
    network_mode: host
    restart: unless-stopped
    volumes:
      - ~/docker/caddy/Caddyfile:/etc/caddy/Caddyfile
      - ~/docker/caddy/data:/data
      - ~/docker/caddy/config:/config

This is Caddyfile
{
	email<EMAIL_ADDRESS>	ocsp_stapling off
}
xxx.duckdns.org {
	reverse_proxy <IP_ADDRESS>:8123
}

This is go2rts.yaml
publish:
  ...
homekit:
  ...
streams:
  ...

That's all I need to make Hass, go2rtc and WebRTC work inside and outside the local network. Will these settings work for everyone? No. A lot depends on the way Hass is set up, the home ISP and the mobile ISP.
I'm not using Nginx. I find it too complicated. I'm not an expert on its configs.


Update maxversiontested so xaml islands can be used in vstest.console.exe

Description
This is a variation of #4887 that I missed when I fix that (that I've verified via updated VS).
vstest.console.exe needs the same manifest update.
but I took a look at the source and see it has been updated. need to investigate further.
Steps to reproduce
see linked issue for repo and details

Would you post a PR for this please?

The code in this project is correct.
I'm guessing the ingestion vstest.console.exe into the VS installer is not following the same path as testhost.exe. I see the files are in different locations.
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\Extensions\TestPlatform\testhost.exe
I also installed these tools using the BuildTools install location. and that ended up in a different location from those mentioned above.
'C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe'
Do you know who owns the VS ingestion process for these binaries? I think we need to ask them why this binary has not kept up with testhost.exe.

You've got mail. CommonExtensions\Microsoft\TestWindow\vstest.console.exe is a wrapper of the real vstest.console for backwards compat reasons. It won't have your manifest changes, and so that is why it does not work.

This needs to be solved for the wrapper that Test Explorer owns, information was sent via email because that project is internal.


[v0.6] Removed batch context

Closes #751
The batch context will be moved into a separate crate (presumably, gfx_batch) inside gfx_scene project, which needs lightweight batches and can isolate the context unsafety from the user.

Someone is going to have a sweet time merging this with master...


Distributing an Apple Silicon binary

Please make sure that this is a feature request. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:feature_template
System information

TensorFlow version (you are using): Tensorflow Java 0.5
Are you willing to contribute it (Yes/No): Yes

Describe the feature and the current behavior/state.
Now that Apple silicon M1 instances are available as Github runners, it would be really interesting for all Apple Silicon M1 users to distribute binary for this platform.
https://github.blog/2023-10-02-introducing-the-new-apple-silicon-powered-m1-macos-larger-runner-for-github-actions/
Will this change the current api? How?
No
Who will benefit with this feature?
All Apple M1 users.
Any Other info.

We're working on it - https://github.com/tensorflow/java/issues/394#issuecomment-1847887092

TF-Java 1.0.0-rc1 has Apple Silicon binaries - https://github.com/tensorflow/java/releases/tag/v1.0.0-rc.1


Add JSON Page

TODO

[x] The nice icon is still missing, should I try to build one or can you generate those PNGs somehow? :)

Done

example.json is copied from www.json.org/example.html.
I had to use the git url in mix.exs, since makeup_json doesn't seem to be published on Hex yet.
I also changed language.html.eex to use @language.title instead of the name, because "JSON Language" didn't look right to me.

closes #3, when finished

Hi @lkarthee, is there anything that can help the JSON makeup ship?

The nice icon is still missing, should I try to build one or can you generate those PNGs somehow? :)

Ah, good call. We will separate the background from the icon, to make the process easier. Please hold on. :)

I also changed language.html.eex to use @language.title instead of the name, because "JSON Language" didn't look right to me.

Can you please submit a separate PR for this so we get it up ASAP? I assume other languages may require it.

Can you please submit a separate PR for this so we get it up ASAP? I assume other languages may require it.

The .title was already present in every language before.

Ah, good call. We will separate the background from the icon, to make the process easier. Please hold on. :)

This is done!

The .title was already present in every language before.

Ack! I meant the change you did will likely be required for EEx/DIFF too (as EEx or DIFF language are also weird).

Yes, they'd have to also set the title attribute when adding to MakeupDemo.Languages.languages/0, but since every other language so far has that anyway I thought this wouldn't matter that much. But I can still revert this part and make a separate PR if you prefer.

I just wanted to merge it sooner but we can also wait until someone does/needs the same change. So no worries.

Rebased, removed the change in language.html.eex and added an icon.

Beautiful, let's see if we can get makeup_json released and ship it. Thank you!
Do you want to PR the language.html.eex change or should I go ahead and change it?

Sorry @optikfluffel @josevalim - I missed notification.
@josevalim I have been using makeup_json for sometime - I did not encounter any issues. It has basic tests like I  mentioned in this issue - https://github.com/elixir-makeup/makeup_json/issues/4 .

@lkarthee awesome! Could you please go ahead and release it then? :)

Sure will do it this weekend.

Released it on hex. Sorry for the delay.


[SUPPORT] Flink CDC to HUDI cannot handle rowKind correctly

Hi, I am trying to use Flink Hudi to build a streaming Data Lake,  but it seems like HUDI cannot handle the rowKind correctly. I will appreciate it if anyone can support any help!

Prepare a segment of CDC data in debezium-json format in advance
Create a table from the Flink SQL Client to read the CDC data files:
CREATE TABLE debezium_source(
id INT NOT NULL,
ts BIGINT,
name STRING,
description STRING,
weight DOUBLE
) WITH (
'connector' = 'filesystem',
'path' = '/tmp/source.data',
'format' = 'debezium-json'
);
Execute SELECT to observe the results. We can see that there are a total of 20 records with some UPDATEs in the middle. The last message is DELETE:
select * from debezium_source;
| op |          id |                   ts |                           name |                    description |                         weight |

| +I |         101 |                 1000 |                        scooter |          Small 2-wheel scooter |              3.140000104904175 |
| +I |         102 |                 2000 |                    car battery |                12V car battery |              8.100000381469727 |
| +I |         103 |                 3000 |             12-pack drill bits | 12-pack of drill bits with ... |              0.800000011920929 |
| +I |         104 |                 4000 |                         hammer |        12oz carpenter's hammer |                           0.75 |
| +I |         105 |                 5000 |                         hammer |        14oz carpenter's hammer |                          0.875 |
| +I |         106 |                 6000 |                         hammer |        16oz carpenter's hammer |                            1.0 |
| +I |         107 |                 7000 |                          rocks |          box of assorted rocks |              5.300000190734863 |
| +I |         108 |                 8000 |                         jacket | water resistent black wind ... |            0.10000000149011612 |
| +I |         109 |                 9000 |                     spare tire |             24 inch spare tire |             22.200000762939453 |
| -U |         106 |                 6000 |                         hammer |        16oz carpenter's hammer |                            1.0 |
| +U |         106 |                10000 |                         hammer |          18oz carpenter hammer |                            1.0 |
| -U |         107 |                 7000 |                          rocks |          box of assorted rocks |              5.300000190734863 |
| +U |         107 |                11000 |                          rocks |          box of assorted rocks |              5.099999904632568 |
| +I |         110 |                12000 |                         jacket | water resistent white wind ... |            0.20000000298023224 |
| +I |         111 |                13000 |                        scooter |           Big 2-wheel scooter  |              5.179999828338623 |
| -U |         110 |                12000 |                         jacket | water resistent white wind ... |            0.20000000298023224 |
| +U |         110 |                14000 |                         jacket | new water resistent white w... |                            0.5 |
| -U |         111 |                13000 |                        scooter |           Big 2-wheel scooter  |              5.179999828338623 |
| +U |         111 |                15000 |                        scooter |           Big 2-wheel scooter  |              5.170000076293945 |
| -D |         111 |                16000 |                        scooter |           Big 2-wheel scooter  |              5.170000076293945 |
Received a total of 20 rows
4.Create a Hudi table:
CREATE TABLE hoodie_table(
id INT NOT NULL PRIMARY KEY NOT ENFORCED,
ts BIGINT,
name STRING,
description STRING,
weight DOUBLE
) WITH (
'connector' = 'hudi',
'path' = 'hdfs://hudi/flink/hoodie_table',
'write.precombine.field' = 'ts',
'table.type' = 'MERGE_ON_READ',
'changelog.enabled' = 'true',
'read.streaming.skip_compaction'='true',
'compaction.async.enabled' = 'true'
);
5. insert into hoodie_table select * from debezium_source;
6. select * from hoodie_table/+ OPTIONS('read.streaming.enabled'='true')/;
| op |          id |                   ts |                           name |                    description |                         weight |
+----+-------------+----------------------+--------------------------------+--------------------------------+--------------------------------+
| +I |         101 |                 1000 |                        scooter |          Small 2-wheel scooter |              3.140000104904175 |
| +I |         102 |                 2000 |                    car battery |                12V car battery |              8.100000381469727 |
| +I |         103 |                 3000 |             12-pack drill bits | 12-pack of drill bits with ... |              0.800000011920929 |
| +I |         104 |                 4000 |                         hammer |        12oz carpenter's hammer |                           0.75 |
| +I |         105 |                 5000 |                         hammer |        14oz carpenter's hammer |                          0.875 |
| +I |         106 |                 6000 |                         hammer |        16oz carpenter's hammer |                            1.0 |
| +I |         107 |                 7000 |                          rocks |          box of assorted rocks |              5.300000190734863 |
| +I |         108 |                 8000 |                         jacket | water resistent black wind ... |            0.10000000149011612 |
| +I |         109 |                 9000 |                     spare tire |             24 inch spare tire |             22.200000762939453 |
| -D |         106 |                 6000 |                         hammer |        16oz carpenter's hammer |                            1.0 |
| +I |         106 |                10000 |                         hammer |          18oz carpenter hammer |                            1.0 |
| -D |         107 |                 7000 |                          rocks |          box of assorted rocks |              5.300000190734863 |
| +I |         107 |                11000 |                          rocks |          box of assorted rocks |              5.099999904632568 |
| +I |         110 |                12000 |                         jacket | water resistent white wind ... |            0.20000000298023224 |
| +I |         111 |                13000 |                        scooter |           Big 2-wheel scooter  |              5.179999828338623 |
| -D |         110 |                12000 |                         jacket | water resistent white wind ... |            0.20000000298023224 |
| +I |         110 |                14000 |                         jacket | new water resistent white w... |                            0.5 |
| -D |         111 |                13000 |                        scooter |           Big 2-wheel scooter  |              5.179999828338623 |
| +I |         111 |                15000 |                        scooter |           Big 2-wheel scooter  |              5.170000076293945 |
As we can see, HUDI processes the -U/+U operation as -D and +I, and ignores the D operation, so we can still get the data which id is '111'(it should be deleted).

select * from hoodie_table;
| op |          id |                   ts |                           name |                    description |                         weight |
+----+-------------+----------------------+--------------------------------+--------------------------------+--------------------------------+
| +I |         110 |                14000 |                         jacket | new water resistent white w... |                            0.5 |
| +I |         111 |                15000 |                        scooter |           Big 2-wheel scooter  |              5.170000076293945 |
| +I |         101 |                 1000 |                        scooter |          Small 2-wheel scooter |              3.140000104904175 |
| +I |         102 |                 2000 |                    car battery |                12V car battery |              8.100000381469727 |
| +I |         103 |                 3000 |             12-pack drill bits | 12-pack of drill bits with ... |              0.800000011920929 |
| +I |         104 |                 4000 |                         hammer |        12oz carpenter's hammer |                           0.75 |
| +I |         105 |                 5000 |                         hammer |        14oz carpenter's hammer |                          0.875 |
| +I |         106 |                10000 |                         hammer |          18oz carpenter hammer |                            1.0 |
| +I |         107 |                11000 |                          rocks |          box of assorted rocks |              5.099999904632568 |
| +I |         108 |                 8000 |                         jacket | water resistent black wind ... |            0.10000000149011612 |
| +I |         109 |                 9000 |                     spare tire |             24 inch spare tire |             22.200000762939453 |

Environment Description

Hudi version : 0.13.1

Flink version : 1.14.3

Hive version :

Hadoop version :

Storage (HDFS/S3/GCS..) : HDFS

Running on Docker? (yes/no) :

Additional context
Add any other context about the problem here.
Stacktrace
Add the stacktrace of the error.

@danny0405 could you please help me with it?

I'm wondering where the op comes from, is it the field of the the SQL Client? Did you ever try to use the print sink to see the result then?

I'm wondering where the op comes from, is it the field of the the SQL Client? Did you ever try to use the print sink to see the result then?

I'm wondering where the op comes from, is it the field of the the SQL Client? Did you ever try to use the print sink to see the result then?

Thanks for replying! If you query data by Flink, there will be a op col. And could you give some information about how to streaming write to HUDI by Flink CDC? Did I set the wrong configs?

I'm not sure, can you show us the write pipeline on the flink web UI?

I'm not sure, can you show us the write pipeline on the flink web UI?
Here is the pipeline

I think it is because the sink materializer, you need to remove it first.

I think it is because the sink materializer, you need to remove it first.

Thanks for your reply! Now I can delete the data correctly, because I changed the datasource, before was
| op | id | ts | name | description | weight |
| -U | 111 | 13000 | scooter | Big 2-wheel scooter | 5.179999828338623 |
| +U | 111 | 15000 | scooter | Big 2-wheel scooter | 5.170000076293945 |
| -D | 111 | 16000 | scooter | Big 2-wheel scooter | 5.170000076293945 |
After changing it to
| op | id | ts | name | description | weight |
| -U | 111 | 13000 | scooter | Big 2-wheel scooter | 5.179999828338623 |
| +U | 111 | 15000 | scooter | Big 2-wheel scooter | 5.170000076293945 |
| -D | 111 | 15000 | scooter | Big 2-wheel scooter | 5.170000076293945 |
the record with id(primary key) "111" is deleted successfully, now I am wondering if I want to delete a record correctly, do I need to set each col to corresponding to data in the current table, or I just need to set the primary key to be the same, when using debezium format data as source.

I just need to set the primary key to be the same

Just updates with correct RowKind with -D would trigger the deletion.

I just need to set the primary key to be the same

Just updates with correct RowKind with -D would trigger the deletion.

Thanks for ur reply! Could you please help me with a new problem? After delete by Flink, Flink cannot get the deleted record, but Spark can still get it, do you have any ideas?

you are right, Spark can not handle the changelog mode correctly, if you disable the changelog mode, spark can handle the deletes.

you are right, Spark can not handle the changelog mode correctly, if you disable the changelog mode, spark can handle the deletes.

Thanks for replying, but if I disable the changelog mode, how could Flink handle the different rowKind?

It's okay if there is no streaming read.

It's okay if there is no streaming read.

Thanks for your help, it works, but there is a wired example:
Flink SQL> select * from source;
| op |          id |                   ts |                           name |                    description |                         weight |
+----+-------------+----------------------+--------------------------------+--------------------------------+--------------------------------+
| +I |         111 |                13000 |                        scooter |           Big 2-wheel scooter  |              5.179999828338623 |
| -U |         111 |                13000 |                        scooter |           Big 2-wheel scooter  |              5.179999828338623 |
| +U |         111 |                13000 |                       scooter1 |           Big 2-wheel scooter  |              5.170000076293945 |
This is the source, insert to a hudi table:**insert into test103 select * from source;**Then query data
Flink SQL> select * from test103;
| op |          id |                   ts |                           name |                    description |                         weight |
+----+-------------+----------------------+--------------------------------+--------------------------------+--------------------------------+
Received a total of 0 row
Here is the create sql for table test103:
CREATE TABLE test103(
id INT NOT NULL PRIMARY KEY NOT ENFORCED,
ts BIGINT,
name STRING,
description STRING,
weight DOUBLE
) WITH (
'connector' = 'hudi',
'table.type' = 'MERGE_ON_READ',
'path' = 'hdfs://hudi/flink/origin4',
'precombine.field' = 'ts'
);
do you have any ideas?

you need to set up the precombine.field correctly so that the even stream can sort based on the event time, the processing time sequence does not guarantee the sementics.

you need to set up the precombine.field correctly so that the even stream can sort based on the event time, the processing time sequence does not guarantee the sementics.

Thanks for your help, after setting up the precombine.field, the record can be updated, but cannot be deleted, is it correct?
Here is the input:
Flink SQL> select * from source;
| op |          id |                   ts |                           name |                    description |                         weight |
| +I |         111 |                13000 |                        scooter |           Big 2-wheel scooter  |              5.179999828338623 |
| -U |         111 |               13000 |                        scooter |           Big 2-wheel scooter  |              5.179999828338623 |
| +U |         111 |               15000 |                        scooter |           Big 2-wheel scooter  |              5.170000076293945 |
| -D |         111 |                17000 |                        scooter |           Big 2-wheel scooter  |              5.170000076293945 |
Received a total of 4 rows
Then insert into a hudi table from this source, 'id' is the pk and 'ts' is the precombine.field
Then query the data from the hudi table:
The recore with id "111" is still alive:
| +I |         111 |               15000 |                        scooter |           Big 2-wheel scooter  |              5.170000076293945 |
Should it be the correct result? I will appreciate it if you could help me with it!

Your ts field is the same for that +U and -D

with

Sorry, I think the ts field for +U and -D is not same, they are 15000 and 17000, and I got this from the Flink Web UI:

it only get 3 hoodie record, but there are 4 rowdata
Do you have any ideas?

Your ts field is the same for that +U and -D

The record with -D operation is missing, and I find this code:

Seems like it will compare the whole cols to decide whether to retain this delete record, the precombine filed is not same, so the -D operation was ignored. Is it the correct logic? @danny0405

Can you turn off the sink materializer ? See the doc here for how to operate: https://www.yuque.com/yuzhao-my9fz/kb/hzosbb?

Can you turn off the sink materializer ? See the doc here for how to operate: https://www.yuque.com/yuzhao-my9fz/kb/hzosbb?

Got it, thank you very much for your help, closed it.


Update tox file to Py36 django111

We should test against the latest versions of python and django

Rebase on latest master, requirements.txt conflicts


[Doc Improvement][Add link to application permission][3351508]

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/bots/how-to/authentication/bot-sso-graph-api.md
92
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/bots/how-to/authentication/bot-sso-graph-api.md
94
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/bots/how-to/authentication/bot-sso-graph-api.md
94
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.


Row contains performance

Add performant method for checking if a PostgresRow contains a given column.

PostgresRandomAccessRow has this feature today:
struct PostgresRandomAccessRow {
    /// Checks if the row contains a cell for the given column name.
    /// - Parameter column: The column name to check against
    /// - Returns: `true` if the row contains this column, `false` if it does not.
    func contains(_ column: String) -> Bool
}


fix PropTypes warnings, fix react-addons-test-utils deprecation, fix …

…eslint to work with test/
was seeing these before in development:
Warning: Invalid argument supplid to oneOfType. Expected an array of check functions, but received undefined at index 1.
and this when i ran the test suite:
Warning: ReactTestUtils has been moved to react-dom/test-utils. Update references to remove this warning.

Thanks!


Attempting to load Credentials Results in 'NotEc2' Error

Describe the bug
I am trying to load my default AWS configuration. This keeps generating the following error from my tests:

thread 'tests::test_handler' panicked at 'called Result::unwrap() on an Err value: Not an AWS instance', src/main.rs:100:50

To Reproduce
This is the offending line of code:

let credentials = Credentials::default()?;

Expected behavior
This should not be generating an error as far as I can tell
Environment

Rust version: [e.g. 1.62.1]
lib version [e.g. 0.32.1]

Additional context
This is the link to the file: https://github.com/banyancomputer/ipfs-proof-oracle/blob/main/src/oracle/backend.rs
See line 43 to see how I am calling the code in question.
** ALSO **
Does anyone know any easy way to initialize Region and Credentials as Constants in a file?

Ok I got around this by just using my keys as input, but I don't think this error is appropriate

@amiller68 thats a good callout, it needs better erorr, it first tries to load credentials, from various places, if none are found it tries to get some from the ec2 instance metadata, but it never tells you what its doing, needs better UX for sure

Yeah I agree. I figured out what was happening from the source code, but like either:

the Credentials struct relies on Ec2 should be documented (not sure if you contribute to awscreds)
or it just shouldn't rely on that lol

I ended up getting to where I needed to be by using hard-coded access keys (not ideal but I can probably work something out with env vars)
@durch do you know a good way to load creds as some sort of static/constant struct? I'm new to rust and keep getting compiler errors :(

I'd suggest defining them in the environment of where you're running this, that way you don't need to code anything in

@durch, I was referring to when you eventually have to reference a awscreds::Credentials instance when initializing a new s3 client. I almost found a solution with lazy_static, but I found I still have to clone the Static struct before passing it to bucket::new.

You should be able to to Credentials::default(), and it would pick them up from the environment.
let bucket = Bucket::new(
  "test-bucket",
  "eu-central-1".parse().unwrap(),
  &Credentials::default()).unwrap();


Pre-action for S3Content Change detection

cS3Content is working perfect, however there are some condition which won't to run Pre-action of download.
Currently there are no workaround to detect s3 content, without ScriptResource:(, I think better to create cS3ContentChangeDetect Resource for custom action invoker.

Pattern 1
New resource pattern.
Configuration hoge
{
    cS3ContentChangeDetect detectAction
    {
        S3BucketName = "YourBucketName"
        Key = "ObjectName"
        DestinationPath = "c:\Path\To\Save\Content"
        Action = {Stop-Service IISAdmin -Force}
    }
}

Pattern2
----

Additional Property Pattern

```powershell
configuration DownloadS3Object
{
    Import-DscResource -ModuleName GraniResource
    cS3Content Download
    {
        S3BucketName = "YourBucketName"
        Key = "ObjectName"
        DestinationPath = "c:\Path\To\Save\Content"
        PreAction = {Stop-Service IISAdmin -Force}
        PostAction = {Statt-Service IISAdmin -Force}
    }
}

Which is better.....?

Would choose 2.
As mof schema not include ScriptBlock Type, need to use String[].

execution from string to scriptBlock.
[ScriptBlock]::Create("string action").Invoke();


[Feature Request] Slash commands

Is your feature request related to a problem? Please describe.
For newcomers, it may be hard to understand how to work your bot. Slash commands provide easy descriptions, easy marking of the expected field type, and optional parameters. Plus, selecting TAB to enter an argument is much faster than --, as well as argument completion being a huge speedup as well
Describe the solution you'd like
Commands to be mirrored using the / command api
Describe alternatives you've considered
A second bot to take /commands and then pipe it to Nino
Additional context
Slash commands are beta, and subject to change, but I believe the tradeoff is worth it for the ease of use

I don't plan on using slash commands for Nino due to it being in beta, so subject can change. Maybe once they are stabilized, then I'll probably add it. Being pinned so I don't forget.

Discord is going be forcing bots to use slash commands, so this will be top priority in the next major version.

Whatttt!! Source? Checked the API docs briefly and see no mention


Property used but not on custom type should throw build warning

Bicep version
0.12.40
Describe the bug
This may be by design, but it doesn't seem keeping with the idea of custom types as a whole definition (and rather seems to negate the point of a catch-all declaration). Put simply, the issue is that I can define a custom type, but when I use the reference to the type and specify another parameter not on the type, I get no warning about it not being valid.
To Reproduce
Take the following, noting that I intentionally "accidentally" left the resource group name off the custom type:
type KeyVaultIdentifier = {
  name: string
  subscriptionId: string
//  resourceGroupName: string // oops
}

param KeyVaultIdent KeyVaultIdentifier

resource KeyVault 'Microsoft.KeyVault/vaults@2021-06-01-preview' existing = {
  name: KeyVaultIdent.name
  scope: resourceGroup(KeyVaultIdent.subscriptionId, KeyVaultIdent.resourceGroupName)
}

At runtime, this will fail as resource group isn't populated on the KeyVaultIdent (assume that whatever populates the module doesn't include it since the custom type doesn't specify it). Because it's used in the Key Vault scope though and not on the custom type, I'd expect to at least see a build warning (if not an error) that I'm attempting to use a property that's not defined on the type.

Thanks for reporting! This was an oversight in the type checking logic that should be addressed by #9399


Extend the cache to older post or load on-the-fly as needed

Hi @eaplmx
If you go to http://darch.dk/timeline/gallery?profile=http://darch.dk/twtxt.txt or any other profiles gallery it shows images from posts that is not in the cache anymore?
How can we make sure that it load these posts?
Not working for timeline/Twtxt-php: http://darch.dk/timeline/post/bipn5da
Working for yarnd: https://neotxt.dk/twt/bipn5da
I would like it to always be able to load any post that is valid, since i want to use this as an archive.
Cheers, sørenpeter

Hi, I'll be using this account: @eapl-gemugami
Using that example #bipn5da, the root twt is the following:

2022-04-05T15:00:00Z	(#event) Upcomming Meetup in Copennhagen: algolab(the_art_of_live_coding) @ Støberiet / Computer Klub

We can see that twt in this view:
https://darch.dk/timeline/?profile=http://darch.dk/twtxt.txt
But not in this one:
http://darch.dk/timeline/post/bipn5da
Shows an empty screen instead of the twt content
We can see that this instance is following twtxt.txt -> https://darch.dk/timeline/following
It should have the 'cache' of every .txt is following, and for some reason it's not finding twts with that hash or something.
I'll check that! Cheers!

BTW @sorenpeter, does this URL http://darch.dk/timeline/post/bipn5da is currently on the gallery branch?

I found something in base.php, where
const TWTS_PER_PAGE = 50;
# and then
$twts = array_slice($twts, $startingTwt, TWTS_PER_PAGE);

is returning a limited list of twtxt, so the /conv view is trying to find the conversation #bipn5da in those 50 and can't find it.
I'll fix that, so in the main page the twts are paginated, and in other sections, we could find between all our following.
Something to think about later
Processing twts from all your following in each each page request, is not really optimized memory and time-wise, although we could leave as it is for now.
For example https://darch.dk/twtxt.txt has a history of 15,786 twts, right now.
As normal usage is done, twts to look into will grow exponentially 🤔
Adding some kind of cache for threads would be a nice to have.

Nice that you found the source of the problem. And yes I was also thinking that it might be a very expensive way I had implemented it. How do you get 15,786 twts from https://darch.dk/twtxt.txt ?

Nice that you found the source of the problem. And yes I was also thinking that it might be a very expensive way I had implemented it. How do you get 15,786 twts from https://darch.dk/twtxt.txt ?

Sorry, didn't say that correctly.
Collecting all the twits from your following is creating a whole list of 15,786 twts to search in.

Ah, yeah that makes more sense, but not very efficient.
It works now, but maybe we should add pagination to the gallery: http://darch.dk/timeline/gallery

Yeah, I was looking that pagination is started but not finished.
Nice art on /gallery, BTW!


How setup multitap in nestopia core?

How setup multitap in nestopia core?
4 players not working without this feature
Maybe 4 players not working in any game and any core

As far as I know Nestopia should have NstDatabase.xml in core's system folder.
Technically, 4p input should work, at least until Libretro core input callback.

sorry @Lightbass , I missed this one.
I think I already integrated nestopia core.
I tested with 4 players in some games and it works. Can you tell me which game you tried.

R.C. Pro-Am 2 (U).nes
@giongto35 In this game.

Can't find both USA and EU versions with proper CRCs. I think, only these two are in the NstDatabase packed with core.
    <game>
        <peripherals>
            <device type="fourplayer" />
        </peripherals>
        <cartridge system="NES-NTSC" dump="ok" crc="9EDD2159" sha1="FA189FC0F9277D5765E5DE19274AFBD28660F076">
            <board type="NES-AOROM" mapper="7">
                <prg size="256k" />
                <vram size="8k" />
            </board>
        </cartridge>
    </game>

Does a custom NstDatabase.xml will work with the app? Maybe try to add own ROM record with 4 player option into this file if it can be read by Nestopia.

Actually, it calculates checksums without ROM header, so any USA ROM should be OK.
So, file isn't issue..

So, I tested 4p mode in some NES multitap games including RCPro but none of them worked despite the fact that input is properly forwarded into all 4 ports in the core.
As it stated on the page of Nestopia Libretro fork:

Multitap support
The Nestopia UE core uses the NstDatabase.xml database file to detect which games have multitap support.

I assume it should automatically enable multitap controller for such games from the file. But it seems that the core not doing it.
Games from the db are being searched by their crc + sha1 hashes and I can confirm that even proper ROMs still won't work with more than 2 players, so it's not ROM hashing issue.
In the latest nestopia core they integrated database file into the core, I can be wrong, but now it's not possible to change it without core recompile and it won't read .xml anymore.
There is a note for core options:

4 Player Adapter [nestopia_select_adapter] (auto|ntsc|famicom)
Manually select a 4 Player Adapter if needed. Some games will not recognize the adapter correctly through the NstDatabase.xml database, this option should help fix that.

Some time ago I implemented core options change for testing purposes but even if we add it into the master branch I'm not sure whether it'll be a good thing to let users override core options on core-to-core basis and it's actually hard to implement.
Maybe, leave it as a plan B. (:

I am compile nestopia core with default NTSC multitap, but it not not working i checked this compiled core on Retroarch and it worked. I think the problem is not only in multitap mode, but has another problem. In any case, I just wanted to try. But it not interesting for me now. I just tell you about this problem. This project pretty cool,  but no one playing oldschool games with me, in online too)
Thanks for answer.

It is multitap, I just checked and it's working with the manual option.
I completely forgot that with recently merged N64 feature, so it's possible to use core configs.
You can try to create some cfg file, as example in the dir: assets\emulator\libretro\cores\nestopia_libretro.cfg with the line:
nestopia_select_adapter=ntsc
and all the possible values:
#nestopia_blargg_ntsc_filter=Blargg NTSC Filter; disabled|composite|svideo|rgb|monochrome
#nestopia_palette=Palette; cxa2025as|consumer|canonical|alternative|rgb|pal|composite-direct-fbx|pvm-style-d93-fbx|ntsc-hardware-fbx|nes-classic-fbx-fs|raw|custom
#nestopia_nospritelimit=Remove Sprite Limit; disabled|enabled
#nestopia_overclock=CPU Speed (Overclock); 1x|2x
#nestopia_select_adapter=4 Player Adapter; auto|ntsc|famicom
nestopia_select_adapter=ntsc
#nestopia_fds_auto_insert=FDS Auto Instert; enabled|disabled
#nestopia_overscan_v=Mask Overscan (Vertical); enabled|disabled
#nestopia_overscan_h=Mask Overscan (Horizontal); disabled|enabled
#nestopia_aspect=Preferred Aspect Ratio; auto|ntsc|pal|4:3
#nestopia_genie_distortion=Game Genie Sound Distortion; disabled|enabled
#nestopia_favored_system=System Region; auto|ntsc|pal|famicom|dendy
#nestopia_ram_power_state=RAM Power-on State; 0x00|0xFF|random
#nestopia_button_shift=Shift Buttons Clockwise; disabled|enabled
#nestopia_turbo_pulse=Turbo Pulse Speed; 2|3|4|5|6|7|8|9

then add it into core config in pkg\config\config.go:
	"nes": {
		Path:   "assets/emulator/libretro/cores/nestopia_libretro",
here ->	Config: "assets/emulator/libretro/cores/nestopia_libretro.cfg",
		Width:  256,
		Height: 240,
	},

Then recompile the app. Should be OK.
But still, it's a hack. (;/

I'm pretty sure, when this project will be a little bit mature, then there will be a lot of people to play to. At least a couple. (:
P.S. And don't worry, your English is fine.

Wow, good job man, may be i return to idea - play with 4 friends some old games)


[Question] Don't install dependencies

I'm using ubuntu 14. My bluetooth device:
hciconfig -a
hci0:	Type: Primary  Bus: USB
	BD Address: C4:85:08:DD:E0:2C  ACL MTU: 310:10  SCO MTU: 64:8
	UP RUNNING PSCAN
	RX bytes:79785 acl:0 sco:0 events:13105 errors:0
	TX bytes:375134 acl:0 sco:0 commands:13104 errors:0
	Features: 0xff 0xff 0x8f 0xfe 0xdb 0xff 0x5b 0x87
	Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
	Link policy: RSWITCH HOLD SNIFF PARK
	Link mode: SLAVE ACCEPT
	Name: 'ubuntu-0'
	Class: 0x00010c
	Service Classes: Unspecified
	Device Class: Computer, Laptop
	HCI Version: 4.0 (0x6)  Revision: 0x1ebd
	LMP Version: 4.0 (0x6)  Subversion: 0xfc00
	Manufacturer: Intel Corp. (2)

After I install dependencies I see this errors, debug log attached:
npm-debug.txt
I think problem is in 'node-hid' module.

I solve this problem - need install libusb-1.0-0-dev
Thank you for your package.

@6pm thanks for the update, closing this for now.


Flask package issue

I didn't see any discussion forum so posting it here if it might be helpful for others.
When I ran the server got no module as flask found so I had to install it using conda install flask, and then run the server.py using python server.py (not the python3 mentioned in the git).

Interestingly, I get the opposite errors. When I run with python, I get the Flask error, but running with python3 fixes it. I think it has to do with associating the right version of python with the version used to install the dependencies. I'll add a note to the README. Thanks!


feat: workflow for publishing to luarocks

Summary
This PR is part of a push to get Neovim plugins on LuaRocks.

See this blog post, which follows up on a series of posts by @teto.

Things done:

Add a workflow that publishes tags to LuaRocks.
Add a LuaRocks badge to the readme (assuming the existence of a lewis6991/impatient.nvim package).

Notes

For the release workflow to work, someone with a Luarocks account will have to add their API key to this repo's GitHub actions secrets.
Due to a shortcoming in LuaRocks (https://github.com/luarocks/luarocks-site/issues/188), the neovim label has to be added manually, for this plugin to show up in https://luarocks.org/labels/neovim
If you would prefer rolling releases without tags, this is also possible.

Adding the API key (screen shot)

I should have mentioned sooner, but I am roughly planning to archive this plugin once https://github.com/neovim/neovim/pull/22668 is merged.
I'm still happy to merge this though.

Ah, then I don't think it makes sense to publish this to luarocks.
I'll probably open the same PR for some of your other plugins at a later time :smile: