triage failing integration tests

status
mz can support?
test name
query
materialized error

❌
❌
test_current_timestamp
CREATE VIEW materialize.public.test_recency__dbt_tmp AS SELECT date_trunc(\'day\', current_timestamp::timestamp)::datetime AS today
current_timestamp cannot be used in static queries

❌
❌
test_current_timestamp_in_utc
CREATE VIEW materialize.public.test_current_timestamp_in_utc__dbt_tmp AS SELECT current_timestamp::timestamp AS actual, current_timestamp::timestamp AS expected
current_timestamp cannot be used in static queries

❌
??
test_date_spine
select (()::date - ()::date)
  Expected an expression, found right parenthesis - LINE 7:         (()::date - ()::date)

✅
✅
test_date_trunc
CREATE VIEW materialize.public.test_date_trunc__dbt_tmp AS WITH data AS (SELECT * FROM materialize.public.data_date_trunc) SELECT date_trunc(\'day\', updated_at)::date AS actual, \"day\" AS expected FROM data UNION ALL SELECT date_trunc(\'month\', updated_at)::date AS actual, \"month\" AS expected FROM data
Cannot call function date_trunc(unknown, text): arguments cannot be implicitly cast to any implementation's parameters; try providing explicit casts

✅
✅
test_dateadd
CREATE VIEW materialize.public.test_dateadd__dbt_tmp AS WITH data AS (SELECT * FROM materialize.public.data_dateadd) SELECT CASE WHEN datepart = \'hour\' THEN dateadd(\"hour\", interval_length, from_time)::timestamp WHEN datepart = \'day\' THEN dateadd(\"day\", interval_length, from_time)::timestamp WHEN datepart = \'month\' THEN dateadd(\"month\", interval_length, from_time)::timestamp WHEN datepart = \'year\' THEN dateadd(\"year\", interval_length, from_time)::timestamp ELSE NULL END AS actual, result AS expected FROM data
  function "dateadd" does not exist

❌
??
test_datediff
found here
no overload for interval + float8: arguments cannot be implicitly cast to any implementation's parameters; try providing explicit casts

✅
✅
test_get_relations_by_pattern
??
Required ILIKE support.

✅
✅
test_get_relations_by_prefix_and_union
??
Required ILIKE support.

❌
✅
test_generate_series
??
function "pow" does not exist

❌
blocked
test_hash
CREATE VIEW materialize.public.test_hash__dbt_tmp AS WITH data AS (SELECT * FROM materialize.public.data_hash) SELECT md5(input_1::text) AS actual, output AS expected FROM data
function "md5" does not exist

❌
??
test_last_day
CREATE VIEW materialize.public.test_last_day__dbt_tmp AS WITH data AS (SELECT * FROM materialize.public.data_last_day) SELECT CASE WHEN date_part = \'month\' THEN dateadd(\"day\", - 1, dateadd(\"month\", 1, date_trunc(\'month\', date_day)))::date WHEN date_part = \'year\' THEN dateadd(\"day\", - 1, dateadd(\"year\", 1, date_trunc(\'year\', date_day)))::date ELSE NULL END AS actual, result AS expected FROM data
column "month" does not exist

❌
??
test_position
here
didn't parse! Expected left parenthesis, found identifier - LINE 15:         substring_text in string_text

❌
❌
test_recency
CREATE VIEW materialize.public.test_recency__dbt_tmp AS SELECT date_trunc(\'day\', current_timestamp::timestamp)::datetime AS today
unknown catalog item 'datetime'

❌
✅
test_right
CREATE VIEW materialize.public.test_right__dbt_tmp AS WITH data AS (SELECT * FROM materialize.public.data_right) SELECT \"right\"(string_text, length_expression) AS actual, COALESCE(output, \'\') AS expected FROM data
function "right" does not exist

❌
blocked
test_surrogate_key
CREATE VIEW materialize.public.test_surrogate_key__dbt_tmp AS WITH data AS (SELECT * FROM materialize.public.data_surrogate_key) SELECT md5(concat(COALESCE(column_1::text, \'\'))::text) AS actual_column_1_only, expected_column_1_only, md5(concat(COALESCE(column_1::text, \'\'), \'-\', COALESCE(column_2::text, \'\'), \'-\', COALESCE(column_3::text, \'\'))::text) AS actual_all_columns_arguments, md5(concat(COALESCE(column_1::text, \'\'), \'-\', COALESCE(column_2::text, \'\'), \'-\', COALESCE(column_3::text, \'\'))::text) AS actual_all_columns_list, expected_all_columns FROM data"
function "md5" does not exist

❌
??
test_url_path
here
didn't parse! Expected left parenthesis, found REPLACE - LINE 67:     replace(

❌
??
test_width_bucket
CREATE VIEW materialize.public.test_width_bucket__dbt_tmp AS WITH data AS (SELECT * FROM materialize.public.data_width_bucket) SELECT (CASE WHEN mod(amount::numeric(28, 6), ((max_value - min_value) / num_buckets)::numeric(28, 6)) = 0 THEN 1 ELSE 0 END) + least(ceil((amount - min_value) / ((max_value - min_value) / num_buckets)), num_buckets + 1) AS actual, bucket AS expected FROM data
no overload for text - text: arguments cannot be implicitly cast to any implementation's parameters; try providing explicit casts

The above test failures have been (mostly) triaged and documented in this repo's README. Moving forward, I think we should only fix macros as we receive user requests. Closing this!

The above test failures have been (mostly) triaged and documented in this repo's README. Moving forward, I think we should only fix macros as we receive user requests. Closing this!


GPU Particles causing constant crashes on some Android devices

Godot version
4.1.1 stable
System information
Android, GLES3
Issue description
I have been getting constant reports of crashes coming from very specific devices.
All devices are low-end, having a Mediatek MT6769/MT6833V or some other variations of chipsets, as well as a few Samsung Exynos 850. They also have between 2GB-4GB ram.
I have thousands of players, and all the reports come from these specific devices, even clearing the app data and uninstalling does not solve it.

Steps to reproduce
Cannot provide.
Minimal reproduction project
Cannot provide.

I will try to gather more information.
All I know for now is that it happens when the game runs get_tree().reload_current_scene()

Possibly related to:

#75413
#78735

Actually, it is not related to reload_current_scene(), the crashes where happening as soon as any GPUParticles2D played.
Weirdly enough, it was working before a game update, and this update did not change the engine version nor did make changes to the particles, so I don't know what is going on there. Maybe some shader cache issue?

Actually, it is not related to reload_current_scene(), the crashes were happening as soon as any GPUParticles2D played. Weirdly enough, it was working before a game update, and this update did not change the engine version nor did make changes to the particles, so I don't know what is going on there. Maybe some shader cache issue?

Likely not a shader cache issue if you can reproduce in 4.0.3. Shader caching was implemented in 4.1.
The stack trace doesn't appear to be anything related to rendering, but its impossible to say with the limited amount of information.
What changes did you make in the update that introduced the crash?

Actually, it is not related to reload_current_scene(), the crashes were happening as soon as any GPUParticles2D played. Weirdly enough, it was working before a game update, and this update did not change the engine version nor did make changes to the particles, so I don't know what is going on there. Maybe some shader cache issue?

Likely not a shader cache issue if you can reproduce in 4.0.3. Shader caching was implemented in 4.1.
The stack trace doesn't appear to be anything related to rendering, but its impossible to say with the limited amount of information.
What changes did you make in the update that introduced the crash?

There were many new content in this update, but all done in gdscript and no plugins updates, I don't see how that could affect just specific phones.
At this point I don't even know what is the cause, it seems completely random, although it is always after reloading the scene.
I can't even debug it myself, since I don't have any of these phones, so I have to rely on user reports and stack trace.
Here is another crash from one of my users

Actually, it is not related to reload_current_scene(), the crashes were happening as soon as any GPUParticles2D played. Weirdly enough, it was working before a game update, and this update did not change the engine version nor did make changes to the particles, so I don't know what is going on there. Maybe some shader cache issue?

Likely not a shader cache issue if you can reproduce in 4.0.3. Shader caching was implemented in 4.1.
The stack trace doesn't appear to be anything related to rendering, but its impossible to say with the limited amount of information.
What changes did you make in the update that introduced the crash?

After making some reworks to the game code and avoiding reload_current_scene(), all the issues were gone.
However, I added a new scene to the game that is only instantiated when clicking on a button. Inside this scene it contains a GpuParticles2D. It also uses an animation material.
The same users started reporting crashes when opening this same scene, but only after the second time opening it.
There is nothing in this scene that could be causing crashes, and since it only crashes the second time opening it, I suspect it is related to shader caching.
This crash only affects older phones, and just some of them, so most likely bad opengl implementation by manufacturers. But there should be a workaround for this. I am using cpu particles everywhere in the project now, but cpu particles don't support ring emission shape, which is exactly why I used gpu particles.

I am using cpu particles everywhere in the project now, but cpu particles don't support ring emission shape, which is exactly why I used gpu particles.

According to https://github.com/godotengine/godot/pull/50370, this is supported in CPUParticles3D.

I have the same problem and it happend only for particles using a texture. If I remove my texture (a 64x64 png) my game stop crashing

I am having a similar issue the build is crashing on some low end android devices, and I can confirm that it is due to a shader. I have a shader to slightly tilt a card, once I take out a build without this shader the crash is gone. I am very new at shader programming so I am not sure if there is something wrong with my shader.
Here is my shader code:
`shader_type canvas_item;
uniform float fov : hint_range(0, 359) = 90;
uniform bool cull_back = true;
uniform float y_rot : hint_range(-360, 360) = 0.0;
uniform float x_rot : hint_range(-360, 360) = 0.0;
uniform float inset : hint_range(-100, 100) = 0.0;
uniform vec4 tint_color : source_color;
varying flat vec2 o;
varying vec3 p;
void vertex() {
float sin_b = sin(y_rot / 180.0 * PI);
float cos_b = cos(y_rot / 180.0 * PI);
float sin_c = sin(x_rot / 180.0 * PI);
float cos_c = cos(x_rot / 180.0 * PI);
mat3 inv_rot_mat;
inv_rot_mat[0][0] = cos_b;
inv_rot_mat[0][1] = 0.0;
inv_rot_mat[0][2] = -sin_b;

inv_rot_mat[1][0] = sin_b * sin_c;
inv_rot_mat[1][1] = cos_c;
inv_rot_mat[1][2] = cos_b * sin_c;

inv_rot_mat[2][0] = sin_b * cos_c;
inv_rot_mat[2][1] = -sin_c;
inv_rot_mat[2][2] = cos_b * cos_c;

float t = tan(fov / 360.0 * PI);
p = inv_rot_mat * vec3((UV - 0.5), 0.5 / t);
float v = (0.5 / t) + 0.5;
p.xy *= v * inv_rot_mat[2].z;
o = v * inv_rot_mat[2].xy;

VERTEX += (UV - 0.5) / TEXTURE_PIXEL_SIZE * t * (1.0 - inset);

}
void fragment() {
if (cull_back && p.z <= 0.0) discard;
vec2 uv = (p.xy / p.z).xy - o;
vec4 texture_color = texture(TEXTURE, uv + 0.5);
// Apply tint color
texture_color *= tint_color;
// Apply alpha mask
texture_color.a *= step(max(abs(uv.x), abs(uv.y)), 0.5);
COLOR = texture_color;
}
`

@Ayush-Agarwal123 This is an unrelated issue. That said, you may want to check that your shader will never perform a division by zero, which may crash graphics drivers on certain devices.

This issue may be fixed by https://github.com/godotengine/godot/pull/88816

We just encountered the same issue. I can say the issue did not get fixed by #88816
We are on 4.3 and have it. Will try to switch renderers and see if it has an impact.


account for different anchors for share sheet on iPad

@aaustin @derrickstaten @Sarkar

Nice :+1:

I'm showing the share sheet from an UIButton, not an UIBarButtonItem. Is it possible to add anchoring to other views?

@galip91 right now we have the anchor explicitly specified as a UIBarButtonItem. You could try anchoring from your UIButton (perhaps to test you could cast your UIButton to be a UIBarButtonItem), and if it works, we can make the anchor a more generic UIView. How does that sound?


Update PyPI maintainer; use VERSION for binary wheels

This patch is essential so that the Python wheels get correct version number.

Codecov Report

Merging #2992 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master    #2992   +/-   ##
=========================================
  Coverage     43.83%   43.83%
  Complexity      226      226
=========================================
  Files           156      156
  Lines         12269    12269
  Branches        466      466
=========================================
  Hits           5378     5378
  Misses         6695     6695
  Partials        196      196

Continue to review full report at Codecov.

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


GestureDetector's onDoubleTap does not work with accessibility

Steps to reproduce
Click the text or the number.
P/s: after enabling the magnification shortcut with triple tap, I was unable to double tap.
Expected results
Number will increase
Actual results
Nothing happened
Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;

  void _incrementCounter() {
    setState(() {
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: Text(widget.title),
      ),
      body: Center(
        child: GestureDetector(
          onDoubleTap: _incrementCounter,
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              const Text(
                'You have pushed the button this many times:',
              ),
              Text(
                '$_counter',
                style: Theme.of(context).textTheme.headlineMedium,
              ),
            ],
          ),
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.13.2, on macOS 13.6.1 22G313 darwin-arm64, locale
    en-VN)
    • Flutter version 3.13.2 on channel stable at
      /Users/phat/Developer/flutter_3.13.2
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ff5b5b5fa6 (7 months ago), 2023-08-24 08:12:28 -0500
    • Engine revision b20183e040
    • Dart version 3.1.0
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/phat/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/phat/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A507
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b829.9-10027231)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.1.4)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.87.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension can be installed from:
      🔨 https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (3 available)
    • SM F926B (mobile) • RFCT426NC0B • android-arm64  • Android 14 (API 34)
    • macOS (desktop)   • macos       • darwin-arm64   • macOS 13.6.1 22G313 darwin-arm64
    • Chrome (web)      • chrome      • web-javascript • Google Chrome 123.0.6312.87

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Hi @ThatPham2000, you are using an old version of flutter. Kindly upgrade to the latest version of flutter. Kindly upgrade to the latest version of flutter stable (3.19.5) to see if you still experience this issue.
If you do, please provide the updated output of flutter doctor -v
Thank you

Because of https://github.com/flutter/flutter/issues/141007, we have to use the above version.
However, I updated the latest version 3.19.5. The result is the same.
Here is my flutter doctor:
[✓] Flutter (Channel stable, 3.19.5, on macOS 13.6.1 22G313 darwin-arm64, locale
    en-VN)
    • Flutter version 3.19.5 on channel stable at
      /Users/phat/Developer/flutter_3.19.5
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 300451adae (4 days ago), 2024-03-27 21:54:07 -0500
    • Engine revision e76c956498
    • Dart version 3.3.3
    • DevTools version 2.31.1

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/phat/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/phat/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A507
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b829.9-10027231)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.1.4)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.87.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension can be installed from:
      🔨 https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 13.6.1 22G313
      darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 123.0.6312.87

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Hi @ThatPham2000, just to confirm, does this work if the magnification shortcut is not set to a triple tap?

Hi @danagbemava-nc , You are right.

Hi @ThatPham2000, are you able to use the gesture properly in native android apps?

Hi @danagbemava-nc ,
For this issue, the root cause is that users turn on the magnification shortcut with the triple-tap feature. Magnification is one of the Accessibility features. Because Accessibility's triple-tap has the same behavior as the double-tap of Flutter, Flutter's onDoubleTap function has never been called.
Besides, I tested it on iOS. iOS used a double-tap with three fingers to trigger the magnification. After enabling magnification, the feature works fine.
I provided the code example causing this issue above.

Hi @ThatPham2000, my apologies, I wasn't clear enough.
What I meant was in native android, do you see the gesture being handled properly while the magnification is active? I ask this because of the system is intercepting the triple tap to show the magnifier, there likely isn't a way for flutter to handle the event because it won't be receiving them. I tested a small example in jetpack compose but the system was intercepting the event so the double tap wasn't working. If you could provide an example in native android that works as expected, we would appreciate it, otherwise there wouldn't be much we can do.
PS: Android and iOS have different ways of handling things internally, so things that work on iOS may not always work on android

Hi @danagbemava-nc , here is the video example. At the end of the video, you can see when you enable the magnification, Flutter still recognizes the double-tap action (very lucky ^^ after a long time of trying). Therefore, it is very hard to detect the double-tap action.
Can Flutter override this?
https://github.com/flutter/flutter/assets/57900109/15377382-deaa-4161-b91f-463b27ef33dd

@ThatPham2000, thanks for the video, I initially assumed that Talkback needed to be on for this to be reproduced.
Reproducible using the code sample provided above.
Talkback should not be on to reproduce this issue. I tested with a compose sample and it works as expected. With the magnification gesture set to triple tap, it seems like the gesture detector captures the input as a single tap instead of a double tap. A triple tap will end up triggering magnification on the device.

flutter
compose

compose sample
package com.example.accessibility

import android.os.Bundle
import android.util.Log
import android.view.GestureDetector
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.ExperimentalFoundationApi
import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
import androidx.compose.foundation.combinedClickable
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.mutableIntStateOf
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import com.example.accessibility.ui.theme.AccessibilityTheme

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            AccessibilityTheme {
                // A surface container using the 'background' color from the theme
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colorScheme.background
                ) {
                    Greeting("Android")
                }
            }
        }
    }
}

@OptIn(ExperimentalFoundationApi::class)
@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    val counter = remember {
        mutableIntStateOf(0)
    }

    Scaffold(
        modifier =  modifier.fillMaxSize(),
    ) { it ->
        Column(modifier = Modifier
            .padding(it)
            .fillMaxSize()
            .combinedClickable(
                onClick = {

                },
                onDoubleClick = {
                    Log.d("GREETING", "double clicked")
                    counter.intValue++
                }
            ),
            verticalArrangement = Arrangement.Center,
            horizontalAlignment = Alignment.CenterHorizontally
        ) {

                Text(text = "Some text ${counter.intValue}", textAlign = TextAlign.Center)

        }
    }
}

@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
    AccessibilityTheme {
        Greeting("Android")
    }
}

flutter doctor -v
[!] Flutter (Channel stable, 3.19.5, on macOS 14.3.1 23D60 darwin-arm64, locale en-GB)
    • Flutter version 3.19.5 on channel stable at /Users/nexus/dev/sdks/flutter
    ! Warning: `flutter` on your path resolves to /Users/nexus/dev/sdks/flutters/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutter. Consider adding /Users/nexus/dev/sdks/flutter/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/nexus/dev/sdks/flutters/bin/dart, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutter. Consider adding /Users/nexus/dev/sdks/flutter/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 300451adae (8 days ago), 2024-03-27 21:54:07 -0500
    • Engine revision e76c956498
    • Dart version 3.3.3
    • DevTools version 2.31.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Users/nexus/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode-15.3.0.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.14.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.1)
    • Android Studio at /Users/nexus/Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.2.5)
    • IntelliJ at /Users/nexus/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 77.2.2
    • Dart plugin version 232.10286

[✓] VS Code (version 1.87.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.86.0

[✓] Connected device (5 available)
    • Pixel 7 (mobile)     • 28291FDH2001SA            • android-arm64  • Android 14 (API 34)
    • Nexus (mobile)       • 00008020-001875E83A38002E • ios            • iOS 17.4.1 21E236
    • Dean’s iPad (mobile) • 00008103-000825C811E3401E • ios            • iOS 17.4.1 21E236
    • macOS (desktop)      • macos                     • darwin-arm64   • macOS 14.3.1 23D60 darwin-arm64
    • Chrome (web)         • chrome                    • web-javascript • Google Chrome 123.0.6312.107

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 3.22.0-5.0.pre.29, on macOS 14.3.1 23D60 darwin-arm64, locale en-GB)
    • Flutter version 3.22.0-5.0.pre.29 on channel master at /Users/nexus/dev/sdks/flutters
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e1964cf4f0 (4 hours ago), 2024-04-05 00:05:20 -0400
    • Engine revision f17d586de6
    • Dart version 3.5.0 (build 3.5.0-18.0.dev)
    • DevTools version 2.34.1

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Users/nexus/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode-15.3.0.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.14.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.1)
    • Android Studio at /Users/nexus/Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.2.5)
    • IntelliJ at /Users/nexus/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 77.2.2
    • Dart plugin version 232.10286

[✓] VS Code (version 1.87.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.86.0

[✓] Connected device (6 available)
    • Pixel 7 (mobile)                • 28291FDH2001SA            • android-arm64  • Android 14 (API 34)
    • Nexus (mobile)                  • 00008020-001875E83A38002E • ios            • iOS 17.4.1 21E236
    • Dean’s iPad (mobile)            • 00008103-000825C811E3401E • ios            • iOS 17.4.1 21E236
    • macOS (desktop)                 • macos                     • darwin-arm64   • macOS 14.3.1 23D60 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad     • darwin         • macOS 14.3.1 23D60 darwin-arm64
    • Chrome (web)                    • chrome                    • web-javascript • Google Chrome 123.0.6312.107

[✓] Network resources
    • All expected network resources are available.

• No issues found!


WebClient used in SE examples and tests

Signed-off-by: David Kral<EMAIL_ADDRESS>

@romain-grecourt can you please have a look?
I have two issues seeing it now:

The registration of readers and writers is a bit too much. Maybe we should come up with some level of automation?
The tests that need to do toCompletableFuture().get() to make sure the reactive path finishes before the method finishes seems ugly (though necessary) - maybe we should come up with a simple wrapper that would be synchronous (either as a testing support library, or maybe even as API)
Ideas?

I was thinking about some WebClient wrapper for Helidon tests. Because when you look into the PR, it contains a lot of duplicity code ... What I am struggling with currently is, how to make it as simple as possible.

Perhaps some of these simplications should be offered to developers as well (if not already there!). E.g., if I want to add JSON support, why can't I do that in a single line with reasonable defaults?
.mediaSupport(JsonProcessing.class)
or something similar. CoC can coexist with the no magic style.

Yes I definitely agree that some simplification for users is required.

Your proposed simplification would be nice if we want to have reader and writer registered by default. But I am not exactly sure if we can do it currently. It seems to me that media support providers are currently not done the same way and creating of each reader and writer is done differently.
It could be possibly also nice to have something like addReader(MessageBodyReader instance) and the same for writer directly at builder. Because you might want to have reading handled by your own reader but writing handled by some default etc. But to this we probably need to update MediaSupport to allow creation of the new MediaSupport instance based on the previously created one.

I agree that MediaSupport needs a way to replicate the current "media support" services.
Shortcut methods on the builder for registering readers and writer also sounds like a good idea.
Also registerDefaults() could also be implied by default, and we'd have a flag to not register the defaults.
E.g.
MediaSupport.create() // MediaSupport with defaults

MediaSupport.builder(/* registerDefaults */ false)
    .reader(FooReader.create()) // shortcut for .readerContext().registerReader(...)

MediaSupport.builder() // registers default
    .operators(JsonMediaSupport.create()) // registers all supported operators for JSON

The tests that need to do toCompletableFuture().get() to make sure the reactive path finishes before the method finishes seems ugly (though necessary) - maybe we should come up with a simple wrapper that would be synchronous (either as a testing support library, or maybe even as API)

Having that as part of the Multi / Single API would be nice. Let's chat with Daniel and David about that. Though I think that this is okay to leave as-is for now.

Maybe something like utility method await to hide dirty blocking? Its quite common in reactive tcks:
WebClientResponse response = await(webClient.get()
                .path("/employees")
                .request());
response.close();
Assertions.assertEquals(Http.Status.OK_200, response.status(), "HTTP response2");

I would definitely add some timeout

Fixes #1668

@tomas-langer Can this PR go in without the new Single features?

Follow up: #1748


[REQUEST] The ability to chain auth proxies

Is your feature request related to a problem? Please describe.
Individual auth proxies ( i.e <IP_ADDRESS>:1080:user:pass ) work in Runner but when chained, they don't! (socks5)<IP_ADDRESS>:1080:user:pass -> (socks5)<IP_ADDRESS>:1080:user:pass does not work.
Describe the solution you'd like
The ability to chain auth proxies.

https://github.com/openbullet/openbullet/commit/107fbb1ce54f827c290159353c7e74fc61395e02
Please reopen if it doesn't work

@openbullet , Unfortunately, it doesn't work yet, not in checker nor in Runner.

Alright, I will check


Fix error on default props but no propTypes

This fixes a bug where the styleguide does not display when you have a default prop defined but no proptypes:
propTypes: {
    someValue: 1
}

getDefaultProps() {
    return {
        someValue: 0
        someOtherValue: 1
    }
}

In the above case, someOtherValue would cause the guide to break because it is not in the propTypes. I have situations where I want to do this.

Thanks @theogravity !

Thanks! May I ask when a new version will be published with the changes?


[BUG] ESP32C6 Slave Driver Issue

Description / Steps to reproduce the issue
Hello All,
I am trying to use 2 esp32c6 devkit m, one as master and one as slave.
Slave spi cannot work. I tried solve it by myself but I can't. Please @fdcavalcanti, @tmedicci , can you take a look?
I did custom app with open and read cmds, master doesn't receive data. I am using master branch. SPI 2, without DMA.
Please, look image below:

spi_slave_hal_get_rcv_bitlen should be called after spi_slave_hal_storage_result, we aren't doing it so transfer_size always will be 0.
I changed spi_slave_hal_get_rcv_bitlen position,  but I faced other issues. I can give more details when you ask for.
Just to FYI, to advance in my solution I need change esp_hal (I know, it is not a good idea, I did it only for testing), I opened a thread in esp-idf forum to try understand better hal.
https://github.com/espressif/esp-idf/issues/14462
On which OS does this issue occur?
[Linux]
What is the version of your OS?
Ubuntu 24
NuttX Version
master
Issue Architecture
[risc-v]
Issue Area
[Drivers]
Verification

[X] I have verified before submitting the report.

Hi Felipe. Can you share the app you've written to test it?

Sure @fdcavalcanti.
`int main(int argc, FAR char *argv[])
{

  int fd;
  int ret;
  uint8_t buffer[128];

  while(1)
  {
    fd = open("/dev/spislv2", O_RDONLY | O_WRONLY );
    if (fd < 0)
    {
        printf("Failed to open %s\n", "/dev/spislv2");
        return -1;
    }
    printf(" Trying to Read: \n");

    ret = read(fd, buffer, 30);
    for (int i = 0 ; i < ret; i++)
      {
        printf("%02X ", buffer[i]);
      }
    printf("\n");
    usleep(1000000);
    close(fd);
    usleep(2000000);
  }

  return 0;
}`

You can use my .config also:
config.zip

@FelipeMdeO please do this on the slave device:

Remove the open and close commands from the while loop. Just open once and let it print stuff
Enable DEBUG_FEATURES, DEBUG_ASSERTIONS_EXPRESSION and DEBUG_ASSERTIONS_FILENAME on Debug Options menu
Enable SPI Slave support on SPI Driver Support menu and also on SPI Configuration

Run that program and check if the system fails. If it does, send here the log.

Hello @fdcavalcanti, sorry for the delay.
I am with same behavior. I will put details here:
Master >

Slave >

nsh> hello
spi_slave_open: filep: 0x4080a980
spislave_bind: ctrlr=0x40804bf4 dev=0x40809b28 mode=0 nbits=8
spi_slave_select: sdev: 0x40809b28 CS: free
spi_slave_cmddata: sdev: 0x40809b28 CMD: command
spislave_initialize: ctrlr=0x40804bf4
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
spi_slave_read: filep=0x4080a22c buffer=0x4080a9e0 buflen=30
 Trying to Read:
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 Trying to Read:
spi_slave_read: filep=0x4080a22c buffer=0x4080a9e0 buflen=30
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
 Trying to Read:
spi_slave_read: filep=0x4080a22c buffer=0x4080a9e0 buflen=30
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
spi_slave_select: sdev: 0x40809b28 CS: select
spislave_prepare_next_tx: TX buffer empty! Disabling TX for next transaction
spi_slave_select: sdev: 0x40809b28 CS: free
 Trying to Read:
spi_slave_read: filep=0x4080a22c buffer=0x4080a9e0 buflen=30
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Are you able to do it work in your side?

Ok, thanks.
I'll look into it.

@FelipeMdeO I've reviewed it and noticed two issues:

There's an issue with the HAL item you mentioned, I also couldn't retrieve data from it.
There's also an issue on the NuttX SPI Slave driver that was changed in commit dcb8188f07f, preventing the while loop to enter. I forced some values on the rx_buffer and could make it work.

I can't dig deeper at the moment, but will get back to it when possible.

Hello @fdcavalcanti.
I am trying solve spi slave communication and I made some progress. However I am stucked in other issue, maybe you can help me.
The CS pin was configure to generate IRQ in Rising edge:

But I am getting IRQ in both edges. I solved this locally but I believe the final solution should be changing the HAL
I changed spislave_cs_interrupt to get more prints:

Look whats happen:

@tmedicci  Can you help us looking better about this IRQ?

Hello @fdcavalcanti.
I am trying solve spi slave communication and I made some progress. However I am stucked in other issue, maybe you can help me.
The CS pin was configure to generate IRQ in Rising edge:

But I am getting IRQ in both edges. I solved this locally but I believe the final solution should be changing the HAL
I changed spislave_cs_interrupt to get more prints:

Look whats happen:

@tmedicci Can you help us looking better about this IRQ?

Hi @FelipeMdeO , I didn't get what is the local solution (and what would be the proposed HAL solution). Can you explaining how you made it work locally?

Hello @tmedicci,
I am fixing driver step by step in my local machine, it isn't finished and need be improved.
If you want, I can share with you my repo.


Oscillation does not work (mostly)

Hi,
I could successfully integrate my Dyson Purifier Cool Formaldehyde (TP09). I can control almost everything.
The oscillation switched worked at the beginning (the fan began to turn). But after a short time (mostly after changing fan speed), the oscillation switch did not trigger the device anymore.

If I am using the remote instead the fan perfectly reacts.
What can I do to reliably get the oscillation switch working?

In the meantime I found out, that this issue only occurs when I am logged in with my Dyson Link app. There seems to be a bigger issue once you are connected to your Dyson Account in two ways - Dyson Link app and Home Assistant.

@erd82 and others, the reason for this is (if you're in Auto fan mode) there's an air quality target and if that target is met oscillation will be paused while still being enabled. If you switch off auto in the app and set a constant fan speed it should unpause oscillation, and then you can do whatever you want in HA without the app settings overriding it.


Potential Security Vulnerabilities in Redunda

Received a mail, a couple of days back regarding secy vulnerabilities and seems like 2 dependencies of Redunda are creating a small problem.  The suggested fix is:
Gemfile.lock update suggested: nokogiri ~> 1.8.1.
Gemfile.lock update suggested: loofah ~> 2.2.1.

If there is a possibility of a security vulnerability, wouldn't it be better if you sent an email to the maintainers (Art and Undo?) instead of posting it here? A person could take advantage of the vulnerability (if there is one).

Hmm, actually I am not even sure if there's a need of a mail. There's a huge banner, atleast for me, when I visit the repo, telling that there is an issue.

@Fortunate-MAN can you look into this issue as well? As this's also related to ruby, I think.
The issue is still present. There's more secy vulnerabilities in the present mail.

@Bhargav-Rao on it.


changed "clusters" to "cluster" under Add podinfo repository to Flux

changed "clusters" to "cluster" under Add podinfo repository to Flux because when the repo gets created it is ./cluster/my-cluster/flux-system but in the document it is clusters/my-cluster/flux-system
Signed-off-by: syedabrarali<EMAIL_ADDRESS>

It should be clusters everywhere in the doc.


Support using Docker service hostnames

Currently I am trying to use this in a Node.js app inside Docker, which needs to connect to another Docker container which is running my GraphQL endpoint.
Normally you would just use the Docker service name so that Docker's internal DNS resolves it transparently, however this is not possible here because an error gets thrown (seemingly from an underlying dependency, perhaps isomorphic-fetch):
Error: only absolute urls are supported

Very old, closing, re-open if still an issue.


Update header styling, fix overlap issues, add to search placeholder,…

Fixed overlapping error between header icon and rest of header banner. Added more text to search placeholder and made it adjust to screen size. Added home icon to reroute to homepage and removed routing of main icon.

do not merge this


Update aws-sdk version

Because KMS is only supported by v2, I want to use aws-sdk v2 for hats. but oops is using old aws-sdk.
Now aws-sdk has v1 gem called aws-sdk-v1. with aws-sdk-v1 we can use both aws-sdk v1 and v2 in a same application.

@rramsden Can you review this please?

Looks good to me


Sams branch

Updates based on feedback from Angela, thanks!

The /push build failed because the repo back when sam forked didn't have CI.  The /pr build is successful (as you'd expect for a CSS only change ;-)


run error in cordova 5.4.0

im upgrade my cordova and reinstall this plugin but error
...\platforms\android\build\intermediates\explo
ded-aar\com.google.android.gms\play-services-base\7.8.0\res\drawable-xhdpi\commo
n_signin_btn_icon_disabled_focus_light.9.png -o
...\platforms\andro
id\build\intermediates\res\debug\drawable-xhdpi-v4\common_signin_btn_icon_disabl
ed_focus_light.9.png
Error Code:
42
Output:
...\platforms\android\build\intermediates\exploded-aar\com.
google.android.gms\play-services-base\7.8.0\res\drawable-xhdpi\common_signin_btn
_icon_disabled_focus_light.9.png ERROR: Unable to open PNG file
why?

@FaisalAriyanto no idea. I would suggest that you remove your platforms directory and re-add it using phonegap platform add android then try building again.

If this is still a problem then re-open


"summary" for object widget

Is your feature request related to a problem? Please describe.
Our "object" widgets have a lot of content in them, so authors typically view them in the "collapsed" view but have to open them regularly to remind themselves what is inside.
Describe the solution you'd like
If we could provide a summary, similar to how lists have, for a quick overview. This would save authors time, as they could simply scan over all of the collapsed widgets and understand what they have to work with at a high level.
Describe alternatives you've considered
Could make a custom widget, but seems like overkill for just one field.

How about something like the displayFields property used in the relations widget, that would specify what would be displayed in the collapsed state.


Bring fix_flowdir into nhdplusTools from gfv2 workflow.

This was implemented for fixing the flow direction in the merit hydrography used for hydrologic model development.
Note that I am starting #190 here and there is some work to do on this new function to correctly check attribute names.

Codecov Report

Merging #217 (c541964) into master (0347067) will decrease coverage by 0.13%.
The diff coverage is 84.00%.

@@            Coverage Diff             @@
##           master     #217      +/-   ##
==========================================
- Coverage   93.66%   93.53%   -0.14%
==========================================
  Files          19       19
  Lines        1990     2011      +21
==========================================
+ Hits         1864     1881      +17
- Misses        126      130       +4

Impacted Files
Coverage Δ

R/nhdplusTools.R
97.01% <ø> (ø)

R/get_paths.R
96.40% <50.00%> (-1.14%)
:arrow_down:

R/get_geometry.R
92.85% <86.66%> (-7.15%)
:arrow_down:

R/index_nhdplus.R
98.49% <100.00%> (+<0.01%)
:arrow_up:

R/run_plus_attributes.R
98.96% <100.00%> (+0.01%)
:arrow_up:

Continue to review full report at Codecov.

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


[SDPA-2125] Adds keyboard opening to fieldRplchecklist

JIRA issue: https://digital-engagement.atlassian.net/browse/SDPA-2125
Changed

Opens combobox on enter key
Closes combobox on esc key
Traps focus when combobox is open

Screenshots

Closing this in favour of #292


正在渲染组件时，无法响应Click事件。

使用Embed动态加载远程js文件或者为list动态添加多个cell的时候。正在渲染的过程中，页面上的其它控件无法响应Click事件，严重影响用户体验，请问该如何解决？

hi  @supersoho  麻烦提供一下 在哪个平台， SDK版本号， 最好提供一下可以验证问题的demo，方便我们排查  thx ~~

This PR/issue doesn't received response since Weex migrated to Apache two years ago and this repository is no longer active yet.
Feel free to ask question in new repository and thanks for your contribution.

This issue is outdated for a long time and will be closed now. You can create a new one if you still have questions.


fix parse message encode

currently when try encode parse message it return incorrect message length because miss to count Int16 len of type_oids array
for example for SELECT 7, we got next body:
[80, 0, 0, 0, 16, 115, 48, 0, 83, 69, 76, 69, 67, 84, 32, 55, 0, 0, 0]

but expected:
[80, 0, 0, 0, 18, 115, 48, 0, 83, 69, 76, 69, 67, 84, 32, 55, 0, 0, 0]

@tbicr Thank you! Are you using this library for encoding frontend messages?

@tbicr Thank you! Are you using this library for encoding frontend messages?

Kinda, I want pass origin message to client, something similar to:
async fn on_parse<C>(&self, client: &mut C, message: Parse) -> PgWireResult<()>
where
    C: ClientInfo + ClientPortalStore + Sink<PgWireBackendMessage> + Unpin + Send + Sync,
    C::PortalStore: PortalStore<Statement=Self::Statement>,
    C::Error: Debug,
    PgWireError: From<<C as Sink<PgWireBackendMessage>>::Error>,
{
    let inner_client =  self.upstream_client.client.inner();  // tokio postgres inner client
    // let buf = inner_client.with_buf(|buf| {
    //     frontend::parse(&message.name.clone().unwrap_or(String::from("")), &message.query, message.type_oids.iter().map(|type_oid| Oid::from(*type_oid)), buf).unwrap();
    //     Ok::<bytes::Bytes, Error>(buf.split().freeze())
    // }).unwrap();
    let mut buf = BytesMut::new();
    message.encode(&mut buf)?;
    let mut responses = inner_client.send(RequestMessages::Single(FrontendMessage::Raw(buf))).unwrap();
    if let Ok(Message::ParseComplete(message)) = responses.next().await {
        client.send(PgWireBackendMessage::ParseComplete(ParseComplete::new())).await?;
    }
    Ok(())
}

Looks good! As a few users requested, I have a plan to built a proxy framework on top of pgwire. https://github.com/sunng87/pgwire/discussions/204
Let me know if you have any questions.

Looks good! As a few users requested, I have a plan to built a proxy framework on top of pgwire. #204
Let me know if you have any questions.

it sounds really helpful, I'm building something similar to proxy, so I pass most messages as is and change behaviour just in some cases
I take tokio-postgres fork as client, so it allows me easy to connect, pass unchanged messages and I still able to use hi level api for introspection or original query modification (in general splitting to few)
I have some issues with tokio-postgres used this way, so will wait if native proxy framework will work better for my case


Entrypoint Passing Secret as Port into Flower

Receiving an error message, in flower and worker nodes
Traceback (most recent call last):
  File "/usr/local/bin/flower", line 10, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/site-packages/flower/__main__.py", line 11, in main
    flower.execute_from_commandline()
  File "/usr/local/lib/python3.6/site-packages/celery/bin/base.py", line 275, in execute_from_commandline
    return self.handle_argv(self.prog_name, argv[1:])
  File "/usr/local/lib/python3.6/site-packages/flower/command.py", line 56, in handle_argv
    return self.run_from_argv(prog_name, argv)
  File "/usr/local/lib/python3.6/site-packages/flower/command.py", line 48, in run_from_argv
    self.print_banner('ssl_options' in settings)
  File "/usr/local/lib/python3.6/site-packages/flower/command.py", line 141, in print_banner
    logger.info('Broker: %s', self.app.connection().as_uri())
  File "/usr/local/lib/python3.6/site-packages/celery/app/base.py", line 793, in connection
    **kwargs
  File "/usr/local/lib/python3.6/site-packages/celery/app/base.py", line 751, in connection_for_write
    return self._connection(url or self.conf.broker_write_url, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/celery/app/base.py", line 819, in _connection
    'broker_connection_timeout', connect_timeout
  File "/usr/local/lib/python3.6/site-packages/kombu/connection.py", line 189, in __init__
    url_params = parse_url(hostname)
  File "/usr/local/lib/python3.6/site-packages/kombu/utils/url.py", line 47, in parse_url
    scheme, host, port, user, password, path, query = _parse_url(url)
  File "/usr/local/lib/python3.6/site-packages/kombu/utils/url.py", line 81, in url_to_parts
    parts.port,
  File "/usr/local/lib/python3.6/urllib/parse.py", line 169, in port
    port = int(port, 10)
ValueError: invalid literal for int() with base 10: 'ROZ'

After tracking down the issue, it appears that if we use redis-secrets in the values.yaml file -- existingSecret: airflow-redis then that secret is passed into the port for flower.
In fact, the issue appears to be in the image entry-point,
https://github.com/puckel/docker-airflow/blob/master/script/entrypoint.sh
line 40 is causing the problem
if [ -n "$REDIS_PASSWORD" ]; then
    REDIS_PREFIX=:${REDIS_PASSWORD}@
else

because the REDIS_PREFIX starts with an unnecessary colon
so later when
AIRFLOW__CELERY__BROKER_URL="redis://$REDIS_PREFIX$REDIS_HOST:$REDIS_PORT/1"
is run, the first part of the REDIS_PREFIX is a colon and the value after the colon is misinterpreted as the port. This leads to the error

@joshuap2613  a "/" character in password  while creating a secret  in kubernetes triggers this.
kubectl create secret generic airflow-postgres --from-literal=postgres-password=$(openssl rand -base64 13)

@joshuap2613 a "/" character in password while creating a secret in kubernetes triggers this.
kubectl create secret generic airflow-postgres --from-literal=postgres-password=$(openssl rand -base64 13)

Awesome! Thank you very much!

running into same issue - not clear how to solve for this...
@joshuap2613 or others, did you find a fix? Is the "solution" (for testing, at least) to run Redis without a password?

@matwerber1  please try with password which does not have "/" character in it. It should work.


Allow caffeine to work when the closing tag of body is absent or contains spaces

Maybe my approach is a bit naive, but I think we can just check if </body is found in content and if it's not, just append the dripper HTML at the end of content.
Spaces after tag name are also valid in html (even when closing tags), so I propose to work with </body instead of </body>.
This resolves #105

Pinging @mikebronner in case you didn't notice that I updated the PR.
This is not meant to hurry you. I just don't know if you get any notification about changes in PR or responses in those code-comments.

Sorry, no didn't get a notification. Thanks for responding. Will take a look this week :)

Sorry for the delay on this. It will be in the next release in just a bit. Sorry I didn't merge this, was working on multiple things and incorporated it with them.


Push notifications

Hi there!,
I already downloaded source manager app for ios. Also added GoogleService-Info.plist file to the application. My firebase project server key is already added at conf.xml file in my own server instance.
When I run from Xcode the application (regardless my own iPhone or emulator) there is not a Modal screen requesting permissions for "allow notifications". Server address screen appears, I type my own server instance domain and everything goes normal so far. Neither a notificationToken is added to my user's attributes.
Is there something i'm missing here?
Thanks in advance

Sounds correct. Debug the code to see what the issue is.

When creating the ios App on Firebase console, step 3 refers that I shall execute three pod commands (init, firebase/core and install), but I already executed pod install when downloaded manager. Shall I execute those three commands? Sorry, Im not an Xcode/Swift expert.

You just need to run install. Also, make sure that you are using "google" build type.

Thank you very much for your help. I was indeed using debug build type. Once I changed to Google build type executing went as expected.
Thanks again for your help.

Hello, I followed this tutorial and even then I don't get notifications. Perfectly added the GoogleService-Info.plist but they don't come. Does APNS have anything to do with it?


Fast backend

Is your feature request related to a problem? Please describe.
It seems speedtest-cli doesn't support multi connection so it doesn't reflect full bandwidth on multi-wan networks
Describe the solution you'd like
Supporting Netflix's fast.com backend. There's already a node cli available at https://github.com/sindresorhus/fast-cli/tree/main
Additional context

Dup of #976


Release azure-cli-vm 2.0.9

This checklist is used to make sure that common guidelines for a pull request are followed.
General Guidelines

[ ] The PR has modified HISTORY.rst with an appropriate description of the change (see Modifying change log).

Command Guidelines

[ ] Each command and parameter has a meaningful description.
[ ] Each new command has a test.

(see Authoring Command Modules)

Reviewers, please verify the following for this PR:

[ ] The PR title has format Release <component-name> <version>.
[ ] setup.py has been modified with the same version as in the PR title.
[ ] HISTORY.rst has been modified with appropriate release notes.
[ ] If releasing azure-cli or azure-cli-core, __version__ defined in __init__.py should also be modified to match.

Started releasing azure-cli-vm 2.0.9...

Release of 'azure-cli-vm' with version '2.0.9' successful. View at https://pypi.python.org/pypi/azure-cli-vm/2.0.9.

GitHub release created. https://github.com/Azure/azure-cli/releases.


Inconsistent virtual method obfuscation state detected

This is the error:
Renaming:  fields...parameters...properties...events...methods...
An error occurred during processing:
Inconsistent virtual method obfuscation state detected. Abort. Please review the
following methods,
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Algorithms.Geometry.IPlaneObject::get
BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Algorithms.Geometry.LineSegment::get
BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Algorithms.Geometry.YOrientedRectangl
e::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Algorithms.Geometry.YRectangle::get_B
oundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Layout.Router.BusRepresentations/c::g
et_BoundingBox[0]->Skipped:special name
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Layout.LabelCandidate::get_BoundingBo
x[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]or/c::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]uw/g::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]r8/a::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]ki/d::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]r8/d::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]r8/e::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Layout.Router.Polyline.DynamicObstacl
eDecomposition/a::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Layout.Circular.CircularLayouter/b::g
et_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]dg/d::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Layout.Organic.RemoveOverlapsLayoutSt
age/b::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Layout.Organic.ShuffleLayouter/a::get
_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Layout.Router.Polyline.EdgeRouter/e::
get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]kz/c::get_BoundingBox[0]->WillRename:A
[yWorks.yFilesNET.Algorithms]yWorks.yFiles.Layout.Labeling.MISLabelingAlgorithm/
c::get_BoundingBox[0]->WillRename:A
In the obfuscar.xml file i'm using this variables:

Can you help me with this issue?
Original Reported Date: 2014-08-18T06:10:58.117-07:00
Planned For Release:
Original CodePlex ID: 19

Copied from CodePlex without authors:
If you can share the assembly via<EMAIL_ADDRESS>I can do some debugging on it.
Generally speaking, you can see from line 656 that only in rare cases this skip line is used,
https://github.com/lextm/obfuscar/blob/master/Obfuscar/AssemblyInfo.cs
Original Posted Date: 2014-08-18T20:39:51.51-07:00

Copied from CodePlex without authors:
I am trying to use Obfuscar with the yWorks dlls and am getting this exact same error. I don't believe it is a duplicate of item 16.
Original Posted Date: 2015-02-18T10:55:46.52-08:00

Copied from CodePlex without authors:
Looking at yWorks.yFilesNET.Algorithms assembly in ILSpy shows that within BusRepresentations.d (where the special name skip shows up) this property shows up as:
public virtual YRectangle get_BoundingBox()
{
	return this.c;
}

Other implementations of the IPlaneObject interface look like normal properties. Like this one from LabelCandidate:
public virtual YRectangle BoundingBox
{
	get
	{
		YRectangle yRectangle = LabelCandidate.a(this.a);
		if (yRectangle != null)
		{
			return yRectangle;
		}
		return this.a.BoundingBox;
	}
}

I've tried adding this ForceMethod element to my config, but it doesn't resolve the issue:
<ForceMethod type="yWorks.yFiles.Layout.Router.BusRepresentations/d" name="get_BoundingBox" />

I don't think the yWorks license allows me to send you their partially obfuscated dll.
Original Posted Date: 2015-02-18T11:03:21.247-08:00

Duplicate to http://obfuscar.codeplex.com/workitem/16
Original Closed Date: 2014-09-03T06:52:28.647-07:00


Retrieve Data from other table

Laravel Version: #.#.#
PHP Version:
Laravel-admin: #.#.#

Description:
Hi , i have used Multi select input to display genres of movies , the author can select multiple genres for a movie , am storing them in movies table as an array of ids using Mutators and accessors , the way you guide us , how to display the names of these genres in the listing of movies
-- what i mean is that storing and updating info using multi select (  $form->multipleSelect() ) is working great , but what about displaying in the grid ?
Screen shot

@z-song if you can have a look

@emadrashad Show me your model and grid code?

@Romerski  thanks man actually you way helped me a lot and worked , but the result is like the following

and here is my model implementaiton
`
class Movie extends Model
{
use SoftDeletes;
protected $casts = [

	'multiple_images' => 'json' ,
	'genres'          => 'json' ,

];

public function setPicturesAttribute($multiple_images)
{
    if (is_array($multiple_images)) {
        $this->attributes['multiple_images'] = json_encode($multiple_images);
    }
}

public function getPicturesAttribute($multiple_images)
{
    return json_decode($multiple_images, true);
}

public function setGenresAttributes($genres){

	if(is_array($genres)){

		// do your encoding
		$this->attributes['genres'] = json_encode($genres) ;
	}
}

public function getGenresAttributes($genres){

	return json_decode($genres , true) ;

}

}
`
thanks

hi @emadrashad ,
how you  storing and updating info using multi select ( $form->multipleSelect() ) ?
when click to edit the old data not showing.
can you help me to show old data in update form?


Adding answer section to the FAQ in Winter Cohort part of the websote

Hey,
I found that the Winter Cohort website has FAQs with no drop-down for answers. I can add a drop down feature with some dummy text in it. I am a GSSoC 23 contributor and would like to work on this.
Thanks and regards,
Neha Kariya

Hey,
Please assign mw as well for this issue.
Thanks and Regards,
Vibhuti Chandrakar


Problem where interactable NPC won't show up in location despite having that dialog level

Twice now I've played randos where NPCs won't show up where they should, and both times they've had my progression and I'm unable to continue without using debug or benchwarp and breaking logic. The first was Hornet in Beast's Den and the second one is Quirrel in Deepnest. I suspect it might be because I'm missing certain movement (wings for Hornet, and claw for Quirrel) that would trigger the characters showing up in the right locations, but I'm not sure. I no longer have the logs for the Hornet game but have saved the ones for the Quirrel game if desired.

Hey sorry to hear that.
Could you provide your Modlog, the settings.txt file from that rando as well as your userX.modded.json file?
All of these can be found in the AppData/LocalLow/Team Cherry/Hollow Knight directory (if you are on windows at least, not sure how the path is on other OS).
The rando settings file is in Randomizer 4/Recent folder in that directory, in case that rando were this occured was your last one.

settings.txt
ModLog 8-12.txt
Here are the settings file and the modlog. Github won't let me upload the user1.modded.json file, but I am not sure if it is useful anymore since I started a new rando in between submitting this issue and when I got your reply. What would you like me to do about that?

Hi again. I had this same issue once more, where Quirrel in Deepnest didn't spawn and was my only in-logic check. I found the item in the spoiler log and used debug to get to it and continued playing that way. After two more Quirrel levels, I checked back in Deepnest and he was there, so I was able to get the item and continue without using debug. I don't know if this is useful but I thought I'd share what happened.

Hey, I couldn't reproduce the issue. I could add some kind of backup system that places a shiny there, although this might take a few days.
In case you do another attempt and encounter this issue please provide the location as well as the level of that traveller. If this doesn't occur with the higher level like you mentioned maybe there is a problem in the logic order. Either way you can modify the savedata to increase the traveller level to force the npc to appear (if that's the solution).

Open userX.modded.json (X is the save file slot (from 1 to 4))
Search for "Stages". This should bring you to a section that should look like this

"LoreCore": {
      "Stages": {
        "Quirrel": 8,
        "Cloth": 4,
        "Tiso": 4,
        "Zote": 5,
        "Hornet": 5
      },
      "CanRead": true,
      "CanListen": true
    },

The number behind the npc name is the level, which you can then modify at will.
Note that the game has to be closed for this

Save the file
Restart the game

Thank you for the solution if this occurs again.
I went back through my tracker log and found the order in which I visited Quirrel and found his dialog, which I think is what you're asking for.

Visited Quirrel in Crossroads
Found Dialogue-Quirrel City at Emilitia (not at her lever)
Visited Quirrel in Greenpath
Found Dialogue-Quirrel Outside Archive at Geo Rock-Love Key
Visited Quirrel in Queen Station
Found Dialogue-Quirrel Peaks at Soul Totem-Deepnest Vessel
Found Dialogue-Quirrel Blue Lake at Soul Totem-Oro Dive 1
Visited Quirrel in City
Found Dialogue-Quirrel Archive at Hornet Edge
This is where my helper log and map showed Quirrel in Deepnest as my only in-logic check, but he did not appear so I used debug to clip through the wall he was supposed to give me (Howling Cliffs Breakable Near Cornifer). This gave me access to Broken Vessel, who provided the next Quirrel level (Dialogue-Quirrel Greenpath). However, everything was listed as "Accessible via sequence break" on the helper log reader.
Visited Quirrel Peaks
Visited Quirrel Outside Archive
Found Dialogue-Quirrel Crossroads at Bench-Destroyed Tram
Here, I checked back at Quirrel Deepnest and he was there, so everything that was out of logic via sequence break became in-logic.

If they're relevant, here's the rest of them:

Found Dialogue-Quirrel Queen Station at Geo Rock-Crystal Peak Entrance Dupe 2
Visited Quirrel in Mantis Village
Found Dialogue-Quirrel Deepnest at Whispering Root-Queens Garden
Visited Quirrel in Blue Lake
Ended the rando.

@peachdoxie Hey, sorry for the late response. Was quite busy the last few months. I think I found the issue, the order in logic doesn't match the actual order in the code (at least for the Quirrel example, I'll review the other onces as well). I'll release an update in the next few days

Fixed in LoreRando 0.3 (+ LoreCore 0.6)
(Hornet had a different issue btw but this is fixed now)


Buffer modification events

Hi all,
Is there a way for clients to detect/subscribe to when the current buffer has been modified ?
There is nvim.subscribe method but I can't find a list of events to subscribe to ?
Cheers

Not yet, but there's a discussion in the main repo: neovim/neovim#2224
Closing as this is not a concern for the python client.


Benchmark always results in IndexError when finished

benchmark error: CUDA out of memory. Tried to allocate 7.15 GiB (GPU 0; 24.00 GiB total capacity; 10.23 GiB already allocated; 2.73 GiB free; 17.70 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
Traceback (most recent call last):
File "D:\Developer\stable-diffusion-webui\venv\lib\site-packages\gradio\routes.py", line 337, in run_predict
output = await app.get_blocks().process_api(
File "D:\Developer\stable-diffusion-webui\venv\lib\site-packages\gradio\blocks.py", line 1015, in process_api
result = await self.call_function(
File "D:\Developer\stable-diffusion-webui\venv\lib\site-packages\gradio\blocks.py", line 833, in call_function
prediction = await anyio.to_thread.run_sync(
File "D:\Developer\stable-diffusion-webui\venv\lib\site-packages\anyio\to_thread.py", line 31, in run_sync
return await get_asynclib().run_sync_in_worker_thread(
File "D:\Developer\stable-diffusion-webui\venv\lib\site-packages\anyio_backends_asyncio.py", line 937, in run_sync_in_worker_thread
return await future
File "D:\Developer\stable-diffusion-webui\venv\lib\site-packages\anyio_backends_asyncio.py", line 867, in run
result = context.run(func, *args)
File "D:\Developer\stable-diffusion-webui\extensions\a1111-stable-diffusion-webui-vram-estimator\scripts\vram_estimator.py", line 201, in run_benchmark
curves[k] = VRAMCurve(v)
File "D:\Developer\stable-diffusion-webui\extensions\a1111-stable-diffusion-webui-vram-estimator\scripts\vram_estimator.py", line 71, in init
A = np.c_[np.ones(data.shape[0]), data[:,:2], data[:,0]**2, np.prod(data[:,:2], axis=1),
IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed

Is there a stats.json file in the extension's folder? If so what are its contents?

Pulled it into vscode and looks to be valid json but I only looked real quick.  It has a lot of data though so attaching it here rather than pasting it
stats.zip

Seems like it's not saving any results for the latent benchmark for some reason, it's just an empty array. The Latent sampler in highres fix for txt2img works right? Were there any errors printed during the benchmark?

Oh wait I see, it ran out of memory during the latent benchmark. I guess that should be made clearer. Maybe reduce the maximum size/batch count to the amount you can use with Latent upscalers?

I don't normally use it but it does work (I've used it by accident once or twice).  I don't recall any errors other than the one I posted.
I did originally try running a benchmark with different settings, with a 2048 size and only 2 count which failed pretty quick with the error which is when I then reset the settings to the defaults thinking it might be a bug with only 2 count, but then got the same error.
I don't know if that had anything to do with it.
I will try deleting the stats.json file and rerunning with the default settings

Well I deleted the file and reran it with the default settings and it worked, so it must be as you say when I tried to run it at 2048 and then the file got corrupted?
That said isn't the whole point here that this extension goes until it runs out of memory? Is there something special about this stage that you can't detect the oom condition?

I tried doing that earlier, the problem is sometimes it doesn't throw an OOM exception if you just barely cross the VRAM limit and instead the program just hangs indefinitely, even all the way overnight


identity cli skeleton and pester unit tests

This change is

Leaving this over the weekend, dev ops has a build running their pester tests: https://healthcatalyst.visualstudio.com/CAP/DevOps Infrastructure/_apps/hub/ms.vss-ciworkflow.build-ci-hub?_a=edit-build-definition&id=796

Going to complete this pr and create another for functional tests


CLN: Migrate resizeable vector types and functions to dedicated files

This moves resizeable vector-related typedefs and functions to vector.h / vector.c for more generalized use elsewhere.  These currently were defined within strtree, which was their only use so far.
However, for #244 and likely other functions over the long term, we will need more general access to these so that we can build up vectors at runtime.
Types and functions renamed slightly for better clarity (I hope!).

Moving to draft: found a few changes needed to better align with standard naming conventions (add _t suffix to types).
In order to use in Cython, we also need to provide concrete types (can't pass type as a parameter to functions like kv_push from Cython).  I think this is solved by providing a few additional macros for each vector type we use here, which gives us an opportunity to make the functions we call named a little bit more clearly (kv_A is pretty non-obvious).

Thanks @brendan-ward


Game is fully functional.

###This Python code implements a simple text-based game of Rock, Paper, Scissors between a player and the computer.
`import random
def determine_winner(player_choice, computer_choice):
if player_choice == computer_choice:
return "Tie"
elif (player_choice == "rock" and computer_choice == "scissors") or
(player_choice == "scissors" and computer_choice == "paper") or
(player_choice == "paper" and computer_choice == "rock"):
return "Win"
else:
return "Lose"
def print_result(result):
if result == "Win":
print("Congratulations! You won!")
elif result == "Lose":
print("Sorry! You lost.")
else:
print("It's a tie!")
def main():
player_score = 0
rounds_played = 0
while True:
    player_choice = input("Enter your choice (rock, paper, or scissors): ").lower()
    if player_choice not in ["rock", "paper", "scissors"]:
        print("Invalid option! Please choose from rock, paper, or scissors.")
        continue

    computer_choice = random.choice(["rock", "paper", "scissors"])
    print("Computer chose:", computer_choice)

    result = determine_winner(player_choice, computer_choice)
    print_result(result)

    if result == "Win":
        player_score += 1
    elif result == "Lose":
        player_score -= 1

    rounds_played += 1

    play_again = input("Do you want to play again? (yes/no): ").lower()
    if play_again != "yes":
        break

print("Game over!")
print("Your final score:", player_score)
print("Total rounds played:", rounds_played)

if name == "main":
main()
`
Below is the description of the code:

Imports: The code imports the random module, which is used to generate random choices for the computer.

determine_winner function: This function takes two arguments, player_choice and computer_choice, representing the choices made by the player and the computer respectively. It determines the winner based on the rules of Rock, Paper, Scissors and returns a string indicating the result ("Win", "Lose", or "Tie").

print_result function: This function takes the result as input and prints a message to the player based on the outcome of the game ("Congratulations! You won!", "Sorry! You lost.", or "It's a tie!").

main function: This function orchestrates the main logic of the game. It initializes variables for player_score (to keep track of the player's score) and rounds_played (to keep track of the total rounds played). It contains a while loop that continues until the player decides not to play again. Within the loop:

The player is prompted to enter their choice (rock, paper, or scissors).
If the input is not valid, the player is prompted again until a valid choice is entered.
The computer randomly chooses its option among rock, paper, and scissors.
The winner is determined using the determine_winner function, and the result is printed using the print_result function.
The player's score is updated based on the result.
The total rounds played is incremented.
The player is asked whether they want to play again. If the input is not "yes", the loop breaks, and the game ends.

Execution: The main function is called when the script is run, which starts the game.

End of Game: Once the player decides not to play again, a "Game over!" message is printed along with the player's final score and the total rounds played.

This provides a simple implementation of the classic game of Rock, Paper, Scissors, allowing players to play against a computer opponent.

@microsoft-github-policy-service agree

@microsoft-github-policy-service agree


Can I achieve the 3D head translation vector

Hi, I wanna know the 3d head position, how can I get it?

The library does not include this at the moment. The reason is that in practice this is not trivial.
For estimating the head position you need to have the coordinates of a reference point and/or the coordinates of the camera frame.


Community team committer

Committer page add my account for community team.

Pull Request Test Coverage Report for Build 1702

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 63.175%

Totals

Change from base Build 835:
0.0%

Covered Lines:
11026

Relevant Lines:
17453

💛  - Coveralls


Fixes and Improvement parsing

Brief:

Fix TV Year sometimes pulled incorrectly. happens while testing on "My Hero Academia s7"
Fix the file name both in temp dir or media dir.
Fix the missing subtitle file extension.
Fix selecting the incorrect episode if the downloaded archive has multi subs.
Fix Auto download not working for after the first selected episode on play list. "e.g. play from here, a4k were only works for 1st media."
Fix subtitle unable to import due to the filename contains "illegal characters"
Improve episodes determined.
Improve results parsing.
Now auto-download will also copy the subtitle next to the video or to a custom location, depending on Kodi's subtitle storage mode path.
SubSource: now will also pull series that in "absolute order" due to website has absolute order for some animes?.
SubSource: Fix an issue of duplicated sub id yet different names. this can happen if subtitle has multi release names.

 Names :
Subtitle Name:
Before:
S01E04 - 004.ar.[ReDEJA] Nige Jouzu no Wakagimi - 04

After:
[ReDEJA] Nige Jouzu no Wakagimi - 04.ara.ass

=====

Media Path:
Before:
S01E04 - 004.ar

After:
S01E04 - 004.ar.ass

 Subittles in archive:
As for the selected episode I noticed that a4ksub always fails to match the subtitle in multi subs archive file, after double check it seems it rely on "episodeid" to get the targeted sub however, none of the services pass the param.
I added the episodeid param as "meta.episode" to the services action_args, I think this is good since meta episode is the only way for us to know what episode we are looking for.
Another issue i bumped into even if I passed the episode number sometimes it pull incorrect because some files name adds "S01_E02" which will take it since "01" is in the name. I couldn't find anyway to handle this other than introducing a function to extract the episode number and season this also used to improve the results parsing.
^ this has been tested with a file of "64" subtitles and works as expected.
 Incorrect TV Year:
TV Year was overwritten in "__update_info_from_imdb" by "meta year" however the tv year already pulled correctly by "__scrape_imdb_id".
So I add an if statement in "__update_info_from_imdb" should set tv year as year only if it's is missing.
 Results Parse Improvements:
This has been improved due to "auto download subtitle" pull the incorrect one.
Results parsing has been improved and now it even handle tv series way better.
Now subtitle and meta name will be matched by there names parts to detect the closest one, however if an incorrect episode has been detected it will be moved bottom. now this also helps alot on subtitles that named on absolute order.
These changes affect series more then movies.
Here is some test before and after of the results:
  Movies // TV Series -- Results Tests

Local: Detective Conan EP 1119

====

Local: One piece New Episode 1119

====

Plugin: One Piece OLD Episode 885

====

Plugin: The Sims S35 E18

====

Plugin: the lord of the rings the rings of power S2 E6

====

Plugin: Interstellar

====

Plugin: Neir S1 E15

===

Plugin: King of tower S1 E1

===

Plugin: King of tower S2 E2

note: might be noticed but it was intended to prefer full season pack over one episode, I was gonna add this as an option in settings but at the end this worked well.
This worked for me pretty good for both movies and tv series/animes, not sure if I missed something but the more people to test it the faster to know 😅

Update:
extract_season_episode now will return DictAsObject and it will also parse episodes range e.g. "ep 1 ~ 12" this improved. double check "sorter".

When I run the episodes from favorites the episode/season still empty. should we also use extract_season_episode in __get_basic_info ?
https://github.com/a4k-openproject/a4kSubtitles/blob/db57a7af0ebb2831ca3d4a859dddc0fb0da539fd/a4kSubtitles/lib/video.py#L319-L327
TO:
    if meta.season == '' or meta.episode == '':
        filename_info = utils.extract_season_episode(meta.filename)
        meta.season = meta.season or filename_info.season
        meta.episode = meta.episode or filename_info.episode

note: season and episode returns empty string instead of None

Rebase on latest master in order for opensubtitles tests to pass.

It seems a4k not always detect if video is playing with the logic getCondVisibility('VideoPlayer.Content())
In services.py is there a reason prevent us from using xbmc.Player().isPlayingVideo() instead since it returns correctly if video is playing or not, has_video_duration always works but VideoPlayer.Content doesn't works always, If possible to adjust this before merge.
https://github.com/a4k-openproject/a4kSubtitles/blob/25f067afe517c8de8f7d595521b0eb704de3d6a5/a4kSubtitles/service.py#L15-L16

It seems a4k not always detect if video is playing with the logic getCondVisibility('VideoPlayer.Content())
In services.py is there a reason preventing us from using xbmc.Player().isPlayingVideo() instead since it returns correctly if video is playing or not, has_video_duration always works but VideoPlayer.Content doesn't, If possible to adjust this before merge.
https://github.com/a4k-openproject/a4kSubtitles/blob/25f067afe517c8de8f7d595521b0eb704de3d6a5/a4kSubtitles/service.py#L15-L16

@xZetsubou

It seems a4ksub not always detect if video is playing with the logic getCondVisibility('VideoPlayer.Content())

I'm unaware of such cases. Could you give me an example to verify?
But in any case, there are no reasons not to switch it if the other one works better.

So I noticed when I add an episode to my favorites the behavior of meta data changed I think it's misbehaved from plugin or Kodi not sure to be honest

Play the episode from favorites

{
    'Filename And Path': 'plugin://plugin.video.otaku/play/170695/5/',
    'Has Duration': True,
    'VideoPlayer.Content(movies)': False,
    'VideoPlayer.Content(episodes)': False,
    'isPlayingVideo': True
}

Playing the same episode from plugin

{
    'Filename And Path': 'plugin://plugin.video.otaku/play/170695/5/',
    'Has Duration': True,
    'VideoPlayer.Content(movies)': False,
    'VideoPlayer.Content(episodes)': True,
    'isPlayingVideo': True
}

bug detected on subsources I'll fix it.

@xZetsubou Look into the failing tests, so we can merge this. They may to be related to recent changes as previously all except OpenSubtitle tests were passing.

Tests has been modified for new changes, video playing tests has been added I think now only opensubtitles with missing imdb are failing.

Something is wrong with the commit, it fails to checkout. Could you push again.

@newt-sc I think this now is ready and should pass the tests.

@xZetsubou Still some issue with addi7ted this time. ref: https://github.com/a4k-openproject/a4kSubtitles/actions/runs/11249626366/job/31349169232?pr=84

That's weird to me it didn't shows fails addi7ted:<PHONE_NUMBER>9 I'll double check it. same with old tests here<PHONE_NUMBER>5
Can you re-run the action again

I've re-run it 7 times..

Will merge it and see how it goes. Will fix the tests later if necessary.


Annotation access doesn't work in a module's tests

Description:
$title.
Steps to reproduce:
Annotation Definition:-
// annotaions.bal
public type EntityType record {|
    string primary;
    string tableName;
|};

public annotation EntityType Entity on type;

Test Case:-
// tests/testannotations.bal
import ballerina/io;
import ballerina/test;

@Entity{
    primary:"id" ,
    tableName: "Actor"
}
type Actor record {
    string name;
    int id;
};

// Test function.
@test:Config {}
function testFunction1() {
    Actor a1 = {
        name: "Irrfan Khan",
        id: 1
    };

    typedesc<Actor> td = typeof a1;

    io:println(td);// typedesc foo:Actor
    io:println(td.@Entity);// Nothing

    string? tableName = td.@Entity?.tableName;

    test:assertEquals(tableName, "Actor");
}

Originally posted by @whizsid in https://github.com/ballerina-platform/ballerina-spec/issues/503#issuecomment-622288276
Affected Versions:
1.2.1

@whizsid I'm afraid this is a bug, and will require a fix to get this working in tests.
All, debugged this a bit based on the following sample.
Create a project and introduce a module foo.
Define an annotation in the module's source
public type Annotation record {
    int id;
};

public annotation Annotation ann on type;

Attempt accessing annotations in the module's tests.
import ballerina/io;
import ballerina/test;

@ann {
    id: 1
}
type Employee record {
    int id;
};

@test:Config {}
function testFunction1() {
    Employee e = {
        id: 4567
    };

    typedesc<Employee> td = typeof e;

    io:println(td); // typedesc foo:Employee
    io:println(td.@ann); // empty - nil

    test:assertEquals(td.@ann?.id, 1); // Assertion Failed!: expected '1' but found ''
}

For this sample, we reach the code generation check to load annotations for three "init" functions.

maryam/foo:0.1.0.<init> - seems to be the init for the source and generateAnnotLoad is called.

maryam/foo:0.1.0.<init> again but seems to be for a combination of source + tests. generateAnnotLoad is called again and codegen happens for annotation load for Employee too.

maryam/foo:0.1.0.<testinit> - generateAnnotLoad is not called because isModuleInitFunction evaluates to false. Expected name maryam/foo:0.1.0.<init>, actual name maryam/foo:0.1.0.<testinit>. Calling generateAnnotLoad explicitly here seems to result in the expected output, i.e., the annotations are set and access prints id=1.

@MaryamZi, shall we prioritize this issue, this is a bottleneck for stdlib migration(https://github.com/ballerina-platform/ballerina-lang/issues/21313).


Remove unimplemented functions

Signed-off-by: manish<EMAIL_ADDRESS>Type of change

Improvement (minor code cleanup)

Test flake, Jira already opened on that flake. Rerunning integration test.


Containerd install

Added in a short section on how to install containerd and setup the config

(I'm a tech lead for SIG Docs but not this week's assigned wrangler)

Hi @SixteenOne , I'm the PR wrangler for this week.
I'm closing this PR because this PR includes opinionated instructions that limits the OS and package manager and as Tim mentioned, does not follow the spirit of content guide.
Feel free to reopen if you feel otherwise
/close


ESR-01-002 WP1: DoS of Runtime through Install Console (Medium)

In case that the received NPK length is larger than the expected size, the assert! expression evaluates to false, thereby resulting in a panic. Ultimately, completing the entire sequence culminates with a shutdown of the entire runtime of Northstar.
northstar-runtime/src/runtime/console/mod.rs

Fixed by #763

Info: The assumption that "In case that the received NPK length is larger than the expected size, the assert! expression evaluates to false" is wrong. The if block just handles the case in which a read buffer of the Framed is filled with more data that size. If there is data in the read buffer and the console code switches to streaming mode for size bytes the data present in the read buffer must be processed as well as all consecutive bytes up to size.
Anyways - #763 remove the assert! by consumer the minimum out of number of bytes available in the buffer and the size reported from the installer.


Can base model be larger than target model?

This might be a naive question. In the provided examples, it seems that all base models are small models and target models are larger ones. However, if I have a large model to be tuned, and I don't want to change the original training process of the large model, can I set the large model as the base model? In my understanding, mup behaves the same as torch when model.width == base_model.width.
To illustrate:
# suppose I have a large model: large_model = Model(width=100)
# build mup model
base_model = mupModel(width=100)
smaller_model = mupModel(width=10)

# train and tune lr in the smaller model
best_lr = tune(smaller_model)

# train large model with best lr once
# Does Model(width=100) == mupModel(width=100) ?
train(Model(width=100), best_lr)

Is the above example correct?

There is no problem with this except for the quality of HP transfer.
If you were to tune all hyperparameters (LR and init for every parameter tensor), then this is fine. However, in practice you probably don’t do this, and the things you do not tune are fixed to the default values of the large model. Typically speaking, the default values of large models are less trustworthy than the scaled-up versions of the default values of the small models. For example, if you are only tuning a global learning rate then I would suspect the quality of the large model will be far from the optimal, because you are missing the potential gains from per layer LR and init, which can be dramatically different for different layers, especially in large models (this is what muP predicts).
Also see this comment. In particular,

The true hyperparameter space here is the very high dimensional space containing [learning rate, initialization] (we can insert multipliers here as well, but like I said, it is redundant) for every parameter tensor (weights, biases, gains, etc). If you were to tune all these hyperparameters and obtain the optimal combination, then this combination is guaranteed to be stable in some sense as you vary width (in muP). However, in practice, we may not want to tune that many hyperparameters because of resource constraints. So we combine hyperparameters (by e.g., tying learning rate for many weights together) until we have only a small number to tune. This essentially means that we are now focusing on a low dimensional slice of the true hyperparameter space --- that we guess should contain all the really good hyperparameters. The choices of hyperparameters we tuned in our paper exemplify the “low dimensional slice” we chose. These choices are based on our empirical experience tuning hyperparameters, but over time people may find better choices.

@thegregyang Thanks! Sometimes we don't want to make modifications to existing large models in production for stability issues, but the thought of tuning per layer LR and init in muP is inspirational, I'll give it a try.

OK sounds good. I'll close this for now but feel free to reopen if there are further issues.


Testnet Down Again, Again

Ah looks like it was fixed here: https://github.com/CounterpartyXCP/counterparty-core/pull/2337


Mock filter to support header match

This is to support Mock feature in EaseMesh.

Codecov Report

Merging #409 (98635ac) into main (327b43b) will decrease coverage by 0.28%.
The diff coverage is 87.30%.

@@            Coverage Diff             @@
##             main     #409      +/-   ##
==========================================
- Coverage   80.37%   80.08%   -0.29%
==========================================
  Files          62       62
  Lines        7107     7140      +33
==========================================
+ Hits         5712     5718       +6
- Misses       1100     1125      +25
- Partials      295      297       +2

Impacted Files
Coverage Δ

pkg/filter/mock/mock.go
90.42% <87.30%> (-4.66%)
:arrow_down:

pkg/object/mqttproxy/session.go
74.39% <0.00%> (-7.93%)
:arrow_down:

pkg/object/mqttproxy/client.go
79.87% <0.00%> (-1.22%)
:arrow_down:

pkg/cluster/cluster.go
49.57% <0.00%> (-1.03%)
:arrow_down:

Continue to review full report at Codecov.

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


PushNotificationIOS.setApplicationIconBadgeNumber() doesn't work if the app is in background state.

This issue was originally created by @JulienUsson as facebook/react-native#22740.

[X] Review the documentation: https://facebook.github.io/react-native
[X] Search for existing issues: https://github.com/facebook/react-native/issues
[X] Use the latest React Native release: https://github.com/facebook/react-native/releases

Environment
 React Native Environment Info:
    System:
      OS: macOS 10.14.2
      CPU: (4) x64 Intel(R) Core(TM) i5-7267U CPU @ 3.10GHz
      Memory: 40.18 MB / 8.00 GB
      Shell: 5.6.2 - /usr/local/bin/zsh
    Binaries:
      Node: 11.0.0 - ~/.nvm/versions/node/v11.0.0/bin/node
      Yarn: 1.12.1 - ~/.nvm/versions/node/v11.0.0/bin/yarn
      npm: 6.4.1 - ~/.nvm/versions/node/v11.0.0/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    SDKs:
      iOS SDK:
        Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
      Android SDK:
        API Levels: 23, 24, 25, 26, 27
        Build Tools: 23.0.1, 24.0.3, 25.0.2, 26.0.1, 26.0.2, 27.0.3
    IDEs:
      Xcode: 10.1/10B61 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.6.3 => 16.6.3
      react-native: 0.57.8 => 0.57.8
    npmGlobalPackages:
      react-native-cli: 2.0.1

Description
PushNotificationIOS.setApplicationIconBadgeNumber() doesn't work on IOS if the app is in background state.
Reproducible Demo
import React, {Component} from 'react'
import {PushNotificationIOS, Text, View} from 'react-native'
import OneSignal from 'react-native-onesignal'

export default class App extends Component {
    state = {
        notification: null
    }

    componentDidMount() {
        OneSignal.init("token", {kOSSettingsKeyAutoPrompt: true})
        OneSignal.inFocusDisplaying(0)
        OneSignal.addEventListener('received', this.onReceived)
    }

    componentWillUnmount() {
        OneSignal.removeEventListener('received', this.onReceived)
    }

    onReceived = async notification => {
        PushNotificationIOS.setApplicationIconBadgeNumber(1)  // doesn't work in background
        this.setState({notification}) // work in background
    }

    render() {
        return (
            <View>
                <Text>{JSON.stringify(this.state.notification)}</Text>
            </View>
        )
    }
}
`
``

same issue ! . did you find solution?

I found a solution for this problem.
if you are sending pushes with firebase, you can configure badge ios parameter to enable native handler.
https://firebase.google.com/docs/cloud-messaging/send-message#when_to_use_platform-specific_fields

Anyone found a solution to this?
I have the same problem, but with getDeliveredNotifications.
I'm trying to remove a notification when the user reads the message from another source (like our web app)

Anyone found a solution to this issue? I have the same problem too! :(

Correct me if I'm wrong but I believe iOS restricts all apps in background.
    onReceived = async notification => {
        PushNotificationIOS.setApplicationIconBadgeNumber(1)  // doesn't work in background
        this.setState({notification}) // work in background
    }

I think onReceived fires when your app transitions back to active state so it 'looks' like setState worked.

For oneSignal background handling of quantity of badges on iOS try out do not use onesignal listener but PushNotificationIOS.addEventListener('notification',callback), works fine for me, and ofc don't forget that your oneSignal headings should contain "content_available":true field within for wake up the app on push receiving