I'm trying to print out only the token amount and address

I am trying to get some token information of a particular address.
I just started working with Rust
Thank you very much
use helius::error::HeliusError;
use helius::Helius;
use helius::types::{Cluster, GetTokenAccounts, TokenAccountsList};
use crate::walletgen;

#[tokio::main]
pub async fn get_balance() -> Result<(), HeliusError> {
    // Loads api key
    // Select network
    let cluster: Cluster = Cluster::MainnetBeta;

    // Load address from memory
    let owner_address = Some("2RtGg6fsFiiF1EQzHqbd66AhW7R5bWeQGpTbv2UMkCdW".to_string());
    // let owner_address = Some(walletgen::Address::get_stored_address().to_string());

    let helius: Helius = Helius::new(api_key, cluster).unwrap();

    let request: GetTokenAccounts = GetTokenAccounts {
        owner: owner_address,
        page: Some(1),
        limit: Some(1000),
        ..Default::default()
    };

    // TODO: remove the excess infomation coming from the reposnse body
    let response: TokenAccountsList = helius.rpc().get_token_accounts(request).await?;

    if !response.token_accounts.is_empty() {
        for token_account in response.token_accounts {
            println!("Token Address: {:?} - Amount: {:?}", token_account.address, token_account.amount.unwrap_or_default());
        }
    } else {
        println!("A fresh start.. Let's go fishing.. ;)");
    }

    Ok(())
}

gm! You're very close! Here's the updated code:
use helius::error::Result;
use helius::Helius;
use helius::types::{Cluster, GetTokenAccounts, TokenAccountsList};

#[tokio::main]
pub async fn main() -> Result<()> {
    let api_key: &str = "api-key";
    let cluster: Cluster = Cluster::MainnetBeta;

    let owner_address: Option<String> = Some("2RtGg6fsFiiF1EQzHqbd66AhW7R5bWeQGpTbv2UMkCdW".to_string());

    let helius: Helius = Helius::new(api_key, cluster).unwrap();

    let request: GetTokenAccounts = GetTokenAccounts {
        owner: owner_address,
        page: Some(1),
        limit: Some(1000),
        ..Default::default()
    };

    let response: TokenAccountsList = helius.rpc().get_token_accounts(request).await?;

    if !response.token_accounts.is_empty() {
        for token_account in response.token_accounts {
            println!("Token Address: {:?} - Amount: {:?}", token_account.address, token_account.amount.unwrap_or_default());
        }
    } else {
        println!("A fresh start.. Let's go fishing.. ;)");
    }

    Ok(())
}

The main difference here is that the main function is called main — if you try doing cargo run with your "main" function designated by tokio as get_balance, you'll run into errors. You can also clean up its return type using the Result type alias, which returns <T, HeliusError> to shorten the code.
I'm going to go ahead and close this issue. If you have any additional questions, please come to the Helius discord and ask there. Thanks, and happy coding!


Panoptes when sellecting via cellect, fail over to PG?

Should we detect when cellect is broken and fail over to PG selection?
This error was due to no cellect server registered in ZK: https://app.honeybadger.io/fault/40595/d5dd2966d7d0e9c530776ccadd52a8f1

You and @brian-c have a different fallback right?

I'm checking if Firebase's /$host/projects/$projectID/override-subject-selection/skip-cellect is true

yeah - but this will 500 on the server, we could catch the error and gracefully send a message.

Great I'll catch that then return 503 Service Unavailable unless another code makes more sense.

sounds fine.


Fixed headers to be more in line with the content

This feels more inline with the content

Proposed changes

The way the headings were nested didn't feel right:

Doesn't feel like Stack README and Stack Nested View should be nested under Stack Favourites
Unreleased product version (optional)

Related issues (optional)

Feels a bit better:


V2.0.1 PowerApp - Members box is invisible.

Description
Having no issues with the V1 app, but with the V2.0.1 the box for adding members to a Team is invisible.

Steps to reproduce

Import the app
Change SharePoint connections
Add admin group
Create Team from scratch
Enter Team Name, description, business reason, check name availability click next.
Member box is not visible. Even after selecting 2 owners.

Expected results
Member box should be selectable and seachable.
Actual Results
Member box is invisible and unusable.
Solution component
Power App
Operating system (environment)
Windows
Additional Info
Using the default settings that works fine with the V1 app.

Try to EDIT app
Go to Members Screen (in tree view to the left)
ContBodyMS
contMainMS
cmbMembers - choose Advanced in the menu at the right, scroll down to Visible and replace gblSensitivity with true.
Save - Publish App - Test


[Feature request] GIT: group changes by status

VSCode Version: 1.12 insider
OS Version: Windows 10 Creators Update

When viewing source control changes, it would be great if it was possible to:

group files by status (ie: untracked or modified files)
have a checkbox that allows to toggle viewing untracked files

Sometimes you created lots of files but just want to commit one or two files. Since all files are listed (no matter if they are untracked or modified), it makes it difficult to pick the ones you want to stage:

Moving to #3918


help

Describe your problem here.
lime : The term 'lime' is not recognized as the name of a cmdlet, function, script file, or operable program. Check
the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1

lime test windows -debug

  + CategoryInfo          : ObjectNotFound: (lime:String) [], CommandNotFoundException
  + FullyQualifiedErrorId : CommandNotFoundException

  whatr the did i do wrong??

Are you modding a build from source or with Lua?
Source
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
no

use haxelib run lime test windows


linting: use the GIT_BASE_COMMIT env variable

What does this pull request do?
Use GIT_BASE_COMMIT since it's the variable with the current commit therefore all the integrations should keep working as is.

:grey_exclamation: Build Aborted

There is a new build on-going so the previous on-going builds have been aborted.

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2022-05-04T10:15:18.292+0000

Duration: 4 min 5 sec

Steps errors
Expand to view the steps failures

Show only the first 10 steps failures

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-python-3.10-pymemcache-newest

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-python-3.10-httpx-newest

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-python-3.10-httplib2-newest

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-python-3.10-prometheus_client-newest

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-python-3.10-sanic-newest

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-python-3.10-aiobotocore-newest

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-3.7-none

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-3.8-none

Restore files previously stashed

Took 0 min 0 sec . View more details here
Description: coverage-3.9-none

python coverage

Took 0 min 0 sec . View more details here
Description: python3 -m coverage combine && python3 -m coverage xml

:robot: GitHub comments
To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.

/test linters : Run the Python linters only.

/test full : Run the full matrix of tests.

/test benchmark : Run the APM Agent Python benchmarks tests.

run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)

:globe_with_meridians: Coverage report

Name
Metrics % (covered/total)
Diff

Packages
100.0% (68/68)
:green_heart:

Files
100.0% (225/225)
:green_heart:

Classes
100.0% (225/225)
:green_heart:

Lines
89.256% (16250/18206)
:+1:

Conditionals
76.419% (3030/3965)
:+1:


Does respect plugin custom filters on load

When trying to load a filter saved for the topology, it will not respect the unique elements (i.e. display_unconnected and exclude_role).  However, it does respect the site_id field.
Currently running Netbox v4.1.6 and plugin v1.0.3.
The following is an configuration of my filter:
{
"display_unconnected": [
"False"
],
"exclude_role": [
"4",
"16"
],
"site_id": [
"7"
]
}

Hey @zcharlesallen, thank you for the bug report! I’ve just released plugin version 1.0.4, which addresses this issue along with some other improvements. Feel free to check it out!


Can't use domain name for dogstatsd address

Can't use domain name for dogstatsd address
It seems that its not possible to pass a domain name as the address of a DogStatsdSink.
stats_sinks:
  - name: datadog
    typed_config:
      "@type": type.googleapis.com/envoy.config.metrics.v3.DogStatsdSink
      address:
        socket_address:
          address: datadog.dev
          port_value: 8125

throws error:
[2023-03-17 13:02:10.471][11][critical][main] [source/server/server.cc:131] error initializing configuration '/app/build/envoy.yaml': malformed IP address: datadog.dev
malformed IP address: datadog.dev

This seems like a pretty common usecase? Does anyone have a workaround?
Relevant Links
Previous discussion: https://github.com/envoyproxy/envoy/issues/3143#issuecomment-383435852

CC @taiki45

I think I have a workaround here.
Point DatadogStatsd at <IP_ADDRESS>:8125 and setup a UDP listener for 8125 that forwards everything to my datadog address as a cluster.
This is obviously burning extra compute for nothing but it seems to work

This is still a problem

Bad bot. Don't close this


:recycle: refactor deprecated isRoomAvailable function

refactor deprecated isRoomAvailable function
Description:
replace deprecated function call
Fixed:

#184 Deprication of isRoomAvailable

Testing checklist:

[x] Changes are backward-compatible OR version migration code is included
[x] Codebase compiles with current tsconfig configuration
[x] Tested changes on {PRIVATE} server

in addition there could be added caching since the new function also returns an expiration date but i wanted to fix the deprecated call first


Changing the content of the email it sends?

I'd like to add some more information into the email that it sends out on success/failure of the backup. How do I go about this?

Hi @swaathi currently this is not possible. It uses a template to set up the email contents. Unless you modify that template you can't change the contents.
What is it that you want to add to the email?

Hi @tombruijn. I'd like to add a download link to the backed up file. Also it would be great if I could style the mail!

@swaathi currently it's not possible to add your own templates and thus do the things you want. You could hack a way around it by overriding the Backup::TEMPLATE_PATH constant on the Backup class. However, what might break everything else if you do..
So maybe it's an idea to make custom templates possible. I added an issue to the feature issue tracker https://github.com/backup/backup-features/issues/26
We'll look into it for the next major version. Maybe not it's first release but a release after that.
It's unlikely it will be added to v4 unless someone submits a PR for it.


feat: update to current evonet contract

Not sure why this is not up to date with what is on the network. Looks like there are not any significant changes, but would be nice to have the current one here at least for reference.

Actually it may be the same :see_no_evil:


inital bash at ASVS2 questions

easier to read version here: https://docs-eigdgcocnc.now.sh/ASVS-level2.html


H7131 space heater: HA reports temperature as °C but the actual value is Fahrenheit

Govee Device SKU
H7131
Govee2MQTT Version
2024.01.11-9564506d
Describe the issue
After installing and configuring the add-on, there a number of issues, but this one is just that the numerical value of the temp from the heater's sensor is degrees F, while the display in HA is reporting it as degrees C.

Startup Diagnostics
s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
GOVEE_API_KEY=REDACTED
GOVEE_MQTT_HOST=<IP_ADDRESS>
GOVEE_EMAIL=REDACTED
GOVEE_PASSWORD=REDACTED
GOVEE_MQTT_PASSWORD=REDACTED
GOVEE_MQTT_USER=ecowitt2mqtt
GOVEE_MQTT_PORT=1883
++ cd /app
++ exec /app/govee serve
[2024-01-12T09:55:10 INFO  govee::commands::serve] Starting service. version 2024.01.11-9564506d
[2024-01-12T09:55:10 INFO  govee::commands::serve] Querying platform API for device list
[2024-01-12T09:55:11 INFO  govee::commands::serve] Querying undocumented API for device + room list
[2024-01-12T09:55:13 INFO  govee::service::iot] Connected to IoT: CONNACK code 0: Connection Accepted.
[2024-01-12T09:55:13 INFO  govee::commands::serve] Starting LAN discovery
[2024-01-12T09:55:13 INFO  govee::service::iot] IoT (re)connected with status CONNACK code 0: Connection Accepted.
[2024-01-12T09:55:13 INFO  govee::commands::serve] Waiting 10 seconds for LAN API discovery
[2024-01-12T09:55:23 INFO  govee::commands::serve] Devices returned from Govee's APIs
[2024-01-12T09:55:23 INFO  govee::commands::serve] H5074_E454 (A7:90:A4:C1:38:AA:E4:54 H5074)
[2024-01-12T09:55:23 INFO  govee::commands::serve]   Undoc: room=None supports_iot=false ble_only=true
[2024-01-12T09:55:23 WARN  govee::commands::serve]   Unknown device type. Cannot map to Home Assistant.
[2024-01-12T09:55:23 INFO  govee::commands::serve]
[2024-01-12T09:55:23 INFO  govee::commands::serve] Smart Space Heater (REDACTED H7131)
[2024-01-12T09:55:23 INFO  govee::commands::serve]   Platform API: devices.types.heater. supports_rgb=true supports_brightness=true
[2024-01-12T09:55:23 INFO  govee::commands::serve]                 color_temp=None segment_rgb=None
[2024-01-12T09:55:23 INFO  govee::commands::serve]   Undoc: room=None supports_iot=true ble_only=false
[2024-01-12T09:55:23 INFO  govee::commands::serve]
[2024-01-12T09:55:23 INFO  govee::commands::serve] H5074_8B55 (B7:08:A4:C1:38:D5:8B:55 H5074)
[2024-01-12T09:55:23 INFO  govee::commands::serve]   Undoc: room=None supports_iot=false ble_only=true
[2024-01-12T09:55:23 WARN  govee::commands::serve]   Unknown device type. Cannot map to Home Assistant.
[2024-01-12T09:55:23 INFO  govee::commands::serve]
[2024-01-12T09:55:23 INFO  govee::commands::serve] H5074_24DB (AB:30:A4:C1:38:C8:24:DB H5074)
[2024-01-12T09:55:23 INFO  govee::commands::serve]   Undoc: room=None supports_iot=false ble_only=true
[2024-01-12T09:55:23 WARN  govee::commands::serve]   Unknown device type. Cannot map to Home Assistant.
[2024-01-12T09:55:23 INFO  govee::commands::serve]
[2024-01-12T09:55:23 INFO  govee::service::http] http server addr is <IP_ADDRESS>:8056
[2024-01-12T09:55:28 WARN  govee::cache] request https://openapi.api.govee.com/router/api/v1/device/scenes status 200: OK: parsing https://openapi.api.govee.com/router/api/v1/device/scenes response: Failed with status 400 Bad Request Bad Request: Request to https://openapi.api.govee.com/router/api/v1/device/scenes failed with code 400 Bad Request devices not support this instance. Full response: {"requestId":"uuid","msg":"devices not support this instance","code":400,"payload":{"sku":"H7131","device":"REDACTED"}}, will use prior results
[2024-01-12T09:55:28 ERROR govee::hass_mqtt::light] Unable to list scenes for Smart Space Heater (REDACTED H7131): list_scene_names: get_scene_caps: request https://openapi.api.govee.com/router/api/v1/device/scenes status 200: OK: parsing https://openapi.api.govee.com/router/api/v1/device/scenes response: Failed with status 400 Bad Request Bad Request: Request to https://openapi.api.govee.com/router/api/v1/device/scenes failed with code 400 Bad Request devices not support this instance. Full response: {"requestId":"uuid","msg":"devices not support this instance","code":400,"payload":{"sku":"H7131","device":"REDACTED"}}
[2024-01-12T09:55:28 WARN  govee::hass_mqtt::enumerator] Do something about Mode nightlightScene for Smart Space Heater (REDACTED H7131) DeviceCapability { kind: Mode, instance: "nightlightScene", parameters: Some(Enum { options: [EnumOption { name: "Flame", value: Number(1), extras: {} }, EnumOption { name: "Rainbow", value: Number(2), extras: {} }, EnumOption { name: "Rhythm", value: Number(3), extras: {} }, EnumOption { name: "Easy", value: Number(4), extras: {} }, EnumOption { name: "Sleep", value: Number(5), extras: {} }] }), alarm_type: None, event_state: None }
[2024-01-12T09:55:28 WARN  govee::hass_mqtt::enumerator] Do something about TemperatureSetting targetTemperature for Smart Space Heater (REDACTED H7131) DeviceCapability { kind: TemperatureSetting, instance: "targetTemperature", parameters: Some(Struct { fields: [StructField { field_name: "autoStop", field_type: Enum { options: [EnumOption { name: "Auto Stop", value: Number(1), extras: {} }, EnumOption { name: "Maintain", value: Number(0), extras: {} }] }, default_value: Some(Number(0)), required: false }, StructField { field_name: "temperature", field_type: Integer { unit: None, range: IntegerRange { min: 5, max: 30, precision: 1 } }, default_value: None, required: true }, StructField { field_name: "unit", field_type: Enum { options: [EnumOption { name: "Celsius", value: String("Celsius"), extras: {} }, EnumOption { name: "Fahrenheit", value: String("Fahrenheit"), extras: {} }] }, default_value: Some(String("Celsius")), required: true }] }), alarm_type: None, event_state: None }
[2024-01-12T09:55:28 INFO  govee::service::hass] Wait 500ms for hass to settle on 10 entity configs
[2024-01-12T09:55:29 INFO  govee::service::hass] MQTT connected with status=CONNACK code 0: Connection Accepted.
[2024-01-12T09:55:41 ERROR govee::hass_mqtt::light] Unable to list scenes for Smart Space Heater (REDACTED H7131): list_scene_names: get_scene_caps: request https://openapi.api.govee.com/router/api/v1/device/scenes status 200: OK: parsing https://openapi.api.govee.com/router/api/v1/device/scenes response: Failed with status 400 Bad Request Bad Request: Request to https://openapi.api.govee.com/router/api/v1/device/scenes failed with code 400 Bad Request devices not support this instance. Full response: {"requestId":"uuid","msg":"devices not support this instance","code":400,"payload":{"sku":"H7131","device":"REDACTED"}}
[2024-01-12T09:55:41 WARN  govee::hass_mqtt::enumerator] Do something about Mode nightlightScene for Smart Space Heater (REDACTED H7131) DeviceCapability { kind: Mode, instance: "nightlightScene", parameters: Some(Enum { options: [EnumOption { name: "Flame", value: Number(1), extras: {} }, EnumOption { name: "Rainbow", value: Number(2), extras: {} }, EnumOption { name: "Rhythm", value: Number(3), extras: {} }, EnumOption { name: "Easy", value: Number(4), extras: {} }, EnumOption { name: "Sleep", value: Number(5), extras: {} }] }), alarm_type: None, event_state: None }
[2024-01-12T09:55:41 WARN  govee::hass_mqtt::enumerator] Do something about TemperatureSetting targetTemperature for Smart Space Heater (REDACTED H7131) DeviceCapability { kind: TemperatureSetting, instance: "targetTemperature", parameters: Some(Struct { fields: [StructField { field_name: "autoStop", field_type: Enum { options: [EnumOption { name: "Auto Stop", value: Number(1), extras: {} }, EnumOption { name: "Maintain", value: Number(0), extras: {} }] }, default_value: Some(Number(0)), required: false }, StructField { field_name: "temperature", field_type: Integer { unit: None, range: IntegerRange { min: 5, max: 30, precision: 1 } }, default_value: None, required: true }, StructField { field_name: "unit", field_type: Enum { options: [EnumOption { name: "Celsius", value: String("Celsius"), extras: {} }, EnumOption { name: "Fahrenheit", value: String("Fahrenheit"), extras: {} }] }, default_value: Some(String("Celsius")), required: true }] }), alarm_type: None, event_state: None }

Additional Logs
No response
Home Assistant Logs
No response
Anything else?
No response

Please update to the latest version of the addon, which adds some diagnostics in some state entities.

Then, go to the device entry in for your space heater
You should see a Request Platform API State button there; click it once and wait a couple of seconds
Then, find the entity id of the Status entity that is listed under your space heater and get its entity name.  The default is probably something like sensor.space_heater_status.

Then evaluate the following home assistant template by visiting Developer Tools | Template, replacing the entity name with what yours actually is:
{{
    {
      "meta": state_attr('sensor.space_heater_status', 'platform_metadata'),
      "state": state_attr('sensor.space_heater_status', 'platform_state'),
    }
}}

It should output a large-ish json blob, please share that here.
That should tell me whether the device gives us enough information to understand which units are in use for the returned data.

JSON below:
{   "meta": {     "capabilities": [       {         "alarmType": null,         "eventState": null,         "instance": "powerSwitch",         "parameters": {           "dataType": "ENUM",           "options": [             {               "name": "on",               "value": 1             },             {               "name": "off",               "value": 0             }           ]         },         "type": "devices.capabilities.on_off"       },       {         "alarmType": null,         "eventState": null,         "instance": "oscillationToggle",         "parameters": {           "dataType": "ENUM",           "options": [             {               "name": "on",               "value": 1             },             {               "name": "off",               "value": 0             }           ]         },         "type": "devices.capabilities.toggle"       },       {         "alarmType": null,         "eventState": null,         "instance": "nightlightToggle",         "parameters": {           "dataType": "ENUM",           "options": [             {               "name": "on",               "value": 1             },             {               "name": "off",               "value": 0             }           ]         },         "type": "devices.capabilities.toggle"       },       {         "alarmType": null,         "eventState": null,         "instance": "brightness",         "parameters": {           "dataType": "INTEGER",           "range": {             "max": 100,             "min": 1,             "precision": 1           },           "unit": null         },         "type": "devices.capabilities.range"       },       {         "alarmType": null,         "eventState": null,         "instance": "colorRgb",         "parameters": {           "dataType": "INTEGER",           "range": {             "max": 16777215,             "min": 0,             "precision": 1           },           "unit": null         },         "type": "devices.capabilities.color_setting"       },       {         "alarmType": null,         "eventState": null,         "instance": "nightlightScene",         "parameters": {           "dataType": "ENUM",           "options": [             {               "name": "Flame",               "value": 1             },             {               "name": "Rainbow",               "value": 2             },             {               "name": "Rhythm",               "value": 3             },             {               "name": "Easy",               "value": 4             },             {               "name": "Sleep",               "value": 5             }           ]         },         "type": "devices.capabilities.mode"       },       {         "alarmType": null,         "eventState": null,         "instance": "targetTemperature",         "parameters": {           "dataType": "STRUCT",           "fields": [             {               "dataType": "ENUM",               "defaultValue": 0,               "fieldName": "autoStop",               "options": [                 {                   "name": "Auto Stop",                   "value": 1                 },                 {                   "name": "Maintain",                   "value": 0                 }               ],               "required": false             },             {               "dataType": "INTEGER",               "defaultValue": null,               "fieldName": "temperature",               "range": {                 "max": 30,                 "min": 5,                 "precision": 1               },               "required": true,               "unit": null             },             {               "dataType": "ENUM",               "defaultValue": "Celsius",               "fieldName": "unit",               "options": [                 {                   "name": "Celsius",                   "value": "Celsius"                 },                 {                   "name": "Fahrenheit",                   "value": "Fahrenheit"                 }               ],               "required": true             }           ]         },         "type": "devices.capabilities.temperature_setting"       },       {         "alarmType": null,         "eventState": null,         "instance": "sensorTemperature",         "parameters": null,         "type": "devices.capabilities.property"       },       {         "alarmType": null,         "eventState": null,         "instance": "workMode",         "parameters": {           "dataType": "STRUCT",           "fields": [             {               "dataType": "ENUM",               "defaultValue": null,               "fieldName": "workMode",               "options": [                 {                   "name": "gearMode",                   "value": 1                 },                 {                   "name": "Fan",                   "value": 9                 },                 {                   "name": "Auto",                   "value": 3                 }               ],               "required": true             },             {               "dataType": "ENUM",               "defaultValue": null,               "fieldName": "modeValue",               "options": [                 {                   "name": "gearMode",                   "options": [                     {                       "name": "Low",                       "value": 1                     },                     {                       "name": "Medium",                       "value": 2                     },                     {                       "name": "High",                       "value": 3                     }                   ],                   "value": null                 },                 {                   "defaultValue": 0,                   "name": "Fan",                   "value": null                 },                 {                   "defaultValue": 0,                   "name": "Auto",                   "value": null                 }               ],               "required": true             }           ]         },         "type": "devices.capabilities.work_mode"       }     ],     "device": "REDACTED",     "deviceName": "Smart Space Heater",     "sku": "H7131",     "type": "devices.types.heater"   },   "state": {     "capabilities": [       {         "instance": "online",         "state": {           "value": true         },         "type": "devices.capabilities.online"       },       {         "instance": "powerSwitch",         "state": {           "value": 1         },         "type": "devices.capabilities.on_off"       },       {         "instance": "oscillationToggle",         "state": {           "value": 1         },         "type": "devices.capabilities.toggle"       },       {         "instance": "nightlightToggle",         "state": {           "value": 1         },         "type": "devices.capabilities.toggle"       },       {         "instance": "brightness",         "state": {           "value": 100         },         "type": "devices.capabilities.range"       },       {         "instance": "colorRgb",         "state": {           "value": 16711680         },         "type": "devices.capabilities.color_setting"       },       {         "instance": "nightlightScene",         "state": {           "value": ""         },         "type": "devices.capabilities.mode"       },       {         "instance": "targetTemperature",         "state": {           "value": {             "targetTemperature": 21,             "unit": "Celsius"           }         },         "type": "devices.capabilities.temperature_setting"       },       {         "instance": "sensorTemperature",         "state": {           "value": 72         },         "type": "devices.capabilities.property"       },       {         "instance": "workMode",         "state": {           "value": {             "modeValue": 0,             "workMode": 3           }         },         "type": "devices.capabilities.work_mode"       }     ],     "device": "F4:D2:D4:AD:FC:F1:96:70",     "sku": "H7131"   } }

Thanks! It appears as though there are no units defined for sensorTemperature.  If you change your preference for units in the app to celsius, does the sensorTemperature reading also switch units, or does it remain in F?

Thanks! It appears as though there are no units defined for sensorTemperature. If you change your preference for units in the app to celsius, does the sensorTemperature reading also switch units, or does it remain in F?

Weird - it stays °F even if I change units in the Govee app to °C.

The relevant JSON:
{         "instance": "targetTemperature",         "state": {           "value": {             "targetTemperature": 21,             "unit": "Celsius"           }         },         "type": "devices.capabilities.temperature_setting"       },       {         "instance": "sensorTemperature",         "state": {           "value": 68         }

Notable is that no matter how the app is set, targetTemperature always comes through the API in celsius.

FWIW, the errors about listing scenes should no longer show up in the latest version of the addon.  The other more important stuff mentioned here is not yet resolved.

The latest version of the addon has some logic that may resolve the temperature readings. Please let me know how you get on with it!

The sensor temp now displays the correct temp aligned with the correct Celsius label in HA. There are still two issues though: 1) My app is set to °F, so I would expect HA to display that, not °C. 2) Minor, but the entity has a display precision of something like 10 decimal points. I can adjust this in HA, but usually temps default display with a max precision of 2 decimal points.

My understanding was the HA will auto-translate temperature units for entities, but it seems like that is not true.
I need to figure out if there is a way to make it do that, otherwise, there will need to be a way to configure your choice of units in govee2mqtt and I'll need to translate them on this side.  I'm hoping to avoid that, as it feels complex both for users and for the code internals.
re: precision, hmm, I hadn't considered it, but yes it makes sense

The strange thing is that the value being returned in sensorTemperature is in °F but no unit is listed. The targetTemperature is always returned in °C but does at  least list the unit. It feels like there's something not right in the API.
Thanks for your efforts either way. This is a great project since Govee seems to have a bunch of neat products that don't work with the core HA integration. Before your add-on I had to set up the heater in Homebridge since there is a (partially) working integration, and then use HomeKit to get it in to HA. Pretty clunky but your approach is much better.

It feels like there's something not right in the API.

There's a LOT that isn't right in the API!
It's horrendously inconsistent, but still better than what was available before.

I'm tracking the remaining portion of this in:

https://github.com/wez/govee2mqtt/issues/68

{{ (states('sensor.chauffage_bureau_alex_temperature') | float -32 ) * 5/9}}
Create a template with this it should create a new sensor in C even if the data is in F. You should be able to do that the other way around too.


remove_prefix/remove_suffix return nil with non-existing prefix/suffix

> 'foo'.remove_prefix('bar')
 => nil

I would expect this method to return the original string if the prefix/suffix is not in the string.
If returning nil is the expected behavior, this should be documented.
I can make the PR, just tell me which solution you favor.

Yeah, we should change this. It was likely an oversight as I hate nil return values.


Lyrics freak

Another source!
This is a scrape from the website, chances of false positives should be considered.

From this source we see the need of a module with those helper functions. Create an issue.


darglint2: Cleanup configuration code.

Cleanup message_template configuration option.
Add code comment to default_config fixture.
Cleanup Configuration class.
Fix tests broken by missing message_template parameter.

If you have the time and energy I would appreciate a review from you @akaihola. Otherwise merging this without a review doesn't present a problem either.


KAFKA-17739: Clean up build.gradle to adopt the minimum Java version as 11

JIRA: KAFKA-17739

We are planning to drop JDK 8. This is part of the upgrade from JDK 8 to JDK 11. You can see the full plan here: KAFKA-12894

minJavaVersion=11
remove sourceCompatibility and targetCompatibility
cleanup all compatibility checks

Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@frankvicky @chia7712
I just recognized that I cannot build trunk using Java 11 any longer:
I tracked it down to this PR -- before this commit, it works, but this commit seems to break it:
$ ./gradlew systemTestLibs

> Configure project :
Starting build with version 4.0.0-SNAPSHOT (commit id 1ece9184) using Gradle 8.10, Java 11 and Scala 2.13.15
Build properties: ignoreFailures=false, maxParallelForks=16, maxScalacThreads=8, maxTestRetries=0

[...]

> Task :jmh-benchmarks:compileJava
warning: No processor claimed any of these annotations: java.base/java.lang.SuppressWarnings,java.base/java.lang.Override
error: warnings found and -Werror specified
1 error
1 warning

> Task :jmh-benchmarks:compileJava FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':jmh-benchmarks:compileJava'.
> Compilation failed; see the compiler error output for details.

[...]

trunk still compiles with Java17 and Java21 though. Can you take a look?

@mjsax thanks for this report. we will check it today

@mjsax I can't reproduce the error. Could you please clean (./gradlew clean) project and try it again?
jenkins@50cc5fcf9828:~/repo$ ./gradlew clean systemTestLibs

> Configure project :
Starting build with version 4.0.0-SNAPSHOT (commit id d36b24f4) using Gradle 8.10.2, Java 11 and Scala 2.13.15
Build properties: ignoreFailures=false, maxParallelForks=24, maxScalacThreads=8, maxTestRetries=0

> Task :raft:processMessages
MessageGenerator: processed 1 Kafka message JSON files(s).

> Task :transaction-coordinator:processMessages
MessageGenerator: processed 2 Kafka message JSON files(s).

> Task :storage:processMessages
MessageGenerator: processed 5 Kafka message JSON files(s).

> Task :share-coordinator:processMessages
MessageGenerator: processed 4 Kafka message JSON files(s).

> Task :streams:processMessages
MessageGenerator: processed 1 Kafka message JSON files(s).

> Task :metadata:processMessages
MessageGenerator: processed 25 Kafka message JSON files(s).

> Task :group-coordinator:processMessages
MessageGenerator: processed 32 Kafka message JSON files(s).

> Task :clients:processMessages
MessageGenerator: processed 186 Kafka message JSON files(s).

> Task :clients:processTestMessages
MessageGenerator: processed 4 Kafka message JSON files(s).

> Task :clients:compileTestJava
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.10.2/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

BUILD SUCCESSFUL in 36s

Still getting the error with "clean" option. What Java are you using?
$ java -version
openjdk version "11.0.11" 2021-04-20
OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9)
OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (build 11.0.11+9, mixed mode)

There is only one @SuppressWarnings("deprecation") in the jmh module in ProducerResponseBenchmark.java -- if I remove it, one of both errors goes away.
But there is 40 @Overwrite annotation. Not sure if there is a single offending one, or if all a are a problem. 40 is too many to try the out one-by-one.
Not sure if this is useful information to track it down?

@mjsax it seems that is a JDK issue (https://bugs.openjdk.org/browse/JDK-8193214), and the fix is backported to 11.0.13. I check the build on 11.0.13 and it works.
BUILD SUCCESSFUL in 15m 18s
561 actionable tasks: 561 executed
root@1f5e165f48b1:/kafka# cd kafka/^C
root@1f5e165f48b1:/kafka# java -version
openjdk version "11.0.13" 2021-10-19 LTS
OpenJDK Runtime Environment Zulu11.52+13-CA (build 11.0.13+8-LTS)
OpenJDK 64-Bit Server VM Zulu11.52+13-CA (build 11.0.13+8-LTS, mixed mode)
root@1f5e165f48b1:/kafka#

Thanks!


Highlight issues modified in the last 24 hours

It would be very helpful to somehow highlight issues that have been modified in the last 24 hours.  Perhaps a black outline around such issues.

Perfect.  Thanks.


blog from reelvalley creator

contains a nice blog entry on using nim in a game.

Thank you for all your PRs! This is awesome!


Need submit button to be enable while state change from value to empty string

We are facing an issue, the submit button gets disabled when we change the field value to null.
here is a loom video
https://www.loom.com/share/fa971642974f422b8f64284ac678e86e

@shahzaib-haider1 Thank you for submitting this issue.
I'll look into accounting the dirty state for the submit button


[extractor/tv4] Fix tv4 extraction

changed json api url
IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

TV4 has changed their api domain. This changes the url for json metadata extraction
Fixes #5535
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[ ] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

Closes #5535

Although not related to the original issue, the geo-restriction processing could be also improved. XFF doesn't work for this site.
I've applied some yt-dl test code that could be adapted:
--- old/yt_dlp/extractor/tv4.py
+++ new/yt_dlp/extractor/tv4.py
@@ -20,7 +20,7 @@
                 sport/|
             )
         )(?P<id>[0-9]+)'''
-    _GEO_COUNTRIES = ['SE']
+    _GEO_COUNTRIES = False
     _TESTS = [
         {
             'url': 'http://www.tv4.se/kalla-fakta/klipp/kalla-fakta-5-english-subtitles-2491650',
@@ -73,13 +73,23 @@
         video_id = self._match_id(url)

         info = self._download_json(
-            'https://playback-api.b17g.net/asset/%s' % video_id,
+            'https://playback2.a2d.tv/play/' + video_id,
             video_id, 'Downloading video info JSON', query={
                 'service': 'tv4',
                 'device': 'browser',
                 'protocol': 'hls,dash',
                 'drm': 'widevine',
-            })['metadata']
+            }, expected_status=401)
+        err = info.get('errorCode')
+        if err:
+            msg = info.get('message') or err
+            if 'GEO_LOCATION' in err:
+                self.report_warning(msg, video_id)
+                self.raise_geo_restricted(countries=['SE'])
+            err = compat_HTTPError('https://playback2.a2d.tv/play/' + video_id, 401, 'HTTP Error 401: Unauthorized', None, None)
+            raise ExtractorError(msg, cause=error_to_compat_str(err), video_id=video_id)
+
+        info = info['metadata']

         title = info['title']

Although not related to the original issue, the geo-restriction processing could be also improved. XFF doesn't work for this site.
I've applied some yt-dl test code that could be adapted:

This is a good idea, since it seems like all tv4 content is geo-restricted now. But the diff posted above conflates the asset endpoint with the play endpoint.
A working version could look like this (using this PR's initial commit as baseline for the diff):
-        manifest_url = self._download_json(
-            'https://playback2.a2d.tv/play/' + video_id,
-            video_id, query={
+        manifest_info = self._download_json(
+            f'https://playback2.a2d.tv/play/{video_id}',
+            video_id, 'Downloading manifest info JSON', query={
                 'service': 'tv4',
                 'device': 'browser',
                 'protocol': 'hls',
-            })['playbackItem']['manifestUrl']
+            }, expected_status=401)
+        err = manifest_info.get('errorCode')
+        if err:
+            msg = manifest_info.get('message') or err
+            if 'GEO_LOCATION' in err:
+                self.raise_geo_restricted(msg, countries=['SE'])
+            raise ExtractorError(f'HTTP Error 401: Unauthorized; {msg}', video_id=video_id)
+
+        manifest_url = manifest_info['playbackItem']['manifestUrl']
+

Does this still work? Pls update tests


chore(Algebra/BigOperators): add missing deprecation dates

One additivised lemma was missing a deprecation.

awaiting-review

awaiting-review

bors merge

Please fix the CI error, and then send to bors.
bors d+

bors r+


Potential security problem(s)

Hi, could you please create a new draft security advisory and
invite me to it?
Any other private communication channel would also be fine.
I think I've found a potential security problem.
My disclosures always follow Github's 90-day disclosure policy (I'm not an employee of Github, I just like their policy).

You have been invited to the security advisory.
Please keep in mind that this repository is code for illustrative purposes and not distributed as production-quality or as a library, so a public PR might just be as valid and a quicker fix than going through a full security advisory.


Make asumeRole using SAML assertion

Description
When using withAWS(), there is no way to connect to AWS (creating a session token) with a SAML assertion and asume a role. We'd like to add a pram to withAWS step to be able to pass a SAML assertion and assume a role.
(https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/securitytoken/AbstractAWSSecurityTokenService.html#assumeRoleWithSAML-com.amazonaws.services.securitytoken.model.AssumeRoleWithSAMLRequest-)
Steps to Reproduce

withAWS(role:'admin', roleAccount:'123456789012', region: ''eu-west-1', samlAssertion: '', principalArn: '') {...}
Session token created with success

Expected behavior: Assume a role with a SAML assertion

Can you elaborate on your use case? Where does the assertion come from?
Would you be able to implement this?

This is for the company I work for, we pass through an Identification Portal that give us a SAML assertion to be authenticated on AWS. I cannot use the couple access_key_id + sercret_access_key because the session token can be provided once with this couple, and the only way to get one is to make a assumeRoleWithSAML with the assertion given by the IdP.
Am I clear ?
I have an other way to achieve the auth, by making myself the assumeRoleWithSAML and put the tuple access_key_id + sercret_access_key + aws_session_token in env vars that the plugin will read, I tried and it worked but it's messy and unsafe.
Yes I think i would be able to implement this use case, but i need to know how fast do you make a release when the feature will be ready ?

So and how does the Jenkins server get the SAML assertion?
When the code is there and working I can cut a release within one or two days.

It will be in charge of the pipeline maintainer. In my case I have to make a HTTP request over the IdP with a LDAP user to get the SAML assertion in an HTML page (parse the web page returned).
I don't know if there is any standard to retrieve an assertion, but for sure in my case it's not...
Ok that's fine for me for the release process.

Hi @hoegertn, are you OK to introduce this new feature in the plugin ? If you are, I can start my implementation right now.
Are you OK with the signature of withAWS in my first post too ?
Thanks for your answer.


updateDomain has issues with attribute 'remove_deleted_clusters_and_servers'

I'm experimenting with updateDomain to add the ability for updating/extending existing domain.
However, I get an error at the end of the updateDomain process.
Running updateDomain with;
$WDT_HOME/bin/updateDomain.sh \
    -oracle_home $ORACLE_HOME \
    -domain_home /u01/theosb/domain/theosb_domain \
    -domain_type OSB \
    -model_file WDT_OSB_template-update.yaml \
    -admin_user weblogic \
    -admin_url t3://theosbadm-testX.elhub.cloud:8011

p.s. WDT_OSB_template-update.yaml  contains only LDAP Providers, SecurityConfiguration
The whole updateDomain process seems to succeed, however at the end throws an error which blocks it from applying those changes.
...
####<Feb 18, 2021 11:51:14 AM> <INFO> <SecurityProviderCreator> <_create_named_subtype_mbeans> <WLSDPLY-12118> <Creating AuthenticationProvider of type DefaultIdentityAsserter with name DefaultIdentityAsserter at location /SecurityConfiguration/theosb_domain/Realms/myrealm>
Problem invoking WLST - Traceback (innermost last):
  File "/u01/binaries/elhosb/weblogic-deploy/lib/python/update.py", line 303, in ?
  File "/u01/binaries/elhosb/weblogic-deploy/lib/python/update.py", line 288, in main
  File "/u01/binaries/elhosb/weblogic-deploy/lib/python/update.py", line 101, in __update
  File "/u01/binaries/elhosb/weblogic-deploy/lib/python/update.py", line 160, in __update_online
  File "/u01/binaries/elhosb/weblogic-deploy/lib/python/wlsdeploy/tool/deploy/topology_updater.py", line 101, in update
AttributeError: 'wlsdeploy.tool.util.topology_helper.TopologyHelper' object has no attribute 'remove_deleted_clusters_and_servers'

p.s. I'm using WDT built from master branch 12feb2021
I did a quick research on this repo, and I noticed that #820 is when remove_deleted_clusters_and_servers is introduced. not sure if it is related that error though.
Your help/feedback is much appreciated

hi zeusbaba -
I ran online update with release 1.9.9, and the method remove_deleted_clusters_and_servers is being called successfully, and I can see it present in the unzipped topology_helper.py source file. Is it possible that you have an older version of the class file
weblogic-deploy\lib\python\wlsdeploy\tool\util\topology_helper$py.class

from a previous build in your target directory? WLST runtime does not seem to automatically detect when there is a newer source files and re-compile. I'd recommend completely removing the target directory before each build.
Hope that helps.

Thanks for your response.
I just check the WDT binaries I've on the server, and it seems that I'm already using 1.9.10-SNAPSHOT
ls -l /u01/binaries/theosb/weblogic-deploy/
total 24
-rw-r-----. 1 theosb theosb 4673 Nov 11 12:31 LICENSE.txt
-rw-r-----. 1 theosb theosb   39 Feb 15 10:59 VERSION.txt
drwxr-x---. 2 theosb theosb 4096 Feb 16 10:12 bin
drwxr-x---. 2 theosb theosb   32 Feb 16 10:12 etc
drwxr-x---. 6 theosb theosb 4096 Feb 16 10:12 lib
drwxr-x---. 2 theosb theosb 4096 Feb 18 11:51 logs
drwxr-x---. 2 theosb theosb   70 Feb 16 10:12 samples

$ cat  /u01/binaries/theosb/weblogic-deploy/VERSION.txt
WebLogic Deploy Tooling 1.9.10-SNAPSHOT

Nevertheless, I'll try your suggestion by deleting and reinstalling WDT binaries. I'll share the result of this soon

Your assumption is confirmed.
Deleting and reinstalling WDT binaries resolved this issue.
Thanks again for your help


Add unsafe_hash for PEP 681

I've been asked to add unsafe_hash as an alias for hash at class level for PEP 618 (data class transforms).
I'm not enthusiastic about the lack of symmetry between class-level and field-level hash but this is not the hill I'm dying on.

PEP-681 not 618 if anyone's looking.


MD5 check FAILED: gnomad.genomes.v4.0.sites.chrY.vcf.bgz

Hi
I have downloaded the gnomAD v4 dataset, the MD5 check for the file gnomad.genomes.v4.0.sites.chrY.vcf.bgz failed, both at Google and Amazon links.

Heya @booorange,
Thanks for filing this issue! Our apologies for this, we have a PR open that will update the checksum on the website shortly.
For the moment, the correct checksum should be:
gsutil hash -h gs://gcp-public-data--gnomad/release/4.0/vcf/genomes/gnomad.genomes.v4.0.sites.chrY.vcf.bgz

Hashes [hex] for release/4.0/vcf/genomes/gnomad.genomes.v4.0.sites.chrY.vcf.bgz:
	Hash (md5):		8c231b75745b6670555915847c9999e8
	Hash (crc32c):		4b5875ee

Feel free to look at https://github.com/broadinstitute/gnomad-browser/pull/1296 for more context.


Move token or (lastUpload|lastDownload) to a different file

I try to completely automate my desktop environment to be able to reinstall any system whenever there might be any issue (or when changing hardware :-) )
For this the settings-sync extension is absolutely brilliant.
Unfortunately, whenever I compare my syncLocalSettings.json to the one in my repository, the lastUpload/lastDownload-values differs, making it difficult to see real changes.
I understand that one does not want to have the github token in an (worst case: world readable) uploaded file.
It would be great if the syncLocalSettings.json file could be static and the current status moved to a different file (e.g. syncStatus.json)
Being able to configure the token in a different file would work for me as well, as I did not change anything else in syncLocalSettings.json.

Nice idea for automation process for putting the lastUpload/ lastDownload in separate files.
I will put in a backlog.
Will look into it later on.

I am closing this issue, will evaluate on the popularity and reopen this.
As its very much low priority for me as far as other issues are open.


Intermediate C++ Programming: Object-Oriented Design

Title Of Blog Post : Intermediate C++ Programming: Object-Oriented Design
Short Description of what is expected: Delve into intermediate-level C++ programming with a focus on object-oriented design principles, classes, and inheritance.
Category: Programming Languages
Tags: C++, Object-Oriented Design, C++ Classes.

Please assign this to me , I plan to create a pull request during the month of October so that it can be counted towards Hacktoberfest 2023. Thank u!!

Please assign this to me. Thank you

please refer contribution guidlines


Add traveler bit to exports

Fixes #794
Proposed Changes

Add include_travlers to all export models
Set that bit on the iterate exposures when generating exports (using existing functionality
Update admin console so this can be configured

Release Note
ExportConfig supports the v1 API traveler bit, allowing exports to include "home" region and keys of federated-in travelers.

@mikehelmick how does that affect deployments with multiple regions/HAs being deployed within the same sever setup Vs federated deployments ?

should have no change to existing deployments. The traveller bit was introduced in the V1 API.
If multiple HAs are sharing the same server, my recommendation is to have them write to the same "region" or at least have their exports pull in all the regions to a single export file. This will give you maximum coverage.


Roll Engine from 9cb4d2dd243d to 143c349b3868 (3 revisions)

https://github.com/flutter/engine/compare/9cb4d2dd243d...143c349b3868
2021-01-08<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from R9qkTURF2... to kYdpRwQ7N... (flutter/engine#23543)
2021-01-08<EMAIL_ADDRESS>Roll Skia from 0355118f220e to 2a735ba1cb32 (7 revisions) (flutter/engine#23541)
2021-01-08<EMAIL_ADDRESS>Use Fractal rather than Improved noise in shader mask flow unit test (flutter/engine#23537)
Also rolling transitive DEPS:
fuchsia/sdk/core/linux-amd64 from R9qkTURF2dXy to kYdpRwQ7Ne0G
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Commit queue failed; closing this roll.

Commit queue failed; closing this roll.


only clear search cache on conflict

d737c128e68bd47e8631ca8105d8c38f1a7ebb68 introduced a pretty bad performance regression in resolving our rather large Gemfile -- ~4-5 seconds up to 27(!) seconds to do bundle show activerecord.  I bisected the problem down to these lines.
I think this patch reflects the original intent of the code -- if we reach the code below the catch() block, we've hit a conflict, so clear the cache.  If we throw :success, the clear_search_cache code will never be hit.

Ohhhhhhh. Yeah. I think that will do it. Thanks for the patch. :)

Applied to the 1-1-stable branch as 859d3ad92e7ae4aa517ea0f7f4d09e7f4b9cab86. Thanks!


1.0.3.RELEASE in Maven Central

PureJavaComm 1.0.3.RELEASE currently is not listed in Maven Central. Is there any chance to publish there in the near future?

This would be awesome.

I need this too.

I'd like to use this too.

This is an issu for us, would be much appreciated. 👍

This is not going to happen anytime soon, sorry.
I've just wasted two precious hours trying to get my maven/gradle system to work.
Since last upload to Maven Central I've upgraded to a new Mac, new macOS and Java 11 and now uploading MC is broken.
As I do not use Maven nor Gradle this is just pain in the ... for me.

I would like to help you. If we can use Sonatype OSSRH (https://central.sonatype.org/pages/ossrh-guide.html) then we might have to confirm to them that you are the owner of the groupId "com.github.purejavacomm". Or do you have credentials for OSSRH already?

On 26 Feb 2020, at 11.23, Andreas Kuhtz<EMAIL_ADDRESS>wrote:
Hello,
In the past someone provided the gradle and maven stuff for this project ... so if someone steps up I may have a second go at this, for now my time is too valuable to play with that stuff.
I would like to help you. If we can use Sonatype OSSRH (https://central.sonatype.org/pages/ossrh-guide.html) then we might have to confirm to them that you are the owner of the groupId "com.github.purejavacomm". Or do you have credentials for OSSRH already?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

I should have the credentials somewhere ... if I can only find them!

Found the related ticket at OSSRH: https://issues.sonatype.org/browse/OSSRH-27013


[added] "picture" to the list of redundant words in img[alt]

We modified the redundant alt rule to include a check for "picture". This is a rule we wanted for our own project and it seemed in line with the existing rule.
Please let us know if you have any questions or concerns
Thanks,
Matt and Kenny

We accidentally made this pull request from our master. We're going to close this and open an identical PR from a branch.


crosstool-ng "the public key is not trusted"

Getting this error when running makepkg:
Istvan@inagy-pc MSYS ~/MSYS2-packages/crosstool-ng
$ makepkg
==> Making package: crosstool-ng 1.21.0-1 (25 Feb 2016 20:19:36)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found crosstool-ng-1.21.0.tar.xz
  -> Found crosstool-ng-1.21.0.tar.xz.sig
  -> Found 0001-Modify-config-to-support-correct-Mingw64-Triplet-Nam.patch
  -> Found 0002-use-wide-versions-of-libs-for-nconf.patch
  -> Found 0003-modify-kconfig-make-lintl.patch
  -> Found 0004-kconfig-nconf-fix-compile-with-ncurses-reentrant-API.patch
==> Validating source files with sha256sums...
    crosstool-ng-1.21.0.tar.xz ... Passed
    crosstool-ng-1.21.0.tar.xz.sig ... Skipped
    0001-Modify-config-to-support-correct-Mingw64-Triplet-Nam.patch ... Passed
    0002-use-wide-versions-of-libs-for-nconf.patch ... Passed
    0003-modify-kconfig-make-lintl.patch ... Passed
    0004-kconfig-nconf-fix-compile-with-ncurses-reentrant-API.patch ... Passed
==> Verifying source file signatures with gpg...
    crosstool-ng-1.21.0.tar.xz ... FAILED (the public key 561ED9B6209588ED23C68329CAD7C8FC35B871D1 is not trusted)
==> ERROR: One or more PGP signatures could not be verified!

Seems like public key has changed. How can i accept the new public key?
Executing gpg --recv-key 561ED9B6209588ED23C68329CAD7C8FC35B871D1 has no effect.

consu_000@Estudio-2 MSYS ~/MSYS2-packages/crosstool-ng
$ makepkg
==> Making package: crosstool-ng 1.21.0-1 (Fri Dec  9 16:38:35 BRT 2016)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Downloading crosstool-ng-1.21.0.tar.xz...
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100 1566k  100 1566k    0     0   105k      0  0:00:14  0:00:14 --:--:--  245k
-> Downloading crosstool-ng-1.21.0.tar.xz.sig...
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100   287  100   287    0     0    287      0  0:00:01 --:--:--  0:00:01   294
-> Found 0001-Modify-config-to-support-correct-Mingw64-Triplet-Nam.patch
-> Found 0002-use-wide-versions-of-libs-for-nconf.patch
-> Found 0003-modify-kconfig-make-lintl.patch
-> Found 0004-kconfig-nconf-fix-compile-with-ncurses-reentrant-API.patch
==> Validating source files with sha256sums...
crosstool-ng-1.21.0.tar.xz ... Passed
crosstool-ng-1.21.0.tar.xz.sig ... Skipped
0001-Modify-config-to-support-correct-Mingw64-Triplet-Nam.patch ... Passed
0002-use-wide-versions-of-libs-for-nconf.patch ... Passed
0003-modify-kconfig-make-lintl.patch ... Passed
0004-kconfig-nconf-fix-compile-with-ncurses-reentrant-API.patch ... Passed
==> Verifying source file signatures with gpg...
crosstool-ng-1.21.0.tar.xz ... FAILED (the public key 561ED9B6209588ED23C68329CAD7C8FC35B871D1 is not trusted)
==> ERROR: One or more PGP signatures could not be verified!
I too, same steps.

this resolve:
consu_000@Estudio-2 MSYS ~/MSYS2-packages/crosstool-ng
$ gpg --edit-key 561ED9B6209588ED23C68329CAD7C8FC35B871D1
gpg (GnuPG) 1.4.20; Copyright (C) 2015 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

pub  2048R/35B871D1  created: 2014-02-20  expires: 2017-02-20  usage: SC
                     trust: full          validity: unknown
sub  2048R/A773DF6F  created: 2014-02-20  expires: 2018-04-30  usage: E
[ unknown] (1). Bryan Hundven<EMAIL_ADDRESS>[ unknown] (2). [jpeg image of size 16246]
[ revoked] (3)  Bryan Hundven<EMAIL_ADDRESS>[ revoked] (4)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (5)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (6)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (7)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (8)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (9)  [jpeg image of size 3080]

gpg> trust
pub  2048R/35B871D1  created: 2014-02-20  expires: 2017-02-20  usage: SC
                     trust: full          validity: unknown
sub  2048R/A773DF6F  created: 2014-02-20  expires: 2018-04-30  usage: E
[ unknown] (1). Bryan Hundven<EMAIL_ADDRESS>[ unknown] (2). [jpeg image of size 16246]
[ revoked] (3)  Bryan Hundven<EMAIL_ADDRESS>[ revoked] (4)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (5)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (6)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (7)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (8)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (9)  [jpeg image of size 3080]

Please decide how far you trust this user to correctly verify other users' keys
(by looking at passports, checking fingerprints from different sources, etc.)

  1 = I don't know or won't say
  2 = I do NOT trust
  3 = I trust marginally
  4 = I trust fully
  5 = I trust ultimately
  m = back to the main menu

Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y

pub  2048R/35B871D1  created: 2014-02-20  expires: 2017-02-20  usage: SC
                     trust: ultimate      validity: unknown
sub  2048R/A773DF6F  created: 2014-02-20  expires: 2018-04-30  usage: E
[ unknown] (1). Bryan Hundven<EMAIL_ADDRESS>[ unknown] (2). [jpeg image of size 16246]
[ revoked] (3)  Bryan Hundven<EMAIL_ADDRESS>[ revoked] (4)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (5)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (6)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (7)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (8)  Bryan Hundven<EMAIL_ADDRESS>[ unknown] (9)  [jpeg image of size 3080]
Please note that the shown key validity is not necessarily correct
unless you restart the program.

gpg> quit


[PE-D][Tester B] Integer values allowed in crew name

name usually will never contained only integers, hence this should throw an error message.

Labels: severity.Medium type.FeatureFlaw
original: Oliverloo0909/ped#8

Not quite an issue.


HIVE-25749: Check if RelMetadataQuery.collations() returns null to av…

…oid NPE

What changes were proposed in this pull request?

Prevent NPE by checking RelMetadataQuery.collations()'s return value.
Why are the changes needed?

NPE can be thrown if the return value is null.
Does this PR introduce any user-facing change?

No
How was this patch tested?

Existing tests, I could not reproduce the NPE via unit testing.

+1
I verified manually against a TPC-DS SF1 dataset that I have locally where the following query was previously hitting NPE and it works ok with this change.
Explain CBO
with my_customers as (
select distinct c_customer_sk
, c_current_addr_sk
from
( select cs_sold_date_sk sold_date_sk,
cs_bill_customer_sk customer_sk,
cs_item_sk item_sk
from   catalog_sales
union all
select ws_sold_date_sk sold_date_sk,
ws_bill_customer_sk customer_sk,
ws_item_sk item_sk
from   web_sales
) cs_or_ws_sales,
item,
date_dim,
customer
where   sold_date_sk = d_date_sk
and item_sk = i_item_sk
and i_category = 'Books'
and i_class = 'business'
and c_customer_sk = cs_or_ws_sales.customer_sk
and d_moy = 2
and d_year = 2000
)
select * from my_customers;


How can I generate coco format keypoints json file?

I used pos-ae get 17 keypoints of one person. But how can I generate the coco format json file using the 17 keypoints . Like this , {"keypoints": [176.7578125,<PHONE_NUMBER>, 0.9444317817687988,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.9576615691184998,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.9330981969833374,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.9314539432525635,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.6315260529518127, 0, 0, 0,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.8885959982872009,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.9087645411491394,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.8826849460601807,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.8257762789726257,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.6683874130249023,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.7143456935882568,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.7429389357566833,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.7802388072013855,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.7996304035186768,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.831089973449707,<PHONE_NUMBER>,<PHONE_NUMBER>, 0.8201078176498413], "score": 0.7800430655479431, "image_path": "test1.png"}

I have the same problem.
I got 18 keypoints using Openpose and output to coco_json format using openpose write_coco_json flag.
I edited the test.py to use my own images and the openpose json file, but it got the error:
   assert type(dataset)==dict, 'annotation file format {} not supported'.format(type(dataset))
AssertionError: annotation file format <class 'list'> not supported

I want to use Pose2Seg to test 1 single image, do I need to provide the Bbox in the json file?
How to generate the workful coco style json file for a single test image?
Can anyone provide an example of a simple json format for testing a single image ?

Please refer our dataset api on how to generate a usable coco-format json file:
https://github.com/liruilong940607/OCHumanApi/blob/master/ochumanApi/ochuman.py
And if you do not need evaluation (only need inference), you can leave those fields blank:
'area', 'iscrowd', 'segmentation', 'bbox', because we don't use them for inference.
Also, I need to mention that if you use pose-ae to generate pose, their are some tricks in their codes to introduce redundant keypoint for better performance. You need to get rid of those tricks for useable keypoint results:
e.g. L.198 and L.128 in their test.py

I have the same problem.
I got 18 keypoints using Openpose and output to coco_json format using openpose write_coco_json flag, and modify it to the coco keypoint json file follow coco dataset introductions.
I edited the test.py to use my own images and the openpose json file, but it got the error:
   assert type(dataset)==dict, 'annotation file format {} not supported'.format(type(dataset))
AssertionError: annotation file format <class 'list'> not supported

I want to use Pose2Seg to test 1 single image, do I need to provide the Bbox in the json file?
How to generate the workful coco style json file for a single test image?
Can anyone provide an example of a simple json format for testing a single image ?

Hey,
Were you able to solve this problem of converting openpose keypoints to coco format ?

I have the same problem.
I got 18 keypoints using Openpose and output to coco_json format using openpose write_coco_json flag, and modify it to the coco keypoint json file follow coco dataset introductions.
I edited the test.py to use my own images and the openpose json file, but it got the error:
   assert type(dataset)==dict, 'annotation file format {} not supported'.format(type(dataset))
AssertionError: annotation file format <class 'list'> not supported

I want to use Pose2Seg to test 1 single image, do I need to provide the Bbox in the json file?
How to generate the workful coco style json file for a single test image?
Can anyone provide an example of a simple json format for testing a single image ?

Hey,
Were you able to solve this problem of converting openpose keypoints to coco format ?

not yet, still I am struggling.......

I have the same problem.
I got 18 keypoints using Openpose and output to coco_json format using openpose write_coco_json flag, and modify it to the coco keypoint json file follow coco dataset introductions.
I edited the test.py to use my own images and the openpose json file, but it got the error:
   assert type(dataset)==dict, 'annotation file format {} not supported'.format(type(dataset))
AssertionError: annotation file format <class 'list'> not supported

I want to use Pose2Seg to test 1 single image, do I need to provide the Bbox in the json file?
How to generate the workful coco style json file for a single test image?
Can anyone provide an example of a simple json format for testing a single image ?

Hey,
Were you able to solve this problem of converting openpose keypoints to coco format ?

not yet, still I am struggling.......

Did you solve that?

@ZORAN666 no, I gave up, turned to another crowds segmentation method.

@wine3603  Which one are you using now ? Because this isn't working for me and I have spent ample amount of time in trying to make it work


Libraries upgrade: phpunit/phpunit - guzzlehttp/guzzle -  psr/http-message

Upgrading phpunit/phpunit from 5.7 to 8.0.
Upgrading guzzlehttp/guzzle from 7.0.1 to 7.7.0.
Upgrading psr/http-message from 1.0 to 2.0.

Any update???


Move Yarn attributes to separate file

This PR moves Yarn specific attributes to a separate file.

LGTM.


Enabling composefs by default in IoT (Fedora 41 Change)

From the F41 change:
Enabling composefs by default makes the root mount of the system (/) a truly read only filesystem, increasing the system integrity and robustness. This is the first step toward a full at runtime verification of filesystem integrity.
Full details:
https://fedoraproject.org/wiki/Changes/ComposefsAtomicCoreOSIoT
See:
https://github.com/containers/composefs
https://docs.kernel.org/filesystems/erofs.html
https://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt
https://blogs.gnome.org/alexl/2024/01/15/testing-composefs-in-silverblue/

This has been approved by FESCo: https://pagure.io/fesco/issue/3240


Potential collision and risk from indirect dependence "github.com/gotestyourself/gotestyourself"

Background
Repo Jeffail/benthos used the old path to import gotestyourself indirectly.
This caused that github.com/gotestyourself/gotestyourself and gotest.tools coexist in this repo：
https://github.com/Jeffail/benthos/blob/master/go.mod （Line 44 & 101）
github.com/gotestyourself/gotestyourself v2.2.0+incompatible // indirect
gotest.tools v2.2.0+incompatible // indirect

That’s because the gotestyourself has already renamed it’s import path from "github.com/gotestyourself/gotestyourself" to "gotest.tools". When you use the old path "github.com/gotestyourself/gotestyourself" to import the gotestyourself, will reintroduces gotestyourself through the import statements "import gotest.tools" in the go source file of gotestyourself.
https://github.com/gotestyourself/gotest.tools/blob/v2.2.0/fs/example_test.go#L8
package fs_test
import (
	…
	"gotest.tools/assert"
	"gotest.tools/assert/cmp"
	"gotest.tools/fs"
	"gotest.tools/golden"
)

"github.com/gotestyourself/gotestyourself" and "gotest.tools" are the same repos. This will work in isolation, bring about potential risks and problems.
Solution
Add replace statement in the go.mod file:
replace github.com/gotestyourself/gotestyourself => gotest.tools v2.3.0

Then clean the go.mod.

@Jeffail  Could you help me review this issue? Thx :p

Hey @KateGo520, thanks for the great write up, this was very easy to follow. I've had a skim over the deps that include this and it looks like I can eliminate it entirely by upgrading dockertest.

Thanks for your efforts and feedback.


The provided way to identify applications is unreliable

Unless I am worse at C than I thought, the implemented way to determine the application binary path is to read the /proc/[pid]/exe symlink.
This is sadly not a reliable way. The symlink is always given in the applications mount namespace, not the compositors mount namespace.
With unprivileged user namespaces (which afaik most distributions have available for lxc/docker/etc.) any user application can abuse this to gain any path.
I think this can be (paritally) mitigated by checking /proc/[pid]/ns/nmt and compare it with /proc/self/ns/mnt.
As secondary problem, applications that use interpreters (such as python) will show up as the interpreter. And sadly /proc/[pid]/cmdline is not reliable either to determine which file is interpreted.

HI,
This was written before user namespaces were "stable", so you're right to point out a now valid limitation. Your approach is similar to what I've done in a similar project and I believe you're right.
You're totally right about interpreted apps showing up as the interpreter. This is partly mitigable, but not always. However, the issue can be eliminated for DE-launched apps if the DE provides a method for libwsm to identify running applications, with a "Desktop" concept of running application that currently lacks standardisation on Linux.

Actually, there is one more potential attack scenario. It exploits the fact that PIDs can be re-used. More details here: https://github.com/swaywm/sway/pull/3088#issuecomment-456078987


Crash previewing laravel's blade diff files

Description
When certain conditions are met gitea can't display the blade.php file diff when viewing the commit. It only works when I click "View source button". Second link is taken from network, it is causing the crash.
https://try.gitea.io/stuzer05/test-preview/commit/f97b3784f8c8efc222128f6dffd4e5abb5fda462
https://try.gitea.io/stuzer05/test-preview/raw/commit/e2f752e123151fea55959571d56d57462025f0f6/test.blade.php

Gitea Version
1.17.0
Can you reproduce the bug on the Gitea demo site?
Yes
Log Gist
No response
Screenshots
No response
Git Version
No response
Operating System
No response
How are you running Gitea?
Docker
Database
No response

The file was recognized as SVG incorrectly.
https://try.gitea.io/stuzer05/test-preview/raw/commit/e2f752e123151fea55959571d56d57462025f0f6/test.blade.php
Response header:
content-type | image/svg+xml

By the extension name, it's not a svg file.


Better popsplits

i think that this improve the popsplit in playercell onAdd function , above of the unshift
this.gameServer.nodesPlayer.reverse(this);
work fine for me

You can get realistic physics and better popsplits by going into the gameserver.ini and changing
the splitVelocity : 715
This change is done under the player section of the gameserver.ini

@HyperAgar  hmm ok

It works

Duplicate of #766

@Megabyte918
I do not see the duplicate

@gyeyoqu Sorry! My bad. I read it as though it was the same as #766 xD I should really start reading these more carefully. But to answer your issue, it would be best to keep PlayerCell.js the way it is with the unshift and find a workaround for popsplits in the mainLoop function of GameServer to keep the fixes for doublesplits, etc and to not cause any future bugs (or maybe fix a few). As discussed in #723.

its ok , im learning js quickly, in a future i can help

@Megabyte918
Mainly, where should I put emphasis to solve the popsplit?

@gyeyoqu The mainLoop function in GameServer.js needs to be edited along with a refactoring of the collision engine. Eat collisions should be processed slower than rigid collision processing. Currently eat collision processing happens too quickly which has a big effect on popsplits. Refactoring the collision engine should also have an effect on it but I'm not so sure yet.


Vector and matrix copy to C array.

I'm trying to use mathfu in this project: https://github.com/UPBGE/blender, but i could not find a simple way to copy data from a vector or matrix to a C array.
The current library we use has a function named getValue which is used as below:
float a[3];
vec.getValue(a); // content of vec is copied to the a array

But i can't found a way to do similar work using VectorPack and Vector::Pack.
So, what is the simple way to copy the vector content to an array assuming this array could not be replaced by VectorPack ?

Yeah, there's no convenient function for that, and I agree that be nice to have.
For now you'd have to do:
memcpy(&a[0], &vec[0], sizeof(a));

In this commit : https://github.com/UPBGE/blender/commit/77dee105559d552e3a4d5835cba9af5765d2fb30 I implemented some operator to copy to a C array and to get a constant C array pointer.
Is these functions safe with SIMD ?

Yes, looks safe to me.


Update canteven-config

To allow clients to obtain a default MetricsConfig even if config.yml doesn't exist.
Depends on https://github.com/SumAll/haskell-canteven-config/pull/5

Closing in favor of https://github.com/SumAll/haskell-sumall-sync-worker-framework/pull/34


Update Logging Names

Better naming for logging functions.
More intuitive defaults.

Result of Integration 1
Duration: 5 minutes and 21 seconds
Result: Perfect build! All 179 tests passed. :+1:
Test Coverage: 65%


[Extension] Do not need display "Required." validation message in Transfer ID field

Describe the bug

To Reproduce
Steps to reproduce the behavior:

Go to 'Send CSPR' form
Enter the CSPR amount is bigger than wallet balance
Should see the "Required" error in Transfer ID field

Expected behavior
Should not display the "Required" error in Transfer ID field

Fixed


Run kurtosis on k8s on GCP

Background & motivation
Wish to run kurtosis on k8s(GKE) on Google Cloud Platform. I don't see any storage-class in the documentation here  https://docs.kurtosis.com/k8s/#iii-add-your-cluster-information-to-kurtosis-configyml.
Desired behaviour
Need to know what value should I pass to storage-class
How important is this to you?
Critical; Kurtosis is unusable for me without it.
What area of the product does this pertain to?
CLI: the Command Line Interface

Hey @nidhi-singh02
Can you run kubectl get storageclass
I believe the value for gcp should be standard. That should also show up in the output of the command

Hi,
I ran the above command, in that I could see standard as well @h4ck3rk3y.
let me try running with standard storage class.

I have an update, it works on GCP with storage class standard. I tried running minikube profile and it works fine on GCP as I think it picks the cluster name from the context and minikube already has storage-class as standard. Could we please update the document for GCP, I am happy to raise the PR if we wish to update the doc :)
config-version: 2
should-send-metrics: true
kurtosis-clusters:
  docker:
    type: "docker"
  minikube:
    type: "kubernetes"
    config:
      kubernetes-cluster-name: "minikube"
      storage-class: "standard"
      enclave-size-in-megabytes: 10


Fix for #12136 - resolved invalid or missing placeholders in String.format calls

This PR fixes #12136 where calls to String.format contained missing or invalid placeholders.

Codecov Report
Attention: 2 lines in your changes are missing coverage. Please review.

Comparison is base (56ecafc) 61.60% compared to head (5208f85) 46.51%.

Files
Patch %
Lines

...ava/org/apache/pinot/spi/plugin/PluginManager.java
0.00%
1 Missing :warning:

...ain/java/org/apache/pinot/spi/utils/JsonUtils.java
0.00%
1 Missing :warning:

Additional details and impacted files
@@              Coverage Diff              @@
##             master   #12137       +/-   ##
=============================================
- Coverage     61.60%   46.51%   -15.09%
+ Complexity     1152      944      -208
=============================================
  Files          2406     1808      -598
  Lines        130859    95132    -35727
  Branches      20218    15344     -4874
=============================================
- Hits          80611    44250    -36361
- Misses        44373    47731     +3358
+ Partials       5875     3151     -2724

Flag
Coverage Δ

custom-integration1
?

integration
?

integration1
?

integration2
?

java-11
?

java-21
46.51% <0.00%> (-14.97%)
:arrow_down:

skip-bytebuffers-false
46.51% <0.00%> (-15.07%)
:arrow_down:

skip-bytebuffers-true
?

temurin
46.51% <0.00%> (-15.09%)
:arrow_down:

unittests
46.51% <0.00%> (-15.09%)
:arrow_down:

unittests1
46.51% <0.00%> (-0.19%)
:arrow_down:

unittests2
?

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


antctl get netpol should support AntreaPolicy

Describe the bug
antctl get netpol assumes the controlplane networkpolicy is a namespace scoped resource and namespace/name can uniquely identify a NetworkPolicy. This is no longer true after Antrea ClusterNetworkPolicy and Antrea NetworkPolicy are supported, there are several issues:

More fields needs to be displayed, e.g. tier, priority, currently antctl has its own NetworkPolicy structs, which is out of date now, even -o yaml/json doesn't display the new fields.
Encoding namespace into the url path will no longer work as controlplane NetworkPolicy is not a namespaced resource. Need to use fieldSelector to specify namespace.
upstream NetworkPolicy name is not used as name of corresponding controlplane NetworkPolicy any more. Need to use fieldSelector to specify name.

duplicate of https://github.com/vmware-tanzu/antrea/issues/927


[Sonatype Lift] ThreadLocalUsage

Tool
ErrorProne
File
rest-toolkit-starter/src/main/java/io/github/nichetoolkit/rest/interceptor/RestNoteHandlerInterceptor.java
Line
40
Description
ThreadLocals should be stored in static fields (More Details)

Tool
ErrorProne
File
rest-toolkit-starter/src/main/java/io/github/nichetoolkit/rest/interceptor/RestNoteHandlerInterceptor.java
Line
41
Description
ThreadLocals should be stored in static fields (More Details)


feat: add C implementation for stats/base/dists/gamma/skewness

Resolves #3627
Description

What is the purpose of this pull request?

This pull request:

adds C implementation for @stdlib/stats/base/dists/gamma/skewness along with relevant tests, benchmarks and examples

Related Issues

Does this pull request have any related issues?

This pull request:

resolves #3627

Questions

Any questions for reviewers of this pull request?

No.
Other

Any other information relevant to this pull request? This may include screenshots, references, and/or implementation notes.

No.
Checklist

Please ensure the following tasks are completed before submitting this pull request.

[x] Read, understood, and followed the contributing guidelines.

@stdlib-js/reviewers

@Planeshifter Make all the changes and also added README.md file changes. Please review all the changes.


chore: rename rome_js_unicode_table to biome_js_unicode_table biomejs#88

Summary

Renamed rome_js_unicode_table to biome_js_unicode_table
Added #[allow(dead_code)] to DEFAULT_CONFIGURATION_BEFORE and DEFAULT_CONFIGURATION_AFTER in crates/rome_cli/tests/commands/format.rs. (I wrote motivation in there comment)
When I ran GitHub Actions on my forked repo, Test (windows-latest) failed with: "error: linking with link.exe failed: exit code: 1318" (log). But tests on other OS passed. I don't have any idea to fix this. Please help me. 🙏

#88

Test Plan

[x] just ready

The linking issue might happen while we rename the crates. It's a caching issue with GitHub workflows. If that happens, we delete the action's cache manually

@ematipico

The linking issue might happen while we rename the crates. It's a caching issue with GitHub workflows. If that happens, we delete the action's cache manually

Thank you for letting me know that! I'll do that next time on my repo.
Could you please delete actions's cache and re-run failed jobs?


Reflow breaks code in Lisp and Lisp-derived languages when reflowing comments

Lisp and Lisp-derived languages (Common Lisp, Scheme, Clojure, Emacs Lisp, etc.) use semicolons before single-line comments.

Refs #4, #9, #11, #12, #18, #23, #33, #39, ...
I think it's pretty clear that autoflow needs a better way of determining how to wrap things.

Ah, true.  Apologies for belaboring the point.  :)

Sorry, that wasn't meant towards you :).  This is really my first time triaging an autoflow bug, so I was just surprised by all the issues there were.

Oh, I didn't take it personally.   :)
I'd like to note somewhere that ' is used for line comments in various Microsoft BASICs including contemporary VB.net and that REM is used for line comments in Windows batch files - and neither are supported.  Should I create separate issues for them?  I don't want to add more noise than value...

We should probably create a master issue for bugs where autoflow doesn't take into account keeping the code structure intact.

Fixed by #45.


Any idea how to handle Authorization token?

Do you have any idea how to get the authorization token from nextjs and use it in the headers?

I am working on component I will inform you as it is available.
Preview
https://github.com/httpsOmkar/auth-react-component/tree/dev

I work on this component library I think it is workable on the project you can try it
https://github.com/httpsOmkar/auth-react-component
http://httpsomkar.github.io/auth-react-component

Thanks, can component be used server side?

I don't think so because the authentication is done at client end but I will still check that can if render on server

import cookie from "js-cookie";
export const setCookie = (key, value) => {
if (process.browser) {
cookie.set(key, value, {
expires: 1,
path: "/"
});
}
};
export const removeCookie = key => {
if (process.browser) {
cookie.remove(key, {
expires: 1
});
}
};
export const getCookie = (key, req) => {
return process.browser ?
getCookieFromBrowser(key) :
getCookieFromServer(key, req);
};
const getCookieFromBrowser = key => {
console.log('grabbing key from browser')
return cookie.get(key);
};
const getCookieFromServer = (key, req) => {
console.log('grabbing key from server')
if (!req.headers.cookie) {
return undefined;
}
const rawCookie = req.headers.cookie
.split(";")
.find(c => c.trim().startsWith(${key}=));
if (!rawCookie) {
return undefined;
}
return rawCookie.split("=")[1];
Something like this might work

I will add the serverside rendering support in the application soon.


Mbasiuk/tdi 39687 change to single mode

What is the current behavior? (You can also link to an open issue here)
Batch mode is not good idea for Row components
What is the new behavior?
Change to simple execution mode.
Please check if the PR fulfills these requirements

[x] The commit message follows Talend standard
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features) ?
[ ] The code coverage on new code >75%
[ ] The new code does not introduce new technical issues (sonar / eslint)

What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build / CI related changes
[ ] Other... Please describe:

Does this PR introduce a breaking change?

[ ] Yes
[x] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
Other information:

Pull request test result: success :star:
Sonar results

Pull request test result: success :star:
Sonar results

Pull request test result: success :star:
Sonar results

Pull request test result: success :star:
Sonar results

Pull request test result: success :star:
Sonar results

Pull request test result: success :star:
Sonar results

no more needed in 6.5.1.


Unable to burn HNT

Unable to scan QR code from console to burn HNT. The burn button is greyed out and not selectable.
Reproducible by community on 3.3.1 and me (on 3.3.2)

@cokes518 It looks like the memo in the QR code is 4 characters too long to pass validation in the app.


Fix error code in 3.2 branch

What is the purpose of the change
Brief changelog
Verifying this change

Checklist

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Add some description to dubbo-website project if you are requesting to add a feature.
[ ] GitHub Actions works fine on your own branch.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #11199 (50e4d8f) into 3.2 (459a0f9) will increase coverage by 0.12%.
The diff coverage is 63.15%.

:exclamation: Current head 50e4d8f differs from pull request most recent head 2d411f1. Consider uploading reports for the commit 2d411f1 to get more accurate results

@@             Coverage Diff              @@
##                3.2   #11199      +/-   ##
============================================
+ Coverage     64.74%   64.87%   +0.12%
  Complexity       14       14
============================================
  Files          1479     1479
  Lines         61588    61583       -5
  Branches       9029     9029
============================================
+ Hits          39877    39952      +75
+ Misses        17522    17450      -72
+ Partials       4189     4181       -8

Impacted Files
Coverage Δ

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

...in/java/org/apache/dubbo/config/ServiceConfig.java
69.58% <0.00%> (ø)

...ubbo/registry/client/ServiceDiscoveryRegistry.java
74.31% <0.00%> (ø)

...moting/transport/netty4/NettyConnectionClient.java
76.77% <0.00%> (+2.58%)
:arrow_up:

.../org/apache/dubbo/registry/xds/istio/IstioEnv.java
0.00% <0.00%> (ø)

...oting/api/connection/AbstractConnectionClient.java
71.42% <50.00%> (ø)

...rg/apache/dubbo/rpc/protocol/dubbo/DubboCodec.java
69.91% <50.00%> (+0.24%)
:arrow_up:

...rpc/cluster/router/xds/RdsVirtualHostListener.java
83.13% <50.00%> (ø)

.../protocol/dubbo/DubboIsolationExecutorSupport.java
71.42% <77.77%> (+12.60%)
:arrow_up:

...o/config/deploy/DefaultMetricsServiceExporter.java
79.48% <80.00%> (ø)

... and 34 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Is this not support Visual Basic?

I found out that every time I compile my Visual Basic program, ShowMeTheXAML always generate C# file instead of Visual Basic in /obj/Debug folder. This makes unable to compile my program.

Currently no, there is not VB support. It would not be difficult to add, however I am not very familiar with VB. If you can show me what the expected VB syntax is for that file, I will look into adding VB support.

Visual Basic support is added in the 2.0.0 release


Add feature to ignore paths, such that no span is created for the specfifc paths matching the regex.

Is your feature request related to a problem?
Since spans for some requests might be unwanted, thus this feature is necessary.
Describe the solution you'd like
Can be implemented by taking. imput from user about the paths they want to ignore, and not making spans for that call.

Isn't this already present ?
https://github.com/open-telemetry/opentelemetry-cpp-contrib/blob/2a0db982f3d7ee91dfbe8150435e49e837bfb7ce/instrumentation/nginx/README.md?plain=1#L218
To ignore spans for common health endpoints:
opentelemetry_ignore_paths (?:livez?|readyz?|health(?:y|z)?|liveness|readiness|metrics|ping)$;

@toredash I can't get 'opentelemetry_ignore_paths' to work.
I set opentelemetry_ignore_paths ^/fastly-probe$; in a location snippet, but still spans are created for the path /fastly-probe. Other variations like ^fastly-probe$ , ^/fastly-probe, fastly-probeetc. don't work either.
I am running ingress-nginx controller v0.10.0, which is compiled with  --with-pcre-jit.
In the example above you use a proper regex, yet in the tests, a single string is used.
Can you help me out? Do you need further info?

Putting opentelemetry_ignore_paths in a http block instead of location fixed it for me

Putting opentelemetry_ignore_paths in a http block instead of location fixed it for me

Thats where I put it as well so figures why it didnt work :)

This is for /instrumentation/otelwebservermodule.

Ignore Path feature has been implemented in Otel-webserver-module Nginx


Add retry to ErcotAPI.make_api_call().

Fix issue #415 ErcotAPI not handling retries properly.
Problem
When ErcotAPI makes requests to ERCOT too frequently, it would get a response with status code 429 (too many requests).  ErcotAPI.hit_ercot_api() delegates to ErcotAPI.make_api_call() which makes the call to ERCOT and it doesn't have any retry logic when the response has a status code of 429.  As a result, an exception is raised when it tries to access the data in the response.
Solution
Add retry logic to make_api_call with the following changes:

add max_retries: int = 3 to constructor of ErcotAPI
set initial_delay to `sleep_seconds' with min and max bounds
set max_retries with min and max bounds
add while loop for retrying with an exponential backoff strategy (doubling delay time in each retry iteration)
raise error if response contains error or retries are exhausted

Testing
Successfully downloaded 30 days dam_hourly_lmp by writing the one-day of data at a time (in a loop) with initial_delay = 1 second and max_retries = 5.
Notes
There are retry handling outside of make_api_call method.  They are likely to be redundant after this change.

@buckfeng The code looks good although I haven't had a chance to run it myself yet. With these changes, do the existing tests in test_ercot_api pass?

@buckfeng The code looks good although I haven't had a chance to run it myself yet. With these changes, do the existing tests in test_ercot_api pass?

@WillKoehrsen I ran the test in test_ercot_api.py.  One test failed - TestErcotAPI::test_get_lmp_by_bus_historical_date_range  The output of the test log are given below.  The error didn't appear to be related to the retry logic.  This test was taking a LONG time.  I didn't see any rate limit warnings.
I changed all the ErcotAPI calls in the test to use 3 second delays and 5 retries to be on the safe side.   Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC).
    EPOCH = datetime.datetime.utcfromtimestamp(0)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
============================================================================ short test summary info ============================================================================
FAILED gridstatus/tests/test_ercot_api.py::TestErcotAPI::test_get_lmp_by_bus_historical_date_range - ValueError: No objects to concatenate

Sounds good. It looks like the test_get_lmp_by_bus_historical_date_range test also fails on main, so it's not caused by your changes.

You may not have the permissions to merge this. If that's the case, I'll do so tomorrow.