[web] HtmlElementView messes with other widgets after window resize

Steps to Reproduce

Execute flutter run on the code sample
Change the width of the window (either increase it or decrease it)
The container on the left disappears

Expected results:

Actual results:

Code sample

import 'dart:html';
import 'dart:ui' as ui;
import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  MyApp({Key? key}) : super(key: key);

  final htmlId = '1';

  final elem = DivElement()
    ..id = '1'
    ..style.width = "100%"
    ..style.height = "100%"
    ..style.border = 'solid';

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Scaffold(
        body: Builder(builder: (context) {
          final size = MediaQuery.of(context).size;
          // ignore: undefined_prefixed_name
          ui.platformViewRegistry.registerViewFactory(htmlId, (int viewId) {
            return elem;
          });
          return Row(
            children: [
              Container(
                color: Colors.black,
                width: size.width * 0.5,
              ),
              SizedBox(
                height: size.height,
                width: size.width * 0.5,
                child: HtmlElementView(viewType: htmlId),
              ),
            ],
          );
        }),
      ),
    );
  }
}

Logs

[  +52 ms] executing: [C:\Users\ALM\Documents\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[ +387 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +1 ms] 77d935af4db863f6abd0b9c31c7e6df2a13de57b
[        ] executing: [C:\Users\ALM\Documents\flutter/] git tag --points-at 77d935af4db863f6abd0b9c31c7e6df2a13de57b
[  +42 ms] Exit code 0 from: git tag --points-at 77d935af4db863f6abd0b9c31c7e6df2a13de57b
[        ] 2.8.1
[   +6 ms] executing: [C:\Users\ALM\Documents\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +26 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [C:\Users\ALM\Documents\flutter/] git ls-remote --get-url origin
[  +23 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +78 ms] executing: [C:\Users\ALM\Documents\flutter/] git rev-parse --abbrev-ref HEAD
[  +23 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[  +61 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +51 ms] executing: C:\Users\ALM\AppData\Local\Android\sdk\platform-tools\adb.exe devices -l
[  +34 ms] List of devices attached
[   +6 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +6 ms] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +72 ms] Multiple devices found:
[  +16 ms] Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22000.376]
[        ] Chrome (web)      • chrome  • web-javascript • Google Chrome 97.0.4692.71
[        ] Edge (web)        • edge    • web-javascript • Microsoft Edge 97.0.1072.55
[   +1 ms] [1]: Windows (windows)
[        ] [2]: Chrome (chrome)
[        ] [3]: Edge (edge)
[   +1 ms] Please choose one (To quit, press "q/Q")
[        ] :
[+6395 ms] 2
[  +11 ms] Skipping pub get: version match.
[  +96 ms] Generating C:\Users\ALM\Desktop\CB LUNA\RTA\Flutter Apps\pruebas\so_example\android\app\src\main\java\io\flutter\plugins\GeneratedPluginRegistrant.java
[  +76 ms] Launching lib\main.dart on Chrome in debug mode...
[  +97 ms] Updating assets
[  +58 ms] Waiting for connection from debug service on Chrome...
[  +69 ms] <- reset
[   +5 ms] C:\Users\ALM\Documents\flutter\bin\cache\dart-sdk\bin\dart.exe --disable-dart-dev
C:\Users\ALM\Documents\flutter\bin\cache\artifacts\engine\windows-x64\frontend_server.dart.snapshot --sdk-root C:\Users\ALM\Documents\flutter\bin\cache\flutter_web_sdk/
--incremental --target=dartdevc --debugger-module-names --experimental-emit-debug-metadata -DFLUTTER_WEB_AUTO_DETECT=true --output-dill
C:\Users\ALM\AppData\Local\Temp\flutter_tools.85879cca\flutter_tool.88dbb26c\app.dill --libraries-spec
file:///C:/Users/ALM/Documents/flutter/bin/cache/flutter_web_sdk/libraries.json --packages C:\Users\ALM\Desktop\CB LUNA\RTA\Flutter
Apps\pruebas\so_example\.dart_tool\package_config.json -Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts --track-widget-creation --filesystem-root
C:\Users\ALM\AppData\Local\Temp\flutter_tools.85879cca\flutter_tools.905c82b6 --filesystem-scheme org-dartlang-app --initialize-from-dill
build\b1b715402d823b7fd5c2b68d2edcb2ce.cache.dill.track.dill --platform file:///C:/Users/ALM/Documents/flutter/bin/cache/flutter_web_sdk/kernel/flutter_ddc_sdk_sound.dill
--sound-null-safety
[  +10 ms] <- compile org-dartlang-app:/web_entrypoint.dart
[+12378 ms] Waiting for connection from debug service on Chrome... (completed in 12.5s)
[   +1 ms] Synced 28.4MB.
[        ] <- accept
[        ] Caching compiled dill
[ +427 ms] [CHROME]:
[   +1 ms] [CHROME]:DevTools listening on ws://<IP_ADDRESS>:55894/devtools/browser/0204b6cb-d8d7-4e80-b530-3ee5204aff4a
[ +215 ms] DwdsInjector: Received request for entrypoint at http://localhost:55872/main_module.bootstrap.js
[   +6 ms] MetadataProvider: Loading debug metadata...
[  +14 ms] MetadataProvider: Loaded debug metadata (sound null safety)
[   +7 ms] DwdsInjector: Injected debugging metadata for entrypoint at http://localhost:55872/main_module.bootstrap.js
[+2255 ms] ChromeProxyService: Initializing expression compiler for main_module.bootstrap.js with sound null safety: true
[  +56 ms] DevHandler: Debug service listening on ws://<IP_ADDRESS>:55911/iaDKy8RSVh8=/ws

[  +19 ms] This app is linked to the debug service: ws://<IP_ADDRESS>:55911/iaDKy8RSVh8=/ws
[   +8 ms] Debug service listening on ws://<IP_ADDRESS>:55911/iaDKy8RSVh8=/ws
[        ]  Running with sound null safety
[   +3 ms]   To hot restart changes while running, press "r" or "R".
[        ] For a more detailed help message, press "h". To quit, press "q".
[   +1 ms] An Observatory debugger and profiler on Chrome is available at: http://<IP_ADDRESS>:55911/iaDKy8RSVh8=
[+3571 ms] The Flutter DevTools debugger and profiler on Chrome is available at: http://<IP_ADDRESS>:9103?uri=http://<IP_ADDRESS>:55911/iaDKy8RSVh8=

Analyzing so_example...

   info - Avoid using web-only libraries outside Flutter web plugin packages - lib\main.dart:1:1 - avoid_web_libraries_in_flutter

1 issue found. (ran in 2.0s)

[√] Flutter (Channel stable, 2.8.1, on Microsoft Windows [Version 10.0.22000.376], locale en-US)
    • Flutter version 2.8.1 at C:\Users\ALM\Documents\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 77d935af4d (4 weeks ago), 2021-12-16 08:37:33 -0800
    • Engine revision 890a5fca2e
    • Dart version 2.15.1

[√] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at C:\Users\ALM\AppData\Local\Android\sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.11.8)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.11.32002.261
    • Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2020.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • 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.10+0-b96-7249189)

[√] VS Code (version 1.63.2)
    • VS Code at C:\Users\ALM\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.32.0

[√] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22000.376]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 97.0.4692.71
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 97.0.1072.55

• No issues found!

Thanks for the report. Verified this on latest versions (stable, master and beta) and seems to be occuring with canvaskit rendering, while, the same works properly with html rendering.

Canvaskit:

https://user-images.githubusercontent.com/67046386/148917582-36cb16a2-b336-4588-9bd4-a1bacd3e612b.mov

html:

 stable, master, beta flutter doctor -v
[[✓] Flutter (Channel stable, 2.8.1, on Mac OS X 10.15.4 19E2269 darwin-x64,
    locale en-GB)
    • Flutter version 2.8.1 at /Users/dhs/documents/fluttersdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 77d935af4d (13 hours ago), 2021-12-16 08:37:33 -0800
    • Engine revision 890a5fca2e
    • Dart version 2.15.1

[✓] Android toolchain - develop for Android devices (Android SDK version 30)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Users/dhs/Library/Android/sdk
    • Java binary at: /Users/dhs/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/202.7486908/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    • CocoaPods version 1.10.1

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

[✓] Android Studio (version 4.1)
    • Android Studio at /Users/dhs/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/202.7486908/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
      1.8.0_242-release-1644-b3-6915495)

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

[✓] Connected device (4 available)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 93.0.4577.82

• No issues found!

[✓] Flutter (Channel master, 2.9.0-1.0.pre.316, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-GB)
    • Flutter version 2.9.0-1.0.pre.295 at
      /Users/dhs/documents/fluttersdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 79025d4567 (9 minutes ago), 2022-01-10 23:40:18 -0500
    • Engine revision b5a9cfd537
    • Dart version 2.16.0 (build 2.16.0-144.0.dev)
    • DevTools version 2.9.2
    • PATH =
      /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/binpplicat
      ions/Software_Setup/flutter/bin:/Users/dhs/triagemagic/bin/:/Users/dhs/doc
      uments/fluttersdk/flutter/bin:/emulator:/tools:/tools/bin:/platform-tools:
      /Users/dhs/.pub-cache/bin

[✓] Android toolchain - develop for Android devices (Android SDK version 30)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Users/dhs/Library/Android/sdk
    • Java binary at: /Users/dhs/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/202.7486908/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5.1, Build version 12E507
    • CocoaPods version 1.10.1

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

[✓] Android Studio (version 4.1)
    • Android Studio at /Users/dhs/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/202.7486908/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
      1.8.0_242-release-1644-b3-6915495)

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

[[✓] Connected device (4 available)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 93.0.4577.82

• No issues found!

[✓] Flutter (Channel beta, 2.9.0-0.1.pre, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-GB)
    • Flutter version 2.9.0-0.1.pre at /Users/dhs/documents/fluttersdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 8f1f9c10f0 (4 weeks ago), 2021-12-14 13:41:48 -0800
    • Engine revision 234aca678a
    • Dart version 2.16.0 (build 2.16.0-80.1.beta)
    • DevTools version 2.9.1

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

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

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

[✓] Connected device (3 available)
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729 • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                               •
      web-javascript • Google Chrome 97.0.4692.71

! Doctor found issues in 1 category.

Hi, sounds related to https://github.com/flutter/flutter/issues/95259 ?

There may be a race condition in the code. The code creates a single DivElement and the returns the same element every time the platform view factory is called. To eliminate the possibility of this being caused by a race condition, can you check if returning a new element from the factory helps? An easy way to check is to change return elem; to return elem.clone(true);.

I'm afraid that didn't work. After changing that line I get the following error:
Error: A value of type 'Node' can't be returned from a function with return type 'Element'.
 - 'Node' is from 'dart:html'.
 - 'Element' is from 'dart:html'.
            return elem.clone(true);

I'm unable to reproduce this any more. Is this still an issue?

Closing for now. If this shows up again, let's retriage. We have a contributor that's currently working on fixing devicePixelRatio and window resize notifications from the engine to the framework, which might improve the situation further.


Re-Add TLS metrics

What
Port over TLS metrics from GLBC to the new controller

This issue is stale because it has been open for 30 days with no activity.

This issue was closed because it has been inactive for 30 days since being marked as stale.


What's the canonical way to do partial rebuilds?

I have a directory of files, which I am compiling 1-to-1:
in:
src/
|_ foo/
    |_ foo.coffee
|_ bar.coffee

out:
dist/
|_ foo/
    |_ foo.js
|_ bar.js

What's the right way to watch and do partial rebuilds when a file changes (ie. only recompile the changed file)? An example would be nice.

https://github.com/gulpjs/gulp#incremental-builds


Name event parameters

Currently event parameters are unnamed, so the only way to know the meaning of each value is by looking at the type and docs.
It will be good if there is a way annotate the parameter name in metadata so SDK can generate named accessor.
For now we are going to try to parse the doc comments to look something like (from, to, value) to get the name, but it does not always work.
https://github.com/paritytech/substrate/blob/7217ab64596e7f5a876546a46d2499915bf645b2/frame/balances/src/lib.rs#L226

This can come with https://github.com/paritytech/substrate/issues/5678


Updated images, added new policies in setup-a-fleet, modified set-up-…

…of-management-agent
Add here your WMS ID
General requirements

Information in the workshop is adequate and updated
Code is correct and working
Links are correct
Make sure you enter the help email link in your manifest.json
Please make sure WMS URLs are updated as needed after your PR is approved

Checklist - Refer to the QA document for the complete list
Please confirm that the following is completed before submitting your PR

[ ] All filenames are lower case (including folders, images, files, etc.)
[ ] Filenames are descriptive
[ ] Your workshop folder structure should be similar to the one used in the sample workshop (https://github.com/oracle-livelabs/common/tree/main/sample-livelabs-templates/sample-workshop)
[ ] Are you using multiple versions (desktop/, sandbox/, tenancy/)? Make sure that each of them contains a manifest.json and an index.html
[ ] Image references in markdown contain an alternate text

Updated the livelabs based on the review comments previously


[Question] Is there a way to get docker-gen functionallity with podman?

Hello,
I have used jwilder/nginx-proxy and JrCs/docker-letsencrypt-nginx-proxy-companion a lot that both rely on docker-gen.
However, with Fedora 31 (and RHEL 8) my distribution has switched to podman (and docker is only useable if you switch back to vgroups v1). With podman, there is no unix socket /var/run/docker.sock. However, there seems an replacement for  docker events: podman events (see Podman Usage Transfer).
So I wonder if there is a way to archive the functionallity of docker-gen on podman?
Kind regards,
aanno2

There is some API https://podman.io/blogs/2020/01/17/podman-new-api.html so maybe docker-gen can be adopted to use it.

Tested on podman master branch. It works using podman system service. Should be fixed in next release so of podman

docker-gen generate incorect nginx configuration in section upstream. This section is empty after execute of docker-gen in podman enviroument.
I will try to suppose it behavior linked with different result between docker network inspect and podman network inspect. Do somebody know how to get over this issue?

docker-gen generate incorect nginx configuration in section upstream. This section is empty after execute of docker-gen in podman enviroument.
I will try to suppose it behavior linked with different result between docker network inspect and podman network inspect. Do somebody know how to get over this issue?

Tested on podman master branch. It works using podman system service. Should be fixed in next release so of podman

Hi I'm trying to implement this on my fedora 33, running podman 2.2.1, could you share me you rconfiguration, I'm not able to get it to work.

This might have been fixed by #336 and #345

A similar discussion is happening over on the Traefik repo: https://github.com/traefik/traefik/issues/5730
@jennso SELinux may be preventing your container from connecting to the Podman socket if you're using a rootless container. See here: https://bugzilla.redhat.com/show_bug.cgi?id=1495053#c2


ruby 2.7 support

hi,
I try to update to ruby 2.7.1 but I have thousands of warning
formtastic-3.1.5/lib/formtastic/localizer.rb:118: warning: deprecated Object#=~ is called on FalseClass; it always returns nil
formtastic-3.1.5/lib/formtastic/i18n.rb:26: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call

I believe that was fixed by https://github.com/justinfrench/formtastic/pull/1307

thanks, any idea about a release date ? ;-)

Yeah, that's not a priority for some time already. I'd recommend using it as git dependency.
Master is very stable anyway.

thanks, I tried but them formtastic-bootstrap gem is not working anymore
ActionView::Template::Error:
uninitialized constant Formtastic::Util
# gems/formtastic-bootstrap-3.1.1/lib/formtastic-bootstrap/helpers/fieldset_wrapper.rb:26:in `field_set_and_list_wrapping'
and this gems is not maintain anymore. Do you know any replacement maybe ?
thanks again for your help

I'm not using formtastic-bootstrap, sorry. Maybe you can fork it and change it? Formtastic::Util was a recent removal in https://github.com/justinfrench/formtastic/commit/cbbff9c76645be2548f9f6350f5b4b832c4616f0#diff-307fa8c47fcf4e3139e823dd839b7efe
You can also create that module in your project.

Maintainers, we really need a release for various other gems to point to and for direct use. What is the hold-up and how can I help?

I've cut a 4.0.0.rc1 gem today, and am enlisting new maintainers. Closing.

@justinfrench this issue is not fixed by #1307 as @mikz stated incorrectly above. #1307 fixed a different deprecation warning, not the one being reported here. please reopen.


Necromancer Robe Top & Bottom icons are reversed

🐛 Bug Report

Adding to this, The icon for the legs dropped by Vladimir Drakan is also broken/missing.


:sparkles: feat: implement initial benchmark tests

Description
This PR is for implementing benchmarking tests which will be used in CI to evaluate change in performance / compute resource utilization as new features are implemented.

Reviewer Checklist

[ ] API Go Documentation
[x] Tests: Unit Tests (and E2E Tests, if appropriate)
[x] Comprehensive Commit Messages
[ ] Links to related GitHub Issue(s)

Relates to #920

While reviewing, consider:

What should be threshold for an increase in computational resource utilization?
And should we error when above threshold is exceeded?
Should we add a comment with the benchmark results?
Informational logs in the function being benchmarked will break the benchmark format. As a workaround, should we remove the comments altogether or suppress them when benchmarks are running?

During a meeting on the benchmarking of operator-controller functions, we discussed:

[ ]  Committing a golden benchmark to the repository and comparing benchmarks when new PRs are created to the golden / reference benchmark
[ ] Set the threshold as low as possible, preferrably zero, and alerting when there is any measurable change
[ ] Switch the analysis of the benchmark data to use Golang tools / modules from Pandas which is written in Python
[ ] Fail / Alert when a benchmark is removed from the golden benchmark or when a benchmark which does not exist in the Golden benchmark is added to a PR

Will be revisited at a later time.


[ios] why i can't custom the call  ui in ios

why i can't custom the call  ui in ios

Call UI is Callkit provider by system iOS.

Is this step necessary for iOS in my Flutter project, "Configure VoIP Push Notifications in the Xcode Project (Swift) in Setup Pushkit for IOS." @hiennguyen92 https://github.com/hiennguyen92/flutter_callkit_incoming/blob/master/PUSHKIT.md

@hiennguyen92
is there away to show my app after the user accepted the call from callkit screen??
i'm seriously in need of this solution now


Library release removal request

Library name
Mintrix
Version to remove
1.0.3

Hi @janikheiler. I am confirming your request.
Unlike submissions, this type of request is still handled manually. The Library Manager index maintainer occasionally comes through to clear all the outstanding requests. They will close this issue when it is done. You will get a notification from GitHub at that time.
After that, you can monitor the indexing of the library via its dedicated logs web page.
Information about that here:
https://github.com/arduino/library-registry/blob/main/FAQ.md#can-i-check-on-library-releases-being-added-to-library-manager

Done:
2024/05/13 13:58:27 Loaded 6907 libraries from DB
Removing<EMAIL_ADDRESS>Success!


Add the X-Smartstack-Source header to all services

This will add the Source header to all service backends and allow callers to identify themselves to the callee. We will be using this to identify calling services inside Apollo, but the applications are endless.
Post this, we can also deprecate X-Source-Id as having a smartstack namespace is more consistent.
We had already discussed doing this when we were enabling the proxied_through configuration for Casper but decided to control the blast radius. But now, with Apollo's need, it seems like a good time for a wider rollout.

I will test this by creating a custom package and rollout gently across a couple of devboxes first and then stage, and finally prod.

Looks good to me as long as we're OK with the new header being returned on /status, as this used to be specifically excluded.

LG2M.


Fine grained SELinux profile for launcher

#1205 wsa about an SELinux issue spc_t was used to grant enough privileges to do whatever we need.
It is probably better to have a more fine grained profile.

/remove-lifecycle rotten

/remove-lifecycle rotten

/reopen

/remove-lifecycle rotten

I believe this is fixed with https://github.com/kubevirt/kubevirt/pull/2468


Remove default props in header and DatePicker.JS

In last update of expo sdk, there is a warning
ERROR  Warning: Header: Support for defaultProps will be removed from function components in a future major release. Use JavaScript default parameters instead.
ERROR  Warning: DatePicker: Support for defaultProps will be removed from function components in a future major release. Use JavaScript default parameters instead.

Hi I spent few days trying to fix that and I could get a warn free version changing the code base I will keeping that in another repository till they pull this fix....


[Bug] Different key actions in two editors

Reproducible in vscode.dev or in VS Code Desktop?

[X] Not reproducible in vscode.dev or VS Code Desktop

Reproducible in the monaco editor playground?

[ ] Not reproducible in the monaco editor playground

Monaco Editor Playground Code
var editor = monaco.editor.create(document.getElementById('container'), {
	value: "function hello() {\n\talert('Hello world!');\n}",
	language: 'javascript'
});

var editor2 = monaco.editor.create(document.getElementById('container2'), {
	value: "function hello() {\n\talert('Hello world!');\n}",
	language: 'javascript'
});

editor.addCommand(monaco.KeyCode.F9, function () {
	alert('F9 pressed in editor!');
});

editor2.addCommand(monaco.KeyCode.F9, function () {
	alert('F9 pressed in editor2!');
});

editor2.addCommand(monaco.KeyCode.F8, function () {
	editor2.getModel().setValue('console.log("Hello world");');
});

Actual Behavior
When having two editors in the same page, if one includes an action for the e.g.F9 key event and the other one needs a different behavior for the same key, it currently overrides the previous one for the both editors. Besides, if one requires a key event that the other doesn't, it is now not possible: both editors need to have the same key commands.
For instance, in the example below, editor2 adds a key binding for F8 that is not supposed to work in editor, but it does. The F9 event also displays a dialog with "F9 pressed in editor2!" regardless of where it was pressed.
Playground code that reproduces the issue:
var editor = monaco.editor.create(document.getElementById('container'), {
	value: "function hello() {\n\talert('Hello world!');\n}",
	language: 'javascript'
});

var editor2 = monaco.editor.create(document.getElementById('container2'), {
	value: "function hello() {\n\talert('Hello world!');\n}",
	language: 'javascript'
});

editor.addCommand(monaco.KeyCode.F9, function () {
	alert('F9 pressed in editor!');
});

editor2.addCommand(monaco.KeyCode.F9, function () {
	alert('F9 pressed in editor2!');
});

editor2.addCommand(monaco.KeyCode.F8, function () {
	editor2.getModel().setValue('console.log("Hello world");');
});

Expected Behavior
Two or more editors should be able to have different key bindings.
Additional Context
Since version 0.32.0, it is not possible to have two editors in the same page with different key actions. It worked fine in previous versions. Has this feature been removed or is it a bug?

duplicate of #2947

Closing, because this seems to be a duplicate


Remove workdir does not work when finish step not enabled

For this quite common use case (check which tests would be run) workdir is not removed:
tmt run -rv discover

User needs to do:
tmt run -rf discover finish

I guess explicitly specifying the finish step should not be necessary.

@psss and @lukaszachy, since we have an option PLAN_SKIP_WORKTREE_INIT now while fixing issue 1061, can we use the similar approach to fix this issue?
# Option to skip to initialize work tree in plan
PLAN_SKIP_WORKTREE_INIT = 'plan_skip_worktree_init'

I always understood it as 'tmt run process is finished' not 'step called finish was used'

I didn't expect that -r (as run option) depends on 'finish' plugin being run.
However we can have discussion what is meant by finished in tmt run --help's "Remove the workdir when test run is finished"

From the code of tmt/cli.py#L223,
@click.option(
    '-r', '--rm', '--remove', 'remove', is_flag=True,
    help='Remove the workdir when test run is finished.')

(from my understanding), it means if we specify -r in tmt run ..., the workdir should be removd.

Q1: And the workdir means /var/tmp/tmt/run-NNN?
Q2: If yes, that means user doesn't care about the test output including log.txt in it. @psss, is there a typical application scenario to run tmt run -r discover?


Invitation link expires too quickly

We've had many issues where the invited person didn't change their password inmediately.

a) change the expiration deadline in config (auth/passwords/users/invite_expire)
b) modify the email description: if the invite has expired, request a new token at this link: password forget page.


Adds support for var in x to y

Fixes https://github.com/wixoaGit/OpenDream/issues/260

Reviews addressed and it survives basic testing.


bug: opentrons_simulate cannot read custom labware from default app directory

Not so much a bug as a question: Where am I supposed to put custom labware? The GUI wants it in ~/.config/Opentrons/labware/custom_10_tuberack_10x15ml.json but the simulator wants it in ~/.opentrons/labware/v2/custom_definitions/quin/custom_10_tuberack_10x15ml/1.json.
I have read through every piece of documentation I could find on custom labware, but none seem to specify where to actually put the labware files:
https://github.com/Opentrons/opentrons/tree/edge/labware-designer
https://support.opentrons.com/en/articles/3136504-creating-custom-labware-definitions
https://support.opentrons.com/en/articles/3136501-what-is-a-labware-definition
https://support.opentrons.com/en/articles/1820316-creating-custom-labware-definitions-using-python-protocol-apiv1
https://docs.opentrons.com/v2/new_protocol_api.html#module-opentrons.protocol_api.labware
https://support.opentrons.com/en/articles/2687694-get-started-python-api-onboarding-protocol-tutorial

Hi @MarcelRobitaille, thanks for your question. I agree that this is a frustrating part of the Opentrons system. To get you going, though:

For Protocol Designer protocols, all you need to do is upload the custom labware definitions via Protocol Designer and you are set
For Python protocols, add them via the Opentrons App (to the default location or whatever location you have selected via the GUI)
To simulate Python protocols with custom labware, use the -L, --custom-labware-path option of opentrons_simulate and enter the custom labware directory your app is set up to use

See opentrons_simulate --help for more details

If you add custom labware to the app, you must upload your Python protocol via the app, too. This is due to a pretty annoying limitation in robot's current protocol upload system. We're replacing this system over the next few releases, but if that limitation is a problem now, I would recommend reaching out via support chat for a different solution (feel free to reference this GH thread so I can fill in the support team).
Keeping this ticket open as a "documentation and experience needs improvement" issue

Thank you for your detailed answer.
I am still getting the same error with -L ~/.config/Opentrons/labware. Is it still looking for ~/.config/Opentrons/labware/namespace/name/version.json? Right now, my ~/.config/Opentrons/labware has no subfolders.
I understand that this is a big project and that good documentation is hard. Maybe for the short term, the simulate command could give some extra info in the error message?
Maybe instead of:
opentrons.protocols.execution.errors.ExceptionInProtocolError: FileNotFoundError [line 23]: Labware "custom_15ml_vial_rack" not found with version 1 in namespace "quin"

something like this:
Could not find "/path/to/where/the/file/is/expected". Maybe you need to use the -L flag?

Still no luck. I have a copy of my labware definition in ~/.config/Opentrons/labware/custom_15ml_vial_rack.json and another in ~/.config/Opentrons/labware/quin/custom_15ml_vial_rack/1.json.
The only error I am getting is the following, suggesting that it is still only looking in ~/.opentrons....
FileNotFoundError: [Errno 2] No such file or directory: '/home/marcel/.opentrons/labware/v2/custom_definitions/quin/custom_15ml_vial_rack/1.json'

MLM - not an immediate fix

Hi, there. I'm having the same problem.
input:
opentrons_simulate.exe Extracao_Bio_Gene_96.py --custom-labware-path C:\Users\enrico.gimenez\AppData\Roaming\Opentrons\labware
output:
FileNotFoundError [line 40]: Labware "CUSTOM LABWARE NAME" not found with version 1 in namespace "separation plate".
Is there any recommendation for this? I need to test it in siilco before running on equipament.
Thank you.

Closing:

The original question of "where do I put custom labware" has been answered, and this is documented in opentrons_simulate --help.
I'm not sure why that wasn't working for @MarcelRobitaille, but I've just tested it and it appears to be working now. It's been a while, so there definitely might have been a bug that got fixed at some point.
I suspect it wasn't working for @GimenezEGT because of a mistake in their load_labware() syntax. Their error message says namespace "separation plate", and I suspect "separation plate" was meant to be provided for the label argument, not the namespace argument.


[Bug] Image field cannot be used with big sized image

Bug report
What I did
I made a crud controller using image field. Here's the image field's declaration:
CRUD::field('featured_image')
            ->type('image')
            ->label('Featured Image')
            ->crop(true)
            ->aspect_ratio(1.96)
            ->disk('public');

What I expected to happen
Image cropped and uploaded as usual
What happened
for some reason when I use images with big size or big resolution, it returns error 404 method not found for POST /admin/{entity}/{primary_key}

What I've already tried to fix it

resize the image to small resolution (around 700-800px width) so backpack won't return 404 error. (always works)
convert the image to .jpg (sometimes still return 404 error, intermittent)

And also, this is error is not showing in my local machine. So this is either because of server error, connection (images took some time to upload to server, unlike in localhost), or the particular image problem
Backpack, Laravel, PHP, DB version
When I run php artisan backpack:version the output is:
Local:
PHP VERSION:
PHP 7.4.5 (cli) (built: Apr 14 2020 16:17:34) ( ZTS Visual C++ 2017 x64 )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
LARAVEL VERSION:
v8.19.0@f5f331cee60f1bbe672503b7eb9ba5b22b2ceacb
BACKPACK VERSION:
4.1.30@62856b1f01fc3e05c80140fc22f85ea2aac8368c
Server:
PHP VERSION:
PHP 7.4.13 (cli) (built: Nov 25 2020 21:00:01) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.13, Copyright (c), by Zend Technologies
LARAVEL VERSION:
v8.19.0@f5f331cee60f1bbe672503b7eb9ba5b22b2ceacb
BACKPACK VERSION:
4.1.30@62856b1f01fc3e05c80140fc22f85ea2aac8368c

I haven't got free time to inspect this, I'll add some more information later if I've found something useful

I haven't got free time to inspect this, I'll add some more information later if I've found something useful

Hi @mahasadhu!
The error looks like to be a server limitation, I tried to reproduce the error, first I tried to upload an image with 39Mb, 8000x5350px, and it worked nice (JPG and PNG).
Since this field works by generating the base64 of the image, it has a huge impact on server memory and post max size.
So by scale down any of those php variables post_max_size and memory_limit on php.ini I was able to blow up the server.
Can you please make sure your server has high values on this settings and tell us the results?

Hi @mahasadhu!
The error looks like to be a server limitation, I tried to reproduce the error, first I tried to upload an image with 39Mb, 8000x5350px, and it worked nice (JPG and PNG).
Since this field works by generating the base64 of the image, it has a huge impact on server memory and post max size.
So by scale down any of those php variables post_max_size and memory_limit on php.ini I was able to blow up the server.
Can you please make sure your server has high values on this settings and tell us the results?

hi @promatik
Yes I've tried to change the post_max_size , upload_max_filesize and memory_limit on php.ini to like 1GB but no luck.
Other thing that I've tried is to change the intervention driver from gd to Imagick, but still no luck. But thanks to this issue I have to learn to install Imagick to the server, and now it feels quicker when resizing / compressing images 🤣
The main problem is, why does the backpack / laravel returns error 404 instead of like the server saying "oops, can't do dat" with 500ish error code.
It's like as if something is not initialized properly, most probably the routes (CMIIW).
Or maybe somewhere in the code there is a wild abort(404) code waiting to jump on us
But then again I'm sorry I can't provide more information regarding this issue yet.

hi @promatik
Yes I've tried to change the post_max_size , upload_max_filesize and memory_limit on php.ini to like 1GB but no luck.
Other thing that I've tried is to change the intervention driver from gd to Imagick, but still no luck. But thanks to this issue I have to learn to install Imagick to the server, and now it feels quicker when resizing / compressing images 🤣
The main problem is, why does the backpack / laravel returns error 404 instead of like the server saying "oops, can't do dat" with 500ish error code.
It's like as if something is not initialized properly, most probably the routes (CMIIW).
Or maybe somewhere in the code there is a wild abort(404) code waiting to jump on us
But then again I'm sorry I can't provide more information regarding this issue yet.

Oh! And sometimes (highly less frequent), the error is 419 session expired, but when I refresh the page the session is still there.
Sorry I forgot to mention earlier

Oh! And sometimes (highly less frequent), the error is 419 session expired, but when I refresh the page the session is still there.
Sorry I forgot to mention earlier

@mahasadhu don't know if you use it or not, maybe laravel debugbar can help out a lot debugging this problem.
You can grab the specific past request that's returning 404 and analise everything on it.
Take a look at this sample;
https://user-images.githubusercontent.com/1838187/105618791-36021e80-5de3-11eb-81cc-5fba207af8cd.mp4

@mahasadhu don't know if you use it or not, maybe laravel debugbar can help out a lot debugging this problem.
You can grab the specific past request that's returning 404 and analise everything on it.
Take a look at this sample;
https://user-images.githubusercontent.com/1838187/105618791-36021e80-5de3-11eb-81cc-5fba207af8cd.mp4

@promatik Ah of course! why haven't I think of this 🤦♂
I used to use debugbar, but iirc it has some problems to the chart widget? So I haven't use debugbar for quite a while.
I will try it this week and I'll report you my findings, if any, hopefully
Thanks!

@promatik Ah of course! why haven't I think of this 🤦♂
I used to use debugbar, but iirc it has some problems to the chart widget? So I haven't use debugbar for quite a while.
I will try it this week and I'll report you my findings, if any, hopefully
Thanks!

Hello @mahasadhu
The debugbar bug with charts had already been fixed: https://github.com/Laravel-Backpack/CRUD/pull/3266
Best,
Pedro

Hello @mahasadhu
The debugbar bug with charts had already been fixed: https://github.com/Laravel-Backpack/CRUD/pull/3266
Best,
Pedro

Ah I see! Thank you for the info @pxpm

Ah I see! Thank you for the info @pxpm

@mahasadhu I'm going to close this issue for now, if you find out more about this please share with us 🙌
And if this is indeed a problem with backpack, we reopen the issue ✌

Sorry I haven't got any time to test thoroughly, thanks @promatik will reopen again when I got new info about this

hi @promatik
sorry I was quite busy last week, today I've just got time to install laravel debugbar to staging environment in server
And I found something. For some reason, when that error happened, laravel do not use the backpack routes (custom.php). Instead it loads the frontend routes (web.php file).

Here's the code in the web.php for the catch all route PageController
Route::get('{page}/{subs?}', ['uses' => '\App\Http\Controllers\Frontend\PageController@index'])
    ->where(['page' => '^(((?=(?!admin))(?=(?!\/)).))*$', 'subs' => '.*']);

So basically laravel was trying to find the manage slug from the frontend's PageController class, which is undefined.

HOWEVER, when I tried to comment out the {page}/{subs?} route, the error changed to 405

This is so strange, which part of the code redirects me to that unknown URL with GET method ?
It is only happening in the web server, I still cannot reproduce it in my local machine, even though I'm using the same big-sized image
server configuration:
php memory limit 512
post max size 256
upload max size 256

I found this in the rendered /edit page in backpack

And in the network tab,

Is that how backpack actually is telling the form method here?
Or am I missing something?

@promatik I found it!!
The problem was in PHP's apcu and opcache extension!
When I disabled those two extensions, the big image uploads normally
Additionally, in some shared hosting provider sometimes they use ModSecurity (https://modsecurity.org/). That also needs to be disabled in order the image fields to work.
What do you think about this @promatik ?
I'll report later when I found another conflicting things with Backpack

Hi @mahasadhu!
Great, glad you found it 🙌
I searched for it and makes some sense to be the root cause of the problem, both apcu, opcache are cache systems.

APCu is an in-memory key-value store for PHP. Keys are of type string and values can be any PHP variables. APCu only supports userland caching of variables.

OPcache improves PHP performance by storing precompiled script bytecode in shared memory, thereby removing the need for PHP to load and parse scripts on each request.

Since it's a cache system, the images are probably crossing that storage and for being so big it occupies a lot of space on RAM, and that explain the irregularity of situation, some times it breaks other it don't because the amount of available RAM on the machine also varies.
I'm not sure if it makes sense to add this to docs, because it's a rare problem, if anyone has it they may reach this post and find your answer 🙌
But I'll let @tabacitu decide on that.
Thank you for the time you spent on this @mahasadhu 🎉

No problem @promatik 🤝
Yea it could be, since the image field send the image as base64 string (CMIIW).
Understood, if you need me to update the issue title so it can be more easily searched, just tell me.
I've also tried to find how to disable those extensions programmatically, but so far no success 😅
I'll post later if I got any ways to work around it.
Thank you!

@mahasadhu end up creating the PR, thinking about it twice, it may help some 😅
https://github.com/Laravel-Backpack/docs/pull/239

Hello, I have the same issues. But I using docker. So where am I find apcu through Docker?

PHP version
PHP 8.1.0 (cli) (built: Nov 25 2021 20:22:22) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.0, Copyright (c) Zend Technologies
with Zend OPcache v8.1.0, Copyright (c), by Zend Technologies
with Xdebug v3.1.1, Copyright (c) 2002-2021, by Derick Rethans


Missing Features

Hi, I think this project lacks these features. Maybe we should add these. 🤔

[ ] Logger
[ ] Test
[ ] Action

we absolute should, the project is really not well written


Switch to own packaged version of pygtfs

Description:
Switch to own packaged version of pygtfs
This is the diff by @robbiet480 : https://github.com/jarondl/pygtfs/compare/master...robbiet480:fix-sqlite-multithreading
According to Robbie it is needed and was rejected upstream.
Related issue (if applicable): #7069

FYI, this is needed because SQLAlchemy complains if you attempt to use the same connection across threads. Here's the PR.
Thanks for handling this @andrey-git!

@andrey-git In a fit of insomnia i've taken another look at this and have determined a way for us to use the mainline version of PyGTFS. The only issue is that the project uses setuptools-scm which throws an error when trying to install a specific commit like https://github.com/jarondl/pygtfs/archive/f91ca234c19286e634b2d8b1ab27c78ad7b277f4.zip#pygtfs:
LookupError: setuptools-scm was unable to detect version for '/private/var/folders/6d/4n3mhsvx3ts7fmx4jb2zqw5r0000gn/T/pip-klo4fhu2-build'.

    Make sure you're either building from a fully intact git repository or PyPI tarballs. Most other sources (such as GitHub's tarballs, a git checkout without the .git folder) don't contain the necessary metadata and will not work.

    For example, if you're using pip, instead of https://github.com/user/proj/archive/master.zip use git+https://github.com/user/proj.git#egg=proj

Got any ideas to work around this? I think it would be better in practice to use the mainline dep instead of our own fork.
BTW, the change that allows this is to construct our own SQLite URL like sqlite:////Users/robbiet480/Repos/HomeAssistant/home-assistant/testConfig/gtfs/bart.sqlite?check_same_thread=False. That check_same_thread=False does the same thing as my forked repo commit.

We want to avoid non pypi dependencies.
If you can make it work with existing pypi package - awesome!

This is now the last non-pypi package.
I propose we merge this PR and then explore the possibility to use the upstream package.

@robbiet480 Kind ping on this :)

Hi!
The pypi upstream repo is outdated and does not work with newer gtfs format. Namely, I just encounter the the lib reporting invalid column type and exited, but in fact the upstream had already updated to deal with it.
The frozen fork here checked against only one route_types but the upstream gtfs has updated with an extended route types.
Probably update the frok with the newer upstream updates?


FEAT: Image of Projects expanded

Description
Currently, the images the project cards, in projects section,  have an expansion cursor but the feature is not yet implemented. This feature is important for improving the user experience, as it improves understand of the purpose of the project displayed.
Goals

Display a modal of the project image.
Make the modal responsive.

Modal added.
Bug
Have a UI bug in mobile devices. The size of image in this type of device gets broken. See:

The functionality works normally.

The problem was fixed but the images resolution in different devices is the main problem now. Issue closed cause the this FEATURE is implemented without bugs.


Fixed OS language issue in setlocale function

Hey,
I couldnt manage the use module and after some research I saw a bug that occurs in people with different os languages. I also found that there is an open issue about this (https://github.com/israel-dryer/ttkbootstrap/issues/505)
After a bit working I fixed the issue by getting os language with ctypes module and placing it.

This doesn't work on OSX
Traceback (most recent call last):
  File "/test.py", line 11, in <module>
    import ttkbootstrap as tb
  File "venv/lib/python3.10/site-packages/ttkbootstrap/__init__.py", line 3, in <module>
    from ttkbootstrap.widgets import *
  File "venv/lib/python3.10/site-packages/ttkbootstrap/widgets.py", line 14, in <module>
    from ttkbootstrap.dialogs import Querybox
  File "/venv/lib/python3.10/site-packages/ttkbootstrap/dialogs/__init__.py", line 1, in <module>
    from ttkbootstrap.dialogs.dialogs import *
  File "venv/lib/python3.10/site-packages/ttkbootstrap/dialogs/dialogs.py", line 536, in <module>
    class DatePickerDialog:
  File "=venv/lib/python3.10/site-packages/ttkbootstrap/dialogs/dialogs.py", line 566, in DatePickerDialog
    windll = ctypes.windll.kernel32
AttributeError: module 'ctypes' has no attribute 'windll'


Getting gibberish predictions when using recurrent LSTM and arrays of strings as output training data

I have a bunch of sentences and I want to generate tags for each one. I have my data which are simple:
[{
 input: "Buy tickets for opera",
 output: ['errands', 'orders']
},
{
 input: "Clean garage",
 output: ['errands', 'home']
},
....

I am training the model simply with :
const network = new brain.recurrent.LSTM();

  network.train(trainingData, {
    (error) => console.log(error),
    iterations: 1000,
  });

When I run a:
network.run('Some random text');

sometimes I get an array with a correct tag, but other times it returns gibberish with random characters or the tags joined together in a string, for example the sentence "Service my XBox dvd drive" returns this output:
["sco comhermer fililys.AAouto afamily.shopping"]

I read somewhere that LSTM cannot classify so I am ok with this but what do you suggest?
Will something like making a matching table with numbers and tag words work? Something like:
1: orders
2: errands
3: family
4: personal
.....

and then feeding the output of my training data with numbers ?
Is it something not expected to work as I am hoping to or is it a bug?

same for me, i'm passing strings in both , input and output object, but when run it, it gives mixed/gibrish output.

The gibberish is probably due to 2 reasons, the model learns to read and write character by character an not word by word, the second I would say is that 1,000 iterations seems quite low for training.
For now I would recommend splitting your input into words, with a space after each, and same for your output, add a space so they don't collapse like "errandsorders".
I've filled an issue for a feature request here #871 since I think this is a recurrent issue that is not so well documented.


[SPARK-27194][SPARK-29302][SQL] Fix the issue that for dynamic partition overwrite a task would conflict with its speculative task

What changes were proposed in this pull request?
For dynamic partition overwrite, its working dir is .spark-staging-{jobId}.
Task file name formatted part-$taskId-$jobId$ext(regardless task attempt Id).
Each task writes its output to:

.spark-staging-{jobId}/partitionPath1/taskFileName1
.spark-staging-{jobId}/partitionPath2/taskFileName2
...
.spark-staging-{jobId}/partitionPathN/taskFileNameN

If speculation is enabled, there may be several tasks, which have same taskId and different attemptId, write to the same files concurrently.
For DistributedFileSystem, an exception like LeaseExpiredException): No lease on would be thrown.
In this PR, we fix this issue with the solution below:

set a working path under staging dir named partitionPath-attemptId.
after task completed, rename partitionPath-attemptId/fileName to partitionPath/fileName

Why are the changes needed?
For dynamic partition overwrite, a task may conflict with its speculative task.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Added UT.

cc @cloud-fan  @advancedxy @viirya
Can you help take a look? Thanks in advance.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

gentle ping @cloud-fan  @advancedxy  @viirya

gentle ping @cloud-fan @advancedxy @viirya Could you help take a look? Thanks in advance!

Jenkins, okay to test.

retest this please.

ok to test

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/20011/
Test PASSed.

Test build #115200 has started for PR 26339 at commit 286a87f.

Test build #115200 has finished for PR 26339 at commit 286a87f.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/115200/
Test FAILed.

Test build #115221 has started for PR 26339 at commit 4c18493.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/20037/
Test PASSed.

Test build #115221 has finished for PR 26339 at commit 4c18493.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/115221/
Test PASSed.

@dongjoon-hyun  test passed. Could you help take a look? thanks in advance!

gentle ping @dongjoon-hyun  @dbtsai @viirya

@turboFei  do we have test cases to capture the changes.

@turboFei do we have test cases to capture the changes.

I'll try my best to think how to add UT.

Can we have a test case for this PR?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

ok to test

Test build #120566 has started for PR 26339 at commit 4c18493.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25270/
Test PASSed.

Test build #120566 has finished for PR 26339 at commit 4c18493.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120566/
Test PASSed.

@dongjoon-hyun @turboFei Is this PR still being worked on? We are having similar issues in our platform for a while, it would be great if we can get this fixed soon.

I will follow it. But I am confused that how to add an UT.
PS: I am a little busy this week.

Test build #120775 has started for PR 26339 at commit 79d9443.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25473/
Test PASSed.

tried to add an ut.
But I can ensure that a speculation task would be launched. Thanks

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25481/
Test PASSed.

cc @Ngone51

Test build #120782 has started for PR 26339 at commit 9c9f39d.

Test build #120775 has finished for PR 26339 at commit 79d9443.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120775/
Test FAILed.

@turboFei I don't think the UT would validate the fix. Following is a suggestion with reference to an existing test on speculative execution. https://github.com/apache/spark/blob/474b1bb5c2bce2f83c4dd8e19b9b7c5b3aebd6c4/core/src/test/scala/org/apache/spark/scheduler/TaskSetManagerSuite.scala#L782
Once you have enabled the above config's you need to ensure that there are multiple tasks triggered as part of UT, which can be achieved by increasing the data and associated partitions in the UT. I hope the suggestion will be helpful for your UT.

@ramesh-muthusamy Thanks

Test build #120835 has started for PR 26339 at commit c82ada9.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25532/
Test PASSed.

Test build #120835 has finished for PR 26339 at commit c82ada9.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120835/
Test PASSed.

Test build #120836 has started for PR 26339 at commit bdb90ca.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25533/
Test PASSed.

Test build #120836 has finished for PR 26339 at commit bdb90ca.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120836/
Test PASSed.

cc @dongjoon-hyun  @Ngone51 @dbtsai

tried to add an ut.
But I can not ensure that a speculation task would be launched. Thanks

I guess even decreasing spark.speculation.quantile may be to 0.20 would also increase the chance of speculating tasks though you have set the spark.speculation.multiple to 0.0 anyway.

Also do you think it would be better to have this test under org.apache.spark.sql.SqlQuerySuite (seems test related to datasource tables are grouped here) as it seems to happen only in the case of InsertIntoHadoopFsRelationCommand code flow and not with hive tables?

Also do you think it would be better to have this test under org.apache.spark.sql.SqlQuerySuite (seems test related to datasource tables are grouped here) as it seems to happen only in the case of InsertIntoHadoopFsRelationCommand code flow and not with hive tables?

Yes, it is better to put under org.apache.spark.sql.SqlQuerySuite.
But is would override the sparkConf method and affects all tests under org.apache.spark.sql.SqlQuerySuite .

Test build #120870 has started for PR 26339 at commit c5de9d6.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25563/
Test PASSed.

Test build #120870 has finished for PR 26339 at commit c5de9d6.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120870/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25582/
Test PASSed.

Test build #120890 has started for PR 26339 at commit 4bb3b32.

Test build #120890 has finished for PR 26339 at commit 4bb3b32.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120890/
Test PASSed.

I may miss something here but can't we just delete the file if it exists at:
https://github.com/apache/spark/blob/2ac6163a5d04027ef4dbdf7d031cddf9415ed25e/core/src/main/scala/org/apache/spark/internal/io/HadoopMapReduceCommitProtocol.scala#L109
?

No, if speculation is not enabled, we can delete it directly, because there is no possible to exist two concurrent tasks which has same output file name.
Two tasks with same taskId but different attempt id would write a same file.
https://github.com/apache/spark/blob/2ac6163a5d04027ef4dbdf7d031cddf9415ed25e/core/src/main/scala/org/apache/spark/internal/io/HadoopMapReduceCommitProtocol.scala#L140-L146
But when speculation is enabled, if we delete it directly, it would cause this task failed, then I think it would also launch a new speculation task.

I see. I missed case of the concurrent  speculative task.

If the issue is caused by conflict file name, why it is only specific to dynamicPartitionOverwrite?

Spark use Hadoop's FileOutputCommitter as OutputCommitter class normally.
There is an working directory, for spark, it is _temporary/0'. Each task has an unique output, like _temporary/0/taskAtttempt_0**/'.
Each task also has working directory like _temporary/0/taskAttempt_0**/_temporary.
Each task invoke commitTask to commit its output, for algorithm 1, it would commit output to _temporary/0/taskAttempt_**, and for algorithm 2, it would commit output to outputPath directly.
But for dynamic partition overwrite, Spark set an unique output named .spark-staging-${UUID}under tablePath.
For each task, its output could be .spark-staging-${UUID}/partitionPath1/fileName1, .spark-staging-${UUID}/partitionPath2/fileName2 ... and  .spark-staging-${UUID}/partitionPathn/fileNamen.
It means that, all tasks share the same working directories.

https://github.com/apache/spark/blob/8ab2a0c5f23a59c00a9b4191afd976af50d913ba/core/src/main/scala/org/apache/spark/internal/io/HadoopMapReduceCommitProtocol.scala#L104
https://github.com/apache/spark/blob/8ab2a0c5f23a59c00a9b4191afd976af50d913ba/core/src/main/scala/org/apache/spark/internal/io/HadoopMapReduceCommitProtocol.scala#L127
In fact, there are three cases.

dynamic partition overwrite
withAbsOutputPath
non-dynamic partition overwrite

As mentioned above, for non-dynamic partition overwrite, each task has an unique working directory.
For the case with abs output path, the task output file name is also unique.
https://github.com/apache/spark/blob/8ab2a0c5f23a59c00a9b4191afd976af50d913ba/core/src/main/scala/org/apache/spark/internal/io/HadoopMapReduceCommitProtocol.scala#L134
So, this is an issue only for dynamic partition overwrite.
@Ngone51  @venkata91

I see. Thanks for your explanation!

Test build #120949 has started for PR 26339 at commit 87d043d.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25641/
Test PASSed.

Test build #120949 has finished for PR 26339 at commit 87d043d.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120949/
Test FAILed.

Test build #120957 has started for PR 26339 at commit fdfa62a.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25649/
Test PASSed.

Test build #120957 has finished for PR 26339 at commit fdfa62a.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120957/
Test FAILed.

Test build #120968 has started for PR 26339 at commit dd321f4.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25659/
Test PASSed.

Test build #120968 has finished for PR 26339 at commit dd321f4.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120968/
Test PASSed.

Test build #121160 has started for PR 26339 at commit 77cf230.

Hi @Ngone51
I have tried to add an ut for HadoopMapReduceCommitProtocol.
Could you help have a check? Thanks in advance~

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25847/
Test PASSed.

Test build #121160 has finished for PR 26339 at commit 77cf230.

This patch fails Scala style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121160/
Test FAILed.

Test build #121161 has started for PR 26339 at commit faf5f74.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25848/
Test PASSed.

Test build #121161 has finished for PR 26339 at commit faf5f74.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121161/
Test PASSed.

gentle ping @Ngone51  @cloud-fan

IIUC, only one task attempt should commit at a time. If so, will there still be conflicts with task speculation when the first task commit successfully ?

IIUC, only one task attempt should commit at a time. If so, will there still be conflicts with task speculation when the first task commit successfully ?

Got, It seems that we need judge whether the commit operation performed in SparkHadoopMapRedUtil.commitTask.
Then we need revert the performed commit status if some exception happened when renaming dynacmicStagingTaskFiles.

I will fix the document and add UTs later.

Test build #121257 has started for PR 26339 at commit 34bd11b.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25944/
Test PASSed.

Test build #121257 has finished for PR 26339 at commit 34bd11b.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121257/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25966/
Test PASSed.

Revert to origin code.
It seems that let all tasks, which have same stageId and taskId, to rename their dynamic staging task files is the best plan.
Other wise, it is too complex, and may cause data loss.

Test build #121280 has started for PR 26339 at commit faf5f74.

Test build #121280 has finished for PR 26339 at commit faf5f74.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121280/
Test FAILed.

@turboFei
I'm ok with the original design. Please add more tests to cover failure scenarios and update the PR description with explanation of when and why there will be conflicts.

Thanks, I will try my best to complete the test cases. @manuzhang

Retest this please.

Test build #121437 has started for PR 26339 at commit faf5f74.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26121/
Test PASSed.

Test build #121437 has finished for PR 26339 at commit faf5f74.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121437/
Test PASSed.

I just check two add a test for rename failed case.
It seems that, if an exception thrown or task aborted when renaming dynamicStagingFiles.
The job would abort.
https://github.com/apache/spark/blob/74aed8cc8b94cb459ff12a6e8f1f15cb7aea8c40/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/FileFormatWriter.scala#L198-L227

@turboFei
Then I think it's still valuable to add a "expect exception" test to cover the code path.

Test build #121493 has started for PR 26339 at commit a4012d8.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26177/
Test PASSed.

Thanks, have added a UT for renaming failed during renaming dynamic staging files to final files.

cc @cloud-fan could you please take a look at this?

Test build #121493 has finished for PR 26339 at commit a4012d8.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class RenameFailedForFirstTaskFirstAttemptFileSystem extends RawLocalFileSystem
class PartitionedSpeculateRenameFailedWriteSuite extends QueryTest with SharedSparkSession

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121493/
Test FAILed.

Test build #121503 has started for PR 26339 at commit fdeeb5c.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26187/
Test PASSed.

Test build #121503 has finished for PR 26339 at commit fdeeb5c.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121503/
Test FAILed.

Test build #121509 has started for PR 26339 at commit 59d28b0.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26193/
Test PASSed.

Test build #121509 has finished for PR 26339 at commit 59d28b0.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121509/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26209/
Test PASSed.

Test build #121525 has started for PR 26339 at commit 810e37d.

Test build #121525 has finished for PR 26339 at commit 810e37d.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class PartitionedRenameFailedWriteSuite extends QueryTest with SharedSparkSession

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121525/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26222/
Test PASSed.

It seems that, if rename failed and an exception thrown or task aborted when renaming dynamicStagingFiles. The job would abort.

Sorry for this mistake information, job abort because the master is "local[2]" in my local and task would not retry.
https://github.com/apache/spark/blob/f1fde0cc2272d5c04cf25960be1ebd46001c5354/core/src/main/scala/org/apache/spark/SparkContext.scala#L2879-L2888
I have fixed the UT.
Thanks a lot.

Test build #121540 has started for PR 26339 at commit f23c442.

It seems that, if rename failed and an exception thrown or task aborted when renaming dynamicStagingFiles. The job would abort.

Sorry for this mistake information, job abort because the master is "local[2]" in my local and task would not retry.
https://github.com/apache/spark/blob/f1fde0cc2272d5c04cf25960be1ebd46001c5354/core/src/main/scala/org/apache/spark/SparkContext.scala#L2879-L2888
I have fixed the UT.
Thanks a lot.

Test build #121541 has started for PR 26339 at commit 2ba1b03.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26223/
Test PASSed.

Test build #121540 has finished for PR 26339 at commit f23c442.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class RenameFailedDynamicPartitionedWriteSuite extends QueryTest with SQLTestUtilsBase
class SpeculateDynamicPartitionedWriteSuite extends RenameFailedDynamicPartitionedWriteSuite

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121540/
Test FAILed.

Test build #121541 has finished for PR 26339 at commit 2ba1b03.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121541/
Test FAILed.

Test build #121542 has started for PR 26339 at commit c919502.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26224/
Test PASSed.

Test build #121542 has finished for PR 26339 at commit c919502.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121542/
Test PASSed.

cc @cloud-fan  @Ngone51 @manuzhang

gentle ping @cloud-fan

@dongjoon-hyun @cloud-fan @Ngone51 @manuzhang can one of you please take a look? This is a critical issue and its causing issues everyday in our production. Thanks.

thanks a lot @venkata91  will address it.

Test build #121825 has started for PR 26339 at commit 5e89d2d.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26499/
Test PASSed.

Will apply this solution only with both dynamic partition overwrite and speculation are enabled.

Test build #121827 has started for PR 26339 at commit 9ffe59c.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26501/
Test PASSed.

Test build #121825 has finished for PR 26339 at commit 5e89d2d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121825/
Test PASSed.

Test build #121827 has finished for PR 26339 at commit 9ffe59c.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121827/
Test FAILed.

Test build #121837 has started for PR 26339 at commit 1609841.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26511/
Test PASSed.

Test build #121837 has finished for PR 26339 at commit 1609841.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121837/
Test PASSed.

gentle ping @cloud-fan @dongjoon-hyun @Ngone51

Test build #121859 has started for PR 26339 at commit 7533336.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26531/
Test PASSed.

Test build #121859 has finished for PR 26339 at commit 7533336.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121859/
Test PASSed.

Test build #121932 has started for PR 26339 at commit 9c4532e.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26605/
Test PASSed.

LGTM @turboFei . Except for the build checks issues. @cloud-fan @Ngone51 @dongjoon-hyun Can some one please review this change? This is critical for us in production.

Test build #121939 has started for PR 26339 at commit 187e596.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26612/
Test PASSed.

Test build #121932 has finished for PR 26339 at commit 9c4532e.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121932/
Test PASSed.

Even I need this in production, Thanks for the work so far

cc @gatorsmile @HyukjinKwon

Test build #121939 has finished for PR 26339 at commit 187e596.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121939/
Test FAILed.

Test build #121958 has started for PR 26339 at commit 9c4532e.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26633/
Test PASSed.

Test build #121958 has finished for PR 26339 at commit 9c4532e.

This patch fails build dependency tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121958/
Test FAILed.

Test build #121959 has started for PR 26339 at commit 4e162c5.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26634/
Test PASSed.

Test build #121959 has finished for PR 26339 at commit 4e162c5.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121959/
Test FAILed.

Test build #121974 has started for PR 26339 at commit 7211e27.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26650/
Test PASSed.

Test build #121974 has finished for PR 26339 at commit 7211e27.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121974/
Test FAILed.


attempted fix for displaying current version on preferences view

Hi @pedrommcarrasco
I took a stab at #37, hope at least some of it is useful
What was done?

Added: I added a new label to your PreferencesWindowController called currentVersionLabel and a new label to the .xib file as well
Updated: I updated setupLabels and added this line currentVersionLabel.stringValue = "Version: \(manager.currentVersion)". As you may have guessed, I also added the currentVersion var to your manager object. The currentVersion var gets its info from the main bundle and displays version and build number from there.

Why?
This was mainly done because...well because you asked for help and because Hacktoberfest is upon us 😉
Screenshots
I've attached a screenshot of how this looks,  when running your Canvas sandbox

I'm all up for suggestions as to where the label should be placed, I just placed it at the bottom, below the "contact" info because I felt it made most sense to add it there. If you disagree, just say so... your project, your rules 😄
Observation
As you can see, this works with the Canvas project. However, if I built the bundle itself and added that to my own preferences on my Mac, it didn't give me version 2.0.1 (3) as I would have expected. Instead it gave me version 14.0 (if memory serves correct). Now I don't know if this is because I added the bundle in an un-official way or what the cause is, but you might want to look into it...sorry 🤷♂
Hope it is useful to you, thank you for making this screensaver 🚀

Great work overall @pbodsk and thanks for joining us!
Also, your project, your rules 😄 🙅♂
It's more,  our project, our rules! 👌

Left some comments here and there. We can merge this after! 🎉

Hi @pedrommcarrasco
Thanks for the latest batch of review comments. I'll look them over and implement them tonight after work.

@pedrommcarrasco
There we go, the latest commit contains:

new assets all over
: has been removed from Version string
currentVersion has been marked as lazy and now looks like this:

lazy var currentVersion: String = {
    // We are running from the Brooklyn screensaver itself
    if let screensaverBundle = Bundle(identifier: Constant.bundleId) {
        return screensaverBundle.infoDictionary?[Constant.versionKey] as? String ?? ""
    } else {
        // We are running from canvas, lets return the version number from there...just to return something
        return Bundle.main.infoDictionary?[Constant.versionKey] as? String ?? ""
    }
}()

I had to move it out of the extension as the ever so friendly compiler told me that lazy variables could not be part of an extension

Everything looks good to me @pbodsk 👍
Welcome aboard and hope you enjoyed going through Brooklyn's codebase. Thanks for taking the initiative and thanks for being so open to suggestions and feedback. See you around! 🙇

@pedrommcarrasco great thanks 🙌
You're welcome, working with your codebase was a pleasant experience. I mean, things are nicely separated and structured so...enjoyable.
Good luck onwards and yeah...see you around 👋


** Change formatting argument design and behavior **

NOTE that these changes will not be backwards compatible.
After using fmtster for a while, and considering as many future enhancements as I can, it seems that some modification of the design and behaviors make sense:

There appear to be about 5 major configuration categories, thinking about them by association and when they might be changed:

format (JSON, XML, etc.)

will not be changed during each recursive call (i.e. as fmtster calls itself for containers within containers)
may be changed by an app to switch (e.g. between JSON for debugging and XML for function)

unlikely to change style of each format once established (i.e. JSON style set up & used, then XML style set up & used, then JSON used, then XML used, etc.)

style

unlikely to be changed while using a given format (other than if the style isn't configurable enough, is there a use case for this?)
unlikely to be changed between uses of a format by the same app

tab

unlikely to be changed while using a given format (other than if the style isn't configurable enough, is there a use case for this?)
unlikely to be changed between uses of a format by the same app

indent

likely to be changed while using a given format (manual construction of heterogeneous output)
likely to be changed when switching between formats (for same reasons as previous)

brackets/braces

likely to be changed while using a given format (manual construction of heterogeneous output)
likely to be changed when switching between formats (for same reasons as previous)

Also, significant thought has been given to how to implement the style setting (Issue #15), and the above use of it has helped shape it a bit more. Plus some other issues (e.g. #19, #23) have been borne in mind.
With all of this in mind, the following behavior is being considered:

Group the tab setting with the remainder of the style (note they have a high correlation for modification above)
Add a format configuration setting to allow enable or disable of outermost brackets/braces
Implement the style setting (Issue #15) by adding a custom fmt::formatter<> for the (to be designed) structure (note that this will also remove the numerical union with the structure as discussed in issue #15, in lieu of a different method of optimization--see below)
Change the behavior of an empty format style parameter to reuse the previous style for a given format as the default

It was also considered that it might make sense to sort the configuration settings to move those more likely to be modified on individual calls to the front of the parameter list. This has been a conundrum since the start. While the most-likely-to-change-first order definitely looks better, my OCD is triggered by parameters saying "indent by 1 tab, that tab is 4 spaces, for a style that is this, and oh by the way, this is JSON."
So the proposed configuration format looks like this:
{  ARG NUMBER : FORMAT , STYLE , PER CALL PARMS , INDENT }
There is still no firm choice for how the FORMAT parameter will be specified, so empty and 0 both mean JSON, and no other values are allowed.
To support this design, recursive brace support (Issue #7) will need to be complete. This, coupled with behavior changes 3 & 4, will allow two different ways to specify the format STYLE:
fmtster::JSONStyle jsonStyle{};
fmtster::XMLStyle xmlStyle{}; // mythical

As one of the format parameters, so it can be changed on each call

std::map<string, string> container{};
fmt::format("{:,{}}", container, jsonStyle);
fmt::format("{:XML,{}}", container, xmlStyle);

In an explicit call to set the style:

fmt::format("{}", jsonStyle);
fmt::format("{:XML}, xmlStyle); // mythical

PER CALL PARMS is a catch-all for any settings that might be changed separately from others. For now, this is just a way of disabling braces/brackets around the outer container. The specific format needs to be determined. One way may be just with letters or symbols. Some possibilities:

b
-b
db
nb

INDENT is the same as before.
EDIT: Removed the following because they would make parsing more difficult when #7 is addressed:

{
-{
d{

EDIT 2: Swapped INDENT & PER CALL PARMS to more resemble the previous order (where PER CALL PARMS now replaces the separate tab specifier).

See work being done in https://github.com/HarmanFOSS/fmtster/tree/enhancement/27-new-JSON-style_union

PR merged


How do you interact with lumen & laravel?

I want to use it, but it's not good. There are a lot of bugs to lumen & laravel. please maintain and solve it, thanks!

Thank you @lpw685 for your feedback, first sorry for the delay. Yes this package still not yet tagged as stable. You can only use develop branch for now, use: composer require rinvex/attributes:dev-develop if should work smoothly even it's still in development, let me know if you've any issues.


Elevate Lightsource.prototype.testVisibility points

https://ptb.discord.com/channels/@me/914659610093318205/1045481119384084490

Fixed in v0.3.5.


Not displaying modified/new file coverage, only repo-wide

Title says it all, we're only getting the repo-wide total:

This PR adds two new files and their tests:

I'd be happy to provide sanitized logs or configs if needed.

I think this is happening because tests are done on package which is installed via pip, so coverage report has something like:

how are you running your coverage? can you include an example output?

I'm having the same issue, though in my case I think it's because I run my tests within a container. In the output from the action it shows:
git new files: [] modified files: ["bin/test"]
source: /app/name-of-app

Which I think means that it'll only consider things that have a prefix of '/app/name-of-app' as their filename in git, which nothing will have as that's the path within the container. (With 'name-of-app' being the top level directory I'd want reported on as that's where all the python files are based.
I think to cover all the cases, maybe add some more variables we can set on the action, such as allowing us to specify a prefix to remove from the reported paths to get a match to the paths in git?

gh action output in my case is:
git new files: [] modified files: [".github/workflows/python.yaml",".gitignore","Python/pyproject.toml","Python/random_forestry/forestry.py","Python/tests/test_constructor.py","Python/tests/test_forestry.py","Python/tests/test_forests_equality.py"]
source:

and filepaths in coverage.xml are like in comment above:
  ---------- coverage: platform linux, python 3.8.16-final-0 -----------
  Name                                                                                Stmts   Miss  Cover   Missing
  ------------------------------------------------------------------------------------------------------------------------------------
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/__init__.py                           2      0   100%
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/forestry.py                         336     71    79%   22, 323-325, 335-337, 340-344, 347-351, 354-365, 370, 384, 587, 598, 616, 632, 634, 636, 647, 669, 687, 689, 691, 702, 725, 732-767, 921-924, 977-994, 1006-1019, 1067, 1204-1206, 1256-1259, 1272-1273
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/preprocessing.py                    105     29    72%   14-22, 38, 48-66, 83, 88, 141, 153, 203, 220-227, 249
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/processed_dta.py                     25      0   100%
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/test.py                              30     30     0%   1-50
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/validators/__init__.py                8      0   100%
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/validators/base_validator.py         11      1    91%   15
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/validators/fit_validator.py         222     29    87%   46, 57, 82, 85, 88, 91, 101, 104, 107, 110, 118, 134, 137, 144, 156, 159, 164, 171, 214, 222, 237, 256, 273, 281, 284, 287, 301, 304, 310
  /tmp/tmp.PCzKULX5yI/venv/lib/python3.8/site-packages/random_forestry/validators/predict_validator.py      75      8    89%   21, 36, 55, 69, 95-98
  ------------------------------------------------------------------------------------------------------------------------------------
  TOTAL

so what I did in src/coverage.ts was to remove prefix Python/ from files reported by git, and then do regex on filepaths reported by coverage:
const regex = new RegExp(`.*filename=".*/${fileName}".*line-rate="(?<cover>[0-9]+[.]*[0-9]*)".*`)

Note .*/ in front of ${fileName}

For me the coverage report looks like:
Name                                                                                Stmts   Miss  Cover
-------------------------------------------------------------------------------------------------------------------------
name-of-app/__init__.py                                                                                3      0   100%
...

@dragonpaw can you try with altering relative_files in coverage config?
https://coverage.readthedocs.io/en/6.2/config.html#run

@dragonpaw can you try with altering relative_files in coverage config? https://coverage.readthedocs.io/en/6.2/config.html#run

Setting relative=true (in pyproject.toml in my case) did indeed fix it so that it now shows the per-file coverage stats.

Hi there,
I'm having the same problem. Tried the @dragonpaw solutions (and many others) but no good news for anybody.
Here's my repo:
https://github.com/llGines/checkCalcCoverage
Is a quite simple project, just for testing yours.
Many thanks.

Hi there,
I'm having the same problem. Tried the @dragonpaw solutions (and many others) but no good news for anybody. Here's my repo: https://github.com/llGines/checkCalcCoverage
Is a quite simple project, just for testing yours. Many thanks.

what worked for us:
Using the environment variable {Python_ROOT_DIR?}  provided by  actions/setup-python@v4
and setting source= ${Python_ROOT_DIR?}/**/site-packages/ :