Missing docs or examples for how to use ICE restart

Given that there's no failed/closed ICE state, how should we use ICE restart?
https://github.com/algesten/str0m/blob/main/src/ice/agent.rs#L109
    /// Connection failed. This is a less stringent test than `failed` and may trigger
    /// intermittently and resolve just as spontaneously on less reliable networks,
    /// or during temporary disconnections. When the problem resolves, the connection
    /// may return to the connected state.
    Disconnected,
    //
    // NB: The failed and closed state doesn't really have a mapping in this implementation.
    //     We never end trickle ice and it's always possible to "come back" if more remote
    //     candidates are added.
    //
    // The ICE candidate has checked all candidates pairs against one another and has
    // failed to find compatible matches.

    // Closed,

Quoting from the specification:

Performing an ICE restart is recommended when iceConnectionState transitions to "failed". An application may additionally choose to listen for the iceConnectionState transition to "disconnected" and then use other sources of information (such as using getStats to measure if the number of bytes sent or received over the next couple of seconds increases) to determine whether an ICE restart is advisable.

For example, if a peer transitions from wifi to cellular their selected candidate will no longer be usable and no media data will reach the other peer. This causes a disconnect even and the lack of media data can be used as a signal to trigger an ICE restart which will gather new candidates for the cellular connection

I do think we are missing a timeout, in the case when signaling is setup but for some reason the stun packets are not reaching the str0m instance. Str0m will sit there and wait forever and it should probably have a connection timeout.

I do think we are missing a timeout, in the case when signaling is setup but for some reason the stun packets are not reaching the str0m instance. Str0m will sit there and wait forever and it should probably have a connection timeout.

I don't agree. Str0m has the Disconnected state, which is enough given that we don't have a "end of trickle ice candidates".
The ICE spec says that for "checklist" (we only have one such in str0m):
https://www.rfc-editor.org/rfc/rfc8838.html#name-performing-connectivity-che

regular ICE agents would set the state of a checklist to Failed if both of the following two conditions are satisfied:

all of the pairs in the checklist are in either the Failed state or the Succeeded state; and
there is not a pair in the valid list for each component of the data stream.

Trickle ICE also adds the conditions:

all candidate gathering has completed, and the agent is not expecting to discover any new local candidates;
and the remote agent has conveyed an end-of-candidates indication

To put that together:

Scenario 1: Without trickle ICE, fail when all pairs on checklist fails.
Scenario 2: With trickle ICE, fail when all pairs on checklist fails and we got a notification there are no more trickling ICE candidates.

Scenario 1 isn't relevant for str0m because we don't have an API for enumerating and providing all ICE candidates before we start the Rtc instance. The question is why would we have that API? Add ICE candidates whenever you want!
Ergo we only support Scenario 2: Only trickle ICE, even if don't expect to do any trickling. The remaining question is "what about indicating end-of-candidates"?
The stance I have taken here is "why?".

You can always come back from "Disconnected" state, by providing more candidates.
Trickle ICE is providing more candidates.

What good does it do to notify str0m that there will never be more candidates? As far as I can see, the only reason is to encode some timeout for going into a "Failed" state. It appears to be a state/code complication only to fulfill the spec. A user of str0m can simply have a timer for the Disconnected state and decide themselves whether to expect more candidates or remove the connection – why encode that logic in str0m?

I agree with the latest comment.  As someone who worked on defining WebRTC's "failed" state, I've always thought of it as mostly useless, especially when trickle ICE is used (as it should be).  The rule for ICE restarts is pretty simple: if you have been disconnected more than X seconds, try an ICE restart.  You pick the X.

I do think we are missing a timeout, in the case when signaling is setup but for some reason the stun packets are not reaching the str0m instance. Str0m will sit there and wait forever and it should probably have a connection timeout.

I don't agree. Str0m has the Disconnected state, which is enough given that we don't have a "end of trickle ice candidates".
The ICE spec says that for "checklist" (we only have one such in str0m):
https://www.rfc-editor.org/rfc/rfc8838.html#name-performing-connectivity-che

regular ICE agents would set the state of a checklist to Failed if both of the following two conditions are satisfied:

all of the pairs in the checklist are in either the Failed state or the Succeeded state; and
there is not a pair in the valid list for each component of the data stream.

Trickle ICE also adds the conditions:

all candidate gathering has completed, and the agent is not expecting to discover any new local candidates;
and the remote agent has conveyed an end-of-candidates indication

To put that together:

Scenario 1: Without trickle ICE, fail when all pairs on checklist fails.
Scenario 2: With trickle ICE, fail when all pairs on checklist fails and we got a notification there are no more trickling ICE candidates.

Scenario 1 isn't relevant for str0m because we don't have an API for enumerating and providing all ICE candidates before we start the Rtc instance. Why would we have that API? Add ICE candidates whenever you want!
Ergo we only support Scenario 2: Only trickle ICE, even if we don't expect to do any trickling. The remaining question is "what about indicating end-of-candidates"?
The stance I have taken here is "why?"

You can always come back from "Disconnected" state, by providing more candidates.
Trickle ICE is providing more candidates.

What good does it do to notify str0m that there will never be more candidates? As far as I can see, the only reason is to encode some timeout for going into a "Failed" state. It appears to be a state/code complication only to fulfill the spec. A user of str0m can simply have a timer for the Disconnected state and decide themselves whether to expect more candidates or remove the connection – why encode that logic in str0m?

Ok I added the 5 lines of timeout handling code in our server and I agree :)


Scope and time scheduling of the meeting for formal assessment of research and diploma projects - 2024#1 (issue #1079 related)

The goal is to schedule the meeting in Teams calendar on 2024.12.22 at 20:30.

Meeting has been scheduled.


Write a JavaScript program to check prime number

Description
Write a JavaScript program to check prime number
A prime number is a natural number greater than 1 that has no positive divisors other than 1 and itself.
Input  : 5
Output : Prime Number

How to contribute

Save the solution in CheckPrimeNumber.js file
Add CheckPrimeNumber.js file in check-prime-number folder

!assign


strange tailing _parameter in the param name

I found the python sdk generated by the<EMAIL_ADDRESS>has a strange tailing _parameter in the parameter name of continuation_token compared to previous<EMAIL_ADDRESS>as you can see here

But the swagger doesn't have anything related to _parameter.
As you can see the payload definition https://github.com/Azure/azure-rest-api-specs/blob/master/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json#L2692-L2700
and the schema definition https://github.com/Azure/azure-rest-api-specs/blob/master/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json#L5191-L5204
I wonder whether this is expected for some reason and why? This kind of change in code generator will cause potential breaking changes for user right?
To repro:

Use the datafactory RP
Add "x-ms-client-flatten": true in filterParameters https://github.com/Azure/azure-rest-api-specs/blob/master/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json#L2693 so that the payload will be flattened.
Add the following modelerfour directive in readme.python.md  so that datafactory's swagger can work with modelerfour

directive:
    - from: swagger-document
      where: $.definitions.JsonFormatFilePattern
      transform: >
          $['type'] = 'string';
    - from: swagger-document
      where: $.definitions.CompressionLevel
      transform: >
          $['type'] = 'string';
    - from: swagger-document
      where: $.definitions.DynamicsLinkedServiceTypeProperties.properties.servicePrincipalCredentialType
      transform: >
          $['type'] = 'string';
    - from: swagger-document
      where: $.definitions.ScriptAction.properties.roles
      transform: >
          $['type'] = 'string';

Run autorest --python --use=<EMAIL_ADDRESS>.\specification\datafactory\resource-manager\readme.md

closing this issue because this is by design to avoid collisions between reserved words (in this case continuation_token is reserved for polling reasons) and swagger-defined parameters. For a full list of reserved words, see here. Thanks @qiaozha for opening!


why docker logs doesn't show any log using your dockerfile

Hi,
I tested the dockerfile for debian 8.  For some reason, the docker logs -f containername doesn't show anything.  Do you know why?

That's normal, systemd logs by default to journal and stored as a binary log format.
I've tried to log to stdout/console with --log-target=console or --default-standard-output=journal+console, but the problem is known and not yet fixed by moby.
We can get around by executing systemd with a shell and redirect to stdout, but that's ugly.
Furthermore, we will not be able to have logs inside the container with journalctl.

You mean you tried multiple methods but it didn't work?
Your get-around is something like this:
CMD ["/bin/bash", "-c", "exec /sbin/init --log-target=journal 3>&1"]

Yes @kundeng that was exaclty what I was thinking for (apart changing bash by sh).
I've seen this initially on https://github.com/solita/docker-systemd/blob/a56a659e099f607df006f6ed89ebb99332ebdab9/Dockerfile#L27.
Thanks to have reported the issue by the way! I will try other options before opting for this one.

This last command fix only for logs of the boot sequence. When we docker exec on the container, the commands aren't logged.
Even https://github.com/solita/docker-systemd doesn't do it, and recommend using docker exec systemd journalctl to show system logs.
I won't add this fix because the boot sequence's logs are not really useful, and I haven't found a way to centralize all logs to docker logs.
OpenRC have also the same problem. I would like to keep the overall simple - just have containers to test if a service works or not.


Allow direct proxy configuration

This allows users to bypass the proxy settings set at the JVM  with -Dhttps.proxyHost/-Dhttps.proxyPort. This can be useful if you are using a third-party library which needs to make proxied http calls, but the library does not allow you to set an external proxy.
Previously okhttp would default to using a direct connection if the proxy failed, but that changed in 3.5.0 (https://github.com/square/okhttp/blob/master/CHANGELOG.md)

This change is

@ash211  ommiting the proxy setting will use ProxySelect.getDefault().select(uri), which will respect settings like http.proxyHost.  I'm forced to use those flags because I'm using a third-party library which needs to be proxied, but doesn't let me set the proxy at the library level

If you’re using a third-party library, why are http-remoting settings involved?
From: Lee Avital<EMAIL_ADDRESS>Reply-To: palantir/http-remoting<EMAIL_ADDRESS>Date: Wednesday, May 24, 2017 at 11:22 AM
To: palantir/http-remoting<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Subject: Re: [palantir/http-remoting] Allow direct proxy configuration (#435)
@ash211[github.com]https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_ash211&d=DwMFaQ&c=izlc9mHr637UR4lpLEZLFFS3Vn2UXBrZ4tFb6oOnmz8&r=Vp81aOxWZvuVgVK_wp-VF3pIYG92B19LcCw6XKeYC0U&m=VKtXO7jYINXqQ362B_ClWyqZrmPIVSx8XZjv2hxxvIg&s=N01mIc76PQacdSmMD_9dpa4mh8wBmBbFzRMLcds287Q&e= ommiting the proxy setting will use ProxySelect.getDefault().select(uri), which will respect settings like http.proxyHost. I'm forced to use those flags because I'm using a third-party library which needs to be proxied, but doesn't let me set the proxy at the library level
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub[github.com]https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_palantir_http-2Dremoting_pull_435-23issuecomment-2D303809568&d=DwMFaQ&c=izlc9mHr637UR4lpLEZLFFS3Vn2UXBrZ4tFb6oOnmz8&r=Vp81aOxWZvuVgVK_wp-VF3pIYG92B19LcCw6XKeYC0U&m=VKtXO7jYINXqQ362B_ClWyqZrmPIVSx8XZjv2hxxvIg&s=vA5rlkHD3I-qMI6egpaUEy7Issl5HKM7HYMJ7G--UW8&e=, or mute the thread[github.com]https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AAp3Q1pu7Ax-5FMoNYu8y9QF-2D7y4pRcgP9ks5r9HVKgaJpZM4Nlahy&d=DwMFaQ&c=izlc9mHr637UR4lpLEZLFFS3Vn2UXBrZ4tFb6oOnmz8&r=Vp81aOxWZvuVgVK_wp-VF3pIYG92B19LcCw6XKeYC0U&m=VKtXO7jYINXqQ362B_ClWyqZrmPIVSx8XZjv2hxxvIg&s=07nXI-QCMWaM2Uxt1dH2MWcWB-dYm2-qF60KUSkYmUo&e=.

The third party library is forcing me to configure proxy settings globally. I need to tell service created by http-remoting to explicitly ignore those global settings.

I'd like to make this explicit by having users configure one of three
things: NO_PROXY, SYSTEM_PROXY, PROXY. Default is probably SYSTEM_PROXY. We
need to do this in a way that doesn't break existing config.
On Wed, May 24, 2017 at 11:29 AM Lee Avital<EMAIL_ADDRESS>wrote:

The third party library is forcing me to configure proxy settings
globally. I need to tell service created by http-remoting to explicitly
ignore those global settings.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/palantir/http-remoting/pull/435#issuecomment-303811375,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGOdwZ_c_FEbnAcZvJzs9rxNmBNeGInUks5r9HbmgaJpZM4Nlahy
.

Ok, could I can change/add to the names of the Type enum so it reads:
enum Type {
    noProxy, systemProxy, proxy
}

and leave the rest of my PR the same? I don't think that breaks any existing config

Actually, I think my current approach does this exactly what you want. the default is the system proxy, you can configure directly use of a special proxy or a direct proxy

but the config space is a little weird, for instance i could say proxy=direct and still specify a hostAndIp.

There are preconditions that prevent you from doing that

let me summarize what i understand the possible valid configurations are:
usesSystemProxy:
  uris:
    - https://foo

usesExplicitProxy:
  uris:
    - https://foo
  proxy:
    hostAndPort: myProxy:8080

# same as above
usesExplicitProxy2:
  uris:
    - https://foo
  proxy:
    type: http
    hostAndPort: myProxy:8080

usesNoProxyEvenIfSystemProxyIsSet:
  uris:
    - https://foo
  proxy:
    type: direct

and these configurations are invalid:
invalidDirect:
  uris:
    - https://foo
  proxy:
    type: direct
    hostAndPort: myProxy:8080

there are still undefined cases, e.g., type=http, but no hostAndPort given

You're right, that's a mistake on my part. Is the ask that I fix that (it should trigger a failure) or that I change the configuration further?

@uschi2000 the case you mentioned is handled correctly now
@ash211 I had to do some interesting naming because of erasure issues, but I managed to get it so the existing source API is unbroken

enum is now upper cased

@ash211 anything left regarding the serialization format?

@uschi2000 I'm good as long as it's not a backcompat break!  Doesn't look like it, but I'm not familiar with Jackson intricacies


Add support for Audio and Video summarization to Docsum

Description
Extend the current Document Summarization Application by incorporating video and audio summary features. This enhancement will enable the application to summarize video and audio content in addition to text documents, thereby broadening its utility and applicability.
Issues
https://github.com/opea-project/docs/blob/main/community/rfcs/24-06-21-OPEA-001-DocSum_Video_Audio.md
Type of change
List the type of change like below. Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds new functionality)
[x] Breaking change (fix or feature that would break existing design and interface)
[ ] Others (enhancement, documentation, validation, etc.)

Tests
Whisper Service
Run the following command to validate the Whisper Service:
python comps/asr/whisper/dependency/check_whisper_server.py

Expected output:
{'asr_result': 'who is pat gelsinger'}

Audio2Text Service
Run the following command to validate the Audio2Text Service:
python comps/dataprep/multimedia2text/audio2text/check_a2t_server.py

Expected output:
{'downstream_black_list': [], 'id': '21b0459477abea6d85d20f4b5ddcb714', 'query': 'who is pat gelsinger'}

Note: The id value will be different.
Video2Audio Service
Run the following command to validate the Video2Audio Service:
python comps/dataprep/multimedia2text/video2audio/check_v2a_microserver.py

Expected output:
========= Audio file saved as ======
comps/dataprep/multimedia2text/video2audio/converted_audio.wav
====================================

Multimedia2Text Service
Run the following command to validate the Multimedia2Text Service:
python comps/dataprep/multimedia2text/check_multimedia2text.py

Expected output:
Running test: Whisper service
>>> Whisper service Test Passed ...

Running test: Audio2Text service
>>> Audio2Text service Test Passed ...

Running test: Video2Text service
>>> Video2Text service Test Passed ...

Running test: Multimedia2text service
>>> Multimedia2text service test for text data type passed ...
>>> Multimedia2text service test for audio data type passed ...
>>> Multimedia2text service test for video data type passed ...

cd GenAIComps/tests
bash tests/dataprep/test_dataprep_multimedia.sh

@MSCetin37,
please update comps/dataprep/multimedia2text/audio2text/Dockerfile to .github/workflows/docker/compose/dataprep-compose.yaml. The yaml is used for release images build.

The audio2text service is almost the same as the asr service except the returned data format. Why can't we combine these 2 services into one?


Unable to close the the search bar

I'm unable to close the searchbar with the back arrow that appears on it.
I've tried numerous things. Poping with navigator, etc..
I need to use inBar:true

Is there an error in console? I cannot reproduce with the example in the latest PR #46


Correct uploaded artifact.

Summary:
We use the uploaded Marathon tarball artifact to comment on a pull
requests with instructions on how to update DC/OS with the changes from
Marathon.

You've might have noticed that our CI was not commenting with a diff for the buildinfo.json anymore. The reason is that we did not build the DC/OS Registry package.


Cannot build with Visual Studio 2022 because cpp-pm/hunter v0.23.258 does not support VS 2022.

Hi.
I'm reporting an error that occurred when I tried to build this project with Visual Studio 2022.
Problem
Currently, the "cpp-pm/hunter v0.23.258" used in this project supports Visual Studio 2019 and earlier.
https://github.com/luxonis/depthai-core/blob/29e2a5479e9edece375e4596e6561afcc8bfb806/CMakeLists.txt#L18-L23
ref: https://github.com/cpp-pm/hunter/blob/286702056cd26b99d1ee95a30327e6ad834bc2ad/cmake/modules/hunter_setup_msvc.cmake#L87-L92
So, I cannot build this project with Visual Studio 2022.
Error:
[hunter ** INTERNAL **] Unexpected MSVC_VERSION: '1930'

Solution
Since "cpp-pm/hunter v0.23.317", "cpp-pm/hunter" supports building with Visual Studio 2022.
And I used v0.23.320 to avoid this error.
I hope you consider upgrading the dependent cpp-pm/hunter in the next update of this project.
Thanks.

@yusuke-ota
Thanks for reporting - great timing, we'll update this before the release as well. We've made necessary changes a while ago, so should be clean update: https://github.com/cpp-pm/hunter/pull/498

Updated in 78bbc384135bd2d302411b26a94d17c8e5100e24


Exclude some paths from automount standardization

Standardizing a path has historically unconditionally changed some paths in certain directories to support auto mount paths. However, there are certain directories on Darwin that exist when the system is installed that we know will never be an auto mount path, so we now instead exclude them from this behavior to avoid standardizing a path to something that has different semantic meaning.

@swift-ci please test

@swift-ci please test


package is not available (for R version 3.3.2)

Brief problem description
Believe this is an entirely new problem on the forum. When I try to run the package using the following
install.packages("streamMetabolizer", dependencies=TRUE,
repos=c("https://owi.usgs.gov/R","https://cran.rstudio.com"))
What you saw on your computer
I receive the message:
Warning in install.packages :
package ‘streamMetabolizer’ is not available (for R version 3.3.2)
Warning in install.packages :
unable to access index for repository https://cran.rstudio.com/bin/windows/contrib/3.3:
cannot open URL 'https://cran.rstudio.com/bin/windows/contrib/3.3/PACKAGES'
I received this same message using the most recent 4.2.1 version of R.
A colleague also tried to install the package and received the same message. Both of us were able to download Lake Metabolizer.
Any suggestions are most appreciated.
mlbrooks

Bob Hall was good enough to point out that I likely needed to install the "remote' package, which I did from the cran mirror.
Following that step, I followed his advice below:
First install the unitted dependency:

remotes::install_github('appling/unitted')

You can then install the most cutting edge version of streamMetabolizer with this command:

remotes::install_github("USGS-R/streamMetabolizer")

Thanks, Bob.

I also have the same problem.  I installed "remote' package using remotes::install_github('appling/unitted') and the tried to install streamMetabolizer using the following code.
remotes::install_github("USGS-R/streamMetabolizer")
I keep getting following error
ERROR: dependency 'LakeMetabolizer' is not available for package 'streamMetabolizer'

removing 'C:/Users/sasin/AppData/Local/R/win-library/4.2/streamMetabolizer'
Warning messages:
1: package ‘LakeMetabolizer’ is not available for this version of R

A version of this package for your version of R might be available elsewhere,
see the ideas at
https://cran.r-project.org/doc/manuals/r-patched/R-admin.html#Installing-packages
2: In i.p(...) :
installation of package ‘C:/Users/sasin/AppData/Local/Temp/RtmpQVMMtp/file2804513054a0/streamMetabolizer_0.12.0.tar.gz’ had non-zero exit status
Please let me know what to do
Thanks

Greetings,
Last week, I continued my efforts to load streamMetabolizer on a second laptop. Since the instructions on USGS-R/streamMetabolizer produced the error message described below, I spent some time searching for a means to download LakeMetabolizer. As a result, I found that it has been removed from the cran mirror as of 10/3/2022.
Before that date, I downloaded the LakeMetabolizer package on the one laptop on which I can run streamMetabolizer. Thus, my conclusion is that it would be helpful if the LakeMetabolizer package were made available again despite it's apparent flaws. Seems essential.
Best regards,
Marj
Dr. Marjorie L Brooks
Biogeochemistry and Aquatic Ecology
1125 Lincoln Dr, MC 6501
Carbondale, IL 62901
Office: Life Science II Building, Room 317
Laboratory: Life Science II Building, Room 311
Cell:<PHONE_NUMBER>
Tel:<PHONE_NUMBER>
From: sasindug @.>
Sent: Wednesday, October 26, 2022 9:28 AM
To: USGS-R/streamMetabolizer @.>
Cc: mlbrooks @.>; Author @.>
Subject: Re: [USGS-R/streamMetabolizer] package is not available (for R version 3.3.2) (Issue #416)
[EXTERNAL EMAIL ALERT]: Verify sender before opening links or attachments.
I also have the same problem. I installed "remote' package using remotes::install_github('appling/unitted') and the tried to install streamMetabolizer using the following code.
remotes::install_github("USGS-R/streamMetabolizer")
I keep getting following error
ERROR: dependency 'LakeMetabolizer' is not available for package 'streamMetabolizer'

removing 'C:/Users/sasin/AppData/Local/R/win-library/4.2/streamMetabolizer'
Warning messages:
1: package 'LakeMetabolizer' is not available for this version of R

A version of this package for your version of R might be available elsewhere,
see the ideas at
https://cran.r-project.org/doc/manuals/r-patched/R-admin.html#Installing-packageshttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcran.r-project.org%2Fdoc%2Fmanuals%2Fr-patched%2FR-admin.html%23Installing-packages&data=05|01|mlbrooks%40siu.edu|f93d7e28468441d6834408dab766b09b|d57a98e7744d43f9bc9108de1ff3710d|0|0|638023948922686624|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=nsvGBk%2F%2Fz%2BfA2bKGnU1ZoYCs8FhysJzR%2FS5i1KZgnPo%3D&reserved=0
2: In i.p(...) :
installation of package 'C:/Users/sasin/AppData/Local/Temp/RtmpQVMMtp/file2804513054a0/streamMetabolizer_0.12.0.tar.gz' had non-zero exit status
Please let me know what to do
Thanks

Reply to this email directly, view it on GitHubhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUSGS-R%2FstreamMetabolizer%2Fissues%2F416%23issuecomment-1292224363&data=05|01|mlbrooks%40siu.edu|f93d7e28468441d6834408dab766b09b|d57a98e7744d43f9bc9108de1ff3710d|0|0|638023948922686624|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=Nj%2Fk%2FiltLnQu01eEI2gSyvMT255JznDad4YPAThQ71Y%3D&reserved=0, or unsubscribehttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FA3M5LUOEHJ24KLSGOT5772LWFFEYPANCNFSM6AAAAAAQ3XRSA4&data=05|01|mlbrooks%40siu.edu|f93d7e28468441d6834408dab766b09b|d57a98e7744d43f9bc9108de1ff3710d|0|0|638023948922686624|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=jkZAPB0Ujj9IQwN%2F%2BnZ0v5BfQwXclx%2FlYmq5H15rvFc%3D&reserved=0.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

Thanks for letting me know.

LakeMetabolizer is available via devtools::install_github('GLEON/LakeMetabolizer')
and should be run in addition to:
remotes::install_github('appling/unitted')
remotes::install_github("USGS-R/streamMetabolizer")

Oh wow, I didn't realize LakeMetabolizer was removed from CRAN. I created an issue. https://github.com/GLEON/LakeMetabolizer/issues/147
In the meantime, the solution from @sasindug should work. I'd slightly revise that to
remotes::install_github('GLEON/LakeMetabolizer')
remotes::install_github('appling/unitted')
remotes::install_github('USGS-R/streamMetabolizer')

So you can do it all with remotes

Thank you.
Dr. Marjorie L Brooks, Associate Professor
Biogeochemistry and Aquatic Ecology
1125 Lincoln Dr, MC 6501
Carbondale, IL 62901
Office: Life Science II Building, Room 317
Laboratory: Life Science II Building, Room 311
Cell:<PHONE_NUMBER>
Tel:<PHONE_NUMBER>
From: Jordan S Read @.>
Sent: Wednesday, October 26, 2022 11:08 AM
To: USGS-R/streamMetabolizer @.>
Cc: mlbrooks @.>; Author @.>
Subject: Re: [USGS-R/streamMetabolizer] package is not available (for R version 3.3.2) (Issue #416)
[EXTERNAL EMAIL ALERT]: Verify sender before opening links or attachments.
Oh wow, I didn't realize LakeMetabolizer was removed from CRAN. I created an issue. GLEON/LakeMetabolizer#147https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FGLEON%2FLakeMetabolizer%2Fissues%2F147&data=05|01|mlbrooks%40siu.edu|532ba5ff27a4464117f808dab774b495|d57a98e7744d43f9bc9108de1ff3710d|0|0|638024009316734752|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=TtusfZr4NLezVJcyLXdcbJxFMkimfVWnKKmE6hvORiI%3D&reserved=0
In the meantime, the solution from @sasindughttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsasindug&data=05|01|mlbrooks%40siu.edu|532ba5ff27a4464117f808dab774b495|d57a98e7744d43f9bc9108de1ff3710d|0|0|638024009316734752|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=lhqRHrCqe137iZhj5c%2F4%2FYPIWM32otSE2b7ObKFc8io%3D&reserved=0 should work. I'd slightly revise that to
remotes::install_github('GLEON/LakeMetabolizer')
remotes::install_github('appling/unitted')
remotes::install_github('USGS-R/streamMetabolizer')
So you can do it all with remotes

Reply to this email directly, view it on GitHubhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUSGS-R%2FstreamMetabolizer%2Fissues%2F416%23issuecomment-1292349409&data=05|01|mlbrooks%40siu.edu|532ba5ff27a4464117f808dab774b495|d57a98e7744d43f9bc9108de1ff3710d|0|0|638024009316734752|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=x9qN2PDTi%2BA4%2BOt1DA9VRt4oXstMKHsXn81hScMnF2g%3D&reserved=0, or unsubscribehttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FA3M5LUPWMQ6QQAHVESNTMPLWFFQQXANCNFSM6AAAAAAQ3XRSA4&data=05|01|mlbrooks%40siu.edu|532ba5ff27a4464117f808dab774b495|d57a98e7744d43f9bc9108de1ff3710d|0|0|638024009316890980|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=DHUAJ2Re8%2Br9yGn0OGCE%2ByYBmUeemhfaVpFkw0RVbN0%3D&reserved=0.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

LakeMetabolizer is back on CRAN https://cran.r-project.org/web/packages/LakeMetabolizer/index.html

Good to hear!
Dr. Marjorie L Brooks
Biogeochemistry and Aquatic Ecology
1125 Lincoln Dr, MC 6501
Carbondale, IL 62901
Office: Life Science II Building, Room 317
Laboratory: Life Science II Building, Room 311
Cell:<PHONE_NUMBER>
Tel:<PHONE_NUMBER>
From: Jake Zwart @.>
Sent: Wednesday, November 16, 2022 6:11 AM
To: USGS-R/streamMetabolizer @.>
Cc: mlbrooks @.>; Author @.>
Subject: Re: [USGS-R/streamMetabolizer] package is not available (for R version 3.3.2) (Issue #416)
[EXTERNAL EMAIL ALERT]: Verify sender before opening links or attachments.
LakeMetabolizer is back on CRAN https://cran.r-project.org/web/packages/LakeMetabolizer/index.htmlhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcran.r-project.org%2Fweb%2Fpackages%2FLakeMetabolizer%2Findex.html&data=05|01|mlbrooks%40siu.edu|5dc6018e60bc49f5a19208dac7cb9e36|d57a98e7744d43f9bc9108de1ff3710d|0|0|638041974628160681|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=DuVSfeA6fDn%2Fwuxq5nejP5ERW7LA9CKYsX7QyaqaO2M%3D&reserved=0

Reply to this email directly, view it on GitHubhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUSGS-R%2FstreamMetabolizer%2Fissues%2F416%23issuecomment-1316910962&data=05|01|mlbrooks%40siu.edu|5dc6018e60bc49f5a19208dac7cb9e36|d57a98e7744d43f9bc9108de1ff3710d|0|0|638041974628160681|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=q7Fgg92FketGZ0%2B6Adw8t%2BousLC5ekZ6D%2FFoVLU0K%2Fc%3D&reserved=0, or unsubscribehttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FA3M5LUPZ62KNPHI2VFQ3LC3WITFM5ANCNFSM6AAAAAAQ3XRSA4&data=05|01|mlbrooks%40siu.edu|5dc6018e60bc49f5a19208dac7cb9e36|d57a98e7744d43f9bc9108de1ff3710d|0|0|638041974628160681|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=ezgH%2FLTTqFbkNM0n1zT6v0c%2FvasolnWJVliDYRxXqZQ%3D&reserved=0.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

Thanks @jzwart !

Yay for community debugging! Thanks, everyone.

Thanks, Alison.
Dr. Marjorie L Brooks
Biogeochemistry and Aquatic Ecology
1125 Lincoln Dr, MC 6501
Carbondale, IL 62901
Office: Life Science II Building, Room 317
Laboratory: Life Science II Building, Room 311
Cell:<PHONE_NUMBER>
Tel:<PHONE_NUMBER>
From: Alison Appling @.>
Sent: Sunday, July 2, 2023 3:17 PM
To: USGS-R/streamMetabolizer @.>
Cc: mlbrooks @.>; Author @.>
Subject: Re: [USGS-R/streamMetabolizer] package is not available (for R version 3.3.2) (Issue #416)
[EXTERNAL EMAIL ALERT]: Verify sender before opening links or attachments.
Yay for community debugging! Thanks, everyone.

Reply to this email directly, view it on GitHubhttps://github.com/USGS-R/streamMetabolizer/issues/416#issuecomment-1616806747, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3M5LUO25NDDB3SM4XE4FLLXOHJMJANCNFSM6AAAAAAQ3XRSA4.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>


DevOps Automation SIG Meeting - June 20, 2024

Date
Thursday, June 20 2024 - 12pm ET; 5pm UK
Untracked attendees

Name
Firm
Comment

Meeting notices

FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact<EMAIL_ADDRESS>with any questions.

FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

[ ] Convene, roll call, welcome new people
[ ] Approve previous meeting minutes
[ ] OSSF London reminder
[ ] Reminder - #203
[ ]  Working Group updates

[ ] Architecture as Code - @rocketstack-matt / @yt-ms
[ ] Backstage - @cnygardtw
[ ] OSS Supply Chain Risk Management - @johnmark
[ ] Automated Change Deployment - @rvema

[ ] Approach for onboarding AI/ML models (e.g., hugging face)
[ ] Approach to integrate regulatory compliance (e.g., FINRA 1220(b)(3)) with automated change deployment
[ ] AOB, Q&A & Adjourn (5mins)

Decisions Made

[ ] Decision 1
[ ] Decision 2
[ ] ...

Action Items

[ ] Action 1
[ ] Action 2
[ ] ...

Zoom info
Join Zoom Meeting

https://zoom.us/j/94904595244
Meeting ID: 949 0459 5244
Passcode: 545224
Find your local number: https://zoom.us/u/aesEqmNODb

Github Repo: https://github.com/finos/devops-automation/
Project Board: https://github.com/orgs/finos/projects/33
Mailing List: Email<EMAIL_ADDRESS>to subscribe to our mailing list

amol shukla/morgan stanley

Karl Moll / FINOS

Matthew Bain / Morgan Stanley

<EMAIL_ADDRESS>

David Casper JPMC

https://fedscoop.com/nist-launches-genai-evaluation-program-releases-draft-ai-publications/

Tracy discussed 2 projects:
https://docs.ortelius.io/guides/userguide/introduction/
https://cdevents.dev/


Replce remaining instances of util.to_forward_slash_path with LogicalPath

Fixes
Fixes WB-NNNN
Fixes #NNNN
Description
What does the PR do?
Testing
How was this PR tested?
Checklist

[ ] Include reference to internal ticket "Fixes WB-NNNN" and/or GitHub issue "Fixes #NNNN" (if applicable)
[ ] Ensure PR title compliance with the conventional commits standards

copilot:poem

Current dependencies on/for this PR:

main

PR #5493

PR #5494

PR #5498

PR #5499

PR #5500

PR #5501

PR #5502   👈

PR #5495

PR #5496

PR #5497

This comment was auto-generated by Graphite.


etcd: increment port for embedded etcd server

Instead of letting the OS pick a random port for us in a way that wasn't
concurrency safe, we use an atomically incremented port to avoid
collisions.

I think this solution won't help in case of parallel itests, because multiple processes can still compete for the same ports just as before.

Yes, you are right, this will not work for itests. Unfortunately we cannot just export LastPort because lnd is running in a different process than the itest harness and overwriting the value would have no effect.
I think we should proceed with this to unblock the unit tests and then fix the itests properly by adding new --db.etcd.embedded-client-listen and --db.ectd.embedded-peer-listen when we enable the etcd itests on Travis.

Yes, you are right, this will not work for itests. Unfortunately we cannot just export LastPort because lnd is running in a different process than the itest harness and overwriting the value would have no effect.
I think we should proceed with this to unblock the unit tests and then fix the itests properly by adding new --db.etcd.embedded-client-listen and --db.ectd.embedded-peer-listen when we enable the etcd itests on Travis.

SGTM


processJavaStart failed when using javaagent

Whenever I try to start my Fabric 1.20.1 server (latest build, installed yesterday) using this as javaagent, I am getting the following error:
WARNING: Using incubator modules: jdk.incubator.vector
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:491)
        at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:503)
Caused by: java.lang.NoClassDefFoundError: org/apache/logging/log4j/LogManager
        at io.dogboy.serializationisbad.core.SerializationIsBad.<clinit>(SerializationIsBad.java:14)
        at io.dogboy.serializationisbad.agent.SerializationIsBadAgent.premain(SerializationIsBadAgent.java:11)
        ... 6 more
Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.LogManager
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
        ... 8 more
*** java.lang.instrument ASSERTION FAILED ***: "result" with message agent load/premain call failed at t:\workspace\open\src\java.instrument\share\native\libinstrument\JPLISAgent.c line: 422
FATAL ERROR in native method: processing of -javaagent failed, processJavaStart failed

I am using the following startup parameters:
java -javaagent:serializationisbad-1.3.jar -Xms5120M -Xmx5120M --add-modules=jdk.incubator.vector -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -jar fabric.jar --nogui
Is there something I am doing wrong here, or is this an issue with serializationisbad?

but 1.20.1 isnt affected..

Really? I wasn't aware. I thought versions outside of 1.7.* / 1.12.* still had a chance to be affected. Anyways, thanks for the quick response.

It looks like thats some sort of incompatibility with Fabric. Thank you, I will take a look at it!

Really? I wasn't aware. I thought versions outside of 1.7.* / 1.12.* still had a chance to be affected. Anyways, thanks for the quick response.

While we currently don't know of any cases in 1.20, there's always a little chance that there are affected mods.

Seems to be working now! Thanks :)


Issues maintaining selection on data change

Describe the bug
When using server driven datagrid, the feature that maintains selection has strange edge cases. Namely, when you select all items, change the data displayed such that a new items is in the grid, the select all button maintains checked. Additionally, pressing the select all button again does not select the new row in the grid. The workaround for this is to call this.datagrid.rows.notifyOnChanges();.
How to reproduce

Go to https://stackblitz.com/edit/clarity-v3-light-theme-qa7fsd
Click on the select all rows button
Click on "New Items"
Observe that now select all is still checked, even though "Mary" is not selected.
Click the select all rows button twice
Observe that now select all is still checked, even though "Mary" is not selected.

Expected behavior
We would expect the select all button to be an indicator of whether all rows currently displayed are checked. Additionally, we would expect pressing select all to select all rows currently displayed in the datagrid.
Versions
App

Angular: 9.0.0
Clarity: 3.1.3

Device:

Type: Macbook Pro
OS: MacOs 10.15.4
Browser Chrome
Version 83

Hi Ryan,
Thanks for the stackblitz.
You are correct that select all button should reflect the currently displayed rows.
In the example, it looks like the component that wraps datagrid has an input for trackBy.
I updated the stackblitz and passed in the trackBy fn supplied in the host: https://stackblitz.com/edit/gh-4742-datagrid-trackby
The stackblitz now behaves correctly. I'm going to close this as I believe its working as it should. Feel free to re-open if I missed something in your use case.


Donut chart does not have dark mode

There are dark mode theme guide for PatternFly and a guide on how to create one that can be used to achieve this.
https://www.patternfly.org/developer-resources/dark-theme-handbook/

Dark mode could be added with manipulating the CSS.


cat-select: label is truncated when selecting multiple entities

when using cat-select with multiple attribute.
Ref: https://haiilo.atlassian.net/browse/TSP-242
When user tries to select multiple entities in cat-select component, the label is truncated.

It was fixed with the font-family change to Lato. The issue is reproducible only with Source Sans Pro font family


Testing

Ported to use Flask-Testing. Tests now use a separate Postgres database (oktest). Examples of unit tests (test_user.py) and integration tests (test_main.py, test_auth.py)

Looks much better! Thanks.
Let's make sure travis has the right test running command. (see .travis.yml and Makefile)
Also travis is failing because it can't import secret_keys
Traceback (most recent call last):
  File "./manage.py", line 9, in <module>
    from server import create_app
  File "/home/travis/build/Cal-CS-61A-Staff/ok/server/__init__.py", line 10, in <module>
    from server.controllers.auth import auth, login_manager
  File "/home/travis/build/Cal-CS-61A-Staff/ok/server/controllers/auth.py", line 12, in <module>
    from server.secret_keys import google_creds
ImportError: No module named secret_keys

There are a variety of ways to fix this. The hacky way is a try catch but I'd like to avoid that. We could have a manage.py command that creates the secret key file (loads the creds from env variables)

Travis Passes (Though we fail the coveralls check). Merging.


Can't teleport to users' homes who have a * Geyser prefix

I use geyser on my server and use "*" as a prefix, but I can't teleport to these players' homes

Needs testing again with latest dev build

You can also change the prefix to ".", available in my server

The "." prefix is reserved due to being used to separate owners from home names in that format
If you'd like to see a config option to change that, file a ticket by all means :) This original issue should be fixed though afaik


Getting RollupJob error: "ERROR at Row:1:Column:49 Invalid field: 'Name'. Review Rollup Summary Schedule Items"

Describe the bug
I'm not sure what's going on, but running the RollupJob is resulting in an invalid field error on the 'Name' field. This is a field for which permissions are automatically granted when you have access to an object, so I need some help understanding what could possibly going wrong.
This is replicatable in production and full sandbox.
To Reproduce
Steps to reproduce the behavior:

Create a Lookup Rollup Summary on Account that uses a Calculation Mode of "Realtime" and activate it (may or may not need both the Parent and Child objects to be "Account").
Merge two accounts to generate a "Lookup Rollup Summary Schedule Item".
Run the RollupJob.
Observe an error email is received:
Error:
dlrs__LookupRollupSummary2__c, dlrs__ParentId__c, dlrs__ParentKeyPrefix__c
^
ERROR at Row:1:Column:49
Invalid field: 'Name'. Review Rollup Summary Schedule Items

Expected behavior
No error should be encountered on the Name field as this field is automatically granted when the user has access to the "Lookup Rollup Summary Schedule Item" object and the fields are being dynamically queried based on user access.
Screenshots

Additional context
N/A

@lrock-eqt we would recommend that you first post in the Trailblazer Community Group when you run into problems. There are a great many more people that watch that group who could be of assistance to you.
As for this, I haven't seen this error before in this context. I would ensure your user has the Lookup Rollup Summaries - Configure Rollups permission set assigned as a first place to look.
Aside from that I would use Debug Logging to try and catch this in the act, from there you should be able to pull out the SOQL_EXECUTE log line that represents the actual attempted query, we can look at see what it is doing and maybe diagnose from there.
Additionally, I see that you've sent a rollup configuration screenshot. Does that represent the only configuration that is present in your scheduled items or are there others at play?

@aheber I ran a lot of tests and I believe I've identified the source of the issue. I found a set of 26 records that were causing a problem.
I ran the records in groups where they had the same value for the "Name" field and I do not get the error.
I ran the records in groups where they had the same value for the "dlrs__LookupRollupSummary2__c" field and did not get the error.
I ran the records in groups where they had the same value for the "dlrs__ParentId__c" field and I did get the error.
This is repeatable with multiple combinations where Name and dlrs__LookupRollupSummary2__c are unique but dlrs__ParentId__c is identical.
Here are two sample records that caused the error when existing in the set at the same time:
LookupRollupSummaryScheduleItems_SampleErrorLines_SameParent.csv
The error is definitely happening in the RollupJob try/catch from lines 45 - 79, specifically in the RollupService.processScheduleItems method. The job fails for ALL "Lookup Rollup Summary Schedule Item" records in scope, even those on other objects that do not display the conflict noted above, which to my understanding means that the issue has to be manually resolved every time it is encountered in any two records in the set. Evaluating these records without this "All or None" concept would make the issue much easier to resolve and would cause much fewer headaches.
I should note that I have only replicated this error for Accounts that were merged, where the DLRS's have a calculation mode of "Realtime", so for us it is a unique scenario but definitely one that we will encounter often, as we do a lot of duplicate management on Accounts.

@aheber I just noticed that we are still on version 2.12. Potentially this has already been addressed, I will update the version and re-test the scenario.

Upgrading the version resolved the issue. Thanks for taking a look.


Node stays on Ready,SchedulingDisabled

We are using Kured on AKS and I regularly I see that nodes stay on status Ready,SchedulingDisabled and I have to uncordon them manually.
When I look into the log file of the kured pod it shows:
time="2019-03-06T06:30:27Z" level=info msg="Kubernetes Reboot Daemon: 1.1.0"
time="2019-03-06T06:30:27Z" level=info msg="Node ID: aks-default-13951270-0"
time="2019-03-06T06:30:27Z" level=info msg="Lock Annotation: kube-system/kured:weave.works/kured-node-lock"
time="2019-03-06T06:30:27Z" level=info msg="Reboot Sentinel: /var/run/reboot-required every 1h0m0s"
time="2019-03-06T06:30:28Z" level=info msg="Holding lock"
time="2019-03-06T06:30:28Z" level=info msg="Uncordoning node aks-default-13951270-0"
time="2019-03-06T06:30:29Z" level=info msg="node/aks-default-13951270-0 uncordoned" cmd=/usr/bin/kubectl std=out
time="2019-03-06T06:30:29Z" level=info msg="Releasing lock"
So it says it uncordoned it, but still I regularly see that nodes are in fact not uncordoned.
Is this something you guys see more often?

I've encountered this twice this moring.

@bramvdklinkenberg interesting - thanks for the report. @sylr are you on AKS too?
Kured simply runs kubectl uncordon $node- you can see the output from that command above indicated success:
Uncordoning node aks-default-13951270-0
node/aks-default-13951270-0 uncordoned

The only thing that comes to mind is that there's some incompatibility between the version of kubectl in the kured images you're using and AKS - next time this happens, it would be interesting if you could report

The AKS kubernetes server version
The kured image version
The version of kubectl that you subsequently used to uncordon successfully

Hi @awh , I am no longer working at the customer where I encountered the issue. Maybe @sylr can provide the requested info

I've got the same issue using AKS and the versions are as follows.

Kubernetes version 1.13.5
Kuredi image: weaveworks/kured:1.1.0
kubectl client: Client Version: version.Info{Major:"1", Minor:"11+", GitVersion:"v1.11.0+d4cacc0", GitCommit:"d4cacc0" ...}

Had an issue just like this, versions following.

AKS Kubernetes server version is 1.12.7
The kured image version is weaveworks/kured:1.2.0
The working local kubectl version is version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.3", GitCommit:"5e53fd6bc17c0dec8434817e69b04a25d8ae0ff0", GitTreeState:"clean", BuildDate:"2019-06-06T01:44:30Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"windows/amd64"}

It will has this problem when there is only 1 node in AKS because the pod cannot be re-created after node rebooted.

@hermanho  so how to re-create the pods after node reboot?

Hi guys, we just had this issue on one of our AKS cluster but we don't have any PDB configured...

AKS Version: v1.15.7
kured image: docker.io/weaveworks/kured:master-f6e4062

We also encountered this issue in one of our aks 3 nodes cluster.
AKS Version: v1.14.7
kured image: docker.io/weaveworks/kured:1.3.0
We also observed another behaviour, although rebooted machine was in Ready,SchedulingDisabled state, kured continued to patch the next machine.

Hello,
Same for us.
AKS Version: v1.15.10
kured image: docker.io/weaveworks/kured:1.3.0

Same here.
No PDB, kured 1.3.0, 2 nodes AKS cluster, kubernetes version 1.16.8
One cluster isn't uncordoned after reboot

We also had this problem:
AKS kubernetes v1.15.10
kured image: docker.io/weaveworks/kured:1.3.0

Problem persists on AKS with K8S v1.16.15.

https://github.com/weaveworks/kured/pull/283

Still having this/similar issue. If a reboot/drain hangs because of a pdb and you manually delete the pod, a reboot is done but the node is still unschedulable (SchedulingDisabled)

We are still having this issue, any progress here? Thanks!

Issue still exists .

Kubectl:"v1.21.2"
AKS: "v1.19.11"
Kured: "1.6.1"

I think, on top of the versions used, it would be good to know a bit about the environment. What are the CLI arguments you give? Did you wait for the period? What is the sentinel reporting?

Encountered the same issue.
AKS: 1.21.2
Kured: 1.8.1

Is anyone experiencing this who isn't using PodDisruptionBudget configurations?
Something like this would be in the kured logs:
"error when evicting pods/"coredns-58567c6d46-sdctb" -n "kube-system" (will retry after 5s): Cannot evict pod as it would violate the pod's disruption budget.

Since @hermanho mentioned single node clusters  kured won't work on a single node aks cluster because aks sets a pdb on coredns.
There are other cases where pdbs will block too like if its configrued to allow no disruptions (maxUnavailable=0 || minAvailable==replicas) or if pods are actually not coming up to ready after eviction.  But you would see the "error when evicting pods" message in kured logs menteions above.
We're less clear why this might happens when you its not blocking on evcition/pdb..

Same issue
AKS: 1.21.9
Kured: 1.9.2
time="2022-05-23T12:50:02Z" level=info msg="Reboot schedule: ---MonTueWedThu------ between 09:00 and 14:00UTC"
time="2022-05-23T12:50:02Z" level=info msg="Reboot check command: [test -f /var/run/reboot-required] every 1h0m0s"
time="2022-05-23T12:50:02Z" level=info msg="Reboot command: [/bin/systemctl reboot]"
time="2022-05-23T12:50:07Z" level=info msg="Holding lock"
time="2022-05-23T12:50:07Z" level=info msg="Uncordoning node aks-xxxxxxx-xxxxx-vmss000000"
time="2022-05-23T12:50:07Z" level=info msg="Releasing lock"

Hello.
I'm facing the exact same issue.  I have checked the (PodDisruptionBudget specification)[https://kubernetes.io/docs/reference/kubernetes-api/policy-resources/pod-disruption-budget-v1/#PodDisruptionBudgetSpec].
The unique way to avoid this problem is to perform a check before the drain, checking if any of the pods hosted in the node that is going to be drained has a status.disruptionsAllowed property equal to 0. If so, this deployment/pod has to be scaled to 1 more replica, which with the node cordoned will go to another node if exists ...
The casuistry is a bit complicated, but a feature request for this can be created to resolve this issue.

Hi @carvido1,
thanks for your research with PDBs. The problem is, that kured doesn't know anything about the hosted workloads and much of them cannot be scaled in a generic way.
When there's a PDB with a disruptionAllowed of 0, there are two things to consider:

Is a disruption of the workload allowed and there's just no second instance to satisfy the PDB? Then remove the PDB.
Is no disruption allowed (with a single replica) and the PDB is a precaution to prevent this from happening? Then an automatic failover for that node is not possible in general (independently from kured). Then maybe remove kured from that node?

@ericsuhong A node with pods on it which have a PDB which cannot be fulfilled (either no disruptions are allowed or other resource-limitations) cannot be drained. Please check first why your PDBs are blocking.

@jackfrancis I think it is better to log error in uncordon instead of log fatal: https://github.com/weaveworks/kured/blob/main/cmd/kured/main.go#L498

@yewmsft yes, that's the inheritance of an unfortunate pattern. Would you like to submit a PR updating all instances of log.Fatalf (or equivalent) to log.Errorf (or equivalent)?
Maybe there are some codepaths where we actually want to kill the runtime, but there's a good chance we shouldn't be doing that anywhere.

We are also having issues with nodes remaining cordoned, but we do not use PDBs. In our case, it's pretty clear what is happening. Occasionally we have nodes that get stuck when booting. For example, sometimes a node will get stuck in the BIOS because of a detected uncorrectable memory error, and the boot will not proceed until the issue is resolved. Meanwhile, we have Kured configured with the flag --lock-ttl=4h. When the machine doesn't come back up after 4h, some other node takes the lock and rebooting of other nodes proceeds. Eventually, the issue with the broken node is resolved either with manual intervention, or sometimes on its own. When the node does come back up it is still cordoned and will stay that way until manually uncordoned by an operator. We don't generally notice this until an alert fires warning us that a node has been in an unschedulable state for too long.
It would be nice if a Kured instance was able to notice that the node eventually rebooted, that its node was Ready but still cordoned, and uncordon the node, even though that instance no longer holds the global lock. I recognize that this is perhaps a rather unusual edge case, and don't view this necessarily as a bug or shortcoming of Kured, though it would be nice if Kured could handle this edge case.
Our cluster is made up of many hundreds of globally distributed bare-metal machines which all boot over the network, and there are all sorts of reasons that a node might not reboot within the 4h --lock-ttl window, so we encounter this issue at least once every month or two.

I understand the topic. The condition for the edge-case detection here would be: Node is Ready and Node is Cordoned and Node does not hold the lock.
But this doesn't differ from a manual cordoned node via kubectl. So kured would always uncordon a manual cordoned node then.

Could this be helped with the --annotate-nodes flag, or some other sort of annotation? For example, the detection could be something like:

Node is Ready
Node is Cordoned
Node does not hold the lock
Node has annotation weave.works/kured-reboot-in-progress (or some other unique annotation)
Node should be uncordoned by kured

I suppose that this could open the possibility, though likely small, that a manual cordon could be confused with a kured cordon. However, the likelihood seems fairly small that a node with the annotation weave.works/kured-reboot-in-progress would have been manually cordoned. I have not looked at the code yet, so don't know when that annotation is applied or when/how it gets removed. But it would seem like an error case that a node is Ready, Cordoned, does not hold the lock and has that annotation.

That may be a possible solution, yes.

I have a node on a non-aks cluster (k3s cluster running on VMs) where every morning all nodes reboot one by one, and the last 3 days node 3 has always remained cordoned. I'm not sure what's causing it, nor how to resolve it - but it's making a third of my cluster unusable at the moment, so I would love to figure out why and what I can do about it.
I'm using the helm chart with the following options:
      rebootCommand: /usr/bin/systemctl reboot
      forceReboot: true
      drainTimeout: 10m
      lockReleaseDelay: 20m
      startTime: 3am
      endTime: 6am

Though, I recently changed it from this to see if that helped:
rebootCommand: /usr/bin/systemctl reboot
lockReleaseDelay: 10m
startTime: 3am
endTime: 6am

Hello there @Alxandr .
Have you tried to gather more information why the node remains cordoned? In addition it will be interesting if it gets restarted or not, you can run uptime command to know it.
It can happen that due to some pod disruption budget or maybe a finalizer condition that leads the pod to remain stuck in termination state
Regards.

It does get restarted. Kured also notifies that it is about to get restarted.

I'm unable to figure out why this node in particular does not get uncordoned. All three nodes run the same os and setup. All three are virtual machines on the same physical host running in the same supervisor.
If there is any particular diagnostics I can run/information you would like please let me know as I have easy access to all of these nodes when I am home.


"Download story" results in a zip contains html file only

When clicking on "Download story" i receive a zip file (odyssey.zip) that contains only one file - odyssey.html.
It seems to me like a bug, i expect to receive 3 files - html, css, js.
Thanks!

CSS and JS are online and linked in the head of the html file (I guess you can download them and edit them locally):

[...]


WIP: Allow #[serde(rename=str|bool|int)] for enum variants.

(This commit contains untested code and a dirty hacks so that the rename="str" still works)
#745 Issue for this PR
I got started and it was not too hard, serde derive is written very well. (I'm still confused by the deserializiation part, but I have not looked into it to much)
Some questions:

Non string literals are not stabilized yet. I think we should support a fallback with #[serde(rename="1", rename_as="int")]. This is necessary since serde supports old rustc versions anyway, so even with stabilization this will not go away.error: non-string literals in attributes, or string literals in top-level positions, are experimental (see issue #34981)
   --> tests/test_macros.rs:713:9
    |
713 |         #[serde(rename=true)]
    |         ^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add #![feature(attr_literals)] to the crate attributes to enable

Currently I implemented a type StrBoolInt, but I had to define it twice, once in serde_derive_internals and once again in serde_derive, so that I can implement ToTokens.
The second StrBoolInt is stuffed into fragment.rs. Should I use a new file or is that ok?
I decided to only allow non-string renames for internally and adjacently tagged enums. Correct?
As far as I understood it, Serializers have the choice to serialize either with the name of the variant or with the id. What happens if rename=2 is stated for attribute with field number 1? Should I just replace the whole the derserialize_u32 part as soon as an int-rename is encountered?
What is that [#serde(field_identifier/variant_identifier)] setting? It is not mentioned in the docs.

Thx, Daniel

Hey @dtolnay .
I think this is ready for a first review.
As for my Questions.

The implementation treats #[serde(rename=3)] the same as #[serde(rename="3", rename_as="int")] and gives errors if the parsing fails or the rename_as is used with a non string literal for rename.
still same question as above.
still same question as above.
still same question as above.
I implemented it so that deserializing by index is deactivated as soon as one rename has an int type.
still same question as above.
This PR will collide with #963 (same lines edited). I use u64 for the int type.
Naming of structs. See my own review.

Currently I implemented a type StrBoolInt, but I had to define it twice, once in serde_derive_internals and once again in serde_derive, so that I can implement ToTokens.

serde_derive depends on serde_derive_internals so it should have access to the StrBoolInt in serde_derive_internals. We can add a dependency of serde_derive_internals on quote if necessary and provide the impl there.

The second StrBoolInt is stuffed into fragment.rs. Should I use a new file or is that ok?

It should be in serde_derive_internals.

I decided to only allow non-string renames for internally and adjacently tagged enums. Correct?

Yes I agree with this choice.

What is that [#serde(field_identifier/variant_identifier)] setting? It is not mentioned in the docs.

They generate a Deserialize impl for reading field names in a struct or variant names in an enum in a way that is compatible with how derive(Deserialize) behaves on structs and externally tagged enums. See the example of field_identifier in Manually implementing Deserialize for a struct. This is helpful when you want custom Deserialize logic but the field names / variant names do not need to be custom.

What happened to this ?


Hyperlinks include the leading space in front of the text of the ticket number

anchor tags are being created around the leading space before the ticket number
 ABC-123
rather than
ABC-123

I confirm this issue is there: the blank before the issue key is also formatted as link.


feat: Include OkHttp cache for Picasso and Retrofit

Fixes #384 and Fixes #374

@Shailesh351 @rohanagarwal94 @shreyasnbhat Please review. @mejariamol is moving, so absent for a few days


Fixes GCS based ingestion

GCP allows buckets in GCS to contain underscores in their names. When this location is mapped to java.net.URI, URI#host comes out to be null as URI doesn't allow it to contain underscores which is being translated to bucket name hence mapping URI#authority to bucket name.

Description

Fixed CloudObjectLocation constructor from URI

Key changed/added classes in this PR

CloudObjectLocation

This PR has:

[ ] been self-reviewed.

[ ] using the concurrency checklist (Remove this item if the PR doesn't have any relation to concurrency.)

[ ] added documentation for new or modified features or behaviors.
[ ] added Javadocs for most classes and all non-trivial methods. Linked related entities via Javadoc links.
[ ] added or updated version, license, or notice information in licenses.yaml
[ ] added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
[ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold for code coverage is met.
[ ] added integration tests.
[ ] been tested in a test Druid cluster.

Thanks for the fix, @tejaswini-imply .
Please add some unit tests to validate that this works in the following cases:

with and without underscore
GCS, S3 and other implementations


Changing the "Sent a card" message on the chat preview

Is there a way to change the preview message from "Sent a card" to show the title within the message?

@Scheiderichv094  We have Preview functionality before sending the message. The drafted message will be posted in the General channel of the Teams for Preview.


Storybook build fails

While trying to do yarn build-storybook or yarn storybook it fails with the following error
ERR! Module not found: Error: Can't resolve '@console/dynamic-plugin-sdk/src/perspective/useActivePerspective' in '/Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/@openshift-console/dynamic-plugin-sdk/lib/api'
63% building 14/14 entries 3311/3393 dependencies 732/848 modulesinfo => Manager built (9.16 s)
ERR! ModuleNotFoundError: Module not found: Error: Can't resolve '@console/dynamic-plugin-sdk/src/perspective/useActivePerspective' in '/Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/@openshift-console/dynamic-plugin-sdk/lib/api'
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/Compilation.js:2016:28
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/NormalModuleFactory.js:798:13
ERR!     at eval (eval at create (/Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:10:1)
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/NormalModuleFactory.js:270:22
ERR!     at eval (eval at create (/Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:9:1)
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/NormalModuleFactory.js:434:22
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/NormalModuleFactory.js:116:11
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/NormalModuleFactory.js:670:25
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/NormalModuleFactory.js:855:8
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/NormalModuleFactory.js:975:5
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/neo-async/async.js:6883:13
ERR!     at /Users/ajay/Work/KIE/activemq-artemis-self-provisioning-plugin/node_modules/webpack/lib/NormalModuleFactory.js:958:45```

maybe related: https://github.com/openshift/console/issues/12255

We no longer use storybook, clossing the issue.


Delay the selection of traitors at round start.

About the PR
This PR delays traitor selection until X+Y time has passed, where X is a constant and Y is a random number. Both are server-side configurable.
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:

add: Added a delay at the start of Traitor mode before players are selected to be an antagonist.

This is to prevent traitor suicide rolling, right?

This is to prevent traitor suicide rolling, right?

There's that and it stops some of the cheese strats where you emag an objective within 30 seconds before anyone who could stop you can even walk there.

I’m going to be honest, while it might just be that I’m used to how it currently works, I don’t really see the need for this. Traitor suicide rolling is more of a player issue than a game issue, and those players should just be banned instead of the game changed to accommodate them (and what’s stopping them from suiciding once enough time has passed that they know they’re not a traitor)? And the emag cheese strat is annoying, but you also have to escape on the shuttle to complete a steal objective, and sec seeing all the bridge doors emagged and the comms console board gone is going to lead to an instant red alert, making escape much harder. Overall, I just don’t think this is a needed change.

I don't mind this. Random delays for this kind of stuff isn't bad at all. Additionally, a small grace period is kinda nice and helps players start the round in a more typical way, even if they're a traitor.

i like it, i prefer being surprised in bar with "whiskey echo whiskey lima alpha delta" rather than in engineering. like emo said, some randomized delay would be nice

Might also be relevant to the idea of sleeper agents I heard a while ago.
Although I guess "activate sleeper agent" is kinda lame of an objective..

I kinda like the idea as long as the delay is on the shorter end like 5 minutes or so tops.

I’m going to be honest, while it might just be that I’m used to how it currently works, I don’t really see the need for this. Traitor suicide rolling is more of a player issue than a game issue, and those players should just be banned instead of the game changed to accommodate them (and what’s stopping them from suiciding once enough time has passed that they know they’re not a traitor)? And the emag cheese strat is annoying, but you also have to escape on the shuttle to complete a steal objective, and sec seeing all the bridge doors emagged and the comms console board gone is going to lead to an instant red alert, making escape much harder. Overall, I just don’t think this is a needed change.

It's not just emag minute one strats;  After months of playing, a number of folks have noticed that the best time to get your objective is to get it in the first few minutes of the round, before departments are filled up, before folks are back from the bathroom/kitchen when they readied up, before everyone has their bearings and the late joiners start coming in from arrivals.
It adds a little bit of a grace period for Engineers to set up AME, HoP to sort out paperwork, SecOff's to shoot the shit, Bartenders and Chefs to prep a few meals, etc.
I like it. 😃

I’m going to be honest, while it might just be that I’m used to how it currently works, I don’t really see the need for this. Traitor suicide rolling is more of a player issue than a game issue, and those players should just be banned instead of the game changed to accommodate them (and what’s stopping them from suiciding once enough time has passed that they know they’re not a traitor)? And the emag cheese strat is annoying, but you also have to escape on the shuttle to complete a steal objective, and sec seeing all the bridge doors emagged and the comms console board gone is going to lead to an instant red alert, making escape much harder. Overall, I just don’t think this is a needed change.

It's not just emag minute one strats; After months of playing, a number of folks have noticed that the best time to get your objective is to get it in the first few minutes of the round, before departments are filled up, before folks are back from the bathroom/kitchen when they readied up, before everyone has their bearings and the late joiners start coming in from arrivals.
It adds a little bit of a grace period for Engineers to set up AME, HoP to sort out paperwork, SecOff's to shoot the shit, Bartenders and Chefs to prep a few meals, etc. I like it. 😃

I do know that the current meta is rushing the objective, and that’s what I said in my critique. My point was while it’s possible to rush to get your objective, you’re ultimately drawing much more attention to yourself (and making it much more likely you’ll get caught) than if you wait until the station’s already descended into chaos. Adding a random delay to becoming an antag feels like a solution to something that isn’t a problem.

Unless I'm not seeing something, I feel like this needs more player feedback. it's gonna be weird to be going around doing your job when you suddenly get turned into a traitor for no apparent reason. Everything else mechanically seems good though.

Traitor suicide rolling is more of a player issue than a game issue, and those players should just be banned instead of the game changed to accommodate them

this isnt how game design works. player issues are game issues

i think this change is pretty good


[New Primitive] Pagination

Feature request
Overview
A Pagination Component to navigate between multiple pages. Useful while working with responses from APIs that follow the concept of pagination.
Examples in other libraries
https://nextui.org/docs/components/pagination
Who does this impact? Who is this for?
This could be helpful for users of all kinds.

Linking previous discussion https://github.com/radix-ui/primitives/discussions/831


INSERT INTO OR IGNORE

Hello.
I use insert_df Method for load pandas' dataframe to clickhouse.
This way uses "append" method and my data is duplicate more times.
Can you add "if_exists" parameter, like in SQLAlchemy, with different results (ignore, replace, append)?
Thanks a lot.

Unlike a standard relational or document database, ClickHouse is an OLAP data store that normally allows duplicate data (there is an exception for "blocks" that are exactly the same, but I don't think that will fix your issue).  ClickHouse is really designed for fast processing of append only, immutable data, and as part of that high performance design, it has no "unique key" constraints and no simple way to update rows.
Accordingly the best approach is generally to eliminate duplicates before any insert into ClickHouse.  An alternative approach is to remove duplicates "after the fact", using some of the strategies mentioned here:  https://clickhouse.com/docs/en/guides/developer/deduplication.
If you really need update data (or ignore inserted duplicates), ClickHouse might not be the best option.  In any case, adding this kind of functionality into a client like clickhouse-connect is really not feasible.


VRF issues with internal writes or "strict" mode.

When using Vrf on mainnet, multiple errors TypeError: Cannot read properties of null (reading 'bigint') are logged when calling readState (if a previous interaction contains a call to Vrf) or writeInteraction, even if Vrf was enabled the interactions were successful.
Here is a quick example showcasing the behavior:
// const warp = WarpFactory.forTestnet(undefined, { inMemory: true, dbLocation: "/dev/null" });
// const user = await warp.testing.generateWallet();

const warp = WarpFactory.forMainnet({ inMemory: true, dbLocation: "/dev/null" });
const user = await generateWallet();

// const contractTxId = "gwQ-rKRo7GKX6vGEk1fXyILLdeO9vN4QfT97i3c2678"; // testnet
const contractTxId = "Ws9hhYckc-zSnVmbBep6q_kZD5zmzYzDmgMC50nMiuE"; // mainnet

const contract = warp
    .contract(contractTxId)
    .setEvaluationOptions({ internalWrites: false })
    .connect(user.jwk);

const txId = await contract.writeInteraction({ function: "vrf" }, { vrf: true });
console.log("txId: ", txId?.originalTxId);

const state = await contract.readState();
console.log(JSON.stringify(state.cachedValue.state, undefined, 2));

Both contractTxIds are actually valid. Their code being:
export async function handle(state, action) {
    const balances = state.balances;
    const input = action.input;
    const caller = action.caller;

    if (input.function === 'vrf') {
        if (!state.vrf) {
            state.vrf = {};
        }

        state.vrf[SmartWeave.transaction.id] = SmartWeave.vrf.value;

        return { state };
    }

    throw new Error("unrecognized input");
}

When running the example with Mainnet enabled the error is logged 2 times on readState(). And for some reason when setting internalWrites to true the error is logged 3 times on writeInteraction.
When running the example with Testnet enabled instead, the error isn't logged except when internalWrites is set to true, then the error is displayed on writeInteraction.

Thanks for the report, I'll take a look asap.

Hmm, so after a quick analysis, it seems that the 2nd. and 3rd. interactions (kkEyEaVhB52w5txTkY86z24M26hXYXRAKhtPHZlSUzg and pc1hzdsB7nxDqXul-5D6Vkul81QqH-DKX9cDk8B_ysM)

were not created with the { vrf: true } parameter.
Whenever this parameter is set in the writeInteraction, the interaction has additional tag added - the Request-Vrf tag. Whenever the sequencer gets a transaction with such tag, it knows that the Vrf data needs to be generated for this interaction.
Eg. compare the 4th interaction
https://sonar.warp.cc/#/app/interaction/WDZQrU6kYS5dvB0AgPlW5qmCMvqry3eMB02978ja9JA

it has this Request-Vrf tag:

with the 2nd. and 3rd. interaction:
https://sonar.warp.cc/?#/app/interaction/kkEyEaVhB52w5txTkY86z24M26hXYXRAKhtPHZlSUzg
https://sonar.warp.cc/?#/app/interaction/pc1hzdsB7nxDqXul-5D6Vkul81QqH-DKX9cDk8B_ysM

which don't have such tags and therefore do not have the vrf data generated - hence the error.

Keep in mind that the vrf data must be generated "per transaction" that requires vrf feature.
@asiaziola , btw., we should probably add the generated vrf data to the interaction view in Sonar - i.e. the interaction.vrf field - e.g.
 {
    "index": "zCSO2f0IGdZU5HhPRoIWC7xrOAKPWvuva0bKMRQ2YeQ",
    "proof": "nDVZDOKoQEMCLlxc6h93iSPxq9wIh6D8C_IP_x1lM28-Qei95RSRx5zj4y_EY-0PQUR-9ugr3GONepdgGeFj8QS2GLzdLEzR0-jJD9AMFYJkBuLbMWU7Zftg1I_dNdGbA0bnRxQBtqHnmgdvBhPwqEmQEfvmcATVp0qhCJMJYtuu",
    "bigint": "92336413530255378415861824142636333877904920323116062551236747077519536447972",
    "pubkey": "03027295998c12c584a11b3ffcb07f58d5392bd271f5185b1799fe775350dc75ce"
  }

Oops yeah that makes sense for these two interactions... Although, I just tried again by deploying fresh new contracts and it seems the issue is present when internalWrites is set to true: the error is displayed when calling writeInteraction even if vrf is set to true.
Btw I agree it could be a nice addition to the Sonar to see this kind of data!

Ah yeah, in case of internal writes that's a whole other story...if you've
read the internal writes docs that I've made recently you probably remember
that the first step is to dry run the newly created interaction and gather
information about internal calls...and it's this dry run that's causing the
issue here (because and the timenof a dry run there's no vrf data generated
yet).
I believe the same issue would occur if you try to create a non-internal
write interaction with strict option set to true...
I'll need to think for a while hownto solve this...
czw., 29 wrz 2022, 18:32 użytkownik Eyal Chojnowski <
@.***> napisał:

Oops yeah that makes sense for these two interactions... Although, I just
tried again by deploying fresh new contracts and it seems the issue is
present when internalWrites is set to true: the error is displayed when
calling writeInteraction even if vrf is set to true.
Btw I agree it could be a nice addition to the Sonar to see this kind of
data!
—
Reply to this email directly, view it on GitHub
https://github.com/warp-contracts/warp/issues/232#issuecomment-1262524276,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUDH5TKUDJHWYUGS622ZSNLWAXABLANCNFSM6AAAAAAQYTTZKQ
.
You are receiving this because you were assigned.Message ID:
@.***>

Yeah, I realized that's what was with strict: true but I did forget that internal writes rely on dry runs.... Which now that I think of it, causes a much bigger issue than I thought. Because this means that, due to the way vrfs and internal writes are created, an internal write cannot happen conditionally to a vrf... It could be worked around at the contract level by requiring two separate interactions (1. generate the vrf and store it; 2. run the internal write on the stored vrf) but it's less than ideal. However I don't really see a better way to achieve this without fundamentally changing how Warp implements internal writes. Should I open a new issue about this?

We can continue within this issue.
The options I see here:

Drop the support for the VRF entirely. It seems that no one have been using this so far (apart from some tests/experiments), so the damage should be minimal.
Mark that VRF is non-compatible with IW and writing interactions in a strict mode
For the sake of IW and strict mode - generate a mock VRF data - probably in a similar way, as it is being done for the local environment.

Please don't! I do see a lot of cases where VRF could be very useful. Except if there is another known and secure way to handle randomness in smartcontracts, VRF is currently the only solution to opening Arweave martcontracts to a lot of new use cases.
This would only work for IW that are not triggered conditionally to a VRF, otherwise a mock VRF couldn't predict accurately whether this IW would be triggered

So yeah, I only see point 2 working right now, coupled with the workaround I mentioned in my previous comment...

Decision - we'll go with the point 3. - i.e.:

For the sake of IW and strict mode - generate a mock VRF data - probably in a similar way, as it is being done for the local environment.

proper documentation with warns re. specific use cases (e.g. when the IW call would be dependent on the generated VRF value)

hey @noomly , please give 1.2.13 version a try.

ofc. I've forgot about documenting this.. 🤡

@noomly @ppedziwiatr vrf has been added to interaction view on sonar

@noomly @ppedziwiatr vrf has been added to interaction view on sonar

seems to work...


NonBlockingFileIO should return FileRegion from read/write function as well

https://github.com/apple/swift-nio/blob/a0f6a48ec0f52af49cdf8274757a2bd1ec9f3295/Sources/NIO/NonBlockingFileIO.swift#L494
After discussion with @Lukasa on Discord, it's been shown that the function should not return FileRegion as can be seen from the comments in #975. Hence, just a nit to remove FileRegion from the function docs return type.

Sorry, I wasn't clear: I think this function should have returned FileRegion. Ideally we'd add a version of this that does.

I stand corrected 👍
Sorry for any confusion.

After some discussion with @AndriusA we've come to the conclusion that there is probably limited utility in adding the FileRegion to the return value, so we've agreed to just fix up the documentation.

Resolved by #1644.


#145 Add an option for failing the pipeline if no data is available at the source

If a source or a table has the flag specified as true, then the absence of data is treated as a failure of the pipeline.
Otherwise it is treated as a warning.

In addition, the PR also includes a tiny cleanup of config options no longer used.

Thanks!


Creating proper type for sighandler_t using anonymous union on Unix

Resolves #1359
This PR allows you to use the sigaction struct on Unix properly. For instance you'll be able to create a new sigaction struct passing all three types of handlers, below demonstrates both the creation of a handler of type void (*sa_handler)(int) and for SIG_IGN which is a const size_t:
extern "C" fn signal_handler(signal: i32) {todo!()}

let mut act = libc::sigaction {
    sa_sigaction: libc::sighandler_t {
        sa_handler: Some(signal_handler),
    },
    sa_mask: newmask,
    sa_flags: 0,
    sa_restorer: None,
};

// Demonstrating use of SIG_IGN constant
let _ignore_action = libc::sigaction {
    sa_sigaction: libc::SIG_IGN,
    sa_mask: newmask,
    sa_flags: 0,
    sa_restorer: None,
};

unsafe {
    libc::sigaction(libc::SIGUSR1, &mut act, core::ptr::null_mut());
}

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @JohnTitor (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see the contribution instructions for more information.

Working on fixing the test suite errors.

All checks are passing now.

Also cc @Amanieu as I'm unfamiliar with this.

The new version is more correct but I'm afraid it will be a significant breaking change so we should hold off on it until the next major release.

:umbrella: The latest upstream changes (presumably #3038) made this pull request unmergeable. Please resolve the merge conflicts.

@landhb , breaking release of libc will be released soon. So, consider to continue this work

@landhb if you are interested in continuing this work, it would be great to have for 1.0 (the current main branch).
@rustbot author

Sorry for the delay @tgross35 @safinaskar
I'll take a look and rebase.


Broken rgb_to_hex.py

Description: Every line is broken through incorrect variable assignment and incorrect rgb values.
Steps to Reproduce:

test with hex_color = rgb_to_hex(255, 127, 0), should return "FF7F00"

Expected Behavior: RGB value inputted into function and correct hex value of color returned
Actual Behavior: RGB value inputted and incorrect hex value returned
Screenshots: No
Additional Information:

Operating System: Windows
Browser: Firefox
Version: test with hex_color = 132.0.1
Sweatshirt: Colorful
Hair: Clean
Emails: Lots of em

Possible Solution: Re-evaluate all number values in file; max functions should go from 0 to 255 each. Format in return statement should be format(r,g,b)
Related Issues: None
Priority: MAXIMUM PRIORITY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Reproducibility: Every single time
Impact: High Impact. Whole file is broken and function will never work as intended until fixed.

Resolved it.  With my bare hands.  No need to thank.

Fixeddddd thanksssssss maryyyyyyy


[ACM-6774] [release-2.7] reset endpoint deployment node selectors and tolerations

When MCO CR defines NodeSelectors and Tolerations they should only be applied on the hub observability components. However, the code that generates endpoint operator deployment in the ManifestWork is reused across multiple managed clusters, and is inheriting settings from local-cluser and applying them to managed clusters.
The fix addresses it by resetting NodeSelectors and Tolerations in the template before evaluating they should be set.

/lgtm


Make UseInstance obsolete in favor of Use and RegisterInstance

Tried to realize the real difference between Use and RegisterInstance based on documentation, but there is not enough information about it.
Could you please provide an in-depth explanation of in which scenarios should each be used (and why)?
Thanks!

ReristerInstance or Register.. in general is supposeD to be done once when bootsrapping app / service. Use is for supplying the context data at runtime with each request / unit-of-work.
Previously UseInstance wads trying to do both, therefore it is much harder to implement.
Use now is much simplier but cannot be used with wrappers and decorators, meanwhile RegisterInstance is just another type of registration can be decorated, wrapped.

Thank you!
Based on your explanation, I got the intention of what's really behind of this concept-separation.
The only disturbing part is:
container.RegisterInstance(service, Reuse.InCurrentScope);

which is effectively the same as
scope.Use(service)

I think it would be cleaner & more intuitive to support only singleton reuse (without reuse parameter), because "registering" is static in sense of developer's intention.
On the other hand, to make decoration/wrappers supported, the internal "special" encapsulator type should be made public and used just like how Made, Reuse and others are available, effectively changing/modifing the way the operation is done (without introducing another API).
For example:
// current API stays the same
(ext) resolverContext.Use<TService>(TService instance);
resolverContext.Use(Type serviceType, object instance);

// NEW overloads based on `Instance` first parameter

// feels the same, but internally it's handled with `RegisteredInstanceFactory`
// will honor scope if available, otherwise falls back to singleton-scope
resolverContext.Use(Instance.Registered(service, IfAlreadyRegistered...);

// same API, registers into singleton scope even if current scope is available
resolverContext.Use(Instance.Singleton(service, IfAlreadyRegistered...);

// possible workaround for mid-part to support container-based current scope registrations
// will behave just like current RegisterInstance's logic: will throw if no current scope available
resolverContext.Use(Instance.Scoped(service, IfAlreadyRegistered...);

I know it's a big decision to change public API like that, but current pre 5.0 lifetime is ideal if you do so.
What are your thoughts?

The only disturbing part is: container.RegisterInstance(service, Reuse.InCurrentScope);

There is no parameter reuse in RegisterInstance in v4.1.

Alright, if you have time, please put a warning/info here wiki/ReuseAndScopes.md about 4.1 changes to clarify this.

Will do, thanks for pointing.

done


Is there a gem for this theme?

Checklist

[x] I have read the tutorials and know the correct effect of the functional design.
[x] There are no similar question on existing issues (including closed ones).
[x] I searched the Internet for related problems, but still couldn't solve it.
[x] My question is based on the latest code of master branch.

Description

I want to use this theme for my website but I'm planning to make different repo for each section of my website. For example - A repo name blog for blogging section, a repo named notes for my notes, a repo named projects for the projects section and so on. So I was wondering if I can achieve that just by adding theme: jekyll-theme-chirpy in the _config.yml of all the repos or do I have to add this code to all repos?


Server Error Log #9

https://gist.github.com/Vohras2/62402243920a1803adee65d401934458

This will have to be checked for with the latest Sponge, otherwise they won't accept this as a valid phase tracker issue.


PHPUnit: Fix slow tests

Takes test execution from 7.8s to ~3s.
class-test-followers.php needs a keen eye to see if the AI has inadvertently removed an implicit test that we should keep.
Once we drop support for PHP 7.0, the listener can be enabled by default.
Proposed changes:

Adds a timing listener to tests
Adds http request mocks and breaks up tests to make them faster.

Other information:

[x] Have you written new tests for your changes, if applicable?

I am Fine with catching up with WordPress and require 7.2!


rewrite cause api match fail

Summary
I write a custom plugin to rewrite uri, the plugin is global, the plugin rewrite function is be called on every request, that's OK. But during the match api phase, something wrong. In router.lua, in function exec, it use ngx.var.request_uri to match api
    local method      = ngx.req.get_method()
    local request_uri = ngx.var.request_uri
    local uri         = request_uri

    do
      local idx = find(uri, "?", 2, true)
      if idx then
        uri = sub(uri, 1, idx - 1)
      end
    end

    local req_host = ngx.var.http_host

    local match_t = find_api(method, uri, req_host, ngx)
    if not match_t then
      return nil
    end

request_uri is a readonly variable ,can't be changed in rewrite phase.
Steps To Reproduce

write a custom plugin to rewrite a uri
enable the plugin globally
make a request
rewrite is Ok, but can't match api

Additional Details & Logs

Kong version (0.11.0)
CentOS6

Closing this due to the lack of activity in #3141. The solution proposed there, although welcome, was never contributed.


LibWeb: Reuse display list across repaints

...if only the scroll offset is updated.
Currently, on any document with a large amount of content, the process
of building a display list is often more expensive than its
rasterization. This is because the amount of work required to build a
display list is proportional to the size of the paintable tree, whereas
rasterization only occurs for the portion visible in the viewport.
This change is the first step toward improving this process by caching
the display list across repaints when neither style nor layout requires
invalidation. This means that repainting while scrolling becomes
significantly less expensive, as we only need to reapply the scroll
offsets to the existing display list.
The performance improvement is especially visible on pages like
https://ziglang.org/documentation/master/ or
https://www.w3.org/TR/css-grid-2/

I've measure fps while scrolling sidebar on https://ziglang.org/documentation/master/ and it's 25 fps before and 120 fps after this change.

That's such a simple but significant optimization!


IDENTITY-7074 Response header field "WWW-Authenticate" is missing in the response for "invalid_client" error code which error generated for requesting access token for deactivated application

Moved from https://wso2.org/jira/browse/IDENTITY-7074
Steps to reproduce
Registered a SP for OAuth secured api
Generated client key/secret
Access api endpoint => succeed
Now deactivate the app by clicking "Revoke" via UI
Access api endpoint should validated with Unauthorized => succeed
Reqeust access token with existing client secret (try before regenerate secret) => error thrown as in [1]
On above error response [1], header fileds are missing "WWW-Authenticate" as I understood by here [2]. Please clarify if this wrong?
[1]

> POST /oauth2/token HTTP/1.1
> Host: localhost:9443
> Authorization: Basic SHhfUVBGd2dud2lpR3dFaktncUxYVWdvQ3NJYTpyQXllbUljR0oyVUdkSnlVVmpPX203dUQyakVh
> User-Agent: curl/7.43.0
> Accept: */*
> Content-Type:application/x-www-form-urlencoded;charset=UTF-8
> Content-Length: 69
>
* upload completely sent off: 69 out of 69 bytes

< HTTP/1.1 401 Unauthorized
< X-Frame-Options: DENY
< X-Content-Type-Options: nosniff
< X-XSS-Protection: 1; mode=block
< Date: Thu, 07 Dec 2017 07:32:13 GMT
< Content-Type: application/json
< Content-Length: 89
< Server: WSO2 Carbon Server
<
* Connection #0 to host localhost left intact
{"error_description":"Oauth application is not in active state","error":"invalid_client"}

[2] https://tools.ietf.org/html/rfc6749#page-44

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


Improvement to make dreamjs working with karma + PhantomJS + webpack

Hi,
I really want to use dreamjs in my project in order to generate data for testing purposes. However I have this nasty error:

karma start

[2017-02-20 13:31:00.267] [INFO] karma - Karma v1.3.0 server started at http://l
ocalhost:9876/
[2017-02-20 13:31:00.270] [INFO] launcher - Launching browser PhantomJS with unl
imited concurrency
[2017-02-20 13:31:00.274] [INFO] launcher - Starting browser PhantomJS
[2017-02-20 13:31:02.664] [INFO] PhantomJS 2.1.1 (Windows 7 0.0.0) - Connected o
n socket /#vnb5GX37u5VGf7QKAAAA with id 91341862
PhantomJS 2.1.1 (Windows 7 0.0.0) ERROR
SyntaxError: Cannot declare a parameter named 'input'  in strict mode
at src/test/js/test-index.js:171070
I was able to fix this error by making 2 changes in dream.js and update the name of variable wherever is used in code:
Line 93:  self.input = function input(input) {   --> self.input = function input(myinput) {
Line 190:  self.schema = function schema(schema) { --> self.schema = function schema(myschema) {
Please if you have time make this change for next release.

Hello,
I appreciate your feed feedback. I will take a look in your suggestion for the next release.
In any case, it would be much faster if you could create a pull request with the fix and if all test passes I will just merge it and you would be a contributor to the project.
Best regards,
Adler

I've created pull request :)

Thanks for your contribution. I will update the version on NPM.
Cheers,

Thank you for merging it that fast :)

Its updated on NPM. Thanks.


Refactored Filesystem::readFile

Now uses inline stat() => read(). Also renamed to read_file.

Should solve #547


Add GITHUB_TOKEN information to contributing guide

Description
I ran into this issue earlier today in a different pull request, and was informed about this requirement. I thought that it would be helpful for other contributors to know that GITHUB_TOKEN is a required environment variable for running tests.
Closes #<issue>.

[x] I have performed a self-review of my changes
[x] I have read and understood the contributing guidelines

Beautiful, thanks!


Breakdown of speedups

Hey there,
Thanks for releasing this!
Going through the list of kernels:

CrossEntropyLoss
RMS NORM
RopeEmbedding
Swiglu
FastLoRA

I'm trying to understand how the various optimizations correlate to performance improvements, is there a chart that shows the gains from #5 alone?
Secondly, could you please explain what's being done/included in the both the PRO/MAX tiers. The wording from the blog post is very imprecise.
Thanks!

Same as above.
Are the charts/speed ups for native fp16/bf16 or qlora/4bit? Can we get a separate charts for native vs 4bit/loads as they are wildly diff beasts for training.
I have no interest in loras/qloras thus my interest in pure fp16/bf16 speedy vs lora numbers.

@vgoklani https://unsloth.ai/blog/mistral-benchmark for some benchmarking breakdowns!