video_player plugin can render a green bar for certain videos on certain Android devices

Certain videos can be rendered with a green bar on the right or bottom edge on certain Android devices. This never happens on iOS devices. I can repro this 100% on a Nexus 9.
The following code leads to the problem:
import 'package:flutter/material.dart';
import 'package:video_player/video_player.dart';

class VideoBarsHomePage extends StatefulWidget {
  @override
  _VideoBarsHomePageState createState() => _VideoBarsHomePageState();
}

class _VideoBarsHomePageState extends State<VideoBarsHomePage> {

  VideoPlayerController _videoPlayerController;

  @override
  void initState() {
    super.initState();

    _videoPlayerController = VideoPlayerController.asset("videos/beam_white.mp4");
    _videoPlayerController.setLooping(true);
    _videoPlayerController.play();
    _videoPlayerController.initialize();
  }

  @override
  void dispose() {
    _videoPlayerController.dispose();

    super.dispose();
  }

  @override
  Widget build(BuildContext context) {

    return Material(
        type: MaterialType.transparency,
        elevation: 0,
        child: Align(
            // align the card to the bottom
            alignment: Alignment.bottomCenter,
            child: Container(
              decoration: BoxDecoration(
                color: Colors.grey,
                borderRadius: BorderRadius.circular(16.0),
              ),
              height: 528.0,
              width: 416.0,
              child: Column(
                mainAxisAlignment: MainAxisAlignment.start,
                crossAxisAlignment: CrossAxisAlignment.stretch,
                children: <Widget>[
                  Expanded(
                      //child: VideoPlayer(_videoPlayerController)
                      /*child: Center(
                        child: AspectRatio(
                          aspectRatio: 1080.0 / 400.0,
                          child: Container(
                              width: 1080,
                              height: 400,
                              child: VideoPlayer(_videoPlayerController)
                          )
                        ),
                      )*/
                      child: FittedBox(
                        fit: BoxFit.contain,
                        child: Container(
                            width: 1080,
                            height: 400,
                            child: VideoPlayer(_videoPlayerController)
                        )
                      )
                  ),
                ],
              ),
            )
        )
    );
  }
}

Here is what the result looks like. A part of the video has been blacked out purposely for the purpose of sharing here. Pay attention to the green bar on the right side of the video.

I cannot upload the video here, but can provide it on demand. Thanks.

This might be related to https://github.com/google/ExoPlayer/issues/985
I haven't looked too much but it seems like a bug with how EXPO player renders video.

Might be worth trying https://github.com/flutter/plugins/pull/1754

@dannyvalentesonos Could you provide the video to reproduce the issue? I want to try to see if the PR fixes the issue.

We tested with the latest ExoPlayer you suggested @cyanglaz, and the problem is still present.
How should I share the video with you? We do not want to share the video publicly.
Thanks

@dannyvalentesonos I tried multiple our in house Nexus and couldn't reproduce the issue. May I ask what is the Android version of the device? Also, could you paste your flutter doctor -v here?

[✓] Flutter (Channel dev, v1.7.1, on Mac OS X 10.13.6 17G7024, locale en-US)
    • Flutter version 1.7.1 at /Users/danny.valente/Library/flutter/1.7.1-dev
    • Framework revision 04015b987b (2 weeks ago), 2019-06-04 07:01:52 -0700
    • Engine revision a63ef4cb4f
    • Dart version 2.3.2 (build 2.3.2-dev.0.0 b080e7c97a)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/danny.valente/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 10.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.0, Build version 10A255
    • CocoaPods version 1.5.3

[✓] iOS tools - develop for iOS devices
    • ios-deploy 1.9.4

[✓] Android Studio (version 3.4)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 36.1.1
    • Dart plugin version 183.6270
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)

[✓] Connected device (1 available)
    • iPhone 6 • D0446766-7491-4083-82A7-9901FE3CBC5A • ios • iOS 12.0 (simulator)

• No issues found!

I reproduce this on a Nexus 9 running Android 7.1.1 but we also reproduce this on almost all our Android devices we have, including a Pixel 1 running Android 9.

You have tried with my video and the code I pasted in the ticket?

Updates after my investigation today:
I have tried to create a sample Android App to mimic the process we render video on a Surface. It seems working fine. So I think it is not likely a bug from Exoplayer.

@dannyvalentesonos Yes, I am able to reproduce the issue now. Will keep investigating and keep you updated here.

After some more digging, I couldn't find any immediate solution. It probably require someone like @chinmaygarde who a lot more competent on gl texture than me to do some serious debugging. My suggestion to not block your release would be to maybe clip out this video by 5 pixel on the right. Something like(I am hard coding things you might want to do some calculation):
ClipRect(child: VideoPlayer(_videoPlayerController), clipper: RectClipper(),

class RectClipper extends CustomClipper<Rect> {

  @override
  bool shouldReclip(CustomClipper<Rect> oldClipper) {
    return true;
  }

  @override
  Rect getClip(Size size) {
    return const Rect.fromLTRB(0, 0, 1075, 400);
  }
}

Also, I think the bug only happens on this particular video and on some specific devices. if you can figure out a way to edit the video to make it work then it would be great.
Please let me know if any of the solutions are acceptable :)

Thanks @cyanglaz. We have been able to fix the problem with a new video we generated, so we'll have to generate all new videos, which is perfectly fine for us for now. I just worry one day we generate a new video and the problem comes back.
Thanks.

@dannyvalentesonos That's great to hear. Thank you for working this out with new videos! I will remove the customer blocker label to lower the priority of this bug.

Do you mind share what was the difference between the new and old videos? That might help giving us more information for debugging.

@cyanglaz no problem. Thanks for looking into it.

Do you mind share what was the difference between the new and old videos? That might help giving us more information for debugging.

@cyanglaz I'll send you the new video.

I have a reproduction for a similar issue.
import 'package:flutter/material.dart';
import 'package:video_player/video_player.dart';

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

class _MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Material(
        child: Example(),
      ),
    );
  }
}

class Example extends StatefulWidget {
  @override
  _ExampleState createState() => _ExampleState();
}

class _ExampleState extends State<Example> {
  VideoPlayerController controller;

  @override
  void initState() {
    controller = VideoPlayerController.network(
      "https://firebasestorage.googleapis.com/v0/b/skatex-8d802.appspot.com/o/test%2Ftest-Broadband%20Low.mp4?alt=media",
    );

    controller.initialize().then((_) async {
      await controller.setLooping(true);
      await controller.play();
      setState(() {});
    });

    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return Center(
      child: controller.value.initialized
          ? AspectRatio(
              aspectRatio: controller.value.aspectRatio,
              child: VideoPlayer(controller),
            )
          : Text(
              "Loading...",
            ),
    );
  }

  @override
  void dispose() {
    controller?.dispose();
    super.dispose();
  }
}

name: sandbox
description: A new Flutter project.
version: 1.0.0+1

environment:
  sdk: ">=2.1.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^0.1.2
  video_player: ^0.10.2+1

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:
  uses-material-design: true

@lukepighetti  I have the same problem
code is :
                   Container(
                      decoration: BoxDecoration(
                          border: Border.all(color: Colors.red,width: 4)
                      ),
                      child:AspectRatio(
                        aspectRatio: _controller.value.aspectRatio,
                        child: VideoPlayer(_controller),
                      )
                    )

use video file: https://video8.miliyo.com/a/a6/1b/a61b0ab798d8564e2af86726e7d5c863.mp4
Green block appears on the right side

use video file:https://video8.miliyo.com/a/95/af/95af092c04915798694e4ea547a77217.mp4
Green block appears on the bottom

video_player: ^0.10.2+5
/Users/mayer/development/flutter/bin/flutter doctor --verbose
[✓] Flutter (Channel stable, v1.9.1+hotfix.6, on Mac OS X 10.14.6 18G84, locale zh-Hans-CN)
    • Flutter version 1.9.1+hotfix.6 at /Users/mayer/development/flutter
    • Framework revision 68587a0916 (7 weeks ago), 2019-09-13 19:46:58 -0700
    • Engine revision b863200c37
    • Dart version 2.5.0

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/mayer/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.2, Build version 11B52
    • CocoaPods version 1.6.1

[✓] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 41.0.2
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[✓] Connected device (1 available)
    • SM G9280 • 0815f8acd00f1b04 • android-arm64 • Android 7.0 (API 24)

• No issues found!
Process finished with exit code 0

@cyanglaz  How to fix this issue?

Any progress on this? I'm experiencing this problem on some devices, while other devices with the same video don't experience it.
@mjeskulke's solution doesn't work for me. I can only change the width of the green line I am getting by changing the space the video can take. It never fully goes away.
This really needs a solution as we plan to release our app soon. The behavior of randomly showing on some devices goes against the whole idea of Flutter: one code base for all devices.

@Fleximex Do you have any progress on this?. I am experiencing this problem too so far.
I tested with my android 7.1.1 got this problem with decode video. While with others devices this works fine.
I found some behaviors:
Android 1.1.1: First time: I open the view with a video player, this did not work! for second time I open the view a video player this works fine. for third time is not display the video.
Error
PlatformException(VideoError, Video player had error com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(1, null, null, video/avc, null, -1, null, [1920, 1080, -1.0], [-1, -1]), null)

@wilfredonoyola For us the problem was "solved" by asking for the source files and encoding them ourselves. The media files were externally delivered to us and encoded in a terrible quality (with the same bit-rate settings in Handbrake I couldn't replicate the bad quality (even on the h264 fastest preset)).
The solved is of course in quotes since you don't always have control over the video files you want to use in your app. It does seem certain that certain settings used when encoding a video can cause the lines to appear with said video on some devices.
I guess my advice: try not to use badly encoded video files? But it is still unclear what bad means in this case and unclear why some devices don't have the green line problem.

Having the same problem. Any solutions yet on that?

Any solutions yet?
I can repo the issue 100% when i play the video which resolution is 1920*1080.I think this is probably caused by GPU rendering, but it's strange that the player embedded in the system is playing correctly.

Can people please upload reproduction videos? I linked mine but the link is broken and I no longer have the video on hand. Might help maintainers of this package to have video clips to refer to. You should be able to post them in a *.zip file.

Can people please upload reproduction videos? I linked mine but the link is broken and I no longer have the video on hand. Might help maintainers of this package to have video clips to refer to. You should be able to post them in a *.zip file.

This video also creates a greeen line:
https://firebasestorage.googleapis.com/v0/b/onesceneapp.appspot.com/o/intro.mp4?alt=media&token=968b08ed-f44c-49cc-943b-b2f0beaf12af
Screenshot showing in app:

I found that the reason for the green  on the left side was the failure of h.265 in hardware decoding. This error is acceptable, and the reason for the green edge on the bottom may be that the hardware decoding of
Video coding requires the frame dimensions to be aligned to multiples of 16 i.e. macroblock dimensions. HD resolution i.e. 1920 x 1080 is a special case as 1080 is not a multiple of 16. The underlying encoder expects the client to provide an aligned boundary.
The 1920 * 1080 video was decoded into 1920 * 1088 width and height, and an eight pixel border (green  or transparent) was added at the bottom.
I think the player should cut the extra pixels, and the APK of many players I tested has done this processing, and everything works  right.
Is there any solutions?

Did anyone find any solution to this problem?

Did anyone find any solution to this problem?

With no solution in sight, I ditched the video_player plugin for own native exoplayer implementation, https://pub.dev/packages/native_video_view and https://pub.dev/packages/flutter_vlc_player depending on the project requirement.

In my case, when the video resolution width x height not equal coded width x height,  play the video on flutter video_player plugin，can render a green bar; but on Android ExoPlayer + TextureView  can render ok.

is this has solution now? many answer say is video size can not divide 16 or 32.

No issues on Realme 6 running Android 10

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

void main() => runApp(MyApp());

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

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
      body: Center(
        child: VideoBarsHomePage(),
      ),
      floatingActionButton: FloatingActionButton(
        child: Icon(Icons.add),
        onPressed: () {},
      ),
    );
  }
}

class VideoBarsHomePage extends StatefulWidget {
  @override
  _VideoBarsHomePageState createState() => _VideoBarsHomePageState();
}

class _VideoBarsHomePageState extends State<VideoBarsHomePage> {
  VideoPlayerController _videoPlayerController;

  @override
  void initState() {
    super.initState();

    _videoPlayerController =
        VideoPlayerController.asset("assets/Butterfly-209.mp4");
    _videoPlayerController.setLooping(true);
    _videoPlayerController.play();
    _videoPlayerController.initialize();
  }

  @override
  void dispose() {
    _videoPlayerController.dispose();

    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Material(
        type: MaterialType.transparency,
        elevation: 0,
        child: Align(
            // align the card to the bottom
            alignment: Alignment.bottomCenter,
            child: Container(
              decoration: BoxDecoration(
                color: Colors.grey,
                borderRadius: BorderRadius.circular(16.0),
              ),
              height: 528.0,
              width: 416.0,
              child: Column(
                mainAxisAlignment: MainAxisAlignment.start,
                crossAxisAlignment: CrossAxisAlignment.stretch,
                children: <Widget>[
                  Expanded(
                      //child: VideoPlayer(_videoPlayerController)
                      /*child: Center(
                        child: AspectRatio(
                          aspectRatio: 1080.0 / 400.0,
                          child: Container(
                              width: 1080,
                              height: 400,
                              child: VideoPlayer(_videoPlayerController)
                          )
                        ),
                      )*/
                      child: FittedBox(
                          fit: BoxFit.contain,
                          child: Container(
                              width: 1080,
                              height: 400,
                              child: VideoPlayer(_videoPlayerController)))),
                ],
              ),
            )));
  }
}

flutter doctor -v
[✓] Flutter (Channel master, 1.25.0-5.0.pre.64, on macOS 11.0.1 20B29
    darwin-x64, locale en-GB)
    • Flutter version 1.25.0-5.0.pre.64 at /Users/tahatesser/Code/flutter_master
    • Framework revision 4d4d017aa5 (6 hours ago), 2020-12-03 21:38:10 -0800
    • Engine revision 20caf54969
    • Dart version 2.12.0 (build 2.12.0-76.0.dev)

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

[✓] Xcode - develop for iOS and macOS (Xcode 12.2)
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.2, Build version 12B45b
    • CocoaPods version 1.10.0

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

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

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

[✓] Connected device (4 available)
    • RMX2001 (mobile)     • EUYTFEUSQSRGDA6D          • android-arm64  •
      Android 10 (API 29)
    • Taha’s iPad (mobile) • 00008020-000255113EE8402E • ios            • iOS
      14.2
    • macOS (desktop)      • macos                     • darwin-x64     • macOS
      11.0.1 20B29 darwin-x64
    • Chrome (web)         • chrome                    • web-javascript • Google
      Chrome 87.0.4280.88

• No issues found!

It just happened with me, any solution?

Tested app on 2 different TVs
When the error occurs, seems to be doing a set up nativeWindow twice
D/SurfaceUtils(23612): set up nativeWindow 0x7b055008 for 640x360, color 0x7f000001, rotation 0, usage 0x2933
D/SurfaceUtils(23612): set up nativeWindow 0x7b055008 for 1920x1088, color 0x7f000001, rotation 0, usage 0x2933
`Amazon Fire 4K (Green space around)
I/flutter (23612): LayoutManager	Background:
I/flutter (23612): {}
I/flutter (23612): LayoutManager	push: FadeRoute(RouteSettings("null", null), animation: AnimationController#cd6eb(▶ 0.000; for FadeRoute))
I/flutter (23612):
I/ExoPlayerImpl(23612): Init 55b5bdd [ExoPlayerLib/2.12.1] [mantis,[removed], Amazon, 25]
D/CRLSetManager(23612): getInstance binder: android.os.BinderProxy@580b2cd
I/OMXClient(23612): MuxOMX ctor
I/MediaCodec(23612): [OMX.MTK.VIDEO.DECODER.AVC] setting surface generation to 24178692
I/MediaCodecLogger(23612): [ASAP] HW.video.avc P2 + 6666648
I/ACodec_vendorExt(23612): Setting OMX_IndexParamVideoHWComposed
W/ACodec_vendorExt(23612): Error OMX_IndexParamVideoHWComposed: Unknown error 1010 (1010)
I/ACodec  (23612): codec does not support config priority (err -1010)
I/MediaCodecLogger(23612): [ASAP] HW.video.avc P2 - 6666658
D/MediaCodecLogger(23612): Got a Service. Calling PID = 23612
I/MediaCodecLogger(23612): [ASAP] HW.video.avc P3 + 6666663
——>>>> D/SurfaceUtils(23612): set up nativeWindow 0x7b055008 for 640x360, color 0x7f000001, rotation 0, usage 0x2933
W/ACodec  (23612): [OMX.MTK.VIDEO.DECODER.AVC] setting nBufferCountActual to 8 failed: -2147483648
W/ACodec  (23612): [OMX.MTK.VIDEO.DECODER.AVC] setting nBufferCountActual to 7 failed: -2147483648
I/MediaCodecLogger(23612): [ASAP] HW.video.avc P3 - 6666686
I/MediaCodecLogger(23612): [ASAP] HW.video.avc Got First Input Frame 6666687
W/AHierarchicalStateMachine(23612): Warning message AMessage(what = 'omxI') = {
W/AHierarchicalStateMachine(23612):   int32_t type = 0
W/AHierarchicalStateMachine(23612):   int32_t event = 3
W/AHierarchicalStateMachine(23612):   int32_t data1 = 1
W/AHierarchicalStateMachine(23612):   int32_t data2 = 117440527
W/AHierarchicalStateMachine(23612): } unhandled in root state.
***** Difference, it resizes the window a second time  with bigger size****
——>>>>  D/SurfaceUtils(23612): set up nativeWindow 0x7b055008 for 1920x1088, color 0x7f000001, rotation 0, usage 0x2933
W/ACodec  (23612): [OMX.MTK.VIDEO.DECODER.AVC] setting nBufferCountActual to 15 failed: -2147483648
W/ACodec  (23612): [OMX.MTK.VIDEO.DECODER.AVC] setting nBufferCountActual to 14 failed: -2147483648
I/MediaCodecLogger(23612): updateFormatChanged width = 640 height = 360
I/MediaCodecLogger(23612): updatePTSTime [HW.video.avc] First PTS after Flush or reset = 0
I/MediaCodecLogger(23612): [ASAP] HW.video.avc Got First Frame Ready 6666815
I/MediaCodecLogger(23612): [ASAP] HW.video.avc Got First Frame Render 6666817
I/MediaCodecLogger(23612): App uses Timestamps for AVSync
I/MediaCodecLogger(23612): 23612.HW.video.avc.bitrateInKbps = 423
I/MediaCodecLogger(23612): updatePTSTime Possible seek found!
I/MediaCodecLogger(23612): 23612.HW.video.avc Resolution change from 0x0 to 640x360 took = 1

Amazon Fire TV (Renders correctly)
I/ExoPlayerImpl(29162): Init 65bb51b [ExoPlayerLib/2.12.1] [blanche, AFTBAMR311, Amazon, 25]
W/AmazonKeyEventLogging(29162): remote_perf key event latency detected [Source: ViewRootImpl, KeyCode: KEYCODE_XXXX, IsDown: 0, Repeat: 0, EventTime: 7210390, Latency: 486, DeviceId: 7, AppPackage:———]
D/CRLSetManager(29162): getInstance binder: android.os.BinderProxy@2a35ce7
I/OMXClient(29162): MuxOMX ctor
I/MediaCodec(29162): [OMX.amlogic.avc.decoder.awesome] setting surface generation to 29861889
I/MediaCodecLogger(29162): [ASAP] HW.video.avc P2 + 7211706
I/ACodec_vendorExt(29162): Setting OMX_IndexParamVideoHWComposed
E/ACodec  (29162): [OMX.amlogic.avc.decoder.awesome] storeMetaDataInBuffers failed w/ err -2147483648
I/ACodec  (29162): codec does not support config priority (err -1010)
I/MediaCodecLogger(29162): [ASAP] HW.video.avc P2 - 7211742
D/MediaCodecLogger(29162): Got a Service. Calling PID = 29162
I/MediaCodecLogger(29162): [ASAP] HW.video.avc P3 + 7211747
**** Happens only once ****
——>>>>   D/SurfaceUtils(29162): set up nativeWindow 0xc9b89808 for 640x360, color 0x11, rotation 0, usage 0x2002900
W/ACodec  (29162): [OMX.amlogic.avc.decoder.awesome] setting nBufferCountActual to 8 failed: -1010
W/ACodec  (29162): [OMX.amlogic.avc.decoder.awesome] setting nBufferCountActual to 7 failed: -1010
I/MediaCodecLogger(29162): [ASAP] HW.video.avc P3 - 7211803
I/MediaCodecLogger(29162): [ASAP] HW.video.avc Got First Input Frame 7211804
I/MediaCodecLogger(29162): updateFormatChanged width = 640 height = 360
I/MediaCodecLogger(29162): updatePTSTime [HW.video.avc] First PTS after Flush or reset = 0
I/MediaCodecLogger(29162): [ASAP] HW.video.avc Got First Frame Ready 7211855
I/MediaCodecLogger(29162): [ASAP] HW.video.avc Got First Frame Render 7211858
I/MediaCodecLogger(29162): App uses Timestamps for AVSync
I/art     (29162): Do partial code cache collection, code=22KB, data=29KB
I/art     (29162): After code cache collection, code=22KB, data=29KB
I/art     (29162): Increasing code cache capacity to 128KB
I/MediaCodecLogger(29162): 29162.HW.video.avc.bitrateInKbps = 464
I/MediaCodecLogger(29162): updatePTSTime Possible seek found!
I/MediaCodecLogger(29162): 29162.HW.video.avc Resolution change from 0x0 to 640x360 took = 0
I/MediaCodecLogger(29162): 29162.HW.video.avc.bitrateInKbps = 431
I/MediaCodecLogger(29162): updatePTSTime Possible seek found!`

Hey, I was experiencing the same problem. Switching codecs or containers did not help or just changed the problem (transparent pixels instead of green ones).
After a while I realised I was expecting an aspect ratio of 16:9 (width / height), but my client had downscaled the videos and they did not match an 16:9 aspect ratio exactly, but were missing some pixels (for me on the y axis), resulting in some devices adding green pixels.
Scaling the videos to the correct size (a multiple of 16:9) did solve the problem for me.
Maybe this can help you too. Best regards, Marius

No. My video has exactly 1920x1080. But it shows green line

I found that the reason for the green on the left side was the failure of h.265 in hardware decoding. This error is acceptable, and the reason for the green edge on the bottom may be that the hardware decoding of
Video coding requires the frame dimensions to be aligned to multiples of 16 i.e. macroblock dimensions. HD resolution i.e. 1920 x 1080 is a special case as 1080 is not a multiple of 16. The underlying encoder expects the client to provide an aligned boundary.
The 1920 * 1080 video was decoded into 1920 * 1088 width and height, and an eight pixel border (green or transparent) was added at the bottom.
I think the player should cut the extra pixels, and the APK of many players I tested has done this processing, and everything works right.
Is there any solutions?

Can repro on Pixel 3

file: D:\Projects\Flutter\iptv-player\tvTplayer\tvtplayer2\tvtplayer\video_player-2.1.10\android\src\main\java\io\flutter\plugins\videoplayer.java
I think this is due to:
surfaceTexture = textureEntry.surfaceTexture();
surfaceTexture.setDefaultBufferSize(1280,720);
surface = new Surface(surfaceTexture);
where surfacetexture didn't match the parent size.
Was here anybody solved this problem?

Still experiencing this issue on Google Pixel 2.
Flutter 2.0.5 • channel stable • https://github.com/flutter/flutter.git
Framework • revision adc687823a (3 months ago) • 2021-04-16 09:40:20 -0700
Engine • revision b09f014e96
Tools • Dart 2.12.3

Hope to fix this problem soon

I have same issue in my project, I use Amazon fire stick 4k, is there any news ?

Tengo el mismo problema en mi proyecto

same issue

I got the same issue on video_player: ^2.1.14

Also had similar green line on the right and on the bottom (mp4 asset video). Feeding it into https://cloudconvert.com/mp4-converter solved the issue for me :)

This may be related https://github.com/google/ExoPlayer/issues/8992

any new update?

Same issue here. As @blasten mentioned, google/ExoPlayer#8992  could be the solution?! Are there any plans, when video_player will be upgraded to the newest version of ExoPlayer?

Same issue here. As @blasten mentioned, google/ExoPlayer#8992  could be the solution?! Are there any plans, when video_player will be upgraded to the newest version of ExoPlayer?

i try to upgrade Exoplayer from 2.14.1 to 2.16.1, the green edge still exist.

i found all video with green edge have same pix_fmt(yuv420p10le).

i use this command fix video
# compat ios '-tag:v hvc1'
ffmpeg -i ${inputPath} -c:v libx265 -pix_fmt yuv420p -tag:v hvc1 -c:a copy -y ${outputPath}

@v7lin thank your for the tip, but unfortunately it doesn't work for me.
We have multiple videos, which were converted exactly the same way.
Some videos work, some have the green bar on the bottom and right.
I compared the metadata for the videos, but can't find the issue.
All have yuv420p
Working Video:
Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 600x600 [SAR 1:1 DAR 1:1], 3148 kb/s, 29.88 fps, 30.15 tbr, 111600 tbn, 60.31 tbc (default)
Not Working:
Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 600x600 [SAR 1:1 DAR 1:1], 3127 kb/s, 30 fps, 30 tbr, 15360 tbn, 30720 tbc (default)

@M1t000
i use this command review video infomation.
ffprobe -v quiet -print_format json -show_format -show_streams ${inputPath}

and run dart test to fix all video
// This is a basic Flutter widget test.
//
// To perform an interaction with a widget in your test, use the WidgetTester
// utility that Flutter provides. For example, you can send tap and scroll
// gestures. You can also use WidgetTester to find child widgets in the widget
// tree, read text, and verify that the values of widget properties are correct.

import 'dart:convert';
import 'dart:io';

import 'package:flutter/foundation.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:path/path.dart' as path;

void main() {
  test('video fix', () async {
    final List<String> videosPaths = <String>[
      '${Directory.current.path}/assets/',
    ];
    for (String videosPath in videosPaths) {
      final Directory videosDir = Directory(videosPath);
      final List<File> videos = videosDir.listSync(recursive: true).whereType<File>().where((File element) {
        return <String>['.mp4'].contains(path.extension(element.path).toLowerCase());
      }).toList();
      for (File video in videos) {
        if (kDebugMode) {
          print('video: ${video.path}');
        }
        // ffprobe -v quiet -print_format json -show_format -show_streams 1_1.mp4
        final ProcessResult result = await Process.run('ffprobe', <String>[
          '-v',
          'quiet',
          '-print_format',
          'json',
          '-show_format',
          '-show_streams',
          video.path,
        ]);
        if (result.exitCode == 0) {
          if (result.stdout is String) {
            final String str = result.stdout as String;
            final Map<String, dynamic> map = json.decode(str) as Map<String, dynamic>;
            final Map<String, dynamic> stream = (map['streams'] as List<dynamic>).cast<Map<String, dynamic>>().firstWhere((Map<String, dynamic> element) => element['codec_type'] == 'video');
            // if (stream['width'] != stream['coded_width'] || stream['height'] != stream['coded_height']) {
            if (kDebugMode) {
              print('codec_name = ${stream['codec_name']}');
              print('codec_tag_string = ${stream['codec_tag_string']}');
              print('pix_fmt = ${stream['pix_fmt']}');
            }
            if (stream['codec_name'] == 'hevc' && stream['codec_tag_string'] == 'hvc1' && stream['pix_fmt'] == 'yuv420p') {
              continue;
            }
            final Directory fixDir = Directory(path.join(video.parent.parent.path, '${path.basename(video.parent.path)}_fix'));
            if (!fixDir.existsSync()) {
              await fixDir.create(recursive: true);
            }
            // compat ios '-tag:v hvc1'
            // ffmpeg -i ${inputPath} -c:v libx265 -pix_fmt yuv420p -tag:v hvc1 -c:a copy -y ${outputPath}
            final ProcessResult fix = await Process.run('ffmpeg', <String>[
              '-i',
              video.path,
              // '-map_metadata',
              // '-1',
              '-c:v',
              'libx265',
              '-pix_fmt',
              'yuv420p',
              '-tag:v',
              'hvc1',
              // 'copy',
              '-c:a',
              'copy',
              '-y',
              path.join(fixDir.path, path.basename(video.path)),
            ]);
            if (fix.exitCode != 0) {
              if (kDebugMode) {
                print(fix.stdout);
                print(fix.stderr);
              }
              break;
            }
            // }
          }
        } else {
          break;
        }
      }
    }
  });
}

I am updating here because i also have the issue using :
[✓] Flutter (Channel stable, 2.8.1, on macOS 12.1 21C52 darwin-x64, locale fr-FR)
    • Flutter version 2.8.1 at /Users/foxtom/Desktop/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 77d935af4d (6 weeks ago), 2021-12-16 08:37:33 -0800
    • Engine revision 890a5fca2e
    • Dart version 2.15.1

This happens especially on my OPPO (Android 10).

Also, it seems to be much easier to reproduce when the video played on Android was recorded with an iOS camera.
This is still an issue under flutter: 2.10.3 and video_player: 2.2.19  :
[✓] Flutter (Channel stable, 2.10.3, on macOS 12.2.1 21D62 darwin-x64, locale fr-FR)
[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.1)
[✓] VS Code (version 1.65.0)
[✓] Connected device (3 available)
[✓] HTTP Host Availability

• No issues found!

Installed homebrew on my mac, then used homebrew to install ffmpeg and then I was able to fix all of the green line issues I had using ffmpeg -i INPUT_FILE_NAME -c:v libx265 -pix_fmt yuv420p -tag:v hvc1 -c:a copy -y OUTPUT_FILE_NAME

As per https://github.com/flutter/flutter/issues/104959, this issue is still reproducible

This should be fixed by https://github.com/flutter/engine/pull/24888. Some devices require the underlying surface to be a multiple of 16. Flutter Engine was not handling the transformation matrix correctly previously, but it is handled correctly now.

Still experiencing this issue on Xiaomi Mi TV P1.
Tested in Flutter 3.1.0-9.0.pre and 3.3.0-0.3.pre with same result

@RafaelCarpetres the fix is not included in those versions. Test on master branch.

Thanks!
El mar, 16 ago 2022 a la(s) 16:06, Dwayne Slater @.***)
escribió:

@RafaelCarpetres https://github.com/RafaelCarpetres the fix is not
included in those versions. Test on master branch.
—
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/34642#issuecomment-1217105666,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARW46ERR5V3G7BLWUYFLKNLVZPYCVANCNFSM4HZAK2IQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Rafael Sandoval
Desarrollador - F: 228953717
www.carpetres.cl


Support tailwind class names

Because the ":" character is not included in the regex some of the classes in tailwindcss is not properly colorized.
This is from before the fix:

This is after the fix:

I'll check later


offline-google-analytics does not work with sendBeacon

Couple of issues..

sendBeacon uses POST to transmit data
The URL is not unique (current code assumes that it is) and import needs to store and retransmit the POST payload.

To reproduce, enable sendBeacon transport in your GA config:
ga("set", "transport", "beacon");
ga("send", "pageview");

Cool. Thanks for the details; I'll take a look!

@philipwalton also let me know about another POST endpoint, /batch, with similar payload considerations.

@igrigorik, I've added in what I hope should support beacon-based transport in https://github.com/GoogleChrome/sw-helpers/commit/5320c8269f3368939bf792c4bc1a47487ca7963f. Feel free to pull in that latest code and try again.
I'm still working on finding an effective way to automate testing at least some of the code, and am waiting on that before releasing this officially.

@jeffposnick thanks for working on this! Left a comment on the commit.. will take it out for a spin.

This was fixed in the version that's been merged.


Add configuration documentation for DOI service in pass-docker readme file

https://github.com/OA-PASS/pass-docker#configuring-the-docker-images
please see the existing documentation and add similiar information about DOI to this section.

committed README changes for DOI Service cinfig directly to master, closing


Build binaries for python3.9

Describe the feature and the current behavior/state.
Py39 is out but we need to wait for core TF to support it first. We should quickly follow.

Would like to help out!

Blocked by https://github.com/tensorflow/tensorflow/issues/44485 hopefully coming soon.

Waiting for https://github.com/protocolbuffers/protobuf/pull/8121

Unblocking but this needs to wait for TF2.5 release candidates

Unblocking but this needs to wait for TF2.5 release candidates

Here we go - this installs fine on 3.9.4:
https://github.com/tensorflow/tensorflow/releases/tag/v2.5.0-rc0

TF 2.5.0 is out. Any plans on supporting python3.9?

@GuillemGSubies see #2441 linked just before your comment.


Potential broken code - GenomeCoverageReportStepPart

Issue
Class GenomeCoverageReportStepPart doesn't seem to be used for a while and also doesn't seem to work.
Source: snappy_pipeline.workflows.ngs_mapping.GenomeCoverageReportStepPart (code)
Error while loading required modules:
ERROR: Unable to locate a modulefile for 'SAMtools/1.2-foss-2015a'

Question
Can it be safely removed?

Personally, I would try to keep it by making a wrapper from it.

I think that this can go away. We still have the samtools stat output generated automatically. That coverage report step part generates a HUGE track that we never used.

@ericblanc20, is the content of for example ngs_mapping/work/bwa.{library_name}-N1-DNA1-WES1/report/bam_qc/bwa.{library_name}-N1-DNA1-WES1.bam.bamstats.txt an acceptable alternative?
I tend to side with removal of redundancies (specially if broken) to make the code easier to maintain.


Add a benchmark of the hang-on-test-failure code path

This is the code pattern that produces the performance problem in https://github.com/rust-lang/miri/issues/2273
I figured out what I was stuck on in https://github.com/rust-lang/miri/pull/2315#discussion_r916387919. For a while I was just doing let x: &[u8] = &[0u8; 4096]; but that doesn't produce the runtime inside Stack::item_popped that I was looking for, I think because this allocation is never deallocated. But with Vec, I get the profile I'm looking for.

:joy: the test runs OOM on 32bit machines.^^

I'm pretty sure this will pass with size 4096 after https://github.com/rust-lang/miri/pull/2315 due to the ~3x memory reduction that PR provides. But I also think this benchmark makes a poorer case for the implementation details of that PR with the smaller size.
The irony is cruel.
Also I'm pretty sure the fact that the test fails means that cargo miri test with a failing test will currently OOM any 32-bit system. But slowly.

We can also just block this on landing https://github.com/rust-lang/miri/pull/2315. Or increase it back to 4096 in that PR.

I think that making a benchmark slower as part of an optimization PR would be very confusing if someone were to use the benchmarks to evaluate the impact of PRs later.
So for now I think just sharing this up in a PR makes me feel less dishonest about using a new benchmark to justify an implementation choice, and we can land it after #2315, with the larger size.

Can you rebase and increase the size to 4096 again? Does that work now? :D

@bors r+

:pushpin: Commit 7d9f04f7a8b3ef3c0e00a50e58f86fa8d8cf34ea has been approved by RalfJung
It is now in the queue for this repository.

:hourglass: Testing commit 7d9f04f7a8b3ef3c0e00a50e58f86fa8d8cf34ea with merge a45d6ef779c0828094e186aba8dfa9f056111e29...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing a45d6ef779c0828094e186aba8dfa9f056111e29 to master...

I just noticed we already have bench-cargo-miri/backtraces/src/main.rs. But that seems to be something else?

Yes. That benchmark exists because I noticed that I'm pretty sure the Debug impl for BacktraceFrame or whatever I'm formatting there has an oddly low hit rate in the Stack cache.


Setup the backporting bot used in the Cosmos SDK

The SDK has a really helpful bot for backporting PR's via labels. We should add that here, to help us manage release branches.

I'll have a look.  Could take some time, simply because of the upcoming move from the secret laboratory to the laboratory.

I may need access to our repo settings or... something.  Checking out the mergify control panel now

I may need access to our repo settings or... something.  Checking out the mergify control panel now

Checked out the mergify control panel but there's nothing there.  @ValarDragon I think you've got to do this, as the owner of the repo.

We need to discuss the rules we would like to configure with mergify. I have access to configure this.
@ValarDragon
This is the example configuration from Cosmos SDK:
https://github.com/cosmos/cosmos-sdk/blob/master/.mergify.yml
So the question is, what branches we would like to backport master to?

I think we should for every release branch, v6.x, v5.x, v4.x, v3.x

PR for the initial configuration for Mergify
https://github.com/osmosis-labs/osmosis/pull/844
Not sure how  this can be tested first.


chore(main): release 1.0.1

:robot: I have created a release beep boop
1.0.1 (2024-07-29)
Bug Fixes

bump fast-xml-parser from 4.4.0 to 4.4.1 (e92fd79)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.0.1
:sunflower:


Fix #1039: messages sent to Slack being synced back

This is a regression from https://github.com/42wim/matterbridge/pull/581#issuecomment-562937576
Behaves the same as https://github.com/matterbridge/slack/commit/95190f11bfb6405b0394b75a29bd1c1bb91f553e
Easiest fix without changing upstream is to set the fallback string to a zero width space.
Fixes #1039

Wow, good catch! Thanks for the detective work :+1:


Added app kyverno

Description
This PR adds support for kyverno installation. It installs kyverno  in the "default" profile of Pod Security Standards and set them in audit mode
Motivation and Context
Fixes #371
Notes:

It uses the official installation method, it doesn't rely on 3rd party helm charts (e.g. bitnami)

How Has This Been Tested?
Deploy to a new cluster:
./arkade install kyverno -n kyverno

Check deployment :
➜  arkade git:(feature/kyverno) k get all -n kyverno
NAME                           READY   STATUS    RESTARTS   AGE
pod/kyverno-56fdb9d87d-htzc7   1/1     Running   0          12m

NAME                  TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)   AGE
service/kyverno-svc   ClusterIP   <IP_ADDRESS>   <none>        443/TCP   12m

NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/kyverno   1/1     1            1           12m

NAME                                 DESIRED   CURRENT   READY   AGE
replicaset.apps/kyverno-56fdb9d87d   1         1         1       12m

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[X] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[X] I have updated the documentation accordingly.
[X] I've read the CONTRIBUTION guide
[X] I have signed-off my commits with git commit -s
[ ] I have added tests to cover my changes.
[X] All new and existing tests passed.

[ ] I have tested this on arm, or have added code to prevent deployment

Some questions

Do you need to block this for ARM? If so, can you do that please? See existing apps
What helm chart options are useful that we should add as flags? Generally there are 1-5 that we add for each app to make it easier to look without looking up the chart README
The post install message is really sparse. Can you at least show how to see the logs or apply a sample object that will pass/fail in the bundled package?

I am closing this.....sorry but I am not getting time.


Is import async?

Is import at the top of an ES6 module file loaded asynchronously?

No imports are static, the code is only executed when its dependencies are ready.

Is this because of following the ES6 spec, not because of implementation technicalities?

Both. If import was just an asynchronous function, then it would no longer be possible to statically analyze modules, as just like CommonJS require, I could have import within arbitrary conditions etc. At a specified level, that does not define a "complete" system from a perspective of static analysis. That is, browserify doesn't work perfectly for all possible code variations due to the dynamic nature of a require function. Also, ES6 gives shared bindings of circular references, which is not possible with a dynamic import function. It's interesting to run through the variations of systems that may have been possible. I tend to think ES6 modules make a lot of sense.

What specifically would static analyses be used for?

Bundling.
On Sunday, January 11, 2015, Joseph Orbegoso Pea<EMAIL_ADDRESS>wrote:

What specifically would static analyses be used for?
--
Reply to this email directly or view it on GitHub
https://github.com/ModuleLoader/es6-module-loader/issues/280#issuecomment-69493038
.

Can you just scan a whole file and see require/import statements anywhere in the file, and just bundle all modules, even if the flow of code doesn't ultimately load them at runtime?

ES6 flow does load them all at runtime unlike CommonJS.

Well, in that case, can't
var blah = function() {
  import something from 'something'
}
if (isSomething()) blah()

work?

import only works at the base level. They are static and always load before the module is run.

I know, I get that part, but what I mean is what's stopping you (generally speaking, anyone working on ES6 Module spec) from scanning the whole file, and loading what's anywhere in the file before running the file?

@trustkr it's good to be interested in these mechanics, I'm not sure I understand your question though - this isn't really the best place for long discussions about specific specification decisions. Perhaps we can continue the discussion on chat.

Which channel? es6-module-loader doesn't seem to exist.


Travis

This adds travis unit test scripts for mvp so we no longer rely on our internal Jenkins server for PR testing.
As of right now tests are failing. Fixing tests will come after this is merged.

Are you intending to add dans "use new network icon"? It seems out of place.

It's already in master, I think my git history got messed up somewhere.


add missing rc variable and bump chart version

What this PR does / why we need it:
Without this PR, there is an error for the mysqldump script when used with following config:
mysql:
  host: cloudsql
  username: username
  password: foobar
  port: 3306
  # db for single db backup
  db: mydb

# use --all-databases
allDatabases:
  enabled: false
  # creates single backup file with all databases
  singleBackupFile: false

# options to pass to mysqldump
options: "--opt --single-transaction --events --routines --triggers "

# save sql backup to a directory named like the database or "alldatabases"
saveToDirectory: false

## set to `now` to get a one time job, or a cronjob schedule like `0 0 * * *`
## to get a cronjob.
schedule: "0 */3 * * *"

persistence:
  enabled: true
  size: 1Gi
  accessMode: ReadWriteMany
  reclaimPolicy: delete
  storageClass: "nfs"

# delete backups older than 10 days
housekeeping:
  enabled: true
  keepDays: 10

# upload backup
upload:
  googlestoragebucket:
    enabled: true
    # bucketname with gs:// prefix
    bucketname: gs://mybucket
    # jsonKeyfile of you serviceaccount as string
    # secretFileName specifies the keyfile name inside the secret
    secretFileName: google-cloud-serviceaccount.json
    # existingSecret can be enabled to use an existing secret
    existingSecret: google-cloud-serviceaccount
    # serviceAccountName to set a specific service account name
    # serviceAccountName
    # usingGCPController to enable autogeneration and injection of the service account
    usingGCPController: false

The missing rc Variable will always cause the backup script to fail, though it was actually successful. The BackoffLimit will then immediately start another Job, so I end up with 2 dumps exectued almost in parallel, but kubernetes seeing an error.
Here's the generated (faulty) script:
data:
  backup.sh: |-
    #!/bin/sh
    #
    # mysql backup script
    #

    BACKUP_DIR="/backup"
    TIMESTAMP="$(date +%Y%m%d%H%M%S)"

    echo "test mysql connection"
    if [ -z "$(mysql -h ${MYSQL_HOST} -u ${MYSQL_USERNAME} -p${MYSQL_PASSWORD} -B -N -e 'SHOW DATABASES;')" ]; then
      echo "mysql connection failed! exiting..."
      exit 1
    fi

    echo "started" > ${BACKUP_DIR}/${TIMESTAMP}.state

    echo "delete old backups"
    find ${BACKUP_DIR} -maxdepth 2 -mtime +${KEEP_DAYS} -regex "^${BACKUP_DIR}/.*[0-9]*_.*\.sql\.gz$" -type f -exec rm {} \;

    MYSQL_DB="gcm"
    echo "Backing up single db ${MYSQL_DB}"

    mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME} -p${MYSQL_PASSWORD} --databases ${MYSQL_DB} | gzip > ${BACKUP_DIR}/${TIMESTAMP}_${MYSQL_DB}.sql.gz

    echo "upload files to google storage bucket gs://mybucket"
    gcloud auth activate-service-account --key-file /root/gcloud/google-cloud-serviceaccount.json
    gsutil -m rsync -r -x '.*\.state' -d ${BACKUP_DIR}/ gs://mybucket
    rcu=$?

    if [ "$rcu" != "0" ]; then
      echo "upload failed"
      exit 1
    fi

    #######
    # FIXME: this is where it breaks, rc is never set
    #######
    if [ "$rc" != "0" ]; then
      echo "backup failed"
      exit 1
    fi

    echo "complete" > ${BACKUP_DIR}/${TIMESTAMP}.state
    echo "Backup successful! :-)"

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[X] DCO signed
[X] Chart Version bumped

/assign @axdotl

/lgtm


Problem with user status updates.

I was having an issue with users Online/Offline status not being updated in the member's cache. I added the following line in InternalClient.js under case PacketType.PRESENCE_UPDATE and it seems to have fixed the issue.
data.user.status = data.user.status || user.status;

I'm not sure if this was the correct way to go about fixing it.

If you mean https://github.com/hydrabolt/discord.js/blob/master/src/Client/InternalClient.js#L1262 then yup that looks like the place to add it. :+1:

Eh, actually. That's wrong. The issue looks like it should be
user.status = data.user.status; instead of user.status = data.status;
on https://github.com/hydrabolt/discord.js/blob/indev/src/Client/InternalClient.js#L1391
Same with the line after it, dealing with game_id.

I think if we actually updated the user presence before emitting the presence event, it should work.

OH lol, didn't see that. Yep that ordering. rip.

Potentially fixed in d9b9d1d0a3c7627bc0eeac49d1dcf39523aeabe8, you can test and if it works close the issue, otherwise please say and I'll have another look


ERR_CERT_AUTHORITY_INVALID with axios but curl works fine

I am trying to use the SmartProxyPlugin with puppeteer and I get the error: net::ERR_CERT_AUTHORITY_INVALID at https://www.cvs.com I have already installed the certs using the zyte docs, and a curl request works fine.
Example curl format curl --proxy proxy.crawlera.com:8011 --proxy-user MY_USER_ID: --compressed -X POST -H "Content-Type: application/octet-stream" --data foo https://httpbin.org/anything | jq .data
packages installed
    "puppeteer": "^19.11.1",
    "puppeteer-extra": "^3.3.6",
    "puppeteer-extra-plugin-proxy": "^1.0.2",
    "puppeteer-extra-plugin-stealth": "^2.11.2",
    "zyte-smartproxy-plugin": "^1.0.8",
    "zyte-smartproxy-puppeteer": "^1.0.18"

CERT VERIFICATION
INSTALL CERT
sudo cp zyte-cert.crt /usr/local/share/ca-certificates/zyte-ca.crt
sudo update-ca-certificates

verify cert installed by running command WITHOUT -k
curl https://httpbin.org/get -U ZYTE_API_KEY: -vx proxy.crawlera.com:8011

CODE
import puppeteer from "puppeteer-extra";
const StealthPlugin = require("puppeteer-extra-plugin-stealth");
puppeteer.use(StealthPlugin());
//https://github.com/zytedata/zyte-smartproxy-plugin#quickstart-for-puppeteer-extra
const SmartProxyPlugin = require("zyte-smartproxy-plugin");

    let url=`https://www.cvs.com`

    puppeteer.use(SmartProxyPlugin({
       spm_apikey: process.env.ZYTE_PROXY_API_KEY,
       headers: {'X-Crawlera-No-Bancheck': '1', 'X-Crawlera-Profile': 'desktop', 'X-Crawlera-Cookies': 'disable'}, //use w/headless: true
       //static_bypass: false, //  enable to save bandwidth (but may break some websites)
       //spm_host:'proxy.crawlera.com:8014'
     }));

    const browser = await puppeteer.launch({
      headless: "new",
      defaultViewport: null
    });

    const page = await browser.newPage();

    await page.goto(url, {
      waitUntil: "domcontentloaded",
    });

    let pc=await page.content()
    console.log(`content len:`,pc.length,pc)
    if(pc.length<5000) throw `if its too short its VERY likely an error msg`

puppeteer launch config MUST have ignoreHTTPSErrors:true
    const browser = await puppeteer.launch({
      headless: "new",
      defaultViewport: null,
      ignoreHTTPSErrors:true
    });


Deploy new amm

[x] deploy AMM
[x] deploy lptokens
[x] deploy options
[ ] add tests
[ ] deploy on goerli and run AMM test suite on it
[ ] add tests to governance that test this was deployed correctly

So far this is based on snforge-tests branch, before merge and deployment after this is tested I will rebase on top of master

(it's cumbersome to run tests in CI as you have to compile snforge from source now)
deploy amm + deposit to liqpool works


Custom messages

How to custom button messages

You would need to edit the code and recompile, please follow the Geyser development guide for help doing this.
https://wiki.geysermc.org/other/developer-guide/


Website rewrite

https://learnbevy.deno.dev/

Upgrade to Svelte 5
Move from Cloudflare Pages to Deno Deploy
Tidy up a lot of the internals that should have been done ages ago

Will wait for shadcn-svelte Svelte 5 to come out. Shouldn't be long for a beta.

Closing in favor of the blazingly fast #115


Update carbon multitenancy version

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/2310878628

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/2310878628
Status: failure

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/2311265967

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/2311265967
Status: failure

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/2311635414

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/2311635414
Status: success


1.0 Roadmap

Is your feature request related to a problem? Please describe.
Obviously, if we are providing a template, we want to give users a solid idea of where they stand, and a clear upgrade path. Of course, this isn't urgent as flakes and the nix-command still haven't reached a stable release, but by the time they do, I'd like to have reached 1.0.0 (or close).
There are several usability improvements I'd like to see, so no need to rush. I went ahead and tagged 0.7.0.
Third draft goals for 1.0:

[x] A stable api and optimized structure #137
[x] Refactor and reduce lib
[x] stop pushing directly to core (my fault)
[ ] modules api, convertable to os, devshell, nm etc (in Dhall?). #127 #38
[x] generalize hosts

[x] Add Nixos integration tests
[x] The current, base override model is incredibly useful, but shouldn't be the only option. Generalize hosts/default.nix to allow for hosts with different versions. #117

[ ] generate lib documentation from the comments — shouldn't be terribly difficult to genaralize this example
[x] Something solid for #106
[ ] The remaining docmentation work finished #111
[ ] make defaultTemplate a derivation that builds the mdbook for local reference and removes the source doc files
[x] A solution for #118 — linked PR #135
[ ] One line boostrap, even without nix — nix-user-chroot already has that goal, so maybe we could help there.
[x] Some tolerable solution to secrets #37, #56
[x] Solve #91 — upgrading without the git history would be fantastic.
[ ] Definitely need to implement #98 — this will probably wait until the stable release of nix-command.
[ ] Trustix — when it's ready.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

I was just about to suggest the same thing.
I cannot follow daily changes, when I'm changing my own, and at the same time figuring out how to upstream the useful parts to the template. I didn't even realize there was a new name for this project.
One suggestion would be to not try to abstract flakes so much.  I havent used the shell with flk related commands, because nixos-rebuild switch/test/boot --flake '.#hostname' is more direct relationship of understanding on a NixOS system.

'"If you try to hide the complexity of the system, you'll end up with a more complex system". Layers of abstraction that serve to hide internals are never a good thing. Instead, the internals should be designed in a way such that they NEED no hiding.'

... I think flakes and nixos-rebuild fit that description pretty well.
there's so many great ideas in this template and its been very helpful. I hope to be caught up with the updates and contribute back soon!

Totally agree, flk is there mostly as a band-aid I always hoped to peel off as the ui moved toward stability.
Thanks for the insightful quote 👍

I cannot follow daily changes, when I'm changing my own, and at the same time figuring out how to upstream the useful parts to the template.

Yeah, a few hours ago I tried to resolve conflicts between my branch that diverged at e67cd3701aa2a2081d0c261ccc12b47f743c0866 with master (currently 2cb1ec608196ebe8549ce10e53c563c0ebfbb38d) and I had to put it down for the weekend.

I think it will generally be easier once the api is stabilized and the format of the repo changes less often. And switching to suites will probably help.

For anyone subscribed to this, I have went ahead and tagged 0.7.0 so you can have a stable upgrade target. I'll probably release a few 0.7.x release shortly containing a lock file update and some doc fixes.

Closing this as most of it is done or no longer applicable. Anything important can get its own issue.


Add all obsolete classes to template

Resolves #1159
Row 59 of the obsolete.tsv template has a multi-line annotation which might cause the GitHub rendering of TSVs to break, but the template loads properly... we could always combine this into one line if that's a problem.

I don't want newline in the TSVs. I'd prefer to escape them with "\n" automatically in the new sort-templates.py. What does ROBOT do with "\n" in templates?

I'd also like a check to ensure that obi-edit.owl does not contain any obsolete terms.
Most of our templates form a branch of the tree, and each of those should be checked. Maybe  generalize assay-violation-modules.rq?

Travis is failing with:
FAIL Rule src/sparql/missing-logical-definition-violation.rq: 7 violation(s)
s,label,type
http://purl.obolibrary.org/obo/OBI_0000624,Bruker SampleJet system,http://www.w3.org/2002/07/owl#Class
http://purl.obolibrary.org/obo/OBI_0000516,NMR probe,http://www.w3.org/2002/07/owl#Class
http://purl.obolibrary.org/obo/OBI_0000555,autosampler,http://www.w3.org/2002/07/owl#Class
http://purl.obolibrary.org/obo/OBI_0000531,Bruker CryoProbe,http://www.w3.org/2002/07/owl#Class
http://purl.obolibrary.org/obo/OBI_0000612,Bruker MATCH tube holder system,http://www.w3.org/2002/07/owl#Class
http://purl.obolibrary.org/obo/OBI_0000590,Bruker 1mm MicroProbe,http://www.w3.org/2002/07/owl#Class
http://purl.obolibrary.org/obo/OBI_0000517,NMR magnet,http://www.w3.org/2002/07/owl#Class

But I don't get this locally. Any ideas on why this is happening? I believe these are devices, which may point to something...

It's passing locally for me too. Not sure what the problem is.

Now I'm pretty confident that it's a difference between sed implementations on macOS and Linux. Please use Python to do this instead.

Hmm... it still doesn't seem to like it.

I just don't get it. Let's remove the newlines from obsolete.tsv, delete the script from this PR, and worry about this problem the next time we see it.


Support for rendering

This projects looks great. We are interested in moving it forward, and in particular, adding rendering support. My initial thought was to create a new function in c that renders to a WebAssembly.Memory buffer, using the Pdfium function FPDF_RenderPageBitmap.  The implementation would be similar to that createDocFromBuffer in avail.c
In javascript, we could then copy the bytes from WebAssembly.Memory to a canvas element. What are your thoughts on this approach?

Hi Max, nice to meet you!
Yes, I'd love to see this - also sounds like a good direction. I think you can even do this completely in JS land - allocate the buffer and pass it to FPDF_RenderPageBitmap. As you have probably already discovered (#4), there are still some issue with the build and not all functions are working properly. How familiar are you with compiling stuff on Linux?
The entire build is dockerized, so it should be pretty straightforward to set it up and start tinkering with it. I believe some additional libraries (like jpeglib and zlib) would be required for some PDF files, as right now we only build the core PDFium code and ignore the rest.
If you are feeling comfortable tinkering with the build and have some time to hack on this, I'd love to offer my guidance. We can even set a short phone call to explain what I did so far.

Hi,
It is working on my project here:
https://github.com/paulo-coutinho/pdfium-lib
And you can test on web here:
https://paulo-coutinho.github.io/pdfium-lib/
Consider donation on Sponsor button.
Thanks.

Hi,
It is working on my project here:
https://github.com/paulo-coutinho/pdfium-lib
And you can test on web here:
https://paulo-coutinho.github.io/pdfium-lib/
Consider donation on Sponsor button.
Thanks.


Chapter 10, python feature_extract.py has the following error

Traceback (most recent call last):
File "feature_extract.py", line 76, in
features = resnet50(imgs)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py", line 491, in call
result = self.forward(*input, **kwargs)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torchvision-0.2.1-py3.6.egg/torchvision/models/resnet.py", line 144, in forward
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py", line 491, in call
result = self.forward(*input, **kwargs)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/modules/container.py", line 91, in forward
input = module(input)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py", line 491, in call
result = self.forward(*input, **kwargs)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torchvision-0.2.1-py3.6.egg/torchvision/models/resnet.py", line 88, in forward
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py", line 491, in call
result = self.forward(*input, **kwargs)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/modules/container.py", line 91, in forward
input = module(input)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py", line 491, in call
result = self.forward(*input, **kwargs)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/modules/batchnorm.py", line 49, in forward
self.training or not self.track_running_stats, self.momentum, self.eps)
File "/home/dand/anaconda3/lib/python3.6/site-packages/torch/nn/functional.py", line 1194, in batch_norm
training, momentum, eps, torch.backends.cudnn.enabled
RuntimeError: cuda runtime error (2) : out of memory at /opt/conda/conda-bld/pytorch_1524586445097/work/aten/src/THC/generic/THCStorage.cu:58

你可以试一下用pip3安装pytorch

I try reinstall with pip3, but the problem still there

after reduce the batch size to 32 from 256. it's ok


Correct pipeline maven plugin multi module permissions

(This PR template only applies to permission changes -- ignore for changes to the tool)
Description
Correct pipeline maven plugin multi module permissions and add cyrille-leclerc
https://github.com/jenkinsci/pipeline-maven-plugin/
Permissions pull request checklist
Always

[x] Add link to plugin/component Git repository in description above

For a newly hosted plugin only

[ ] Add link to resolved HOSTING issue in description above

For a new permissions file only

[x] Make sure the file is created in permissions/ directory
[x] artifactId (pom.xml) is used for name (permissions YAML file).
[x] groupId / artifactId (pom.xml) are correctly represented in path (permissions YAML file)
[x] Check that the file is named plugin-${artifactId}.yml for plugins

When adding new uploaders (this includes newly created permissions files)

[x] Make sure to @mention an existing maintainer to confirm the permissions request, if applicable
[x] Use the Jenkins community (LDAP) account name in the YAML file, not the GitHub account name
[x] All newly added users have logged in to Artifactory at least once

Seems fine :+1:
Will merge a wee bit later if nobody finds something wrong in the meantime.


Show which files an item is used in

Maybe a right click or something to see what files an item is used in

Ok .. started to play with a treeview, but it's too simple IMO
Probably the best thing would be to have something like this
http://stackoverflow.com/questions/24569156/display-treeviewitem-as-grid-rows-in-wpf
But need to convert app to WPF first


"Download blocks as image" does not include comment bubbles

Describe the bug

Comment bubbles are not included in the image of the workspace when you select "download block as image" from the context menu.
Note that this is different from #624 as in that case bubbles were included, but the text did not show. Here there are no bubbles at all.
Affects

[ ] Designer
[X] Blocks editor
[ ] Companion
[ ] Compiled apps
[ ] Buildserver
[ ] Other... (please describe)

Expected behavior

Comments should be included in the downloaded image. As they are helpful for documenting how something is working.
Steps to reproduce

Drag a block from the toolbox.
Add a comment and type text into it.

Right click on the workspace background and select "Download blocks as image" from the context menu.

Open your image and observe how comments were not included.

Request for Assignment
I don't want to fix this issue (I've got quite a few projects atm hehe) I'm just reporting it.

Duplicate of #892?

Duplicate of #892?

Yessir! I did do a search before I posted this, but I must have missed that one. Thank you for the link :D
Closing as dupe.


Incorrect repo url for Suse 11.3

manifests/repo.pp constructs the following (invalid) url on SLES11.3:
http://packages.vmware.com/tools/esx/latest/sles11.3/x86_64/
It uses $::operatingsystemrelease in the string which is "11.3" on this version.
The correct URL would be:
https://packages.vmware.com/tools/esx/latest/sles11sp3/x86_64/
(note "11sp3" instead of "11.3")
If I get this working properly I may make a PR

Just changed line 164 to:
$baseurl_url = "${reposerver}${repopath}/esx/${tools_version}/${vmwaretools::params::baseurl_string}${vmwaretools::params::distrelease}/${repobasearch}/"

However, there is another problem.  The vmware repo URL now redirects to https://, and on SuSE 11.3 the rpm binary can't handle SSL.   In other words this doesn't work:
      exec { 'vmware-import-gpgkey':
        path        => '/bin:/usr/bin:/sbin:/usr/sbin',
        command     => "rpm --import ${gpgkey}",
        refreshonly => true,
      }

The safe way to make this work is to wget the key first and then import a local file.  @razorsedge, what would you recommend for a pull request: adding a wget requirement or using some download_file type module, or some other option?

@akomakom There should be plenty of modules that implement a file download.  No need to re-invent one.
The ::os[release][major] is that a Puppet 4 facter construct?
Does changing line 216 also work for other SuSE versions?

@razorsedge I certainly have no plans to roll my own download module, I was referring to puppet/download_file as an example, but upon closer inspection that turns out to be a windows-only module.  There are plenty out there.
Your other questions bring up a good point:
hash facts (ie $os[release][major]) are supported in puppet 3 (possibly even in later 2.x), but their use requires puppet.conf setting of stringify_facts = false, which may be an unreasonable expectation for all clients.  It becomes the default behavior in puppet 4.  Unfortunately, I didn't see the value "3" (from SuSE 11.3) in any other fact.   Maybe it's safer to string-replace the fact we have (11.3 -> 11sp3).
The URL structure seems valid for all 11.x and 9.x suse versions:
https://packages.vmware.com/tools/esx/latest/index.html
For 12.x this module doesn't apply anyway.

I just confirmed that my original change also works for SLES 11.4 (but again, it relies on stringify_facts = false so may not work in some Puppet 3.x deployments).
The change, for clarity, was:
Index: manifests/params.pp
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- manifests/params.pp	(revision 3868)
+++ manifests/params.pp	(revision 3953)
@@ -255,7 +255,7 @@
         'SLES', 'SLED': {
           # TODO: tools 3.5 and 4.x use either sles11 or sles11sp1 while tools >=5 use sles11.1
           if ($majdistrelease == '9') or  ($majdistrelease == '11') {
-            $distrelease = $::operatingsystemrelease
+            $distrelease = "${::os[release][major]}sp${::os[release][minor]}"
           } else {
             $distrelease = $majdistrelease
           }

The original problem still remains - you have to perform rpm --import VMWARE-PACKAGING-GPG-RSA-KEY.pub yourself because (at least on some SLES 11.4 installs I have) rpm can't handle being redirected to https.


k8s 0.19.7, go 1.15, fix gnostic

Fixes #

Proposed Changes

in go.mod, use go 1.15, update to k8s 0.19.7 libs, remove replaces
fix the gnostic OpenAPIv2 openapiv2 stuff

Release Note

Docs

/lgtm

/lgtm


Version 0.2.0

I've rewrote some stuff and changed the way configuration works. Now everything depends on EmberCLI.env method that works kind of like Rails.env does. It controls which mode kicks in when EmberCLI.enable! is called.

test: compile on first request, do nothing afterwards
development: run build server on first request
production: do nothing

In each mode EmberCLI assets are added to the pipeline, so rake assets:precompile includes it.
User can manually override which mode should be used by specifying config.ember_cli_rails_mode = <something> in the environment file.
We're not at 1.0 yet, so it's OK to break backward compatibility between minor versions.
@rondale-sc @seanpdoyle could you guys review changes and maybe run your projects test against this branch?

@rwz -- thanks for your hard work on this! ( you as well @rondale-sc && @seanpdoyle ) !!

Could we change the rake task namespace from ember-cli to ember?
Also, how about ember-cli:install_dependencies => ember:install?

@seanpdoyle I think that'd be a good change.  Inflecting on CLI has been a real pain.

LGTM.
A lot of great changes and the API seems to be unbroken, unless I am missing something.  Is the minor bump because #66 or for people using internals?

Could we change the rake task namespace from ember-cli to ember?
Also, how about ember-cli:install_dependencies => ember:install?

Sounds good. Will add this change.


⚠ ClamAV has degraded performance

In ddbd17c, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 111 ms

Resolved: ClamAV performance has improved in 820e3c0 after 6 minutes.


Notification hub registration support FCMv1

Hello,
Not sure if this is a bug or more a feature request but very recently a new FCMv1 channel was added for the notification hub and it seems the service explorer is not able to show registrations of this type. I have my own custom tool for some specific operations and when I do a tag search this record is returned (you can ignore PPOI column as this is something based on the tag info):

Executing the same tag expression in the explorer doesn't seem to return any results
edit: Here is also a link to the page about the deprecation of the legacy FCM and introduction of FCMv1: link

@sdworx-kennydv,
I am happy to see that the Notification hubs team finally released the version with the fix we needed for Service Bus Explorer, on NuGet. The version numbers does not match though... 🤔
The article you linked to says:

Google will deprecate the Firebase Cloud Messaging (FCM) legacy API by July 2024. You can begin migrating from the legacy HTTP protocol to FCM v1 on March 1, 2024. You must complete the migration by June 2024.

Will you or anyone else object if we remove the support for FCM legacy in the next release? If someone needs it, they can use the current release.
I can update SBE to use the new version of the Notification hubs SDK, but I won't be able to test it. Will you be able to verify the release? Perhaps build from source code?

@ErikMogensen I can test the change if you create a new build


Make in python/ fails on OS X

I'm getting this error when I run cd python; make on a clean checkout of master on OS X Version 10.14.6:
In file included from bindings.cc:11:
../tiny_obj_loader.h:312:3: error: unsupported: typedef changes linkage of anonymous type, but linkage was already computed
} material_t;
  ^
../tiny_obj_loader.h:169:15: note: use a tag name here to establish linkage prior to definition
typedef struct {
              ^
               material_t

I can't find a clear explanation of what the problem is, though I found a PR which solved a similar issue at falkTX/Carla#652 and the same fix worked. I'm not sure if the fix will make sense to you, or if there is a better way to fix the compilation. I'll open a PR.
$ clang --version
Apple clang version 11.0.0 (clang-1<IP_ADDRESS>)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

Here's the full build log:

python setup.py build
running build
running build_ext
building 'tinyobjloader' extension
clang -fno-strict-aliasing -fno-common -dynamic -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I../ -I../pybind11/include -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include<EMAIL_ADDRESS>-c bindings.cc -o build/temp.macosx-10.14-x86_64-2.7/bindings.o -std=c++11
In file included from bindings.cc:1:
In file included from ../pybind11/include/pybind11/pybind11.h:44:
In file included from ../pybind11/include/pybind11/attr.h:13:
In file included from ../pybind11/include/pybind11/cast.h:13:
In file included from ../pybind11/include/pybind11/pytypes.h:12:
In file included from ../pybind11/include/pybind11/detail/common.h:112:
In file included from /usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h:88:
/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:534:5: warning:
      'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
    register PyObject *obj,     /* Object */
    ^~~~~~~~~
/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:553:5: warning:
      'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
    register PyObject *obj      /* Object */
    ^~~~~~~~~
/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:575:5: warning:
      'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
    register const wchar_t *w,  /* wchar_t buffer */
    ^~~~~~~~~
/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:593:5: warning:
      'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
    register wchar_t *w,        /* wchar_t buffer */
    ^~~~~~~~~
In file included from bindings.cc:1:
In file included from ../pybind11/include/pybind11/pybind11.h:44:
In file included from ../pybind11/include/pybind11/attr.h:13:
In file included from ../pybind11/include/pybind11/cast.h:13:
In file included from ../pybind11/include/pybind11/pytypes.h:12:
In file included from ../pybind11/include/pybind11/detail/common.h:112:
In file included from /usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h:97:
/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/stringobject.h:173:5: warning:
      'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
    register PyObject *obj,     /* string or Unicode object */
    ^~~~~~~~~
/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/stringobject.h:174:5: warning:
      'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
    register char **s,          /* pointer to buffer variable */
    ^~~~~~~~~
/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/include/python2.7/stringobject.h:175:5: warning:
      'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
    register Py_ssize_t *len    /* pointer to length variable or NULL
    ^~~~~~~~~
In file included from bindings.cc:11:
../tiny_obj_loader.h:312:3: error: unsupported: typedef changes linkage of anonymous type, but linkage was already computed
} material_t;
  ^
../tiny_obj_loader.h:169:15: note: use a tag name here to establish linkage prior to definition
typedef struct {
              ^
               material_t
s7 warnings and 1 error generated.
error: command 'clang' failed with exit status 1
make: *** [all] Error 1

It looks typedef struct { is an non-standard way to define struct and recent Apple clang report this an error.
Since tinyobjloader moved to use C++11,
struct material_t {

};

may be more desirable to define struct.


Problems when adding lidar and camera sensors to the same robot on Ignition

Environment

OS Version:
Source or binary build?: Binary, igntion-gazebo-6.8.0

Description
Trying to spawn a simple 2-wheeled robot model (named "r2d2" here) in Ignition containing both lidar and camera sensor.

Expected behavior: The model is spawned and their respective topics are available, just what happens if the model is spawned with only one of the sensors.
Actual behavior: The simulator crashes and an error message is displayed.

Steps to reproduce

In the main xacro of a mode (in this case teste_bot), add  tags for each sensor

<gazebo reference="cam_front">
        <sensor name='${name}' type='camera'>
            <pose>${body_dim_x/2} 0 ${body_dim_z/2} 0 0 0</pose>
            <visualize>true</visualize>
            <update_rate>5</update_rate>
            <topic>${name}/camera_image</topic>
            <camera>
                <!-- <horizontal_fov>1.047</horizontal_fov> -->
                <image>
                    <!-- <width>320</width>
                    <height>240</height> -->
                    <width>640</width>
                    <height>420</height>
                    <!-- <format>B8G8R8</format> -->
                </image>
                <!-- <clip>
                    <near>0.1</near>
                    <far>100</far>
                </clip> -->
            </camera>

               <plugin filename="libignition-gazebo-sensors-system.so" name="ignition::gazebo::systems::Sensors">
          <render_engine>ogre</render_engine>
            </plugin>
        </sensor>
    </gazebo>

<gazebo reference="base_lidar">
        <sensor name="${name}" type='gpu_lidar'>
            <pose>0 0 ${body_height*0.6} 0 0 0</pose>
            <!-- <pose>0 0 1.0 0 0 0</pose> -->
            <topic>${name}/lidar</topic>
            <update_rate>10</update_rate>
            <ray>
                <scan>
                    <horizontal>
                        <!-- <samples>90</samples> -->
                        <samples>10</samples>
                        <resolution>1</resolution>
                        <min_angle>${-radians(20)}</min_angle>
                        <max_angle>${radians(20)}</max_angle>
                    </horizontal>
                    <vertical>
                        <samples>10</samples>
                        <resolution>1</resolution>
                        <min_angle>${-radians(10)}</min_angle>
                        <max_angle>${radians(10)}</max_angle>
                    </vertical>
                </scan>
                <range>
                    <!-- <min>0.08</min> -->
                    <min>0.1</min>
                    <max>2.0</max>
                    <resolution>0.01</resolution>
                </range>
            </ray>
            <always_on>1</always_on>
            <visualize>true</visualize>

            <plugin filename="libignition-gazebo-sensors-system.so" name="ignition::gazebo::systems::Sensors">
                <render_engine>ogre</render_engine>
            </plugin>
        </sensor>
    </gazebo>

Build the workspace: colcon build
Launch the simulator: ign gazebo empty.sdf --render-engine ogre
Spawn the robot: ign service -s /world/empty/create --reqtype ignition.msgs.EntityFactory --reptype ignition.msgs.Boolean --timeout 300 --req 'sdf_filename: "/home/lucas/ros2_ntu_ws/src/ntu_gazebo/models/teste_bot/urdf/teste_bot.urdf" '

Output
The simulator crashes and the following message is displayed:

I found out the problem: the plugin "ignition::gazebo::systems::Sensors" should be called only once, even though it is used by both sensors.

I found out the problem: the plugin "ignition::gazebo::systems::Sensors" should be called only once, even though it is used by both sensors.

Glad to hear it! It would be interesting to add some safety check to that plugin that prevents 2 instantiations.


Problem with accent

I have problem with accent, when show in backpack crud after inserted in DB, i can view correctly, but when receive data in my page out laravel obtain this: �
I have set in PHP in my all page this:
header("Content-Type: text/html;charset=utf-8");
and in html this
<meta charset="utf-8">
but not work.

@snakom23 I cannot honestly figure out what you are asking, at all.
I'd invite you to ask on Stack Overflow or in our Gitter channel so that more people can help with whatever it is that seems to be the problem.

@snakom I guess you are having trouble with encoding.
Make sure everything is utf-8
Database, files, etc
Mysql has something called “collation”. Check that


Fix implemention differences between triSYCL and DPC++ based sycl imp…

…lemention

Curious, this PR leads to a slow down of around +20%...
Perhaps the lacking perf of not using unary minus on sycl::vec?
At least hoisting the - out of the cross-product when it is possible should help.

Curious, this PR leads to a slow down of around +20%...
Perhaps the lacking perf of not using unary minus on sycl::vec?
At least hoisting the - out of the cross-product when it is possible should help.

Thanks.
Interestingly, hoisting the - out of the cos fixed the slowdown issue!

Thanks.
Interestingly, hoisting the - out of the cos fixed the slowdown issue!


Default export snippet doesnt work in .js file

Since ed (default export) snippet is defined in javascriptreact.json it's not suggested in files with javascript (not javascript react) syntax which are all with .js extension.
Easy fix is duplicate the snippet in javascript.json, but we should find (or invent 🙂) solution for sharing snippets across syntaxes.

I've added it to javascript.json. A way for sharing snippets between syntaxes would be great, but I don't know if it is possible. 🤔


match pico8 title generator

this changes shrinko8 to bring it line with how pico8 generates titles in .p8.png labels, in some edge cases.
(depends on #16, but it can be easily split apart if you decide you don't want #16)

@pancelor - small Q: why was the "\s*" bit added to the regex? It has no effect as added since the "(.*)" before it consumes any trailing spaces anyway. Plus, can we even tell if p8 draws trailing spaces, given they're blank?

oh, good point! I meant it as a way to not include trailing spaces , but as you've pointed out it doesn't actually do that. and no, idk what pico-8 does with trailing spaces but I just figured it'd be nice to not store extras. ("can we even tell" - not afaik! I wondered the same thing)
there was no specific example that prompted me to add it; it can be removed


rustup: 1.18.1 -> 1.18.2

Motivation for this change
Update rustup to the latest release.
https://github.com/rust-lang/rustup.rs/releases/tag/1.18.2
Changes: https://github.com/rust-lang/rustup.rs/blob/1.18.2/CHANGELOG.md
cc maintainer @Mic92
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build rustup

@GrahamcOfBorg build rustup

I've added a fix for the darwin build, I hope you don't mind.
Built and tested locally on NixOS and darwin.
@xrelkd thanks!

@marsam Thanks for adding the fix for darwin build and merging this PR.