SystemChrome.setEnabledSystemUIOverlays([]) created a blank space on top, can't create full screen layout

Steps to Reproduce
 @override
  Widget build(BuildContext context) {
    SystemChrome.setEnabledSystemUIOverlays([]);
    return Scaffold(
      body: Stack(
        children: [
          Image.network('http://www.jrcxw.com/uploads/allimg/180130/23253W062_0.jpg', height: double.infinity, fit: BoxFit.fitHeight,)
        ],
      ),
    );
  }

Run flutter create bug.
Update the files as follows: ...
...

Expected results:
Hide the status bar, display pictures or videos in full screen
Actual results:
The picture cannot be displayed in full screen, and the top bangs are black

Logs

[√] Flutter (Channel stable, 1.20.3, on Microsoft Windows [Version 10.0.18363.1082], locale zh-CN)
    • Flutter version 1.20.3 at ***
    • Framework revision 216dee60c0 (4 weeks ago), 2020-09-01 12:24:47 -0700
    • Engine revision d1bc06f032
    • Dart version 2.9.2
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[!] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at ***
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME =***
    • Java binary at: ***
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

[√] Android Studio (version 4.0)
    • Android Studio at ***
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] Connected device (1 available)
    • MI 9 (mobile) • c8833d26 • android-arm64 • Android 10 (API 29)

! Doctor found issues in 1 category.

Hi @wuweijian1997
I can reproduce this issue, it's known a bug https://github.com/flutter/flutter/issues/56362

flutter doctor -v
[✓] Flutter (Channel master, 1.22.0-10.0.pre.385, on Mac OS X 10.15.7 19H2
    x86_64, locale en-GB)
    • Flutter version 1.22.0-10.0.pre.385 at
      /Users/tahatesser/Code/flutter_master
    • Framework revision 73b6398932 (8 hours ago), 2020-09-28 11:07:32 +0800
    • Engine revision 3a73d073c8
    • Dart version 2.11.0 (build 2.11.0-161.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

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

[✓] Connected device (1 available)
    • RMX2001 (mobile) • EUYTFEUSQSRGDA6D • android-arm64 • Android 10 (API 29)

• No issues found!

Please follow up on that issue, I'm closing the current one as a duplicate.
If you disagree, please write in the comments and I will reopen it.
Thank you

Hi @wuweijian1997
I thought this was a duplicate of another issue but apparently something wrong here
The only the top section is always blank, Even after trying SafeArea widget for the top section, it doesn't work

code sample
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final EdgeInsets safeAreaPadding = MediaQuery.of(context).padding;

    return Scaffold(
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.spaceEvenly,
          crossAxisAlignment: CrossAxisAlignment.center,
          children: [
            Container(
              child: Text(
                'Safe area padding: \n$safeAreaPadding',
              ),
            ),
            RaisedButton(
                child: Text('Enter Fullscreen'),
                onPressed: () {
                  SystemChrome.setEnabledSystemUIOverlays([]);
                }),
            RaisedButton(
                child: Text('Exist Fullscreen'),
                onPressed: () {
                  SystemChrome.setEnabledSystemUIOverlays(
                      SystemUiOverlay.values);
                }),
          ],
        ),
      ),
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel master, 1.22.0-10.0.pre.385, on Mac OS X 10.15.7 19H2
    x86_64, locale en-GB)
    • Flutter version 1.22.0-10.0.pre.385 at
      /Users/tahatesser/Code/flutter_master
    • Framework revision 73b6398932 (8 hours ago), 2020-09-28 11:07:32 +0800
    • Engine revision 3a73d073c8
    • Dart version 2.11.0 (build 2.11.0-161.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

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

[✓] Connected device (1 available)
    • RMX2001 (mobile) • EUYTFEUSQSRGDA6D • android-arm64 • Android 10 (API 29)

• No issues found!

Related https://github.com/flutter/flutter/issues/64274 https://github.com/flutter/flutter/issues/56362

Hi @wuweijian1997
I thought this was a duplicate of another issue but apparently something wrong here
The only the top section is always blank, Even after trying SafeArea widget for the top section, it doesn't work

code sample
flutter doctor -v
Related #64274 #56362

Thanks Reply.The following code maybe solve this problem.
class MainActivity: FlutterActivity() {
    @RequiresApi(Build.VERSION_CODES.P)
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val lp = window.attributes
        lp.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES
    }
}

I have the same problem in flutter version 3, dart 2.17

Hi @wuweijian1997 (and @lucascardo12), this issue seems to have been fixed on the latest stable and master channels as I cannot reproduce it there. See the demo below. Verified on Samsung Galaxy Tab A7 Lite, Android 13 OneUI 5.0, SM-T225.
Note: setEnabledSystemUIOverlays has been migrated to setEnabledSystemUIMode.

Demo
https://user-images.githubusercontent.com/104349824/219021388-094849e7-264b-4f85-909c-fd28a842361b.mov

Sample code (be compatible with the new flutter version)
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final EdgeInsets safeAreaPadding = MediaQuery.of(context).padding;

    return Scaffold(
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.spaceEvenly,
          crossAxisAlignment: CrossAxisAlignment.center,
          children: [
            Container(
              child: Text(
                'Safe area padding: \n$safeAreaPadding',
              ),
            ),
            TextButton(
                child: Text('Enter Fullscreen'),
                onPressed: () {
                  SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: []);
                }),
            TextButton(
                child: Text('Exist Fullscreen'),
                onPressed: () {
                  SystemChrome.setEnabledSystemUIOverlays(
                      SystemUiOverlay.values);
                }),
          ],
        ),
      ),
    );
  }
}

flutter doctor -v (stable and master)
[✓] Flutter (Channel stable, 3.7.3, on macOS 13.0.1 22A400 darwin-x64, locale en-VN)
    • Flutter version 3.7.3 on channel stable at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision<PHONE_NUMBER> (17 hours ago), 2023-02-08 15:46:04 -0800
    • Engine revision 248290d6d5
    • Dart version 2.19.2
    • DevTools version 2.20.1

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Users/huynq/Library/Java/JavaVirtualMachines/corretto-1.8.0_302/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment Corretto-8.302.08.1 (build 1.8.0_302-b08)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14B47b
    • CocoaPods version 1.11.3

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

[!] Android Studio (version 2022.1)
    • 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
    ✗ Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.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.75.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.58.0

[✓] Connected device (3 available)
    • SM T225 (mobile) • R9JT3004VRJ • android-arm64  • Android 13 (API 33)
    • macOS (desktop)  • macos       • darwin-x64     • macOS 13.0.1 22A400 darwin-x64
    • Chrome (web)     • chrome      • web-javascript • Google Chrome 110.0.5481.77

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

[!] Flutter (Channel master, 3.8.0-12.0.pre.67, on macOS 13.0.1 22A400 darwin-x64, locale en-VN)
    • Flutter version 3.8.0-12.0.pre.67 on channel master at /Users/huynq/Documents/GitHub/flutter_master
    ! Warning: `flutter` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision fd01812f67 (55 minutes ago), 2023-02-14 18:43:38 -0800
    • Engine revision d860892528
    • Dart version 3.0.0 (build 3.0.0-233.0.dev)
    • DevTools version 2.21.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 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14B47b
    • CocoaPods version 1.11.3

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

[✓] Android Studio (version 2022.1)
    • 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 11.0.15+0-b2043.56-8887301)

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.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.75.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.58.0

[✓] Connected device (3 available)
    • RMX2001 (mobile) • EUYTFEUSQSRGDA6D • android-arm64  • Android 11 (API 30)
    • macOS (desktop)  • macos            • darwin-x64     • macOS 13.0.1 22A400 darwin-x64
    • Chrome (web)     • chrome           • web-javascript • Google Chrome 110.0.5481.100

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

! Doctor found issues in 1 category.

I'll be closing this issue since it has already been fixed on the latest Flutter channels. If you still experience this issue, kindly leave a comment below and I will reopen this. Thank you!


Verifier cli: consumer version selectors - multiple --consumer-version-selectors arguments are confusing

We are using the pact_verifier_cli to verify pacts.
The consumer-version-selectors described in pact documentation are showcasing combinations of consumer version selectors.
The code examples for the various languages raised the impression the combination of mainBranch and deployedOrReleased selector in one JSON-String being a valid one.
Trying the combination of mainBranch and releasedOrDeployed in one JSON string as argument:
./pact_verifier_cli-macos-aarch64 --pretty-log  --provider-name SomeProvider --hostname localhost --port 8080 --broker-url https://someBrokerUrl --provider-branch someBranch --provider-version someVersion --build-url 'https://someCiUrl --token someToken --consumer-version-selectors '{"mainBranch":true, "deployedOrReleased": true}'
Returns the following error message:
No pacts found for provider 'SomeProvider' matching the given consumer version selectors
in pact broker 'https://someBrokerUrl':
failed validation - ["consumerVersionSelectors: cannot specify mainBranch=true with any
other criteria apart from consumer (at index 0),
cannot specify the field mainBranch with the field deployedOrReleased (at index 0)"]

mainBranch and deployedOrReleased are not a combination in one JSON-String.
Looking at pact_verifier_cli --help it quotes the following:
--consumer-version-selectors <consumer-version-selectors>
Consumer version selectors to use when fetching pacts from the Broker.
Accepts a JSON string as per https://docs.pact.io/pact_broker/advanced_topics/consumer_version_selectors/.
Can be repeated.

The error message and the help hint at passing two arguments to the cli:
./pact_verifier_cli-macos-aarch64 --pretty-log  --provider-name SomeProvider --hostname localhost --port 8080 --broker-url https://someBrokerUrl --provider-branch someBranch --provider-version someVersion --build-url 'https://someCiUrl --token someToken --consumer-version-selectors '{"mainBranch":true}' --consumer-version-selectors '{"deployedOrReleased":true}'
This returns the following result:
The pact at https://SomeBroker/pacts/provider/SomeProvider/consumer/SomeConsumer/pact-version/49c9caece4a5db51ef36f286c4496affa42bdbbf is being verified because the pact content belongs to the consumer versions matching the following criteria:
 * consumer version(s) currently deployed to someEnv (<IP_ADDRESS>b98091-SNAPSHOT)

 The pact at https://SomeBroker/pacts/provider/SomeProvider/consumer/SomeConsumer/pact-version/2d33ed09552d908941fc2ed6e621f76abc9c3c11 is being verified because the pact content belongs to the consumer versions matching the following criteria:
* latest version from the main branch 'someBranch' (some-version)

This one looks good.
Let's look at another use case:
Developing locally/verifying new/changed contracts and CI being triggered we also want to verify against one contract of a consumer only and thus combine consumer and branch consumer version selectors.
With the knowledge above we first used two --consumer-version-selectors arguments:
./pact_verifier_cli-macos-aarch64 --pretty-log  --provider-name SomeProvider --hostname localhost --port 8080 --broker-url https://someBrokerUrl --provider-branch someBranch --provider-version someVersion --build-url 'https://someCiUrl' --token someToken --consumer-version-selectors '{"consumer“:“someConsumer“}' --consumer-version-selectors '{"branch“:“someConsumer“}'
This yields the following error:
2024-06-26T19:41:29.457729Z ERROR pact_verifier: No pacts found for provider ’SomeProvider` matching the given consumer version selectors in pact broker 'https://SomeBrokerURL': failed validation - ["consumerVersionSelectors: must specify a value for environment or tag or branch, or specify mainBranch=true, matchingBranch=true, latest=true, deployed=true, released=true or deployedOrReleased=true (at index 0)"]
    at pact_verifier/src/lib.rs:1321 on main

 2024-06-26T19:41:29.458292Z ERROR pact_verifier: Failed to load pact - No pacts found for provider `SomeProvider` matching the given consumer version selectors in pact broker 'https://SomeBrokerURL: failed validation - ["consumerVersionSelectors: must specify a value for environment or tag or branch, or specify mainBranch=true, matchingBranch=true, latest=true, deployed=true, released=true or deployedOrReleased=true (at index 0)"]
    at pact_verifier/src/lib.rs:1103 on main

Reading the message and rethinking, it makes sense to combine them.
./pact_verifier_cli-macos-aarch64 --pretty-log  --provider-name SomeProvider --hostname localhost --port 8080 --broker-url https://someBrokerUrl --provider-branch someBranch --provider-version someVersion --build-url 'https://someCiUrl' --token someToken --consumer-version-selectors '{"consumer“:“someConsumer“, "branch“:“someConsumer“}'

This yields the following criteria being matched:
The pact at https://SomeBroker/pacts/provider/SomeProvider/consumer/SomeConsumer/pact-version/49c9caece4a5db51ef36f286c4496affa42bdbbf is being verified because the pact content belongs to the consumer versions matching the following criteria:
    * latest version of SomeConsumer from branch 'someBranch' (<IP_ADDRESS>b98091-SNAPSHOT)

This actually matches what we expect.
The behaviour regarding combining the version selectors confused me. In one case I can not combine them, in the other I need to combine them.
Is this behaviour regarding the combination as you designed, or should the first case also be an allowed combination?
Tested with:
./pact_verifier_cli-macos-aarch64 --version
pact verifier version   : v1.1.3
pact specification      : v4.0
models version          : v1.2.2

Not sure how we can help here (from the pact_verifier_cli point of view). The Pact Broker authors decided to make the consumer version selector interface one where the CLIs and language implementations are dumb, and all the smarts are in the Pact Broker. I argued against this, as I thought it was a poor user experience.
All the pact_verifier_cli can do is validate that the selectors passed on the command line are valid JSON. The schematics about how the selectors can be used and combined are built into the Pact Broker. You should ask your question on that project.

Ok thank you! :) Will close this.


This article seems to be incorrectly parented in the ToC

It's parented under "Use a file watcher" which seems completely unrelated.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 76f5eb44-55e5-d4a5-0ab1-5122c29a1db5
Version Independent ID: 0b8da6a7-8333-5d8f-23a5-05bf0ca661f9
Content: Factory-based middleware activation in ASP.NET Core
Content Source: aspnetcore/fundamentals/middleware/extensibility.md
Product: aspnet-core
GitHub Login: @guardrex
Microsoft Alias: riande

Yes, you're correct @drub0y ... thanks for reporting. We'll get it squared away ASAP.

It's a simple fix ... I'll knock it out @tdykstra and ping u on the PR.


Remove SGID.WATER.Wetlands from SGID

Summary

Internal Dataset Name: SGID.WATER.Wetlands
External Dataset Name: opensgid.water.wetlands
ArcGIS Online Url: https://utah.maps.arcgis.com/home/item.html?id=dbc6a99d04944dab9f23bb6286843a1d

The UDEM Risk MAP Program Manager has requested we remove the layer from the SGID as updates are pushed out by FEMA irregularly and they would like us to point people straight to the authoritative steward's resources.
Migration Guide
A short summary of how users affected by this deprecation can modify their workflows and projects to continue to get similar or improved functionality
There are services and downloads available from the federal steward USFWS that will always be the most current.
Action items

Assign a person who should complete the task by replacing name with their github @name.
Check [x] the box when the task is completed and add the date of completion.
~Strike~ out all items that do not apply.

Soft Delete
The purpose of the soft delete is to ensure that all of our users and applications have gracefully migrated off of the dataset. Soft deletes will remain in effect for 14 days. During this time, we will have the ability to restore the dataset to its original SGID offering(s). After these 14 days, the item is then ready for a hard delete.
Note: If this dataset is being replaced, then wait until the new data is publicly available before completing these steps:

[ ] Append "(Mature Support)" to the end of the item title in the SGID.META.AGOLItems table (@rkelson, completed: 2023/00/00)
[ ] Remove all tags other than "Deprecated" in the SDE metadata (@rkelson, completed: 2023/00/00)
[ ] Add note to SDE description noting when layer will be deleted and any replacement layer (@rkelson, completed: 2023/00/00)
[ ] Update the SGID Index row as deprecated by pasting the related Porter issue URL in the Deprecated field (@rkelson, completed: 2023/00/00)
[ ] Change Authoritative field to d in SGID.META.AGOLItems to automatically set the Deprecated AGOL flag. Allow the d to persist through one run of Auditor - currently, Auditor runs daily at 5:00am (@rkelson, completed: 2023/00/00)

After at least one successful run of Auditor:

[ ] Remove the row from the SGID.META.AGOLItems table. This will trigger the removal of this item in Open SGID (@rkelson, completed: 2023/00/00)
[ ] Unshare the item from its SGID group, which will remove it from Open Data (@jacobdadams, completed: 2023/00/00)

Hard Delete
Hard deletes are final. It is recommended to complete the soft delete process before moving on to these steps. If you decide to skip the soft delete, note that you will need to incorporate some of those steps here.

[ ] Manually remove data from the Internal SGID (@rkelson, completed: 2023/00/00)

Deprecated database layers can be backup up on Google Drive > AGRC Share > Team Projects > SGID > [deprecated layers]

[ ] Remove ArcGIS Online item: (@jacobdadams, completed: 2023/00/00)

Manually delete the AGOL item
-OR-
Unshare by changing the AGOL_ITEM_ID field in SGID.META.AGOLItems to something other than an Item ID and manaually changing the sharing settings (remove the item from all SGID groups, remove Public sharing),
-OR-
~Shelve the data by copying the row from SGID.META.AGOLItems to the AGOLItems_shelved table in AGOL and changing the AGOL_ITEM_ID field in SGID.META.AGOLItems to shelved or some other note.~
Deprecated AGOL items can be backup on Google Drive > AGRC Share > Team Projects > SGID > deprecated layers.

[ ] Remove Farm from AGOL connection (@jacobdadams, completed: 2023/00/00)
[x] Update relevant gis.utah.gov data pages (@rkelson, completed: 2023/03/23)
[ ] Add this porter url to the Deprecated field of the Stewardship record (@rkelson, completed: 2023/00/00)
[ ] Update SGID.META.AGOLItems table (@rkelson, completed: 2023/00/00)

~cut and paste row to AGOLItems_shelved table if shelving (see below)~
~set the AGOL_ITEM_ID field to hosted by <agency> for Farm from AGOL~
set the AGOL_ITEM_ID field to exclude from AGOL to not publish to ArcGIS Online

~[ ] Delete Google Drive data (name, completed: 2023/00/00)~
[ ] Remove row from SGID.META.ChangeDetection (@rkelson, completed: 2023/00/00)
[ ] Remove data from forklift hashing and receiving (@stdavis, completed: 2023/00/00)
[ ] Remove row from data/hashed/changedetection.gdb/TableHashes (@stdavis, completed: 2023/00/00)

:robot: Automation validation

Assign yourself or someone to check the item by replacing name with their github @name.
Check [x] the box and add the date of verification 2020/01/01 when the task is verified.
~Strike~ out all items that do not apply.

[ ] Remove data from Open SGID (@steveoh on 2023/00/00)
[ ] sgid-index (@steveoh on 2023/00/00)
[ ] Auditor sets appropriate shelved/static/Deprecated information (@jacobdadams on 2023/00/00)

Are there service dependencies

[ ] Are clients querying this data with the WebAPI?
[x] Notify Josh Nielson (josh.nielson at motorolasolutions.com) if the data is in the Next-Generation 911 Motorola Aware Map? (@eneemann on 2023/00/00)
[ ] Does any other application depend on this data?

Notification

[ ] Twitter (@steveoh)

Group Task Assignments

Check [x] the box when you have assigned all the tasks relevant to your group.

[ ] Data Team (@gregbunce)
[ ] Dev Team (@steveoh)
[ ] Cadastre Team (@rkelson)

Looks like agrc/DEQ-TankRisk uses the wetlands data but maybe it could be repointed easily?
@nathankota What do you want to do with this?

conductor results for tasks - 230

check
status

@rkelson has completed 3 out of 12 tasks
:no_entry:

@jacobdadams has completed 0 out of 4 tasks
:no_entry:

@stdavis has completed 0 out of 2 tasks
:no_entry:

@steveoh has completed 2 out of 4 tasks
:no_entry:

eneemann has completed 1 out of 1 tasks
:+1:

@gregbunce has completed 0 out of 1 tasks
:no_entry:

conductor results for WATER.Wetlands

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- deprecation issue link
:no_entry:

conductor results for tasks - 230

check
status

@rkelson has completed 7 out of 10 tasks
:no_entry:

@jacobdadams has completed 1 out of 4 tasks
:no_entry:

@stdavis has completed 0 out of 2 tasks
:no_entry:

@steveoh has completed 2 out of 4 tasks
:no_entry:

eneemann has completed 1 out of 1 tasks
:+1:

@gregbunce has completed 0 out of 1 tasks
:no_entry:

conductor results for WATER.Wetlands

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- deprecation issue link
:no_entry:

conductor results for WATER.Wetlands

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- deprecation issue link
:no_entry:

conductor results for tasks - 230

check
status

rkelson has completed 9 out of 9 tasks
:+1:

@jacobdadams has completed 1 out of 4 tasks
:no_entry:

@stdavis has completed 0 out of 3 tasks
:no_entry:

steveoh has completed 4 out of 4 tasks
:+1:

eneemann has completed 1 out of 1 tasks
:+1:

@gregbunce has completed 0 out of 1 tasks
:no_entry:

conductor results for WATER.Wetlands

check
status

internal sgid
:+1:

meta table
:+1:

stewardship

- deprecation issue link
:no_entry:

conductor results for tasks - 230

check
status

rkelson has completed 9 out of 9 tasks
:+1:

jacobdadams has completed 3 out of 3 tasks
:+1:

stdavis has completed 3 out of 3 tasks
:+1:

steveoh has completed 4 out of 4 tasks
:+1:

eneemann has completed 1 out of 1 tasks
:+1:

@gregbunce has completed 0 out of 1 tasks
:no_entry:

conductor results for WATER.Wetlands

check
status

internal sgid
:+1:

meta table
:+1:

stewardship

- deprecation issue link
:no_entry:


  If you wish to do this install netstat prior to tests.  This can be accomplished as a task inside your playbook.yml.

Just a note for others that might come across this in a search, this is fixed with a newer version of testinfra that is moving away from netstat to ss
Where the newer version fixes this issue by not using netstat see the Change log
https://github.com/philpep/testinfra/blob/master/CHANGELOG.rst#1110
Socket: add a new implementation using ss instead of netstat (#124)

This will require at least molecule v2.13 - > https://github.com/metacloud/molecule/releases/tag/2.13
which includes this bump https://github.com/metacloud/molecule/commit/958cd390e04807cc19871624f86cfe54449baf73


Add-forward_addr

This PR:

Adds the forward_addr atrribute to the user object.

Updates the extension version.

These updates were made to OCSF Core v1.4.0. We are adding them to our Splunk extension so we may utilize them with OCSF rc2.
Testing:
Verified the expected attributes/objects are present on the server, and ensured the JSON Schema exports without error.

LGTM


Draft posts are being displayed under the author's profile

I've got two posts, one is published and one is a draft. When I'm logged in I can confirm this by selecting posts from the admin menu, it clearly defines and separates the published from the drafts. On the front end, when clicking on the published post, then clicking on the authors profile, it lists my draft post. I logged out and then tried again, thinking it was because it recognized me as the author, however it is still being displayed.

Thanks for bringing this up @FoxRocks76. I'll take a look first thing in the morning.

Fixed in v6.0.16

Fixed in v6.0.16


Nsfw, spoiler, and lock post actions

Integrated nsfw, spoiler and lock endpoints into the modTools api.
:eyeglasses: @madbook @scarow

The build shows as a failure if you pushed a commit that had an issue then subsequently fixed it. If you actually click on the failure you'll see the latest build completed successfully - I'll let infra know about it as its pretty annoying.


Add source path to TemplateSyntaxError

Improves the error's visibility by adding a path to a source.
before:
== Compilation error in file lib/app_web/views/page_view.ex ==
** (Slime.TemplateSyntaxError) Unexpected indent
INPUT, Line 2, Column 0
  .panel-heading

after:
== Compilation error in file lib/app_web/views/page_view.ex ==
** (Slime.TemplateSyntaxError) Unexpected indent
lib/app_web/templates/page/_comments.html.slim, Line 2, Column 0
  .panel-heading

I will update CI today/tomorrow so this passes 👍

Thank you! I assume ci is failing because it expects a string as otp version instead of an integer, but I'm not sure didn't check that.


Xavier-Scenarios-initial-commit

Overview/Summary
Sharing 3 new scenarios under Brownfield>Networking>VPN-SDWAN for review or additional improvements.
This PR fixes/adds/changes/removes

VPN to AVS using NSX-T Public IP
VPN to AVS using transit connectivity NVA in Hub
VPN to AVS using hub to hub transit connectivity.

Testing Evidence

Replace this with any testing evidence to show that your Pull Request works/fixes as described and planned (include screenshots, if appropriate)

As part of this Pull Request I have

[ ] Checked for duplicate Pull Requests
[ ] Ensured my code/branch is up-to-date with the latest changes in the main branch
[ ] Performed testing and provided evidence.
[ ] Updated relevant and associated documentation.

@fguerri  Could you please review the PR and sign off.
Once ready please tag Rene to approve.

Thank you and apologies for the delay @xelizondo


Match Babylon's RHS

This line was missing for RHS scenes when using WebXR. it is already done on the rig cameras, so this is a cosmetic change - this camera is not used for actually rendering the scene, but it should hold the right transformation/view matrix/projection matrix

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/15983/merge
Test environment:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15983/merge/index.html
To test a playground add it to the URL, for example:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15983/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/15983/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/15983/merge
https://gui.babylonjs.com/?snapshot=refs/pull/15983/merge
https://nme.babylonjs.com/?snapshot=refs/pull/15983/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/15983/merge#BCU1XR#0

Visualization tests for WebGL 1 have failed. If some tests failed because the snapshots do not match, the report can be found at
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15983/merge/testResults/webgl1/index.html
If tests were successful afterwards, this report might not be available anymore.

Visualization tests for WebGPU (Experimental)
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15983/merge/testResults/webgpuplaywright/index.html


Language: Contact "Primary Language" Automatic Population

Do you want to request a feature or report a bug?
Feature

What is the current behavior?
When a new Contact Language record is marked as the Primary Language for that Contact, the Primary Language lookup field on the Contact does NOT get populated.

What is the expected behavior?
When a new Contact Language record is marked as the Primary Language for the Contact, the Primary Language lookup field on the Contact should be automatically populated with the Language record.

What is the motivation / use case for changing the behavior?
By automatically setting the lookup field, the user can easily see the primary language for that Contact without having to go to the related list.

Acceptance Criteria

Given: I set the Primary Language checkbox on the Contact Language record
When: I save the Contact Language record
Then: The Primary Language lookup on the related Contact should be set to the Language record

Acceptance Criteria

Given: I unset the Primary Language checkbox on the Contact Language record
When: I save the Contact Language record
Then: The Primary Language lookup on the related Contact should be cleared

Acceptance Criteria

Given: I set the Primary Language checkbox on the Contact Language record and there's an existing Contact Language record already set as the Primary Language
When: I save the Contact Language record
Then: The other Contact Language record should be unset as the Primary Language, and the Primary Language lookup on the related Contact should be set to the new Language record

Acceptance Criteria

Given: There's an existing Contact Language record that is set as the Primary Language
When: I delete the Contact Language record
Then: The Primary Language lookup on the related Contact should be cleared

@aligeez  @JasonFitzy  Can one of you review this (specifically the acceptance criteria) before I lurch this?

Reviewed and discussed with Bobby. Two ACs added based on discussion around Primary Language lookup field on the Contact page. All set and great work as always!

@JasonFitzy Unfortunately I had to remove the two ACs we just added since we've now discussed that the lookup field is actually a lookup to the Language and not a reciprocal to the Contact Language record. But I think this makes things much cleaner now! Going to lurch in a moment.

**lurch: add

Tracking W-031856

Included in beta release 1.74 (Beta 2)

Included in production release 1.74


Inconsistent/different results for cursor example from documentation each time I run it

I am trying to get all (~3200) tweets from a user (in batches of 200) and would like to utilize the cursor functionality (I can do it without utilizing max_id) but each time I run the script I get a different result (different amount of result, number is random but almost never 200).
tweetlist=[]
for status in tweepy.Cursor(api.user_timeline, screen_name='CryptoCobain', tweet_mode="extended", include_rts = False).items(200):

tweetlist.append(status.full_text)

I tried various variations of this code for example adding the limit_handler from the documentation as well as adding multiple ways to catch errors:
def limit_handled(cursor):
while True:
    try:
        yield cursor.next()
    except tweepy.RateLimitError:
        print("rate limit reached")
        time.sleep(15 * 60)
    except Exception as e:
        print(str(e.__class__.__name__))
        break

for status in limit_handled(tweepy.Cursor(api.user_timeline, screen_name='CryptoCobain', tweet_mode="extended", include_rts = False).items(200)):
tweetlist.append(status.full_text)

The reason seems to be a StopIteration error:
Traceback (most recent call last):
  File "d:\1 projects\investing project\crypto\investment research\Investment Bot\code\twitter\twittermentions.py", line 20, in limit_handled
    yield cursor.next()
  File "C:\Users\Kol_Y\.conda\envs\crypto\lib\site-packages\tweepy\cursor.py", line 243, in next
    self.current_page = self.page_iterator.next()
  File "C:\Users\Kol_Y\.conda\envs\crypto\lib\site-packages\tweepy\cursor.py", line 158, in next
    raise StopIteration
StopIteration
47

Does anybody have an idea why I always get different results and what to do about it? I tried with Python 3.9 and also with Python 3.6, each time setting up a new conda env with nothing but tweepy
There is also a similar stackoverflow question but without answers: https://stackoverflow.com/questions/61683779/tweepy-doesnt-work-when-looking-at-realdonaldtrump-account-inconsistent
Any input is much appreciated

StopIteration isn't really an error. It simply means the Cursor has finished iterating.
The underlying cause of this is that the IdIterator that Cursor uses for API.user_timeline stops iterating on a response/page with 0 results. This is to prevent the Cursor/iterator from continuing to make requests indefinitely when there are no more results (e.g. when attempting to retrieve more Tweets than the user has Tweeted). For pagination via since_id and max_id, Twitter's API provides no other indication that there's no results left like other pagination methods do (such as next_cursor being 0), so there's not really a way around this.
For your specific case, you can mitigate the issue by setting count to the max of 200, rather than using the default 20.
This should reduce the number of and potentially eliminate responses/pages with 0 results, and has the additional benefit of making fewer requests for the same results.
Alternatively, you can remove your usage of include_rts and filter out Retweets yourself.
As the documentation for the GET statuses/user_timeline endpoint says about include_rts:

When set to false , the timeline will strip any native retweets (though they will still count toward both the maximal length of the timeline and the slice selected by the count parameter)

and count:

Specifies the number of Tweets to try and retrieve, up to a maximum of 200 per distinct request. The value of count is best thought of as a limit to the number of Tweets to return because suspended or deleted content is removed after the count has been applied. We include retweets in the count, even if include_rts is not supplied. It is recommended you always send include_rts=1 when using this API method.

You're likely encountering pages with 0 results more than usual with include_rts set to False, since any Retweets are removed from the results after they've been counted as part of the count limit for the page.
As for the Stack Overflow question, that specific account was probably subject to additional issues with eventual consistency: https://github.com/tweepy/tweepy/issues/1361


Update backup and restore procedures

Update backup and restore procedures to reflect new -strategy flag added to influx ctl backup

https://docs.influxdata.com/enterprise_influxdb/v1.7/administration/cluster-commands/#backup
https://docs.influxdata.com/enterprise_influxdb/v1.7/administration/backup-and-restore/#full-versus-incremental-backup
https://docs.influxdata.com/enterprise_influxdb/v1.7/administration/backup-and-restore/#syntax
https://docs.influxdata.com/enterprise_influxdb/v1.7/administration/backup-and-restore/#sidebar

closed per https://github.com/influxdata/docs.influxdata.com/pull/2801


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_e78f342d-2d34-4c6b-9d41-a0d4b85dcaf4/pull/1 is merged into live branch.
Auto archive content to https://github.com/opstest2/docs-archive-test-target_e78f342d-2d34-4c6b-9d41-a0d4b85dcaf4.git

Docs Build status updates of commit 365649c:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-UserAccountBuildPermissionInsufficientError] Owner v-alji no longer has Read permission of the repository https://github.com/opstest2/docs-archive-test-source. It might be due to recent GitHub changes on SSO. Please ask the owner v-alji to logon to Docs Portal https://ops.microsoft.com once again. If it is not the case, please ask anyone of Admin permission of the repo to assign a new owner via Docs Portal https://ops.microsoft.com

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


ESlint should not allow trailing whitespace

We don't allow trailing whitespace in order to keep the diffs clean. But we skip checking that for empty lines. I think that's an oversight / mistake because the comment above this line says it is about comments.
        // Trailing whitespace only allowed in comments (specifically for comment block)
        "no-trailing-spaces": ["error", { "skipBlankLines": false, "ignoreComments": false }],

There is an eslint exception specifically for comments: https://eslint.org/docs/rules/no-trailing-spaces but I think that too is not a good idea, again because we'll have to sift through all of these meaningless diff lines for a couple of empty spaces. Unless there is a good reason to allow trailing whitespaces in comments, I would just make no-trailing-spaces a rule that's applied consistently.

While we're at it, we can also make it easier to run the linter by adding a script to the package.json file.

Should also check for semicolons via semi


Add retry (maybe) and capture screenshots

Add retry mechanism to failed tests.
There's already an existing package, maybe we can use that? Or something else?
https://www.npmjs.com/package/protractor-flake

Add screenshots to capture the screen where the test fails.

I tried one retry mechanism, using the protractor-retry package, as described here:
https://www.npmjs.com/package/protractor-retry
But that did not work for me. Furthest I got was this (looks like it does try to run the test again, but fell short):

Product details should be able to add different quantities of product to cart

Expected '5' to be '4'.

Executed 6 of 6 specs (1 FAILED) in 5 secs.
[15:05:53] I/launcher - 0 instance(s) of WebDriver still running
[15:05:53] I/launcher - chrome #01 failed 1 test(s)
[15:05:53] I/launcher - overall: 1 failed spec(s)
Re-running tests , attempt :  1
Re-running the following test files : /Users/i839943/myRepo/mySPA/cloud-commerce-spartacus-storefront/projects/storefrontapp-e2e/src/regression/product-details.e2e-spec.ts
<EMAIL_ADDRESS>line 1: /Applications: is a directory
<EMAIL_ADDRESS>line 2: CONTRIBUTING.md: command not found
<EMAIL_ADDRESS>line 3: CONTRIBUTING.md: command not found
<EMAIL_ADDRESS>line 4: CONTRIBUTING.md: command not found
<EMAIL_ADDRESS>line 5: CONTRIBUTING.md: command not found
<EMAIL_ADDRESS>line 6: CONTRIBUTING.md: command not found
<EMAIL_ADDRESS>line 7: ci-scripts/: is a directory
<EMAIL_ADDRESS>line 9: syntax error near unexpected token 'message','<EMAIL_ADDRESS>line 9: process.on('message', (message) => {'
[15:05:53] E/launcher - Process exited with error code 2
An unexpected error occurred: undefined

Closing this one since we've moved to Cypress and it's already capturing screenshots & videos.
No need for retry mechanism yet, tests have been stable.


Exceed 64K limit packet size?

Hello,
If you're using the EasyTcp4.0.0-beta version from nuget.org the problem with the size of the package exceeding 64k reappears.
The previous local nuget you sent me is working fine but the beta version still has that bug.
Thank you.

More information on bug: #57
Will look into it when I have some time. Unit test seems to be fine.

Seems there is no unit test for the delimiter and plainTcp protocol.
Will add those and see if there are problems.


fix errors on saving scene if perforce is active

Added possibility to see full path in a tooltip (mouse over) in this commit.
Does File.SetAttributes(JSON_PATH, FileAttributes.Normal); fixes the error you mention?


Back button is not responsive in correct way when nav bar is open

I think this is fixed already.


Start adding modifications to integrate with bb

@mattgreene
What issues does this address?
Fixes #331
...
What's this change do?
In order to integrate with the f5pdbld lab build system this repository needs to be modified with the targets expected by buildbot.   The entrypoint for buildbot is "systest/Makefile"
Where should the reviewer start?
Begin by examining the build targets in systest/Makefile they'll indicate which other procedures will be run, and in what order.
Any background context?
Before this PR can close, references will have to be updated from POC uri's to production URIs.
Two points that must be addressed in review:

Is it acceptable to pip install test code?  The modifications to setup.py will cause this to happen.
Is it acceptable to unpin distribution versions in requirements.test.txt again this PR will cause this behavior unless amended.

Hmmm...    travis appears to target F5Networks where (I think) it should target zancas...

OK, folks I've repinned requirements.test.txt in accordance with best practice.

The build failed because of authentication failure to bldr-git.  Is this something that we need to use instead of github?

I'm aware of this, I intend to create a requirements.buildbot.txt that .travis ignores.  Does that seem like an acceptable solution?

Roger, addressed.


Implement Priority Scheduling Algorithm

Detailed description
I would like to contribute by implementing the Priority Scheduling Algorithm. This scheduling algorithm is commonly used in operating systems to allocate CPU time to processes based on their priority levels. It is a vital addition to any collection of algorithms.
Context
The Priority Scheduling Algorithm is a crucial addition to "The Algorithms" repository as it provides a deeper understanding of CPU scheduling techniques, especially in operating systems. Its implementation is essential for users studying computer science or developing applications where task prioritization is necessary.
Possible implementation
To implement the Priority Scheduling Algorithm, I suggest breaking the task down into clear steps, ensuring both preemptive and non-preemptive versions are supported. Here's a suggested idea:
Data Structure:
Process Class:
Each process can be represented as a class containing:
process_id: A unique identifier for the process.
priority: The priority of the process (lower number = higher priority).
arrival_time: The time at which the process arrives.
burst_time: The total time required for the process to execute.
completion_time, waiting_time, and turnaround_time: To track the respective times
Additional information
No response

Assign it to me

Hello @mjk22071998  @realstealthninja @arrx-03  Please assign me the issue, I would like to give the optimal approach for this issue.

Please assign me the issue.As a beginner, I want to contribute code to the open source community

Please read my new pull requests :https://github.com/TheAlgorithms/C-Plus-Plus/pull/2900

I really want to work on this issue!

Please assign me this issue @arrx-03


KAFKA-5679: Add logging for broker termination due to SIGTERM or SIGINT

This depends on sun.misc.Signal and sun.misc.SignalHandler, which may be removed in future releases. But along with sun.misc.Unsafe, these classes are available in Java 9, so they are safe to use for now.

@ijuma Can you take a look, please? Thanks.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6768/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6753/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6771/
Test PASSed (JDK 7 and Scala 2.11).

SUCCESS
7479 tests run, 4 skipped, 0 failed.
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6756/
Test PASSed (JDK 8 and Scala 2.12).

@ijuma @apurvam  I have added the logging for Exit as well. Thanks.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6759/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6774/
Test PASSed (JDK 7 and Scala 2.11).

retest this please

Discussed offline with Rajini that we will only merge the sigterm changes as the CLI tools currently call Exit.exit and it would be weird to have the duplicated message.


Update puppet-agent to 1.10.9-1

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Thanks!


Custom block diagonal kernel: Incompatible shapes error

Hello there,
Issue
We are building a custom kernel that consists of multiple blocks (non-diagonal in general, but this simple example is block-diagonal). As the starting point we are trying to build a block-diagonal White kernel with different variances for different blocks. f_{1}~N(0,K_{11}) and f_{2}~N(0,K_{22}), where K_{11} and K_{22} are White kernels and the joint kernel is
[[K_{11}, 0],
[0, K_{22}]].
Both f_{1} and f_{2} are observed in exact same points N. Computing kernel works and everything seems to be reasonable, however, when we try to predict mean and covariance we get and Incompatible shapes error.
Code Example
  import numpy as np
  import tensorflow as tf
  import gpflow
  from gpflow.decors import params_as_tensors
  import matplotlib.pyplot as plt

class White_full(gpflow.kernels.Kernel):

   def __init__(self):
       super().__init__(input_dim=1, active_dims=[0])
       self.variance_X = gpflow.Param(0.5, transform=gpflow.transforms.positive)
       self.variance_f = gpflow.Param(0.1, transform=gpflow.transforms.positive)
   @params_as_tensors
   def K(self, X, X2=None, presliced=False):
       if X2 is None:
           X2 = X
       half_shape=tf.cast(tf.shape(X)[0]/2, dtype=tf.int32)
       d_X = tf.fill(tf.stack([half_shape]), tf.squeeze(self.variance_X))
       d_f = tf.fill(tf.stack([half_shape]), tf.squeeze(self.variance_f))
       result_X = tf.matrix_diag(d_X)
       result_f = tf.matrix_diag(d_f)
       zero_block = tf.zeros([half_shape, half_shape],tf.float64)
       upper_row = tf.concat([result_X, zero_block], axis=1)
       lower_row = tf.concat([zero_block, result_f], axis=1)
       return tf.concat([upper_row, lower_row], axis=0)
   @params_as_tensors
   def Kdiag(self, X):
       half_shape=tf.cast(tf.shape(X)[0]/2, dtype=tf.int32)
       var_X = tf.fill(tf.stack([half_shape]), tf.squeeze(self.variance_X))
       var_f = tf.fill(tf.stack([half_shape]), tf.squeeze(self.variance_f))
       return tf.reshape(tf.concat([var_X,var_f],axis=0), (-1,))

k = White_full()
N = 10
X = np.linspace(-0.1, 1.1, N)[:,None]
Y = np.random.randn(N,2)
Y_full=np.concatenate(Y).reshape(-1,1)
X_full=np.concatenate((X,X)).reshape(-1,1)
m = gpflow.models.GPR(X_full, Y_full, kern=k)
m.likelihood.variance = 0.01
m.compile()
xx = np.linspace(-0.1, 1.1, 100)[:,None]
xx_full = np.concatenate((xx,xx), axis=0)
mean, var = m.predict_y(xx_full)

---------------------------------------------------------------------------
InvalidArgumentError                      Traceback (most recent call last)
~/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py in _do_call(self, fn, *args)
   1321     try:
-> 1322       return fn(*args)
   1323     except errors.OpError as e:

~/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py in _run_fn(feed_dict, fetch_list, target_list, options, run_metadata)
   1306       return self._call_tf_sessionrun(
-> 1307           options, feed_dict, fetch_list, target_list, run_metadata)
   1308

~/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py in _call_tf_sessionrun(self, options, feed_dict, fetch_list, target_list, run_metadata)
   1408           self._session, options, feed_dict, fetch_list, target_list,
-> 1409           run_metadata)
   1410     else:

InvalidArgumentError: Incompatible shapes: [20,1] vs. [200,1]
	 [[Node: autoflow/GPR/predict_y_10/predict/add_1 = Add[T=DT_DOUBLE, _device="/job:localhost/replica:0/task:0/device:CPU:0"](autoflow/GPR/predict_y_10/predict/base_conditional/MatMul, autoflow/GPR/predict_y_10/predict/zeros_3)]]

During handling of the above exception, another exception occurred:

InvalidArgumentError                      Traceback (most recent call last)
<ipython-input-76-78e1ca8ba37c> in <module>()
----> 1 mean, var = m.predict_y(xx_full)

~/anaconda3/lib/python3.6/site-packages/gpflow/decors.py in autoflow_wrapper(obj, *args, **kwargs)
    164                     _setup_storage(store, *af_args, **af_kwargs)
    165                     _build_method(method, obj, store)
--> 166                 return _session_run(session, obj, store, *args, **kwargs)
    167         return autoflow_wrapper
    168     return autoflow_wrapper_decorator

~/anaconda3/lib/python3.6/site-packages/gpflow/decors.py in _session_run(session, obj, store, *args, **kwargs)
    202     initialize = kwargs.pop('initialize', False)
    203     obj.initialize(session=session, force=initialize)
--> 204     return session.run(store['result'], **kwargs)
    205
    206

~/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py in run(self, fetches, feed_dict, options, run_metadata)
    898     try:
    899       result = self._run(None, fetches, feed_dict, options_ptr,
--> 900                          run_metadata_ptr)
    901       if run_metadata:
    902         proto_data = tf_session.TF_GetBuffer(run_metadata_ptr)

~/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py in _run(self, handle, fetches, feed_dict, options, run_metadata)
   1133     if final_fetches or final_targets or (handle and feed_dict_tensor):
   1134       results = self._do_run(handle, final_targets, final_fetches,
-> 1135                              feed_dict_tensor, options, run_metadata)
   1136     else:
   1137       results = []

~/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py in _do_run(self, handle, target_list, fetch_list, feed_dict, options, run_metadata)
   1314     if handle is None:
   1315       return self._do_call(_run_fn, feeds, fetches, targets, options,
-> 1316                            run_metadata)
   1317     else:
   1318       return self._do_call(_prun_fn, handle, feeds, fetches)

~/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py in _do_call(self, fn, *args)
   1333         except KeyError:
   1334           pass
-> 1335       raise type(e)(node_def, op, message)
   1336
   1337   def _extend_graph(self):

InvalidArgumentError: Incompatible shapes: [20,1] vs. [200,1]
	 [[Node: autoflow/GPR/predict_y_10/predict/add_1 = Add[T=DT_DOUBLE, _device="/job:localhost/replica:0/task:0/device:CPU:0"](autoflow/GPR/predict_y_10/predict/base_conditional/MatMul, autoflow/GPR/predict_y_10/predict/zeros_3)]]

Hi Yuliya,
In your kernel function you are not using X2 at all. Look at the following code:
def _build_predict(self, Xnew, full_cov=False):
        """
        Xnew is a data matrix, point at which we want to predict
        This method computes
            p(F* | Y )
        where F* are points on the GP at Xnew, Y are noisy observations at X.
        """
        y = self.Y - self.mean_function(self.X)
        Kmn = self.kern.K(self.X, Xnew)
        Kmm_sigma = self.kern.K(self.X) + tf.eye(tf.shape(self.X)[0], dtype=settings.float_type) * self.likelihood.variance
        Knn = self.kern.K(Xnew) if full_cov else self.kern.Kdiag(Xnew)
        f_mean, f_var = base_conditional(Kmn, Kmm_sigma, Knn, y, full_cov=full_cov, white=False)  # N x P, N x P or P x N x N
return f_mean + self.mean_function(Xnew), f_var

It seems to me that your code is suffering when it is trying to compute
Kmn = self.kern.K(self.X, Xnew)

as it is not using Xnew. However, I am not sure whether it is helpful.

Hi Sumon,
That was indeed the issue together together with dimensionalities that I defined wrongly. Thanks!


[LOC]Over Translation (ja-jp)

ja-jp:"https://docs.microsoft.com/ja-jp/sharepoint/administration/configure-usage-and-health-data-collection"

en-us:"https://docs.microsoft.com/en-us/sharepoint/administration/configure-usage-and-health-data-collection"

#PingMSFTDocs

@hyoshioka0128 Please move this issue to https://github.com/MicrosoftDocs/OfficeDocs-SharePoint/issues

@rootsmusic  - Thanks!
Opened https://github.com/MicrosoftDocs/OfficeDocs-SharePoint/issues/2887 .
Closed #3659 .


h5py now required but not auto-installed

Doing a new installation, I found h5py is now required:
ModuleNotFoundError: No module named 'h5py'
But doesn't get auto-installed. Doing a separate pip install h5py works, but it would be nice to have it bundled into the installation.

Thanks! This is actually an issue with radvel. Will leave as an "enhancement"...


Add error message for parition_by check

Great work on this project!
I triggered the assertion error below. However, as there is no string message after the assertion I get no indication of what went wrong from logging
Delta-rs version:
0.15.1
Environment:
MacOS

Bug
What happened:
I hit this assertion check in write_deltalake:
assert partition_by == table.metadata().partition_columns

What you expected to happen:
Produce a string to explain what the error is (and preferably how it might be avoided)

@braaannigan if you want you can open a small PR for it? :) A helpful error message is more than welcome


Wrong File Reference

On instruction item # 6, the referenced file name should be '404.html' instead of 'error.html'.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: badc419b-60d5-ba2c-0830-8d573db10dbe
Version Independent ID: efad89d0-d0da-895f-984d-046d67797ab4
Content: Tutorial: Host a static website on Blob storage - Azure Storage
Content Source: articles/storage/blobs/storage-blob-static-website-host.md
Service: storage
GitHub Login: @tamram
Microsoft Alias: tamram

@jerryol Closing this issue for now. If there are further questions regarding this matter, please reply and we will gladly continue the discussion.


More stripe integration

No need to merge for now this can just serve as a tracking PR for the time being

If you rebase, the flow lint error should be gone because I initialized tipError = '' - empty string is a string and falsy.
   ui/component/walletTipAmountSelector/view.jsx:123:17
   123|     let regexp, tipError;
                        ^^^^^^^^ [1]
                        ```
                        I assi


Add bypass_reg and skid_buffer to core

Subsumes #2030. Both of these primitives essentially do the same thing but have slightly different interfaces and behavior in some circumstances. I think we will eventually move to just using skid_buffer which is the more standard interface, but bypass_reg is what we use in our code right now and I don't really want to mess with that for now.

@EclecticGriffin I understand why these test cases fail the interpreter. Is there a place I can put these test cases such that the interpreter won't be called on them and we just test in simulation for now?

@EclecticGriffin I understand why these test cases fail the interpreter. Is there a place I can put these test cases such that the interpreter won't be called on them and we just test in simulation for now?

Yeah if you update the runt command in the rust.yaml workflow! All you need to do is add the name of the tests to the -x regex

Here's the line to edit: https://github.com/calyxir/calyx/blob/main/.github%2Fworkflows%2Frust.yml#L126

Yeah if you update the runt command in the rust.yaml workflow! All you need to do is add the name of the tests to the -x regex

Thanks! I think I figured it out, just need to make sure it passes CI now.

I would recommend adding skip files instead

I would recommend adding skip files instead. That way we will eventually add them into the interpreter too.

How do I do that?

Wherever the test generates the .expect file, you can instead place a .skip file of the same name.
The simplest way to do this is to save the error file and rename it to have the extension .skip. Bonus points if you empty out the file and remove the contents.

Wherever the test generates the .expect file, you can instead place a .skip file of the same name.
The simplest way to do this is to save the error file and rename it to have the extension .skip. Bonus points if you empty out the file and remove the contents.

Won't that just always skip the test? At least how it's setup right now it will run the test in simulation.

Actually I just realized we can't run this test with the interpreter anyways because I wrote them using static control. There is probably a way to write them without static control but probably not worth figuring out right now.

Alright passing CI now. Any comments or should I merge?

One last one: could you add documentation about these primitives: https://docs.calyxir.org/libraries/core.html
(maybe a new heading called state elements)
feel free to merge after that.

Alright I added documentation, going to go ahead and merge.


Update index.md

Updated the high-level introduction to HockeyApp transition.

@jwargo updated to get rid of "synchronicity"!


Failed to resolve: com.trello.rxlifecycle-kotlin:0.4.0

Hey,
Just saw the kotlin extension to this lib and wanted to give it a try. Unfortunatly I wasnt able to resolve it from either jCenter nor MavenCentral. I checked both manually and they contain every rxlifecycle package except the -kotlin one.
Did you forget to upload this?
Thanks,
danijoo

It hasn't been uploaded yet, the docs are a bit ahead of the releases.
I'm working on getting the next update out this weekend so it'll work soon!

thanks for the quick response ! :)


Empty values not producing a payload

When I try and delete a value from a field, the empty value does not produce a payload which causes the form values not to update, resulting in the final value after blurring the field is the last state.
Example, if the value is 123 and I backspace 3 times, then a blur is triggered, the value is now 1. If I focus the field again and backspace once, then blur, the value is still 1.

@jetpackjarrett please provide a runnable example of your issue.

Closing this due to non-response. I don't think there is enough actionable information in this report to identify a bug with redux-form.


Modified vsix-manifest-builder.ts file to parse Badges in .json file …

…and create a .vsix file with Badges.
Badges is just like Links where every badge is going to contain link and img_uri having the information of build status of the project repository hosted somewhere.(it will be basically links to Appveyor or TravisCI or something like that.).
This is needed while showing the build status info in marketplace item Details page .
Screenshot of item details page-

Screenshots of files changed -

Some questions/comments:

In the JSON, why do badges have keys? It doesn't seem they are used in the vsixmanifest. I think this property would be better represented as an array of badges - at least that way you can guarantee order (objects have undefined order).

Do you really want to add a  element to the vsixmanifest? It's obviously not part of the schema for vsixmanifest (although I realize that neither is GalleryFlags or Installation). Is there any way to use the Properties element instead?

It's confusing to have "Uri" and "Image Uri" properties. Maybe consider renaming Uri to Target. Also, in the vsixmanifest, the  element uses different attribute names (Link instead of Uri).

In the JSON, image_uri is underscore_separated, but other properties (e.g. for the vsomanifest) are camelCased. Please use camelCasing for property names.

Do you want to add any package-time validation for the URIs?

Thanks for reviewing Trevor.
1)I have taken your feedback and made the property as an array of badges
2)Since badges are multivalued and do not have any restrictions on the valid urls today, we felt that this is better captured in a separate element
3 & 4)I've taken this feedback and made the casing consistent across the json and the vsixmanifest
5)I checked with the PM and we don't want any package-time validation for this feature today

Thanks - published v0.3.21 to npm.


ECU page updates

Added images and did some capitalization changes.

The main update here was just adding a figure. @patrickvacek  has already checked. Can we get one more review and then merge?


Provide a loading state icon/component in

There's that awkward moment after playing a stream or otherwise not preloaded resource where you want to indicate a loading state. If you do it nicely, you should be able to pause a non-ready resource. But for us mere mortals, a presentation-only loading indicator component would come in handy.
Something like:
// New prop types:
{
  isLoading: PropTypes.bool,
  loadingComponent: PropTypes.oneOfType([
    PropTypes.node,
    PropTypes.func,
  ]),
}

// New default props:
{
  isLoading: false,
  loadingComponent: null,
}

Which you would implement like:
<PlaybackControls
  {...props}
  isLoading={playbackState === PLAYING && isLoadingMedia}
  loadingComponent={() => <Spinner />}
/>

Obsolete as of 1.0.0


[BUG] Upgrade Dash Bootstrap components

Describe the bug
Dash Bootstrap components has not been updated to Dash 2.0.0. Once Dash Bootstrap components releases a new version, we should update to the newer version to be more compliant with Dash 2.
Relates to #12
Waiting on Dash Bootstrap to update.
Link to Dash Bootstrap Components

This will require a few items to be updated on other branches. Leaving it open and I will address the specifics.


Want to add a restaurant site

@GeekNerds I want to add an restaurant site. For college students/teachers/staff so that they don't have to travel from one block to another inside campus. Kindly assign me this issue. Thanks

@vedsom you can contribute


HOW TO ASSIGN A HOT KEY FOR ZOOM IN AND ANOTHER FOR ZOOM OUT

First, I want to congratulate everyone involved in the development and maintenance of this plugin, because it is an amazing tool. With that said, let's describe the situation. I only have 1 monitor to use OBS, so while I'm recording the tutorial videos, I won't be able to see when the zoom is activated on the screen or not, and during the explanations, I might end up forgetting to turn off zoom when your application is not needed. Before thinking about this solution, I tried to find an option in the apps to control OBS from the cell phone (Macro Deck, Deckboard, etc) that would allow me to create the button that would activate the shortcut key defined in the programs, but with the button turning on and off as with the volume mute/unmute button. But as it seems to me, this option is not offered for hotkeys.
Because of this, I thought of separating a shortcut key for Zoom In and another for Zoom Out, so that, even if I have forgotten if Zoom is activated or not, when I want to do something different, I will just use the key shortcut corresponding to the intended action.
I have a beginner's knowledge of Python, but I would like to know which variables are responsible for storing Zoom commands to try to experiment with this change in the script.
I thank you for your attention. Greetings from Brazil!!!

I think the challange is that the hotkey is a toggle, on and off.  and after afew clicks you (and I) no longer know if your last click was on or off.
OK, id be willing to share in dev costs for that.... a known OFF and known ON setting...  Sorry, Im not a developer.  I just use this stuff (poorly) in my world.

Just getting back to working on the plugin, but I think that this is a reasonable enhancement. Separating out into two individual hotkeys would inspire more confidence as to the state of the tracking.
It's probably worth separating the hotkeys for the pairs zoom in/out and tracking on/off. 4 Hotkeys total, but old behavior should be maintained by making the pair have the same hotkey.
Not sure when I will get around to it, but it's definitely on the list.

This would be amazing. If anyone has any current workaround ideas to achieve this, it would be truly appreciated. Thanks.


Smart Plug with energy monitoring - incorrect measuring units

Describe the bug
Added Blitzwolf BW-SHP6 smart socket to Home assistant with the new tuya_v2 integration.
The issue I discovered is that the measure units are mixed for Power, Voltage.
Also an issue is for Voltage displayed value is multiplied by 10
See the screenshot

Expected behavior
Power unit should be W or kW - instead of V
Voltage unit should be V instead of W
Voltage should be divided by 10: eg on screenshoot 227.5V instead of 2275
Home Assistant Version
Home Assistant 2021.4.6
**Device info
{
"active_time":<PHONE_NUMBER>,
"biz_type": 18,
"category": "cz",
"create_time":<PHONE_NUMBER>,
"icon": "smart/icon/ay1519551146071pEnBd/f3fca8ef65c979cb1aed14fc878c9107.jpg",
"id": "1744254370039f5dbbc8",
"ip": "<IP_ADDRESS>",
"lat": "47.654344",
"local_key": "18ebc89d17b5777d",
"lon": "19.2956575",
"model": "SP111-A，棒谷，15A，带计电量",
"name": "Szárítógép",
"online": true,
"owner_id": "14557030",
"product_id": "ab4kwxlrok0yvxuo",
"product_name": "BW-SHP6",
"status": [
{
"code": "switch",
"value": true
},
{
"code": "countdown_1",
"value": 0
},
{
"code": "cur_current",
"value": 0
},
{
"code": "cur_power",
"value": 0
},
{
"code": "cur_voltage",
"value": 2243
}
],
"sub": false,
"time_zone": "+01:00",
"uid": "eu1596231650476O2RQr",
"update_time":<PHONE_NUMBER>,
"uuid": "1744254370039f5dbbc8"
},
**Device specifications
2021-07-06 18:30:13 DEBUG (SyncWorker_2) [tuya iot] Request: method = GET, url = https://openapi.tuyaeu.com/v1.0/devices/1744254370039f5dbbc8/specifications, params = None, body = None, headers = {'client_id': 'xp5yh8ctaqbejm2ghow7', 'sign': '08F3AA05940D587F28C5891ABA9469E76B77E909232864965214055619E67DE7', 'sign_method': 'HMAC-SHA256', 'access_token': '2addcf6fcf26468eb22a07a33d9a890c', 't': '1625589013592', 'lang': 'en'}
2021-07-06 18:30:13 DEBUG (SyncWorker_2) [tuya iot] Response: {
"result": {
"category": "cz",
"functions": [
{
"code": "switch",
"type": "Boolean",
"values": "{}"
},
{
"code": "countdown_1",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"s","max":86400,"step":1}"
}
],
"status": [
{
"code": "countdown_1",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"s","max":86400,"step":1}"
},
{
"code": "cur_current",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"mA","max":30000,"step":1}"
},
{
"code": "cur_voltage",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"W","max":50000,"step":1}"
},
{
"code": "cur_power",
"type": "Integer",
"values": "{"min":0,"unit":"V","scale":0,"max":2500,"step":1}"
},
{
"code": "switch",
"type": "Boolean",
"values": "{}"
}
]
},
"success": true,
"t":<PHONE_NUMBER>621
}
Additional context
Add any other context or logs about the problem here.

@prehodacs Get it.

@prehodacs The unit is fixed, try again.

Hello,
I have exactly the same problem with several Gosund SP111, 15A WiFi sokets:

Volt (V) is Watt (W) in Home Assistant and vice versa. Both measures are too high by factor 10.
Home Assistant: 2021.7.0
Installation Type: Home Assistant OS
DEVICE DETAILS
{
"result": {
"active_time":<PHONE_NUMBER>,
"biz_type": 0,
"category": "cz",
"create_time":<PHONE_NUMBER>,
"icon": "smart/icon/1541647698myzx2yx1yk_0.jpg",
"id": "3038076070039f63e98e",
"ip": "<IP_ADDRESS>",
"lat": "52.35110345583657",
"local_key": "d34e9e59e0cbdf48",
"lon": "4.801993022378849",
"model": "SP111，15A，带计电量，中性",
"name": "Dell work plug",
"online": true,
"owner_id": "30055001",
"product_id": "37mnhia3pojleqfh",
"product_name": "Smart Socket",
"status": [
{
"code": "switch",
"value": true
},
{
"code": "countdown_1",
"value": 0
},
{
"code": "cur_current",
"value": 0
},
{
"code": "cur_power",
"value": 0
},
{
"code": "cur_voltage",
"value": 2277
}
],
"sub": false,
"time_zone": "+01:00",
"uid": "eu1619794810347GUY7B",
"update_time":<PHONE_NUMBER>,
"uuid": "3038076070039f63e98e"
},
"success": true,
"t":<PHONE_NUMBER>241
}
DEVICE ATTRIBUTES
{
"result": {
"category": "cz",
"functions": [
{
"code": "switch",
"type": "Boolean",
"values": "{}"
},
{
"code": "countdown_1",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"s","max":86400,"step":1}"
}
],
"status": [
{
"code": "countdown_1",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"s","max":86400,"step":1}"
},
{
"code": "cur_current",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"mA","max":30000,"step":1}"
},
{
"code": "cur_voltage",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"W","max":50000,"step":1}"
},
{
"code": "cur_power",
"type": "Integer",
"values": "{"min":0,"unit":"V","scale":0,"max":2500,"step":1}"
},
{
"code": "switch",
"type": "Boolean",
"values": "{}"
}
]
},
"success": true,
"t":<PHONE_NUMBER>780
}
Would this fix include the Gosund Smart WiFi sockets as well? If that's not the case would it be possible to fix the values as well (or maybe there is an option how I can do it myself? 😅
Any help is much appreciated!
Best regards,
Andre

@AndreOrth You create a ticket in the Tuya service console with your device specifications.
https://service.console.tuya.com/8/2/create?step=3&id=01030503&source=content_feedback.

@tsutsuku thank you very much for your reply and information. I just created a ticket in the Tuya service console as you advised :).

@tsutsuku - thanks units are corrected - looks good now.
Although the Voltage range is still high - it shows 2302 V which would definitely too much for any machine in my household.

In SmartLife app the correct value visible , in Home Assistant this value is multiplied by 10.
Can you correct that also?

I have uploaded all the latest files to my custom components but it still shows the wrong voltage and power

This is with a 40w light bulb

@gijsje Can you provide your device specification?

@tsutsuku
{
"active_time":<PHONE_NUMBER>,
"biz_type": 0,
"category": "cz",
"create_time":<PHONE_NUMBER>,
"icon": "smart/icon/ay1519551146071pEnBd/f3fca8ef65c979cb1aed14fc878c9107.jpg",
"id": "",
"ip": "",
"lat": "",
"local_key": "",
"lon": "",
"name": "Anthony 1",
"online": true,
"owner_id": "5538396",
"product_id": "ab4kwxlrok0yvxuo",
"product_name": "BW-SHP6",
"status": [
{
"code": "switch",
"value": true
},
{
"code": "countdown_1",
"value": 0
},
{
"code": "cur_current",
"value": 172
},
{
"code": "cur_power",
"value": 391
},
{
"code": "cur_voltage",
"value": 2266
}

with v1.3.2 everything ok with me

{
"result": {
"active_time":<PHONE_NUMBER>,
"biz_type": 18,
"category": "cz",
"create_time":<PHONE_NUMBER>,
"icon": "smart/icon/1541647698myzx2yx1yk_0.jpg",
"id": "3038076070039f64c78f",
"ip": "<IP_ADDRESS>",
"lat": "46.8022351",
"local_key": "b9b53a37eb23420a",
"lon": "23.7563449",
"name": "Smart Socket",
"online": true,
"owner_id": "30719948",
"product_id": "37mnhia3pojleqfh",
"product_name": "Smart Socket",
"status": [
{
"code": "switch",
"value": true
},
{
"code": "countdown_1",
"value": 0
},
{
"code": "cur_current",
"value": 3070
},
{
"code": "cur_power",
"value": 7089
},
{
"code": "cur_voltage",
"value": 2309
}
],
"sub": false,
"time_zone": "+02:00",
"uid": "eu1620898850249QRdB9",
"update_time":<PHONE_NUMBER>,
"uuid": "3038076070039f64c78f"
},
"success": true,
"t":<PHONE_NUMBER>331
}
Gosund SP111-A
Same problem, with late and multiplied values!

Hi, I'm experiencing those issues on my NOUS Smart Socket A1 powered by tuya too.
Looks like something general.
{
  "active_time":<PHONE_NUMBER>,
  "biz_type": 18,
  "category": "cz",
  "create_time":<PHONE_NUMBER>,
  "icon": "smart/icon/ay1544451161651vQPZq/762fd9234ab74ed73001e72519117823.jpg",
  "id": "8113680070039f17c164",
  "ip": "<IP_ADDRESS>",
  "lat": "51.26630582976573",
  "local_key": "e3fd047f420e6a51",
  "lon": "6.78412853967204",
  "model": "定制，15，带计电量",
  "name": "Vorratskammer Kühlschrank",
  "online": true,
  "owner_id": "14199441",
  "product_id": "m6ei1t46nqn0p0p9",
  "product_name": "Smart Socket A1",
  "status": [
    {
      "code": "switch",
      "value": true
    },
    {
      "code": "countdown_1",
      "value": 0
    },
    {
      "code": "cur_current",
      "value": 676
    },
    {
      "code": "cur_power",
      "value": 1596
    },
    {
      "code": "cur_voltage",
      "value": 2359
    }
  ],
  "sub": false,
  "time_zone": "+01:00",
  "uid": "eu1595181260601TxIKA",
  "update_time":<PHONE_NUMBER>,
  "uuid": "8113680070039f17c164"
},

Same here
BW-SHP11

@tsutsuku Did you receive a notice about my report?

Can you provide your device specifications? not the device info you have provided.

Smart plug WiFi Gosund SP111 3450W 15A
Until i have link it to iot platform is reading wrong values.
https://github.com/tuya/tuya-home-assistant/issues/102#issuecomment-886197454
What can i do, i need iot platform for tuya V2 integration.

@tsutsuku Some info from the log that might help.
I'm getting 10x the power. Value should be 14.2w for example.
{
"active_time":<PHONE_NUMBER>,
"biz_type": 18,
"category": "cz",
"create_time":<PHONE_NUMBER>,
"icon": "smart/icon/ay149682747096840kwW/79364394c3297745a408fe5dafbbabc1.jpg",
"id": "05157867fcf5c4aaec1d",
"ip": "",
"lat": "",
"local_key": "",
"lon": "",
"model": "",
"name": "Power Plug",
"online": true,
"owner_id": "23663464",
"product_id": "pdjgpz7mta86mvyh",
"product_name": "BW-SHP11",
"status": [
{
"code": "switch",
"value": true
},
{
"code": "countdown_1",
"value": 0
},
{
"code": "add_ele",
"value": 7
},
{
"code": "cur_current",
"value": 123
},
{
"code": "cur_power",
"value": 142
},
{
"code": "cur_voltage",
"value": 2283
}
],
"sub": false,
"time_zone": "+02:00",
"uid": "***",
"update_time":<PHONE_NUMBER>,
"uuid": "05157867fcf5c4aaec1d"
},

@tsutsuku
here the device specs are:
2021-08-11 15:07:48 DEBUG (SyncWorker_5) [tuya iot] Request: method = GET, url = https://openapi.tuyaeu.com/v1.0/devices/8113680070039f17c164/specifications, params = None, body = None, t =<PHONE_NUMBER>029
2021-08-11 15:07:48 DEBUG (SyncWorker_5) [tuya iot] Response: {
"result": {
"category": "cz",
"functions": [
{
"code": "switch",
"type": "Boolean",
"values": "{}"
},
{
"code": "countdown_1",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"s","max":86400,"step":1}"
}
],
"status": [
{
"code": "countdown_1",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"s","max":86400,"step":1}"
},
{
"code": "cur_current",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"mA","max":30000,"step":1}"
},
{
"code": "cur_voltage",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"W","max":50000,"step":1}"
},
{
"code": "cur_power",
"type": "Integer",
"values": "{"min":0,"unit":"V","scale":0,"max":2500,"step":1}"
},
{
"code": "switch",
"type": "Boolean",
"values": "{}"
}
]
},
"success": true,
"t":<PHONE_NUMBER>083
}

I reported the same issue in #250

I'm using a template for each entity as a current workaround.
 entry_lightswitch:
    friendly_name: 'Entry - Light_power_w'
    unit_of_measurement: 'w'
    value_template: '{{(states.sensor.ty57210084500291442b65_2.state | float / 10 | round(1) )}}'

This reporting error also impacts Energy Dashboards ability to report kWh correctly.

Same problem here. Smart Socket shows voltage as Watts and Power as Volts.
"model": "定制，15，带计电量",
"name": "Smart Socket A1",
"product_id": "m6ei1t46nqn0p0p9",
"product_name": "Smart Socket A1"
url = https://openapi.tuyaeu.com/v1.0/devices/31130006c4dd571cf300/specifications
{
"code": "cur_voltage",
"type": "Integer",
"values": "{"min":0,"scale":0,"unit":"W","max":50000,"step":1}"
},
{
"code": "cur_power",
"type": "Integer",
"values": "{"min":0,"unit":"V","scale":0,"max":2500,"step":1}"
},

Hello guys, i've solved my Gosund SP111 problem. It was all my fault, i wasn't activated "Device Status Notification" IoT platform.
https://user-images.githubusercontent.com/77467195/128992017-4e4cd6fa-5f8b-4679-87af-8ac6910e7eae.png
Go to Cloud/My Services/All Services and search for "Device Status Notification"
You can then Trial Subscribe to it and add your project to it.
I had to restart HA and now it works perfectly.

For those wrong value's you can just create a Template Sensor:

platform: template
sensors:
plug_voltage_round:
value_template: "{{ '%3.1f'%(states('sensor.ty3038076070039f64c78f_3')|float / (10)) | float }}"
friendly_name: 'Plug Voltage'
unit_of_measurement: 'V'

This will help, "%3.1f'%" also is for 3 number before "." and 1 number after "."

For those wrong value's you can just create a Template Sensor:

But it doesn't make sense. You install a dedicated integration to write everything "from your finger" on the templates :) Especially that x10 is everything - voltage, current and power :) So you have to create 3 templates * the number of sockets you have :) This should be solved at the integration level :)

Any ETA for x10 integration error?

Any update for this?

My last update is, I gave up and started converting to tasmota. I used my raspberry pi and flashed tasmota.bin on "Gosund Plug" over the air (wifi), no soldering. Now is working perfectly, no cloud no problems !
https://templates.blakadder.com/gosund_SP111_v1_1

Will this ever be fixed?

Depends if this is a device issue, or Home Assistant issue. Home Assistant 2022.2 has a diagnostic tool. Go to the device and download the diagnostic information for that device. Drag and drop that file in a response on this issue ao we can see

tuya-43a27f85079b276579100529d93b8fa3-Smart Socket A1-af6c83bf5385b9e2b9c7d82fa16c8e09.json (2).txt

It's pretty clear where the difference comes from and has been said several times, here and elsewhere:-
The Tuya API, from which the integration derives it's data, correctly labels current values in mA units, but incorrectly labels voltage and power as V and W.
The raw integers in fact represent dV and dW (i.e. deci-, 1e-1, 1x10e-1, 1/10, however you want to express it).
The Tuya App accounts for this and displays corrected values to the user.  The integration does not.

Same problem of wrongly reporting x10 in my new Tuya socket USmart

The diagnostic information:
{
"home_assistant": {
"installation_type": "Home Assistant Container",
"version": "2022.2.3",
"dev": false,
"hassio": false,
"virtualenv": false,
"python_version": "3.9.7",
"docker": true,
"arch": "armv7l",
"timezone": "Europe/Madrid",
"os_name": "Linux",
"os_version": "5.10.17-v7l+",
"run_as_root": true
},
"custom_components": {
"adaptive_lighting": {
"version": "1.0.14",
"requirements": []
},
"config_editor": {
"version": "2.0",
"requirements": []
},
"hacs": {
"version": "1.18.0",
"requirements": [
"aiogithubapi>=21.11.0"
]
},
"switch_humidifier": {
"version": "<IP_ADDRESS>",
"requirements": []
}
},
"integration_manifest": {
"domain": "tuya",
"name": "Tuya",
"documentation": "https://www.home-assistant.io/integrations/tuya",
"requirements": [
"tuya-iot-py-sdk==0.6.6"
],
"dependencies": [
"ffmpeg"
],
"codeowners": [
"@Tuya",
"@zlinoliver",
"@METISU",
"@frenck"
],
"config_flow": true,
"iot_class": "cloud_push",
"dhcp": [
{
"macaddress": "105A17*"
},
{
"macaddress": "10D561*"
},
{
"macaddress": "1869D8*"
},
{
"macaddress": "381F8D*"
},
{
"macaddress": "508A06*"
},
{
"macaddress": "68572D*"
},
{
"macaddress": "708976*"
},
{
"macaddress": "7CF666*"
},
{
"macaddress": "84E342*"
},
{
"macaddress": "D4A651*"
},
{
"macaddress": "D81F12*"
}
],
"is_built_in": true
},
"data": {
"endpoint": "https://openapi.tuyaeu.com",
"auth_type": 0,
"country_code": "34",
"app_type": "tuyaSmart",
"mqtt_connected": true,
"disabled_by": null,
"disabled_polling": false,
"name": "Smart Socket",
"model": "\u6b27\u89c4\uff0c10A\uff0c\u5e26\u8ba1\u7535\u91cf\uff0c\u652f\u6301\u9177\u5ba2RF\u4ea7\u6d4b",
"category": "cz",
"product_id": "wifvoilfrqeo6hvu",
"product_name": "Smart Socket",
"online": true,
"sub": false,
"time_zone": "+01:00",
"active_time": "2022-02-27T19:13:33+00:00",
"create_time": "2022-02-27T18:07:20+00:00",
"update_time": "2022-02-27T19:21:55+00:00",
"function": {
"switch_1": {
"type": "Boolean",
"value": {}
},
"countdown_1": {
"type": "Integer",
"value": {
"min": 0,
"scale": 0,
"unit": "\u79d2",
"max": 86400,
"step": 1
}
}
},
"status_range": {
"switch_1": {
"type": "Boolean",
"value": {}
},
"countdown_1": {
"type": "Integer",
"value": {
"min": 0,
"scale": 0,
"unit": "\u79d2",
"max": 86400,
"step": 1
}
},
"add_ele": {
"type": "Integer",
"value": {
"min": 0,
"scale": 0,
"unit": "\u5ea6",
"max": 500000,
"step": 100
}
},
"cur_current": {
"type": "Integer",
"value": {
"min": 0,
"scale": 0,
"unit": "mA",
"max": 30000,
"step": 1
}
},
"cur_power": {
"type": "Integer",
"value": {
"min": 0,
"scale": 0,
"unit": "W",
"max": 50000,
"step": 1
}
},
"cur_voltage": {
"type": "Integer",
"value": {
"min": 0,
"unit": "V",
"scale": 0,
"max": 2500,
"step": 1
}
}
},
"status": {
"switch_1": true,
"countdown_1": 0,
"add_ele": 10,
"cur_current": 30,
"cur_power": 70,
"cur_voltage": 2302
},
"home_assistant": {
"name": "Smart Socket",
"name_by_user": null,
"disabled": false,
"disabled_by": null,
"entities": [
{
"disabled": false,
"disabled_by": null,
"entity_category": null,
"device_class": "current",
"original_device_class": "current",
"icon": null,
"original_icon": null,
"unit_of_measurement": "A",
"state": {
"entity_id": "sensor.smart_socket_current",
"state": "0.03",
"attributes": {
"state_class": "measurement",
"unit_of_measurement": "A",
"device_class": "current",
"friendly_name": "Smart Socket Current"
},
"last_changed": "2022-02-27T19:35:31.549503+00:00",
"last_updated": "2022-02-27T19:35:31.549503+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": null,
"device_class": "power",
"original_device_class": "power",
"icon": null,
"original_icon": null,
"unit_of_measurement": "W",
"state": {
"entity_id": "sensor.smart_socket_power",
"state": "70.0",
"attributes": {
"state_class": "measurement",
"unit_of_measurement": "W",
"device_class": "power",
"friendly_name": "Smart Socket Power"
},
"last_changed": "2022-02-27T19:35:31.549829+00:00",
"last_updated": "2022-02-27T19:35:31.549829+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": null,
"device_class": "voltage",
"original_device_class": "voltage",
"icon": null,
"original_icon": null,
"unit_of_measurement": "V",
"state": {
"entity_id": "sensor.smart_socket_voltage",
"state": "2302.0",
"attributes": {
"state_class": "measurement",
"unit_of_measurement": "V",
"device_class": "voltage",
"friendly_name": "Smart Socket Voltage"
},
"last_changed": "2022-02-27T19:35:21.481314+00:00",
"last_updated": "2022-02-27T19:35:21.481314+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": null,
"device_class": null,
"original_device_class": "outlet",
"icon": null,
"original_icon": null,
"unit_of_measurement": null,
"state": {
"entity_id": "switch.smart_socket_socket_1",
"state": "on",
"attributes": {
"device_class": "outlet",
"friendly_name": "Smart Socket Socket 1"
},
"last_changed": "2022-02-27T19:25:27.846560+00:00",
"last_updated": "2022-02-27T19:25:27.846560+00:00"
}
}
]
}
}
}

A temporary solution would be:
- platform: template
  sensors:
    smart_socket_a1_power_corrected:
      friendly_name: "Smart Socket A1 Power Corected"
      unit_of_measurement: "W"
      value_template: "{{ '%4.1f'%(states('sensor.smart_socket_a1_power')|float(0) / (10)) | float(0) }}"
      device_class: power
      unique_id: smart_socket_a1_power_corrected

    smart_socket_a1_voltage_corrected:
      friendly_name: "Smart Socket A1 Voltage Corrected"
      unit_of_measurement: "V"
      value_template: "{{ '%3.1f'%(states('sensor.smart_socket_a1_voltage')|float(0) / (10)) | float(0) }}"
      device_class: voltage
      unique_id: smart_socket_a1_voltage_corrected

@hermanops thanks for the workarround but I think that it will not work as I have seen that the reporting error is somehow random in Home Assistant, while it is fine in the Tuya app.
I just connected the smart plug to my washing machine and it was reporting right but sudendly it started reported 10 times the power consumtion and after a few minutes it is reporting right again.
Maybe Tuya changes the scale in their messages, I do not know.
The graph is the power reported by Home Assistant, the lower part is arround 2.300 W that is right and the top is 23.000 W that is clearly wrong.

I have a Gosun SP111-A plug and I'm running HA 2022.2.9 + tuya integration.
For me, just the voltage is wrong, it is most likely 10 times bigger than actual value.
So the smartlife App is showing correct voltage.
the tuya IOT website is showing voltage 2200V

Time
Device Event
DP ID
Event Details
Source
Source Details

2022-03-02 15:40:29
Report
Voltage
2125V
device itself

2022-03-02 15:38:29
Report
Voltage
2162V
device itself

So could it be that the Tuya portal shows some bad raw data?
tuya-0d687989bbb92fa636b44e7f8b70de09-Zeus Socket-7097c1884acd8b0ab3414edaa54b2043.json.txt

@josecarlosfernandez : so it's not random, right?

No, it is not random, consistently 10 times the real measurement.

Like in LocalTuya, thera are scaling factor

Like in LocalTuya, thera are scaling factor

Where is this menu? I cannot find int.
thx

when u add a new sensor to a the local tuya device that will show up

Any fix for this issue? I have the same incorrect readings, sensors voltage (and thus power) is 10x times bigger than the correct values.
I use Gosund SP-111A Smart Plug attached to Tuya (Cloud) and integrated to HA.

Any fix for this issue? I have the same incorrect readings, sensors voltage (and thus power) is 10x times bigger than the correct values.
I use Gosund SP-111A Smart Plug attached to Tuya (Cloud) and integrated to HA.

I create a sensor for each value I wish to correct that divides by 10%
`sensor:

platform: template
sensors:
garage_powerpoint_door:
friendly_name: 'Garage - Powerpoint_power_door_w'
unit_of_measurement: 'W'
value_template: '{{(states.sensor.garage_roof_power_point_power.state | float / 10 | round(1) )}}'
garage_powerpoint_west:
friendly_name: 'Garage - Powerpoint_power_west_w'
unit_of_measurement: 'W'
value_template: '{{(states.sensor.garage_power_point_west_power.state | float / 10 | round(1) )}}'`

Can someone explain to me exactly how I convert this into HA?

I've had a conversation with the tuya support. That's what they answered:

Tuya engineer02:
Hello, allow me to explain to you. Because the integer reported by the device is more convenient to calculate than the decimal, the power consumption is low. In fact, the App panel has already done the conversion calculation (1579*10^-1=157.9w).

Tuya engineer
The data displayed by HA is the original data returned by the API.

This is fine and acceptable and has then to be fixed in HA.
So, for me it seems to depend on the kind of device tuya is delivering. Since I have different tuya devices, some deliver the "right" Watts, some not.
I've helped myself with creating a custom sensor THIS VIDEO helped me with that.
Summary:

add a sensors.yaml to the configuration.yaml
in the sensors.yaml: add the code above, adopted to the name of your entity
restart home assistant
and voila: you will find the corrected W entity.

The only problem i'm facing right now is how to tell the custom sensor that it belongs to the "mother"-Smartplug as a sub-entity - but google might fix that.
As wish for this issue: the Tuya Integration should be able to handle those different watt/volts information from tuya!

The Tuya HA integration uses the following setting for devices that give the wrong voltage:
[quote]      "cur_voltage": {
"type": "Integer",
"value": {
"min": 0,
"unit": "V",
"scale": 0,
"max": 2500,
"step": 1
[/quote]
According to the Tuya documentation, voltage scaling should be:
[quote]{“unit”:“v”,“min”:0,“max”:50000,“scale”:1,“step”:1}[/quote]
The reason for that is because the value is an integer (and you to scale it down in order to be able to represent for example 232,4V).
Scaling for current is 0 (since current is in mA) and for power is 0 too. Power is probably derived from current and voltage (so if voltage is off by a factor of 10 then power will probably be off by a factor of 10 as well).

I tried the template solution but I am not a technical guy and complete newbie. Apparently I'm completely wrong (and in the dark). Is there a good soul who is willing to have a look?
My complete configuration.yaml:
Configure a default setup of Home Assistant (frontend, api, etc)
default_config:
Text to speech
tts:

platform: google_translate

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
template: !include template.yaml
homeassistant:
allowlist_external_dirs:
- /config
sensor:

platform: integration
source: sensor.plug_14_tv_power
name: tv_energy_spent
unit_prefix: k
round: 2

platform: template
sensors:
smart_plug_voltage_round:
value_template: "{{ '%3.1f'%(states('sensor.smart_energy_meter_voltage')|float * (10)) | float }}"
friendly_name: 'Plug Voltage'
unit_of_measurement: 'V'

recorder:
purge_keep_days: 367
The error I get when reloading the configuration:
"Unable to reload the configuration:
Cannot quick reload all YAML configurations because the configuration is not valid: Invalid config for [sensor.template]: expected dictionary for dictionary value @ data['sensors']. Got None extra keys not allowed @ data['friendly_name']. Got 'Plug Voltage' extra keys not allowed @ data['smart_plug_voltage_round']. Got None extra keys not allowed @ data['unit_of_measurement']. Got 'V' extra keys not allowed @ data['value_template']. Got "{{ '%3.1f'%(states('sensor.smart_energy_meter_voltage')|float * (10)) | float }}". (See ?, line ?)."

Nope, sorry. Sensor precision does not change the value, only the presented decimals.


index.js is missing

Package.json refers dist/index.js as main entrypoint of the package but there is no dist/index.js file. If it is supposed to show up after succesfull npm installation, it is not. I don't get any errors during npm install. This prevents me importing this package in my Vue application because webpack cannot find the package.

Same for me after upgrade,. With previous 1.0.6 version it works.
This dependency was not found:

vueup in ./src/main.js

@JukkaM @endorfin
I will make a PR soon that I think fixes this.