LittleBigPlanet™ PlayStation®Vita [PCSA00017]

App summary

App name: LittleBigPlanet™ PlayStation®Vita
App serial: PCSA00017
App version: 1.00

Vita3K summary

Version: v0.1.2
Build number: 2122
Commit hash: https://github.com/vita3k/vita3k/commit/ee4ed30d430a4ed8ea8c0d2fbaeaee599d77a797

Test environment summary

Tested by: ?
OS: Windows 10
CPU: AMD
GPU: AMD
RAM: 8 GB

Issues

Crash during boot, various unimplemented or stubbed functions.
Screenshots

None
Log
vita3k.log
Recommended labels

function missing
crash
black screen

Can't reproduce. Even tried using the same version you were using. The game displays the warning screen, then the ESRB screen, then the loading screen (with some graphical glitches) and then eventually changes into a black screen.
Newer versions seem to have a regressed though. The game starts with a black screen, then eventually displays part of the loading screen for a split second before going back to a black screen.

LBPV seems to have gotten better within this year on the latest at this moment. 5fb2c75fc45f5ac77a5b37a05bde4d19409dbe1d
Has the current issue of a lot of failing unknown color formats, and surface format uncastablity, but will run without major functional issue. But it has now lost text as a possible regression to previous commits, but the text was there in the last build tested privately, I believe 9889c472a986e54359a120eee3e51cccd40f9e77 but I'm not guaranteed certain.
vita3k.zip

As of Vita3K/Vita3K@05cd419 the text is appearing again and the graphics are fixed so there's no annoying yellow square blocking the view

.

As of Vita3K/Vita3K@771e829, lighting has been improved and audio is now working but it sounds robotic and slow. I got some screenshots of it running on a 10th gen Core i7 with a RTX 2080 SUPER and 32GB RAM with Windows 11.

Not to mention that game freezes for a few seconds when compiling shaders. I have a log file but I can't share it just yet.

Vita3K/Vita3K@692549a has fixed the rendering a bit more with a Nvidia GPU. Images in prize bubbles are now appearing and some models in the introduction map now show textures. I also uploaded 2 images showing the world model rendering on a May 27, 2022 build of Vita3K to the rendering on the current build just to show how much progress has been made on the graphics part.

May 27, 2022

November 7, 2022

In Vita3K/Vita3K@6ee36b6, the models and backgrounds are now as bright as they are on a real PS Vita. Take a look at this picture:

In Vita3K/Vita3K@4a50a4e, some images in prize bubbles and in UI look corrupted with shader compilation, however most textures load correctly with upscaling enabled. I have a log file but I was forced to put it in a ZIP file because the log file was COLOSSAL.
vita3k.zip

On latest Vita3K build, audio is faster but still sounds robotic.

The vulkan renderer only needs surface synchronization to play normally.Now you can only play creative mode.

I will try Vulkan nown

@sans-2233 Your screenshot was made in Android, with Vulkan I get this:

You can open the plane view angle in the creative mode, and it will be displayed normally when you return to the space capsule.

@ArbestRi You can open the plane view angle in the creative mode, and it will be displayed normally when you return to the space capsule.

How? I only see this (this is on OpenGL)

You need to complete the first chapter of story mode to unlock the creation mode

The vulkan renderer only needs surface synchronization to play normally.Now you can only play creative mode.

How did you manage to make it to render? All i get is white screen on vita3k android.

The game requires surface sync to render properly. Try running LBPV with Vulkan and the surface sync PR build on a PC

In Vita3K build 3095, graphics are magnitudes improved with Vulkan renderer. I can't upload images anymore but try this game with the Vulkan renderer with enabled surface sync and on a PC and see how it runs.

Why does the game crash when I use the vulkan renderer

@sans-2233 Restart Vita3K when switching between render backends

It doesn't seem to work. The game flashes when the game is rendering the capsule.

It doesn't seem to work. The game flashes when the game is rendering the capsule.

How can I solve this problem?

How can I solve this problem?

Likely a driver problem, if you can try updating them to see if that fixes it.

This might be Ingame+ now, the weird lines on the screen have been fixed in the recent updates

Vita3K summary

Version: v0.1.8
Build number: 3164
Commit hash: https://github.com/vita3k/vita3k/commit/c453f24c
CPU backend: Dynarmic
GPU backend: Vulkan

Hello, @ArbestRiAgain could I aks what hardware are you using, and what settings did you use to manage to run this game without graphical issues since I am unable to reproduce this on any of my devices.

Shader cache enabled on Vita3K. also:

Intel Core i7 10700F
16GB RAM
GeForce RTX 2060 SUPER
Windows 11 Home (Build 22621)

After the FSR support update, the rendering on Vulkan is broken.

There's a PR on Vita3K that fixes surface sync on Vulkan, will remove last comment when it's merged

Played for 13 minutes on latest build, with FSR and 2x upscaling. Robotic audio and the unneeded head tilting has been fixed, but when adding stickers to the pod, almost all of it turns yellow.

Cubeb audio backend should fix the audio I suppose?

Yes, I also used Cubeb. The pod looks normal if you don't add any stickers on it

👍

Anyways to get this progress to the android APK?

On latest Vita3K build, overlapping text has been fixed and some other graphical bugs were fixed.

We should move this to Playable!

the very first introductory level is broken, shadows were all over the place at one point, game is darker than normal so it's ingame+ but a lot of progress has been made!

how about Android

?

Pero Como lo Descargo?

This doesn't seem very playable to me yet. On my Steam Deck (AMD APU, Linux) this game's 3D elements are mostly white with just a few green or gray visible shapes from time to time. While on my PC (NVIDIA GPU, Windows) the game just looks broken. I attached a screenshot of the tutorial level there.

here's a screenshot from the Steam Deck using Vulkan, in case someone was wondering what I mean.
Quite weird that the bottom left corner looks normal. That makes me assume that this could be easily fixed.

try opengl. vulkan works really poorly for me in vita3k on the steam deck

Having the same problems on my Steam Deck. With OpenGL, there are a ton of graphical issues, but the main one is that most of the screen is blurred.

Vulkan is way worse. All white and green.

This doesn't seem very playable to me yet. On my Steam Deck (AMD APU, Linux) this game's 3D elements are mostly white with just a few green or gray visible shapes from time to time. While on my PC (NVIDIA GPU, Windows) the game just looks broken. I attached a screenshot of the tutorial level there.

Heya, funny question, but has this issue been fixed on the Steam Deck yet? Thanks in advance!

No.

On my Redmi Note 7 (Not a powerful phone by any means) it crashes right at the start if I choose Vulkan and shows a white screen with OpenGL, wish an incredibly laggy audio
If I understood it right from this thread - the game doesn't run on Android devices?

ive downloaded the log im on a high end laptop and im getting a white screen how come on can run lbp on ps3 emu but cant run lbp vita without a white screen the pause menu is there but theres is no player theres subtitles two and the intro cutscene is there and so is the warning so why isnt it working

ive downloaded the log im on a high end laptop and im getting a white screen how come on can run lbp on ps3 emu but cant run lbp vita without a white screen the pause menu is there but theres is no player theres subtitles two and the intro cutscene is there and so is the warning so why isnt it working

You need surface sync enabled in Vita3K GPU settings

Situation got only worse on the Steam Deck with recent updates. Vulkan got weird flickering in addition to being white, and the audio is extremely slow and stuttering.

on Macbook 2020 lbp has no Image and has a glitch that crashes

With the latest Vita3K update, in the introduction level the graphics that are supposed to be displayed at the start flicker at certain moments.

Also for whatever reason the game forces the SDL audio backend now.

I'm still getting the robotic audio and lot of graphics elements are missing :/

I'm still getting the robotic audio and lot of graphics elements are missing :/

At least in the introduction level many graphics are missing.

Can someone test the game now?

Can someone test the game now?

Test it yourself

@yaboifungi There is graphicals issue and missings objects. And there is some slow down. But the audio is okay when using Cubeb Audio backend.

Can someone test the game now?

Test it yourself

Bro my phone is mali🙉

Can someone test the game now?

Test it yourself

Bro my phone is mali🙉

Totally forgot Vita3K even had Android version...

Can someone test the game now?

Test it yourself

Bro my phone is mali🙉

Totally forgot Vita3K even had Android

version..I'm boutta cheese neck the back of yo head

Can someone test the game now?

Test it yourself

Bro my phone is mali🙉

Totally forgot Vita3K even had Android

version..I'm boutta cheese neck the back of yo head

Good luck, wish you the best :)

Still looking quite bad on Steam Deck. The game seems to be running smooth and audio is great, but the environment flickers between somewhat normal and very white multiple times a second. Unfortunately unplayable like this. (Vulkan graphics)

ive downloaded the log im on a high end laptop and im getting a white screen how come on can run lbp on ps3 emu but cant run lbp vita without a white screen the pause menu is there but theres is no player theres subtitles two and the intro cutscene is there and so is the warning so why isnt it working

You need surface sync enabled in Vita3K GPU settings

I have the same problem as them, but when I click the button to toggle "Disable Surface Sync", nothing happens..

Surface Sync enabled or disabled changes nothing for me, I can have graphics. But yeah vita3k settings menu is glitched

I didn't realize I was using OpenGL earlier, now with surface sync enabled the game seems to be rendering a lot better, but almost every shader looks off or broken still.
an example of the broken shaders is this star that looks like it is leaving a weird ghost on the screen

vita3k.log

Any updates?

I've been testing the game periodically on my Steam Deck and last I tried it, it was still as broken as it was when I previously reported about it. No clue about other platforms, tho.

Found something while testing the game on the Steam Deck with Vulkan. While the game is usually all white and green as shown previously, it'll occasionally sometimes flicker out, allowing you to see the game for a single frame. I found that if you downclock the GPU to the minimum 200MHz, those flickers of normalcy get far more common. And if you force the max GPU clock of 1600MHz, the flickers never happen. So this issue is timing-sensitive.
EDIT: If on top of downclocking you increase Internal Resolution Upscaling to slow the GPU even further, the situation is reversed game ends up looking normal most of the time, with occasional white flickers:

But of course, performance suffers heavily, so it doesn't really make the game playable...

This does work for steam deck. it does have the weird blur that you can also find in the windows version. it's not that big of a problem but it still bugs me. do you know any fixes to it?

It does show up in Vulkan. I'm not sure if blur is the correct word but I'll send a few videos if i can get some.

Found something while testing the game on the Steam Deck with Vulkan. While the game is usually all white and green as shown previously, it'll occasionally sometimes flicker out, allowing you to see the game for a single frame. I found that if you downclock the GPU to the minimum 200MHz, those flickers of normalcy get far more common. And if you force the max GPU clock of 1600MHz, the flickers never happen. So this issue is timing-sensitive.
EDIT: If on top of downclocking you increase Internal Resolution Upscaling to slow the GPU even further, the situation is reversed and the game ends up looking normal most of the time, with occasional white flickers:

But of course, performance suffers heavily, so it doesn't really make the game playable...
EDIT2: I think I found something of a sweet spot. Using Vulkan renderer, 2x Internal Resolution, 16x Anisotropic Filtering, Surface Sync, Normal GPU Accuracy and the Steam Deck GPU clocked to 200MHz, you get a stable 30fps while the white flickers are still infrequent enough for the game to be roughly "playable". It's not very pleasant, the white flickers still happen regularly and there is a myriad of other minor graphical issues outside of that, but I still had no trouble getting through the first couple of stages this way. If you're on Steam Deck and you're really desperate to play LBP Vita, this is the way.

Works well enough me with these settings to be able to pass levels on Windows 10.


How to capture a custom widget having multiple custom painter as an image in web

I have a custom widget which consists of multiple custom painter, I want to export the widget as an image. For that, I have placed the widget inside the RepaintBoundary and get its dart:ui.image. With the dart:ui.image, I have rendered the custom widget as an image.
import 'dart:async';
import 'dart:ui' as dart_ui;
import 'package:flutter/rendering.dart';
import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);
  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  MyContainer _container = MyContainer();
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        // Center is a layout widget. It takes a single child and positions it
        // in the middle of the parent.
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            _container,
            RaisedButton(
              child: Text(
                'To Image',
              ),
              onPressed: _renderImage,
              shape: RoundedRectangleBorder(
                  borderRadius: BorderRadius.circular(20)),
            ),
          ],
        ),
      ),
    );
  }

  Future<void> _renderImage() async {
    final dart_ui.Image data = await _container._toImage();
    final bytes = await data.toByteData(format: dart_ui.ImageByteFormat.png);
    if (data != null) {
      await Navigator.of(context).push(
        MaterialPageRoute(
          builder: (BuildContext context) {
            return Scaffold(
              appBar: AppBar(),
              body: Center(
                child: Container(
                  color: Colors.white,
                  child: Image.memory(bytes.buffer.asUint8List()),
                ),
              ),
            );
          },
        ),
      );
    }
  }
}

class MyContainer extends StatefulWidget {
  MyContainer({
    Key key,
  }) : super(key: key);

  _MyContainerState _currentState;
  @override
  _MyContainerState createState() {
    _currentState = _MyContainerState();
    return _currentState;
  }

  Future<dart_ui.Image> _toImage() async {
    return _currentState._toImage();
  }
}

class _MyContainerState extends State<MyContainer> {
  BuildContext _currentContext;
  @override
  Widget build(BuildContext context) {
    _currentContext = context;
    return RepaintBoundary(
      child: Container(
        height: 200,
        width: 200,
        color: Colors.blue,
      ),
    );
  }

  Future<dart_ui.Image> _toImage() async {
    final RenderRepaintBoundary boundary = _currentContext.findRenderObject();
    final dart_ui.Image data = await boundary.toImage(pixelRatio: 3.0);
    return data;
  }
}

Note: Since my widget has n number of the custom painter, in the above I have exposed the core logic of conversion with a container widget.
The above code is working fine on mobile. But on the web, exporting is not working.
Regards,
Devi

Seems like toImage is not supported on web yet. This is being logged to the console correctly in most cases. These all say as much in the exception (to varying degrees of clarity):

flutter run -d chrome --release
Uncaught Unsupported operation: toImage is not supported on the Web
    at Object.b (http://localhost:60745/main.dart.js:2588:3)
    at lj.Mv (http://localhost:60745/main.dart.js:18326:26)
    at http://localhost:60745/main.dart.js:31841:15
    at Rw.a (http://localhost:60745/main.dart.js:3920:72)
    at Rw.$2 (http://localhost:60745/main.dart.js:21663:23)
    at Object.ac (http://localhost:60745/main.dart.js:3906:20)
    at hL.Mw (http://localhost:60745/main.dart.js:31857:10)
    at hL.me (http://localhost:60745/main.dart.js:31828:30)
    at http://localhost:60745/main.dart.js:39950:15
    at Rw.a (http://localhost:60745/main.dart.js:3920:72)

`flutter run --dart-define=FLUTTER_WEB_USE_SKIA=true -d chrome`
:60853/dart_sdk.js:5964 Uncaught (in promise) Error: Unsupported operation: LayerScene.toImage not implemented.
    at Object.throw_ [as throw] (:60853/dart_sdk.js:4330)
    at _engine.LayerScene.new.toImage (:60853/dart_sdk.js:139530)
    at layer$.OffsetLayer.new.toImage (:60853/packages/flutter/src/rendering/layer.dart.lib.js:1615)
    at toImage.next (<anonymous>)
    at runBody (:60853/dart_sdk.js:37610)
    at Object._async [as async] (:60853/dart_sdk.js:37641)
    at layer$.OffsetLayer.new.toImage (:60853/packages/flutter/src/rendering/layer.dart.lib.js:1606)
    at proxy_box.RenderRepaintBoundary.new.toImage (:60853/packages/flutter/src/rendering/proxy_box.dart.lib.js:3002)
    at main._MyContainerState.new._toImage (:60853/packages/master/main.dart.lib.js:706)
    at _toImage.next (<anonymous>)
    at runBody (:60853/dart_sdk.js:37610)
    at Object._async [as async] (:60853/dart_sdk.js:37641)
    at main._MyContainerState.new.[_toImage] (:60853/packages/master/main.dart.lib.js:704)
    at main.MyContainer.new._toImage$ (:60853/packages/master/main.dart.lib.js:666)
    at _toImage$.next (<anonymous>)
    at runBody (:60853/dart_sdk.js:37610)
    at Object._async [as async] (:60853/dart_sdk.js:37641)
    at main.MyContainer.new.[_toImage] (:60853/packages/master/main.dart.lib.js:665)
    at main._MyHomePageState.new._renderImage (:60853/packages/master/main.dart.lib.js:633)
    at _renderImage.next (<anonymous>)
    at runBody (:60853/dart_sdk.js:37610)
    at Object._async [as async] (:60853/dart_sdk.js:37641)
    at main._MyHomePageState.new.[_renderImage] (:60853/packages/master/main.dart.lib.js:632)
    at ink_well._InkResponseState.new.[_handleTap] (:60853/packages/flutter/src/material/icon_button.dart.lib.js:47080)
    at :60853/packages/flutter/src/material/icon_button.dart.lib.js:47182
    at tap.TapGestureRecognizer.new.invokeCallback (:60853/packages/flutter/src/gestures/recognizer.dart.lib.js:189)
    at tap.TapGestureRecognizer.new.handleTapUp (:60853/packages/flutter/src/gestures/tap.dart.lib.js:395)
    at tap.TapGestureRecognizer.new.[_checkUp] (:60853/packages/flutter/src/gestures/tap.dart.lib.js:201)
    at tap.TapGestureRecognizer.new.handlePrimaryPointer (:60853/packages/flutter/src/gestures/tap.dart.lib.js:148)
    at tap.TapGestureRecognizer.new.handleEvent (:60853/packages/flutter/src/gestures/recognizer.dart.lib.js:448)
    at pointer_router.PointerRouter.new.[_dispatch] (:60853/packages/flutter/src/gestures/pointer_router.dart.lib.js:74)
    at :60853/packages/flutter/src/gestures/pointer_router.dart.lib.js:109
    at LinkedMap.new.forEach (:60853/dart_sdk.js:24747)
    at pointer_router.PointerRouter.new.[_dispatchEventToRoutes] (:60853/packages/flutter/src/gestures/pointer_router.dart.lib.js:106)
    at pointer_router.PointerRouter.new.route (:60853/packages/flutter/src/gestures/pointer_router.dart.lib.js:98)
    at binding$5.WidgetsFlutterBinding.new.handleEvent (:60853/packages/flutter/src/gestures/binding.dart.lib.js:166)
    at binding$5.WidgetsFlutterBinding.new.dispatchEvent (:60853/packages/flutter/src/gestures/binding.dart.lib.js:149)
    at binding$5.WidgetsFlutterBinding.new.[_handlePointerEvent] (:60853/packages/flutter/src/gestures/binding.dart.lib.js:120)
    at binding$5.WidgetsFlutterBinding.new.[_flushPointerEventQueue] (:60853/packages/flutter/src/gestures/binding.dart.lib.js:93)
    at binding$5.WidgetsFlutterBinding.new.[_handlePointerDataPacket] (:60853/packages/flutter/src/gestures/binding.dart.lib.js:83)
    at Object._invoke1 (:60853/dart_sdk.js:175193)
    at _engine.EngineWindow.new.invokeOnPointerDataPacket (:60853/dart_sdk.js:171139)
    at _engine.PointerBinding.__.[_onPointerData] (:60853/dart_sdk.js:144863)
    at :60853/dart_sdk.js:145250
    at :60853/dart_sdk.js:145209
    at :60853/dart_sdk.js:144962

flutter run --dart-define=FLUTTER_WEB_USE_SKIA=true -d chrome --release
js_helper.dart:1129 Uncaught Unsupported operation: LayerScene.toImage not implemented.
    at Object.a (http://localhost:60461/main.dart.js:1557:3)
    at uA.M6 (http://localhost:60461/main.dart.js:13472:26)
    at http://localhost:60461/main.dart.js:27725:15
    at PY.a (http://localhost:60461/main.dart.js:3034:72)
    at PY.$2 (http://localhost:60461/main.dart.js:17790:23)
    at Object.ac (http://localhost:60461/main.dart.js:3020:20)
    at hr.M7 (http://localhost:60461/main.dart.js:27741:10)
    at hr.lx (http://localhost:60461/main.dart.js:27712:30)
    at http://localhost:60461/main.dart.js:35839:15
    at PY.a (http://localhost:60461/main.dart.js:3034:72)

However, with just regular debug build it says something entirely different.

flutter run -d chrome
:61640/dart_sdk.js:5964 Uncaught (in promise) Error: Assertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/surface/scene_builder.dart:92:16
matrix4[0] == window.devicePixelRatio &&
           matrix4[5] == window.devicePixelRatio
is not true
    at Object.throw_ [as throw] (:61640/dart_sdk.js:4330)
    at Object.assertFailed (:61640/dart_sdk.js:4277)
    at _engine.SurfaceSceneBuilder.new.pushTransform (:61640/dart_sdk.js:162788)
    at layer$.OffsetLayer.new.toImage (:61640/packages/flutter/src/rendering/layer.dart.lib.js:1612)
    at toImage.next (<anonymous>)
    at runBody (:61640/dart_sdk.js:37610)
    at Object._async [as async] (:61640/dart_sdk.js:37641)
    at layer$.OffsetLayer.new.toImage (:61640/packages/flutter/src/rendering/layer.dart.lib.js:1606)
    at proxy_box.RenderRepaintBoundary.new.toImage (:61640/packages/flutter/src/rendering/proxy_box.dart.lib.js:3002)
    at main._MyContainerState.new._toImage (:61640/packages/master/main.dart.lib.js:706)
    at _toImage.next (<anonymous>)
    at runBody (:61640/dart_sdk.js:37610)
    at Object._async [as async] (:61640/dart_sdk.js:37641)
    at main._MyContainerState.new.[_toImage] (:61640/packages/master/main.dart.lib.js:704)
    at main.MyContainer.new._toImage$ (:61640/packages/master/main.dart.lib.js:666)
    at _toImage$.next (<anonymous>)
    at runBody (:61640/dart_sdk.js:37610)
    at Object._async [as async] (:61640/dart_sdk.js:37641)
    at main.MyContainer.new.[_toImage] (:61640/packages/master/main.dart.lib.js:665)
    at main._MyHomePageState.new._renderImage (:61640/packages/master/main.dart.lib.js:633)
    at _renderImage.next (<anonymous>)
    at runBody (:61640/dart_sdk.js:37610)
    at Object._async [as async] (:61640/dart_sdk.js:37641)
    at main._MyHomePageState.new.[_renderImage] (:61640/packages/master/main.dart.lib.js:632)
    at ink_well._InkResponseState.new.[_handleTap] (:61640/packages/flutter/src/material/icon_button.dart.lib.js:47080)
    at :61640/packages/flutter/src/material/icon_button.dart.lib.js:47182
    at tap.TapGestureRecognizer.new.invokeCallback (:61640/packages/flutter/src/gestures/recognizer.dart.lib.js:189)
    at tap.TapGestureRecognizer.new.handleTapUp (:61640/packages/flutter/src/gestures/tap.dart.lib.js:395)
    at tap.TapGestureRecognizer.new.[_checkUp] (:61640/packages/flutter/src/gestures/tap.dart.lib.js:201)
    at tap.TapGestureRecognizer.new.handlePrimaryPointer (:61640/packages/flutter/src/gestures/tap.dart.lib.js:148)
    at tap.TapGestureRecognizer.new.handleEvent (:61640/packages/flutter/src/gestures/recognizer.dart.lib.js:448)
    at pointer_router.PointerRouter.new.[_dispatch] (:61640/packages/flutter/src/gestures/pointer_router.dart.lib.js:74)
    at :61640/packages/flutter/src/gestures/pointer_router.dart.lib.js:109
    at LinkedMap.new.forEach (:61640/dart_sdk.js:24747)
    at pointer_router.PointerRouter.new.[_dispatchEventToRoutes] (:61640/packages/flutter/src/gestures/pointer_router.dart.lib.js:106)
    at pointer_router.PointerRouter.new.route (:61640/packages/flutter/src/gestures/pointer_router.dart.lib.js:98)
    at binding$5.WidgetsFlutterBinding.new.handleEvent (:61640/packages/flutter/src/gestures/binding.dart.lib.js:166)
    at binding$5.WidgetsFlutterBinding.new.dispatchEvent (:61640/packages/flutter/src/gestures/binding.dart.lib.js:149)
    at binding$5.WidgetsFlutterBinding.new.[_handlePointerEvent] (:61640/packages/flutter/src/gestures/binding.dart.lib.js:120)
    at binding$5.WidgetsFlutterBinding.new.[_flushPointerEventQueue] (:61640/packages/flutter/src/gestures/binding.dart.lib.js:93)
    at binding$5.WidgetsFlutterBinding.new.[_handlePointerDataPacket] (:61640/packages/flutter/src/gestures/binding.dart.lib.js:83)
    at Object._invoke1 (:61640/dart_sdk.js:175193)
    at _engine.EngineWindow.new.invokeOnPointerDataPacket (:61640/dart_sdk.js:171139)
    at _engine.PointerBinding.__.[_onPointerData] (:61640/dart_sdk.js:144863)
    at :61640/dart_sdk.js:145250
    at :61640/dart_sdk.js:145209
    at :61640/dart_sdk.js:144962

Going to mark this as an error message issue on the latest master 1.21.0-10.0.pre.114.

flutter doctor -v
[√] Flutter (Channel master, 1.21.0-10.0.pre.135, on Microsoft Windows [Version 10.0.19041.450], locale en-US)
    • Flutter version 1.21.0-10.0.pre.135 at C:\Development\flutter_master
    • Framework revision 654022aecb (6 hours ago), 2020-08-18 03:01:02 +0300
    • Engine revision b9243713a0
    • Dart version 2.10.0 (build 2.10.0-36.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at C:\Users\marku\AppData\Local\Android\sdk
    • Platform android-30, build-tools 30.0.1
    • Java binary at: C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\193.6626763\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

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

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

[√] Android Studio (version 4.0)
    • Android Studio at C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\193.6626763
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] Connected device (5 available)
    • SM G950F (mobile)           • ce12171c51cc001c03 • android-arm64  • Android 9 (API 28)
    • sdk gphone x86 arm (mobile) • emulator-5554      • android-x86    • Android 11 (API 30) (emulator)
    • Windows (desktop)           • windows            • windows-x64    • Microsoft Windows [Version 10.0.19041.450]
    • Web Server (web)            • web-server         • web-javascript • Flutter Tools
    • Chrome (web)                • chrome             • web-javascript • Google Chrome 84.0.4147.125

• No issues found!


doc: add npcheck report for Q2 2024

@lholmquist I accidentally merged, can you take a look. If you spot anything let me know and I'll update.

Everything looks good


Rename Repromise.then_ to Repromise.andThen

Fixes #26

Thanks! It seems andThen vs. flatMap is still controversial, actually. But, since andThen is a really unique identifier, we can merge this now, and do a blind search-replace to flatMap later, if that's what people turn out to really want. So, this PR is quite useful no matter the final exact naming :)

Ok, it's released (as andThen) in @aantron/repromise 0.6.0. Thanks again!

I think andThen will appear friendlier to people that aren't deeply engrained in functional things or ocaml.


** (Mix) The task "sentinel.gen.views" could not be found

Maybe I missed something important, but the instructions and source code seem to indicate the mix task sentinel.gen.views should exist.  I get the following error when I try to use it.
** (Mix) The task "sentinel.gen.views" could not be found

The task does not exist in deps/sentinel/lib/mix/tasks/.

Currently master and the latest hex release have diverged, I'm working on a few more changes before the next release because the next hex release will contain breaking changes, and I want to get all of the breaking changes that are on the immediate horizon out of the way. Sorry about the confusion.

Thank you for the clarification.

Yeah, in the future master will remain up to date with the latest hex release, and a dev or version branch will contain the changes. Again, sorry about the confusion.


Required password breaks integration with other authentication systems

Integration of flask-user with other authentication systems, specifically OAuth and other SSO solutions, leads to an error during validation.  See pull-request #101 for a fix.

@pbugni : Your pull request has been merged. Thank you for your contribution!


[gdal] control dependency on libspatialite

Fixes https://github.com/microsoft/vcpkg/issues/33039

Okay as a temporary workaround until the next gdal release.
FTR the problem is not bad control of dependencies but bad cmake code (https://github.com/OSGeo/gdal/pull/8173#discussion_r1287362872).

Can we fix it with a patch?

I will backport the gdal fixes as part of #33044.
We don't have a problem inside the vcpkg universe. The issue needs an external installation of libspatialite 5.1.0 headers, and that release is only one week old.

@autoantwort, This error broke out again in the latest CI test, but I can't reproduce this error locally. I would like to ask is there a necessary condition for this error to reproduce?
https://dev.azure.com/vcpkg/public/_build/results?buildId=93111&view=logs&j=3859ca13-59fe-57bd-13f9-449df7d191a6&t=fd8b99e7-4eca-52cb-a612-b91f191f402c
CMake Error at D:/installed/x64-windows-static/share/gdal/packages/FindSPATIALITE.cmake:67 (string):
  string sub-command REGEX, mode REPLACE needs at least 6 arguments total to
  command.

Maybe try brew install libspatialite and then vcpkg x-set-installed gdal[core]

Oh nvm. The error happened on windows. Try to use this patch: https://github.com/OSGeo/gdal/commit/37391454a76d1d798e5a872dd2e1d8ee45a7a773

It is not gdal which fails now...

I would like to ask is there a necessary condition for this error to reproduce?

It is necessary

to install libspatialite 5.1.0 (installing the new header),
to install gdal (installing a broken FindSPATIALITE.cmake), and
to install some port which depends on gdal.  (Which one did fail???)

with find_package(GDAL) (changing CMAKE_MODULE_PATH)
not having pkgconf/pkgconfig available (because this would deliver the spatialite version in another way).
doing an direct or nested find_package(SPATIALITE).

@autoantwort @dg0yt，Thanks for your reproduction steps and solutions, I successfully reproduced this ci error locally and submitted a PR #33332.


hook up CI

[x] I agree to follow the project's code of conduct.
[n/a] I added an entry to CHANGES.md if knowledge of this change could be valuable to users.

Finishes #13 by hooking up CI.
By default cargo test will run against the short data set. cargo test --features full_test will run agains the long one.
CI will run full_test (full_test is maybe a bit too slow to run all the time for interactive development feedback, but it's not too long for CI).

The new CI has passed! Please take a look @stonylohr

The new CI has passed! Please take a look @stonylohr

bors try
... lets see if bors got hooked up correctly.

bors try
... lets see if bors got hooked up correctly.

I've pushed up a change so that, by default, the tests can run without downloading any additional data. Would hate to have the tests fail on first download for folks.
Any feedback on this before I merge @stonylohr?

I've pushed up a change so that, by default, the tests can run without downloading any additional data. Would hate to have the tests fail on first download for folks.
Any feedback on this before I merge @stonylohr?

@michaelkirk I don't see any obvious issues in a naive review, but it's using a few tricks I don't know very well, and I lack time to try pulling and running it now. In principle, I really like your approach of defaulting to minimal, while offering the other options, and scripting the data download. In terms of a simple baseline, the unit tests feel pretty good to me at this point.
I would favor also expanding the benchmarks before starting on troubleshooting the core code. This might boil down to offering the same builtin/small/full options on the rs benches that you added to the unit tests. I suggest replacing the benches' current data-copying approach with Arc+Mutex at the same time. That improved speed by about 66% in some benches I compared, though it may depend in part on the size of the test dataset. Maybe the bench changes should be a separate PR, though? I'm fine either way.

@michaelkirk I don't see any obvious issues in a naive review, but it's using a few tricks I don't know very well, and I lack time to try pulling and running it now. In principle, I really like your approach of defaulting to minimal, while offering the other options, and scripting the data download. In terms of a simple baseline, the unit tests feel pretty good to me at this point.
I would favor also expanding the benchmarks before starting on troubleshooting the core code. This might boil down to offering the same builtin/small/full options on the rs benches that you added to the unit tests. I suggest replacing the benches' current data-copying approach with Arc+Mutex at the same time. That improved speed by about 66% in some benches I compared, though it may depend in part on the size of the test dataset. Maybe the bench changes should be a separate PR, though? I'm fine either way.

bors r+
Thanks for looking @stonylohr.

I would favor also expanding the benchmarks before starting on troubleshooting the core code

Seems like a good idea. I've created a new issue for that https://github.com/georust/geographiclib-rs/issues/19

bors r+
Thanks for looking @stonylohr.

I would favor also expanding the benchmarks before starting on troubleshooting the core code

Seems like a good idea. I've created a new issue for that https://github.com/georust/geographiclib-rs/issues/19


Dependencies generated can not be pulled due to name

The dependencies generated contain message area's named >0 etc.

The two function modules at the end are:
AA_DEP_KEY_IS_UOP?
AA_DEPR_KEY_IS_UOP?
The include a question mark in the name.

heh, hmm, git is okay with the filenames, but windows is limited, not sure about linux,

guessing this will be solved by https://github.com/larshp/abapGit/pull/3564

verified issue is fixed.

Need to reopen. Issue is still there.

This also blocks VisualCode extension AbapLint from retrieving the dependencies.

ref https://github.com/larshp/abapGit/issues/3817

All dependency files now can be cloned on Windows.
Issue resolved. Thanks


Reworded phrasing in ISSUE_TEMPLATE.md

Pre-Submission Checklist

[x] Your pull request targets the staging branch of FreeCodeCamp.
[x] Branch starts with either fix/, feature/, or translate/ (e.g. fix/signin-issue)
[x] You have only one commit (if not, squash them into one commit).
[ ] All new and existing tests pass the command npm run test-challenges. Use git commit --amend to amend any fixes.

Type of Change

[x] Small bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds new functionality)
[ ] Breaking change (fix or feature that would change existing functionality)
[ ] Add new translation (feature adding new translations)

Checklist:

[ ] Tested changes locally.
[x] Closes currently open issue (replace XXXX with an issue no): Closes #9357

Description

Rewords a line in the issue template
close #9357

Hi @kalila855 thanks a lot for the PR, but we were looking forward to move the line above the ```js line as well.
Apologies if we did not make that clear in the original issue thread.
Here is what you gotta do:

Close this PR.
Visit your fork, and open the Issue Template file.
Modify the lines like below:

#### Your Code
<!-- If relevant, paste all of your challenge code after this line -->
```js

Do not add any issue nos in title or the commit message title/description.
After you open a new pull request, just replace the XXXX mentioned in the PR description.

Thanks once again for your contribution.

@kalila855 if you're going to close this PR and open a new one then, please, make sure you follow your branch naming too. See @camperbot's comment.
@raisedadead without following the branching name rule there is no reason to close this PR IMO because this commit can be easily amended in that case.

created the new pull request


Fix contract order fuzzing

Codecov Report
Patch and project coverage have no change.

Comparison is base (88a8b19) 100.00% compared to head (91f3a32) 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##               1.5     #1163    +/-   ##
==========================================
  Coverage   100.00%   100.00%
==========================================
  Files           46        46
  Lines         2652      2414   -238
  Branches       396       354    -42
==========================================
- Hits          2652      2414   -238

Flag
Coverage Δ

foundry
?

production
100.00% <ø> (ø)

reference
100.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
see 29 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


[Bug] Request filter search with * character

Insomnia Version: v5.9.2
Operating System: MacOS v10.12.6 Sierra

Details

I just typed * in the requests filter then it went completely out of control.
Even after Insomnia restarted
Nothing but About insomnia works.
So I had to reinstall the whole app.

Uh oh. Fixing now! 😄

I'm also working on better error handling so that things like this cannot take down the whole app #527

Hi @dsteveahn. This is fixed now in 5.9.6 😄

Cool! Thanks for making a great tool

You're welcome! 😄


更新到<IP_ADDRESS>207240747版本后，不再支持多屏自动缩放。

这次升级开了倒车。 我之前的版本支持多个屏幕直接拖放后自动缩放的。更新到这个版本后不再支持这种缩放了。这个是要抛弃多屏用户的使用了吗？

System information:

Operating system (distribution) and version
DBeaver version
Additional extensions

Connection specification:

Database name and version
Driver name
Do you use tunnels or proxies (SSH, SOCKS, etc)?

Describe the problem you're observing:
Steps to reproduce, if exist:
Include any warning/errors/backtraces from the logs

Hello @xm0827
Please translate your ticket into English.
Also, some screens or videos of the issue will be beneficial.

There has been no update on the issue for a long time. If the issue is still actual for you, feel free to reopen it.


Special characters in player names

My understanding (correct me if I am wrong) is for calls to player names are to the player names given in the Sonos app and not the names in the configuration of the individual players in the node. I.e. issuing household.create.group, I need to use the names given to the players in Sonos.
My understanding being correct, I have problems with a couple of player names that contain danish characters. I have a players called Køkken (kitchen), Badeværelse (bathroom) and Soveværelse (bedroom). Shy of changing to english names for these rooms I do not really have anything better to call them. Any chance that the commonly used danish characters æ,ø and å could be implemented as allowed characters?

Hi. Yes, you are right.
I will fix it latest by this week end.

Thanks a lot, greatly appreciated. Just want to thank you for a great add-on. While it is a bit of a steep learning curve, the documentation is great and the node seems really powerful once you get the hang of it, so just thanks!

Thanks for the feedback. 4.5.2 has been just published - should be available in some minutes.
I tested Køkken  - that works. Please test the others.
Hope that now all European characters work - waiting for Chinese people to request support for Chinese characters ;-)
If you have any ideas how to make it easier to get started with this node ( I know it is complex ) - let me know.
What was most "confusing" or "difficult" to understand?

Thank you for the quick update. Will test as soon as I have the chance (good luck adding Chinese characters, and Cyrillic, and...)
I don't really know how to make it simpler. To be honest I am not sure you really can. I guess this is intended for more complex setups and as such you just need to take the time to read through documentation, which by the way is well written. I'll be trying to set up some more stuff with this and be sure to let you know if I come up with any ideas.

Confirm that letters æ and ø works. Do not have rooms with å in them at the moment, so cannot confirm this one.
Quick question which actually belongs in another thread, but can you confirm that pulling up an Apple Music playlist saved in My Sonos with the mysonos.export.item (it finds the playlist) and exporting it to group.play.export will not work, or am I doing something wrong?

Thanks for your feedback.
Regarding: Apple Music playlist. It should work. Please use the SONOS app and browse/search your playlist. After having found use "Add to My Sonos". It should now show up in your My Sonos tab under playlists. Ready for use with mysonos.export.item.
Does it work?

In that case it seems as if I am doing something wrong or found a bug.
I have a playlist in Apple Music that I have added to My Sonos. The mysonos.export.item node finds the playlist, but when it exports it to the universal node, it returns status code 500 and upnpError 714.

Payload from the mysonos-node:

{"uri":"x-rincon-cpcontainer:1006206clibraryplaylist%3ap.x5GHEN50Ep?sid=204&flags=8300&sn=3","metadata":"<DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/\" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:r="urn:schemas-rinconnetworks-com:metadata-1-0/" xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"><item id="1006206clibraryplaylist%3ap.x5GHEN50Ep" parentID="10fe2066libraryfolder%3af.4" restricted="true">dc:titleMortens Playlist</dc:title>upnp:classobject.container.playlistContainer.#PlaylistView</upnp:class><desc id="cdudn" nameSpace="urn:schemas-rinconnetworks-com:metadata-1-0/">SA_RINCON52231_X_#Svc52231-0-Token","queue":false}

And error message from the universal-node:

group.play.export:statusCode 500 & upnpError 714 :: Details: unknown error

Am I doing something wrong here? The same flow works fine if I select a Tune-In Radio stream saved in My Sonos or a Sonos playlist.

hmmm. Can you please copy that playload and change "queue":false to "queue":true and inject it to the group.play.export
Does that work?

Changing queue:false to queue:true did the trick. So a pretty easy work around. Thanks for helping out.

Good to hear. Its a bug :-(
Will fix it with the next release - expected at 2020-12-07.

Hi. I have just published 4.5.3. Please check. Now sonos-plus should recognize the "queue" mode automamtically.


global: core API design

Here's a rough draft of the core API design for the module
# config.py
class Config:
    """Loads config from environment and files."""

    GITHUB_TOKEN = 'CHANGE_ME'
    GITTER_TOKEN = 'CHANGE_ME'
    MAIL_SETTINGS = {...}

    def _load_repositories_yml(cls, yml_path: str):
        """Load repository.yml file."""
        pass

# api.py
class BotAPI:
    """Generates reort."""

    def __init__(self, config: Config):
        pass

    def generate_report(self, maintainer: str) -> dict:
        """Generates a report for a maintainer."""
        pass

    def send_report(self, maintainer: str, report):
        """Send the report to a maintainer (on Gitter or via email)."""
        pass

# github.py
class GitHubAPI:

    def __init__(self, token: str):
        pass

    def _check_pr(self, pr):
        """Check a pull request for possible actions."""
        pass

    def get_pr_actions(self, repository: str):
        """Generate a list of actions for a repository."""
        pass

    def _check_issue(self, issue):
        """Check an issue for possible actions."""
        pass

    def get_issue_actions(self, repository: str):
        """Generate a list of actions for the a repository."""
        pass

    def get_repository_actions(self, repository: str):
        """Generate a list of actions for the a repository."""
        pass

Closed via #7


support 256 color on windows

I'm thinking this is better for support 256 color. go-colorable round the color code into suitable values in on the windows 16-colors.
This is really 256 color displayed on mintty terminal.

Before applying this patch

After applying this patch

This looks awesome @mattn. Thanks. It makes sense to move change the library.


Color-Hex mismatch

Challenge http://freecodecamp.com/challenges/waypoint-use-hex-code-for-specific-shades-of-gray has an issue. Please describe how to reproduce it, and include links to screenshots if possible.
The challenge text reads, "Use hex code to make a light gray. For example body { color: #111111; }." Successful completion of the challenge expects the value #111111 which is definitely a (very) dark gray, not a light gray.

Nice catch! I'll fix this now.


Updated cartridge documentation

Made examples compatible with latest chembl (25) and most recent conda versions of rdkit (2<IP_ADDRESS>, python 3.6.9) + rdkit-postgresql (2<IP_ADDRESS>)

Reference Issue

What does this implement/fix? Explain your changes.
Any other comments?

Thanks!


SAMZA-2625: Remove PrintGCDateStamp (Deprecated in JDK 11)

@bringhurst Can you please fill out the description according SEP-25: PR Title And Description Guidelines before I merge the PR?

I'm going to close this for now -- I wasn't thinking that this affected the log path. I'll reopen or create another PR when it's ready.


types(query-core): Disallow undefined in the queryFn return typings

We explicitly disallow undefined as a return type since the introduction of react-query v4 (https://tanstack.com/query/v4/docs/react/guides/migrating-to-react-query-4#undefined-is-an-illegal-cache-value-for-successful-queries). And we're explicitly loud on development when this happens. This PR proposes that we enforce this at the TypeScript level as well -- to prevent unexpected errors + make migrations easier.
https://github.com/TanStack/query/blob/1614c31f84744c62b5bee8f2ff97fc15a1652e86/packages/query-core/src/query.ts#L457-L464
This will be a "type" break, but has no functional changes -- so we'll have to figure out how this reflects in semver.

Hopefully after addressing internal compile breaks + adding some typing tests, we'll be able to resolve this question: https://github.com/TanStack/query/discussions/4457#discussioncomment-4059497

Also, this should make TS fail by not allowing undefined as a possible useQuery type, instead of throwing console errors on dev environment.

yep, we tried that, but it's harder to do than it looks :)

nice one, thank you 🙏 . I added two type tests and it looks good 👍

This will be a "type" break, but has no functional changes -- so we'll have to figure out how this reflects in semver.

Yeah, we usually don't treat type changes as breaking, so we could merge it to main. However, I would rather have that this PR goes to the beta branch (v5), because we'll do an rc release soon. Could you do that please?

nice one, thank you 🙏 . I added two type tests and it looks good 👍

This will be a "type" break, but has no functional changes -- so we'll have to figure out how this reflects in semver.

Yeah, we usually don't treat type changes as breaking, so we could merge it to main. However, I would rather have that this PR goes to the beta branch (v5), because we'll do an rc release soon. Could you do that please?

Sounds good, thanks for the CR + tests! Just changed the target branch & rebased onto beta. Will keep an eye on it to make sure stuff continues to build correctly with the new target.
Do you know when the V5 is intended to have its first stable/non-rc release?

Do you know when V5 is intended to have its first stable/non-rc release?

should happen this year 😅

hmm we get a type error now in solid.js:
src/__tests__/createQuery.types.test.tsx(92,26): error TS2769: No overload matches this call.
  Overload 1 of 2, '(options: UndefinedInitialDataOptions<{ wow: boolean; }, Error, { wow: boolean; }, string[]>, queryClient?: (() => QueryClient) | undefined): CreateQueryResult<...>', gave the following error.
    Type '() => { wow: boolean; } | undefined' is not assignable to type 'undefined'.
  Overload 2 of 2, '(options: DefinedInitialDataOptions<{ wow: boolean; } | undefined, Error, { wow: boolean; } | undefined, string[]>, queryClient?: (() => QueryClient) | undefined): DefinedCreateQueryResult<...>', gave the following error.
    Type '() => { wow: boolean; }' is not assignable to type 'QueryFunction<{ wow: boolean; } | undefined, string[], never>'.
      Type '{ wow: boolean; }' is not assignable to type 'never'.

hmm we get a type error now in solid.js:
src/__tests__/createQuery.types.test.tsx(92,26): error TS2769: No overload matches this call.
  Overload 1 of 2, '(options: UndefinedInitialDataOptions<{ wow: boolean; }, Error, { wow: boolean; }, string[]>, queryClient?: (() => QueryClient) | undefined): CreateQueryResult<...>', gave the following error.
    Type '() => { wow: boolean; } | undefined' is not assignable to type 'undefined'.
  Overload 2 of 2, '(options: DefinedInitialDataOptions<{ wow: boolean; } | undefined, Error, { wow: boolean; } | undefined, string[]>, queryClient?: (() => QueryClient) | undefined): DefinedCreateQueryResult<...>', gave the following error.
    Type '() => { wow: boolean; }' is not assignable to type 'QueryFunction<{ wow: boolean; } | undefined, string[], never>'.
      Type '{ wow: boolean; }' is not assignable to type 'never'.

Ohfff, spent a bit of time debugging today without much luck. Will play around with this later in the week and see if it feels like it's solvable 🤞.

sorry for that, please re-open again main


Miss bower_components folder

Good Morning. I want to know why i lose the "bower_components" folder in the download. I want to try the local demo.
Thank you

plz follow the docs, u should be able to run the demo. bower_components is not part of source


extensions/filters/http/aws_request_signing coverage

Hello,
The Envoy project has recently started collecting per-extension coverage. You have been tagged with this issue as you are a co-owner of an extension, extensions/filters/http/aws_request_signing, which is below the 96.6 percent coverage mark.
Could you please take a look at coverage results (https://storage.googleapis.com/envoy-postsubmit/master/coverage/index.html) and add more tests when you get a chance? Once this is done you should be able to remove your extension from the exempt extensions in test/per_file_coverage.sh
Thanks!

#12229 should do it.


Making long storage keys better

Current implementation of long storage keys in #282 can be done better. We need to unify handling keys in all places.

Algorithm:

Collect all bytes.
Delegate hashing to self.backend.blake2b(bytes).
key_maker::bytes_to_hex on result.


Is there not an extra step to add a DNS IP to the vnet?

Hello, how would this resolve if the vnet is not aware of the private DNS ?

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

ID: defc9d72-c597-2d9c-1b89-455f63ef2e02
Version Independent ID: c90ab2dd-4845-b834-5cdd-2b1b6a18deec
Content: Quickstart - Create an Azure private DNS zone using the Azure portal
Content Source: articles/dns/private-dns-getstarted-portal.md
Service: dns
GitHub Login: @greg-lindsay
Microsoft Alias: greglin

@mckenzm ,
The section, "Link the virtual network" describes how you can link a Vnet to Private DNS Zone for it to resolve the entries in DNS Zone.
If this step is skipped, the VNets will not be able to resolve.
Please let me know if you need more information on this.

Kapil is correct, the vnet is aware of the zone because it is linked to the vnet. This step is present in the article. https://docs.microsoft.com/en-us/azure/dns/private-dns-getstarted-portal#link-the-virtual-network

#please-close


Fixed code style issues in lib/JsonRpcServer

Fixed code style issues in lib/JsonRpcServer folder.
For more details about code style changes refer to issue #67.

NOTE: Can be merged once CI build are done.


Fearure/aps 1745 return premise characteristics in space search results

superseded by https://github.com/ministryofjustice/hmpps-approved-premises-api/pull/2738/files


Expose AAD

@pdugre when the AAD is invalid, is it still an invalid mac error or we should add a new error message?


⚠ Bofrost.be has degraded performance

In deb0f37, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1260 ms

Resolved: Bofrost.be performance has improved in 8ca40f3 after 8 minutes.


Add ROUND function in druid-sql.

Add ROUND function in druid-sql.
issue: https://github.com/apache/incubator-druid/issues/5644

It can be used for doubles (return double) and integers (return long).
Both ROUND(x) and ROUND(x, y) works like TRUNC(x, y).
This is implemented by replacing Math.round() with Bigdecimal.setScale() as following:

protected ExprEval eval(ExprEval param, ExprEval scale)
{
  if (param.type() == ExprType.LONG) {
    Long value = BigDecimal.valueOf(param.asLong()).setScale(scale.asInt(), RoundingMode.HALF_UP).longValue();
    return ExprEval.of(value);
  } else {
    double value = BigDecimal.valueOf(param.asDouble()).setScale(scale.asInt(), RoundingMode.HALF_UP).doubleValue();
    return ExprEval.of(value);
  }
}

@KazuhitoT BTW, we should also update the math-expr.md file at the same time.

@asdf2014
Thanks for reviewing my PR.🙏
Summary of changes are as follows:

fixed code
added abnormal test cases such as ExprType.STRING
updated math-expr.md

Finally, ROUND(x, y) requires that

x must be integer or double.
y must be integer and can be negative, defaults to 0 if omitted.

@asdf2014
Thanks for your reviewing.
I modified error messages and refactored codes.

@gianm
Thanks for your reviewing.
Summary of changes are as follows:

Replaced protected with private.
Updated sql.md.
Used DruidExpression.fromFunctionCall.
Modified tests, replaced ClassCast Exception with IAE Exception.

Travis job failed but it seems to be caused by some server errors.
(My Travis job works: https://travis-ci.org/KazuhitoT/incubator-druid)
So, could you restart it and confirm if it's ok?

Sure, I just restarted it.

@gianm
Thanks. Travis job works.
Could you please merge this PR if it's ok?


Document required Android permissions

I think ACCESS_NETWORK_STATE is required, so maybe worth adding to https://envoy-mobile.github.io/docs/envoy-mobile/latest/start/building/building.html#android-requirements
  <uses-permission android:name="android.permission.INTERNET" />
  <!--  This permission is needed in order to allow the application
     to initiate DNS resolution via c-ares. -->
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

I built envoy-mobile locally and and was able to install/execute it in my android emulator following the documentation. No ACCESS_NETWORK_STATE permissions configuration was needed. Built in intel machine running ubuntu 20.04.

Looks like it falls back and just doesn't update on network changes.  So you probably do want this on a real device.
https://github.com/envoyproxy/envoy-mobile/blob/9c90ac09222fe0b8b84e1d793c4899ce31e7cfe8/library/java/io/envoyproxy/envoymobile/engine/AndroidNetworkMonitor.java#L57


How to crop out the letterbox paddings from the output of ImageTransformationCalculator?

ImageCroppingCalculator is not able to handle letterbox_padding output from ImageTransformationCalculator.

If I understand correctly, you want to crop an image after it's transformed but with padding removed? In that case, you are correct that we don't support handling padding in the cropping calculator. However, you can use FILL_AND_CROP in ImageTransformationCalculator which gives you an image without padding and you can directly use the result in cropping calculator and get an image without padding. Does that help?

Feel free to re-open if you have further questions.


Rhino Widget - Playback options: trow exception while  capabilities & option JSON are empty

Capabilities (JSON formatted).
Options (JSON formatted).

moved to
https://github.com/savanna-projects/rhino-agent/issues/42


Using Entitas in generic way, instead of generators

Sorry that's off topic, what is the advantage of using generators in particular, instead, for example, generic methods or barehands? Why there no any of tutorial, how to use entitas without generators
notimetoexplain - use generators? Lack of time to make some, I think.
Today I spend whole day trying to work with Entitas and Generators, but it always broke all my code when I remove some parameters from components, or rename it. And that is annoying. 1 minute to change component, 30 minutes to generate code somehow... And there only TWO COMPONENTS. >___<. How it work when there ten of them, thousands, how it use with other teammates? Yeah, I know about compilers, reflections, mono, roslyn and etc, but it is so hard to work with(especially on mac), I did not even try to use them because of complexity.
I start thinking about two solution, first one, copy components in their generated environment (in different namespace, or in class), and use in system only components from there. It prevents of broke code and interrupt compiling process (in theory). Because it very hard to implement with one evening with my knowledge about entitas, I found second solution, that I'm prefer:
Get some generated classes, and make them in generic way. It took about three hours and I make some working solution to start working with Entitas without generator.
Here are a my three hours code, maybe need to add some methods...
Context:
namespace Generic {
// IInitializable is Zenject interface
	public class Context<TEntity> : Entitas.Context<TEntity>, IInitializable where TEntity : class, IEntity, new() {
		public readonly LookupTable Table;
		public readonly Matcher<TEntity> Matcher;

		public Context(string name, LookupTable table, Matcher<TEntity> matcher)
			: base(table.Size, 0, new ContextInfo(name, table.Names, table.Components)) {
			Table = table;
			Matcher = matcher;
		}

		public void Initialize() {
#if(!ENTITAS_DISABLE_VISUAL_DEBUGGING && UNITY_EDITOR)
			if (!UnityEngine.Application.isPlaying)
				return;
			var observer = new ContextObserver(this);
			UnityEngine.Object.DontDestroyOnLoad(observer.gameObject);
#endif
		}

		public TEntity Get<T>() where T : IComponent {
			return GetGroup(Matcher.For<T>()).GetSingleEntity();
		}

		public bool Has<T>() where T : IComponent {
			return Get<T>() != null;
		}

		public TEntity Set<T>(T component) where T : IComponent {
			if (Has<T>())
				throw new Exception("Something went wrong with setting " + typeof(T) + " component.");
			TEntity entity = CreateEntity();
			entity.AddComponent(Table.IndexOf<T>(), component);
			return entity;
		}

		public TEntity Replace<T>(T component) where T : IComponent {
			TEntity entity = Get<T>();
			if (entity == null)
				return Set(component);
			entity.ReplaceComponent(Table.IndexOf<T>(), component);
			return entity;
		}

		public void Remove<T>() where T : IComponent {
			DestroyEntity(Get<T>());
		}

	}
}

LookupTable:
namespace Generic {
	public class LookupTable {

		public Type[] Components { get; private set; }
		public string[] Names { get; private set; }

		public int Size {
			get { return Components.Length; }
		}

		public LookupTable(Type[] components) {
			Components = components;
			Names = new string[components.Length];
			for (int i = 0; i < components.Length; i++) {
				Names[i] = components[i].ToString();
			}
		}

		public int IndexOf<T>() where T : IComponent {
			// Todo assert if -1
			return Array.IndexOf(Components, typeof(T));
		}

	}
}

Matcher
namespace Generic {
	public class Matcher<TEntity> where TEntity : class, IEntity, new() {

		private readonly LookupTable _table;
		private readonly Dictionary<Type, IMatcher<TEntity>> _cache = new Dictionary<Type, IMatcher<TEntity>>();

		public Matcher(LookupTable table) {
			_table = table;
		}

		public IMatcher<TEntity> For<T>() where T : IComponent {
			Type type = typeof(T);
			if (_cache.ContainsKey(type))
				return _cache[type];
			var matcher = (Entitas.Matcher<TEntity>) Entitas.Matcher<TEntity>.AllOf(_table.IndexOf<T>());
			matcher.componentNames = _table.Names;
			_cache[type] = matcher;
			return _cache[type];
		}
	}
}

Entity
namespace Generic {
	public class Entity : Entitas.Entity {}
}

How to use

Create a context class:

namespace Generic {
	public class GameContext : Context<Entity> {
		public GameContext(LookupTable table) : base("Game", table, new Matcher<Entity>(table)) {

		}
	}
}

Install it with zenject, or just make by your hands and save in singletone (that's bad)

namespace Installers {
	public class ContextInstaller : MonoInstaller {
		public override void InstallBindings() {
			GameContext();
		}

		public void GameContext() {
			Type[] components = {
				typeof(DebugMessageComponent),
				typeof(PositionComponent)
			};
			Container.Bind<LookupTable>().FromInstance(new LookupTable(components)).WhenInjectedInto<GameContext>();
			Container.BindInterfacesAndSelfTo<GameContext>().AsSingle();
		}
	}
public class ConextInstallerNoDependency {

		private static GameContext _game;
		public static GameContext Game {
			get {
				if (_game == null) {
					Type[] components = {
						typeof(DebugMessageComponent),
						typeof(PositionComponent)
					};
					_game = new GameContext(new LookupTable(components));
				}
				return _game;
			}
		}

	}
}

Use it

namespace Systems {
	public class DebugMessageSystem : ReactiveSystem<Entity>
	{
		private readonly GameContext _context;

		public DebugMessageSystem(GameContext context) : base(context) {
			_context = context;
		}

		protected override Collector<Entity> GetTrigger(IContext<Entity> context) {
			return context.CreateCollector((context as GameContext).Matcher.For<DebugMessageComponent>());
		}

		protected override bool Filter(Entity entity) {
			return entity.HasComponent(_context.Table.IndexOf<DebugMessageComponent>());
		}

		protected override void Execute(List<Entity> entities)
		{
			foreach (var e in entities) {
				DebugMessageComponent component = (DebugMessageComponent)e.GetComponent(_context.Table.IndexOf<DebugMessageComponent>());
				// This is my bicycle instead of Debug.Log
				// D.Log(component.Message);
				Debug.Log(component.Message);
			}
		}
	}
	public class HelloWorldSystem : IInitializeSystem, IExecuteSystem {
		private readonly GameContext _context;
		// I do not love to new objects in update, that's why I cached it, but this is not necessary
		private DebugMessageComponent component;

		public HelloWorldSystem(GameContext context) {
			_context = context;
		}

		public void Initialize() {
			component = new DebugMessageComponent {Message = "Test" + Random.Range(0, 1000)};
		}

		public void Execute() {
			component.Message = "Message " + Random.Range(0, 1000);
			_context.Replace(component);
		}
	}
	public class Hello : Feature {
		public Hello(GameContext context) : base("HelloFeature") {
			Add(new DebugMessageSystem(context));
			Add(new HelloWorldSystem(context));
		}
	}
	// This class may be MonoBehaviour, but I use Zenject and prefer simple classes
	public class GameController : ITickable, IInitializable, IDisposable {
		private readonly GameContext _context;
		private Entitas.Systems _systems;

		[Inject] // Zenject attribute for injection
		public GameController(GameContext context) {
			_context = context;
		}

		// No injection
		public GameController() {
			_context = ConextInstallerNoDependency.Game;
		}
  		// OnEnable
		public void Initialize() {
			_systems = new Feature("Systems").Add(new Hello(_context));
			_systems.Initialize();
		}
		// Update
		public void Tick() {
			_systems.Execute();
			_systems.Cleanup();
		}
		// OnDisable
		public void Dispose() { }
	}
}

If you don't like the code generators you can take a look at [Entitas-Lang(https://github.com/mzaks/ECS-Lang)
BTW it appears [here](https://github.com/sschmid/Entitas-CSharp/wiki/Tools-and-Extensions in the docs in case you've missed it, there are a couple more tools there you might be interested in.

I know it's not exactly the point of your post, but you can re-gen your code in a few short steps which takes me about 1 minute. I do this if I make any breaking changes to a component.

Move Components, Systems and GameController.cs to a folder outside your project (e.g. desktop).
Regenerate contexts (ctrl-shift-G)
Move Components folder back
Regenerate components (ctrl-shift-G)
5 Move Systems and GameController.cs back and you're done.

@FNGgames unity have a folder WebplayerTemplate, you can move files here if you don't want to compile. Your algorithm is very clear (and I can make a script to make it automagical), but on start, before of understand how framework is working exactly, it's make beginners feel very uncomfortable. I want to say this is huge problem in a core of framework.
@danielbe1 I dig trough all wiki, I think. I don't understand why I need other tool to work with Entitas, and I don't like Eclipse :). Maybe, someday I will try it, but first, let me make a bicycle :). Maybe it will be working with generators some day, maybe I will not need it ever.

There a two problem:
1. We have complex dependency model
2. IEntity/Entity - is premature optimized with generators, and a lot of code dependent on it.
Complex dependency model.
Systems, and a lot of code dependent from generated code and model, generated code dependent from model components too, when we made change on model, we need to update all other dependencies. There are an image with arrows that represent dependencies (#paintskilz).

Here a systems dependent from components bypass generated code. Maybe, if we freeze model and make generated code and systems dependent from it, we can solve the problem of egg and chicken. I mean, we can just copy/paste components and made dependencies from it instead of source model, that's brake cross generated code dependency in systems, and solve compiler errors, I think. Here another image:

No dependencies from source components. No compiler errors when you change them.
Premature optimization
That is bad. Maybe you not need a code generator at all, anyway 95% of frame time eaten by graphics. Maybe need to concentrate on building more comfortable workflow with developers, that can save a lot time for making a lot of new features, than on optimization that save 1% of frame time, and cost a hundreds of developers hours.

Hi. I understand that the current workflow with the reflection-base code generator might be a pain, especially in the beginning when you're new to Entitas and code changes all the time. Good news is that we're currently working on finding better solutions like Entitas-lang or a roslyn-based code generator which will work even when there are compile errors.
The code generation issues will fade more into the background once your code gets more stable. I'm in a team with 4 devs, we have over 300 components and over 600 systems. Code generation is actually no problem. But I get that it's a problem currently. The roslyn solution should fix all of this.
On premature optimization:
Using "premature optimization" when talking about Entitas is wrong IMHO. I have very strict rules when writing libraries such as Entitas. I always strive for simplicity and efficiency. Nothing gets added without being proved to be necessary. I do sth I call Profiler-Driven-Development and all the changes and improvements are actually backed by numbers and tests.
Code generation was a natural evolution of the library and necessary to improve performance and optimized memory usage. As it turns out, it also enables us to do automatic object pooling and results in a great api.
In the early days we had an api like this
entity.AddComponent(new PositionComponent());
var pos = entity.GetComponent<PositionComponent)();

There is no object pooling of components and retrieving components like this was very slow and created a measurable bottle neck.
Code generation enabled us to do automatic object pooling for components and speeded up component lookup by an order of magnitude. At the same time we get a nice api.

Debug.Log(e.debugMessage.message);

// vs

DebugMessageComponent component = (DebugMessageComponent)e.GetComponent(_context.Table.IndexOf<DebugMessageComponent>());
Debug.Log(component.Message);

I really like this api, that's why I went with code generation. Luckily code generation is optional and flexible. You can chose to only use a small subset of generator like ComponentsLookup or nothing at all.
But your code suggestions contain a few nice ideas that I also wanted to try when tackling #307

That is bad. Maybe you not need a code generator at all, anyway 95% of frame time eaten by graphics. Maybe need to concentrate on building more comfortable workflow with developers, that can save a lot time for making a lot of new features, than on optimization that save 1% of frame time, and cost a hundreds of developers hours

A multiplayer backend doesn't do anything involving graphics and it's a question of real money if you need 1000 servers or if you can do the same with 100 servers with an optimized framework

It might not be the most legit argument, since most of the Entitas user probably will use Entitas only for the client, but I think it's still valuable to run efficiently.

I think a really good point you made is the dependency image. I'll think about it

@sschmid yeah, I understand about multiplayer and etc. But beginners may not get there because of complicity of work with generators.
Is Roslyn work with mac?
I made wrong implementation at first, now I move all get/set component code in Entity that extends base class, and i remove LookUpTable because it just ContextInfo. Now it looks like this:
DebugMessage component = e.GetComponent<DebugMessage>();
LookUpTable now just statically extends ContextInfo methods:
public static class LookupTable {

		public static int IndexOf<T>(this ContextInfo contextInfo) where T : IComponent {
			// Todo assert if -1
			return Array.IndexOf(contextInfo.componentTypes, typeof(T));
		}

		public static int[] IndicesOf(this ContextInfo contextInfo, Type[] types) {
			int[] indices = new int[types.Length];
			for (int index = 0; index < types.Length; index++)
				indices[index] = Array.IndexOf(contextInfo.componentTypes, types[index]);
			return indices;
		}

	}

Generic.Entity:
namespace Generic {
	public class Entity : Entitas.Entity {

		public void AddComponent<T>(T component) where T : IComponent {
			AddComponent(contextInfo.IndexOf<T>(), component);
		}

		public void RemoveComponent<T>() where T : IComponent {
			RemoveComponent(contextInfo.IndexOf<T>());
		}

		public void ReplaceComponent<T>(T component) where T : IComponent {
			ReplaceComponent(contextInfo.IndexOf<T>(), component);
		}

		public T GetComponent<T>() where T : IComponent {
			return (T) base.GetComponent(contextInfo.IndexOf<T>());
		}

		public bool HasComponent<T>() where T : IComponent {
			return HasComponent(contextInfo.IndexOf<T>());
		}

		public bool HasComponents(Type[] components) {
			return HasComponents(contextInfo.IndicesOf(components));
		}

		public bool HasAnyComponent(Type[] components) {
			return HasAnyComponent(contextInfo.IndicesOf(components));
		}

		// Not all methods here, but, maybe it not useful in real workflow.

	}
}

I updated gist with full implementation. I think, that code some "not written now" generator of code can convert to more fast in a particular case, if necessary.
Conclusion
I understand that there a framework with long history, with robust workflow and etc. I just want to give a few ideas, show an example of work without a code generator. Thanks for answers!

Correct me if I am wrong, but under that solution, the code might compile, but might fail at runtime if any mistake is done. The code generated version will not compile and not fail at runtime and is much more IDE friendly.

@danielbe1 as a generic solution, it will not compile if you made some type conversion mistakes, as it guarantee type safe.
But, that code can have some cpu and cache problem, that lay more deep down than type checking (as all logical errors). Every call is a search a type in array, and that may lead to cpu down, when you use many of components and many of matchers. Replacing components with "new" every time make a new object and replace previous, that need to be collected by garbage collector sometimes, that makes a hiccups in cpu page in profiler here are @sschmid  and @mzaks talk more. There need to think about caching and pooling. It not hard as described in video, but it still need work to do with. I think it still good performance, as It work with fast Entitas inside, only user code may have problems... I hope... :)
Also, to be honest, I don't test my solution not for errors, not for speed or efficiency, I made it for learning. I want to start using ECS as fast as I can, without fighting with compiler, that I hate to do. If I would love to fight with compiler I'm will programming on C++ xD.
Code generated solution more robust, more user friendly and very performance solution, but it have defect with compiling while you in active developing, and made many of changes in components, like remove, rename fields and etc. I love to remove and rename something every time :) and that defect makes me crazy, I feel unconfident and uncomfortable.

Renaming is quite easy.
Deleting and Adding Fields can be indeed a problem. But it don't take hours as you described before.
The real problem (at the moment) are blueprints. If you delete a field of a component wich you use in a blueprint, you have to recreate the hole blueprint... (because of the binary serialization). Thats my real problem by the way.
I had my difficulties with the codegen at beginning, too. But now i feel comfortable with it. Sure, there could be some improvements. But speed is very important!
I build a game with thousands of "bots" and still I have 75 FPS. That's inconceivable with the "intuitive" Unity way (Monobehaviour Scripts attached to each bot)
The best way to learn and use entitas is to take a look at the examples and videos. And first think about components and then act! And finally, the simplest solution is the right solution ;)

@Spy-Shifty there problem that when you rename field (with resharper, of course) or change signature, it need to be regenerated, but it can't because of reflection.
Now I thinking about my diagram, that I can make by myself with barehands, to test that solution, maybe that will be enough to solve problem, maybe not. After tests I will write result here. But now I have no time to experiments, today and tomorrow I need to release three games simultaneously xD.
Generic solution, to my opinion will works same as generated solution, maybe with suspectible lack of performance, but still fast than MonoBehaviour, because in core it is a entitas with their awesomness.
Thanks for your advices.

@sschmid, Back to my first message. I said that I have two solutions, and seconds is using generic wrapper, that wraps entitas with generic methods. But first solution is make a copies of components and make dependencies to that copies instead of source components, I suggested, that this solution will fix issue with impossibility of re-generating when you change source component a lot. But, also I suggested that solution will need a lot of time to work... but last turned out it is not true :)
I spend two hours and made some peglegs in code generators to test my suggestion. And it works. It really breaks that vicious circle of dependencies.
A few comments, that solution very simple, but need to make several changes in code generators, and that solution generate only simple components with fields only (it not copy-paste file, it use arguments list to made component). It need change all dependencies in Systems to generated components. I made it like a proof-of-concept, and it works.

That second dependency graph which you've shown describes exactly what's Entitas-Lang achieves. It stores Components as separate files, while generated code is that Component Snapshot. I have some ideas about visual component editor (based on uFrame), which will allow the same thing (effectively storing components as editor assets, while leaving the code to be Component Snapshot). I don't take any steps towards that at the moment because there's so much to do with tutorial videos and blueprints

@KumoKairo yes, you right. But the fact is, that even with coupled with project compiler (like mono in unity) you can re-generate components after changing. I test that and that's works (I told about in chat). Third-party program not needed.

Can you post some relative performance charts? Make a few use cases like Execute System with GetComponent, ReplaceComponent etc. With, say, 1000 entities. It will provide a great value to this topic in general.

Quick draft of generic API: https://github.com/yosadchyi/Entitas.Generic

How does Entitas-Lang work with player modding? It appears to me that a generic api having the ability to load arbitrary component at runtime is key to easy player modding, and modding capability is major reason to use a ECS system(instead of unity normal way) to me

@WeslomPo has really strong points. I don´t see any future for Entitas if this is not fixed asap. I don´t have to spend 30 min trying to fix errors just because I renamed some component...  and the code becomes too cluttered... I guess this is the opposite direction to go!

I have to agree on the modding issue; I intend for my game to be very mod-friendly. To that end, I want my environment to be as close to what modders will use as possible, and using the unity editor and/or hard-compiled generated code seems to run contrary to that. IMHO, moddability is one of the most appealing aspects to ECS, so it's a shame Entitas doesn't play as nicely with runtime modification.

Is this still being discussed? I personally think it would be a huge improvement in developer experience, especially since it would remove a whole step from the pipeline. Maybe some more bench marking would shed some light on whether this is feasible. @yosadchyi's results are certainly promising.

@BenjaBobs, @sschmid I checked @yosadchyi's results and implemented my own.
The reason is I wanted pooling and don't like writing "new" each time.
entity.Replace(new Position(position.Location + velocity.Linear * dt,
                    position.Rotation + velocity.Angular * dt));

I implemented through generics + lookup table here https://github.com/Deepscorn/EntitasWithoutCodeGeneration Looks nice to me. What do you think?


Added Windows 11 for Azure AD join devices

Added Windows 11 for Azure AD join devices
#ATCP

@JoelJerkin : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Suggestion: Add action buttons for FAQ questions

Sometimes, a question in the FAQ want to redirect the user somewhere (ticket office, code of conduct, agenda page, etc.). For every question in the FAQ, it could be great to be able to declare one or more action buttons and let the frontend apps use them.

Proposal output:
    {
        "id": "iWnuGsNxL9ZSh2WHGiKN",
        "order": 5,
        "question": "Comment devenir partenaires ?",
        "response": "Consultez tout d'abord notre dossier de partenariat, puis remplissez le formulaire sur l'outil CMS4Partners.",
        "actions": [
            {
                "order": 0,
                "label": "Dossier de partenariat",
                "url": "https://docs.google.com/presentation/d/e/2PACX-1vRf18ULorPCSXjc4FDy7hHUp2rYIDZNefrsE7OkiXUJaTY1bzTYcDJBnfVDuWHvggglIipco8GCND-2/pub"
            },
            {
                "order": 1,
                "label": "CMS4Partners",
                "url": "https://cms4partners.gdglille.org/#"
            }
        ]
    },

Links are well adapted for web applications but not for other kind of fronts.
But it could be possible to parse every question of the FAQ to extract these action buttons in the OpenPanner consumer side.
I leave it to you to judge the relevance of my suggestion.

Not relevant for OpenPlanner. I can declare a button with Markdown or HTML and be smart in my parser on my side to use these actions for different kind of front.


Support socks proxies

Rally version (get with esrally --version):
esrally 1.2.1
Invoked command:
/Library/Frameworks/Python.framework/Versions/3.7/bin/esrally --track http_logs --target-hosts=<IP_ADDRESS>:9200 --pipeline=benchmark-only
Configuration file (located in ~/.rally/rally.ini)):
n/a
JVM version:
That with ECK 0.9 using the 7.3.0 ES docker image
OS version:
OS X 10.14.6
Docker for OS X <IP_ADDRESS>
Kubernetes 1.14.3
ECK 0.9
Elastic Stack images for 7.3.0
Description of the problem including expected versus actual behavior:
In the init() function of /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/esrally/utils/net.py there is no detection of a socks proxy. If http_proxy, https_proxy and/or all_proxy has one of the following schemas: socks, socks5 or socks4: urllib3's SOCKSProxyManager should be used instead of ProxyManager.
see: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#proxies
(The must have enabled socks support: pip3 install urllib3[socks])
(I also note that only http_proxy envvar is checked)
This feature is really useful with Docker for OS X, as it has a builtin socks proxy.
Steps to reproduce:

Install Docker for OS X on OS X
Add "socksProxyPort" : 8888, to Library/Group\ Containers/group.com.docker/settings.json (Docker Desktop restart required!)
Configure proxy use: export http_proxy=socks5://localhost:8888 (consider also https_proxy and/or all_proxy)
Run the esrally command given above (note your ES services IP will be different)

Provide logs (if relevant):

    ____        ____
   / __ \____ _/ / /_  __
  / /_/ / __ `/ / / / / /
 / _, _/ /_/ / / / /_/ /
/_/ |_|\__,_/_/_/\__, /
                /____/

Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.7/bin/esrally", line 10, in <module>
    sys.exit(main())
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/esrally/rally.py", line 677, in main
    net.init()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/esrally/utils/net.py", line 41, in init
    proxy_headers=urllib3.make_headers(proxy_basic_auth=parsed_url.auth))
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/urllib3/poolmanager.py", line 391, in __init__
    raise ProxySchemeUnknown(proxy.scheme)
urllib3.exceptions.ProxySchemeUnknown: Not supported proxy scheme socks5

Describe the feature:
Please implement support for accessing ES via a socks proxy, as detailed above.
Using the built in socks proxy is much easier than messing around with port forwards, and is seamless in web browsers. It only become an issue for applications (such as esrally) that have not yet implemented socks support.

Thanks for the analysis. I'm putting this on the backlog for now but I think this might also be a nice little project to get started / involved with Rally development.

The proxy connection here is used when Rally itself connects to the Internet in order to download tracks or corpora (data sets) but Socks proxy support should probably also be considered in #382 when Rally connects to the Elasticsearch cluster that is being benchmarked.

We currently have no intention to support this in Rally. Benchmarking with intermediate proxies is also tricky because users need to pay extra attention not to introduce accidental bottlenecks. When we reconsider to support this in the future we can reopen the issue but I'm closing it for now to indicate that will not work on this for the foreseeable future.


Invalid region provided: ap-south-1

Hi, I am trying to setup a Docker registry in AWS region ap-south-1 (Mumbai) with S3 storage using the following command:-
docker run -d --name registry_gor -p 80:5000	\
	-e REGISTRY_STORAGE=s3	\
	-e REGISTRY_STORAGE_S3_REGION=myregistry \
	-e REGISTRY_STORAGE_S3_REGION=ap-south-1 \
	-e REGISTRY_STORAGE_S3_ACCESSKEY=<omitted> \
	-e REGISTRY_STORAGE_S3_SECRETKEY=<omitted> \
	-e REGISTRY_STORAGE_CACHE_BLOBDESCRIPTOR=inmemory \
	registry:latest

I am getting the following error in the log which suggests that the region is invalid.
panic: Invalid region provided: ap-south-1

goroutine 1 [running]:
panic(0xd88060, 0xc8203c49e0)
	/usr/local/go/src/runtime/panic.go:481 +0x3e6
github.com/docker/distribution/registry/handlers.NewApp(0x7f85fd5c92c0, 0xc8203408d0, 0xc8200718c0, 0x7f85fd5c92c0)
	/go/src/github.com/docker/distribution/registry/handlers/app.go:121 +0x619
github.com/docker/distribution/registry.NewRegistry(0x7f85fd5c9300, 0xc8203408d0, 0xc8200718c0, 0xc8200718c0, 0x0, 0x0)
	/go/src/github.com/docker/distribution/registry/registry.go:86 +0x2b0
github.com/docker/distribution/registry.glob.func1(0x14cc660, 0xc820332060, 0x1, 0x1)
	/go/src/github.com/docker/distribution/registry/registry.go:55 +0x2a9
github.com/docker/distribution/vendor/github.com/spf13/cobra.(*Command).execute(0x14cc660, 0xc820332010, 0x1, 0x1, 0x0, 0x0)
	/go/src/github.com/docker/distribution/vendor/github.com/spf13/cobra/command.go:495 +0x6d4
github.com/docker/distribution/vendor/github.com/spf13/cobra.(*Command).Execute(0x14cc800, 0x0, 0x0)
	/go/src/github.com/docker/distribution/vendor/github.com/spf13/cobra/command.go:560 +0x180
main.main()
	/go/src/github.com/docker/distribution/cmd/registry/main.go:23 +0x23

I have searched for a solution and I came across #1952 and #1953 which suggest that the changes will be available in version 2.6. Since I could not find that particular version, I would like to know how to build the registry image which includes the region ap-south-1.

2.6.0-rc.0 is coming out today-ish.
Instructions to build the registry can be found in the docs directory.

@RichardScotheryn Thank you. :+1:

@RichardScothern are we still waiting for it.
Events:
FirstSeen	LastSeen	Count	From							SubobjectPath			Type		Reason		Message

22s		22s		1	{default-scheduler }									Normal		Scheduled	Successfully assigned registry-rlsru to ip-172-31-32-201.ap-south-1.compute.internal
17s		17s		1	{kubelet ip-172-31-32-201.ap-south-1.compute.internal}	spec.containers{registry}	Warning		Failed		Failed to pull image "registry:2.6.0-rc.0": Tag 2.6.0-rc.0 not found in repository docker.io/library/registry
17s		17s		1	{kubelet ip-172-31-32-201.ap-south-1.compute.internal}					Warning		FailedSync	Error syncing pod, skipping: failed to "StartContainer" for "registry" with ErrImagePull: "Tag 2.6.0-rc.0 not found in repository docker.io/library/registry"
17s	17s	1	{kubelet ip-172-31-32-201.ap-south-1.compute.internal}	spec.containers{registry}	Normal	BackOff		Back-off pulling image "registry:2.6.0-rc.0"
17s	17s	1	{kubelet ip-172-31-32-201.ap-south-1.compute.internal}					Warning	FailedSync	Error syncing pod, skipping: failed to "StartContainer" for "registry" with ImagePullBackOff: "Back-off pulling image "registry:2.6.0-rc.0""
22s	2s	2	{kubelet ip-172-31-32-201.ap-south-1.compute.internal}	spec.containers{registry}	Normal	Pulling	pulling image "registry:2.6.0-rc.0"

Also, the rc.1 does give the same error invalid region.
panic: Invalid region provided: ap-south-1
goroutine 1 [running]:
panic(0xb7b900, 0xc42041ef40)
/usr/local/go/src/runtime/panic.go:500 +0x1a1
github.com/docker/distribution/registry/handlers.NewApp(0x1063800, 0xc42039f0e0, 0xc420396300, 0x1063800)
/go/src/github.com/docker/distribution/registry/handlers/app.go:123 +0x3908
github.com/docker/distribution/registry.NewRegistry(0x7fd0b5718130, 0xc42039f0e0, 0xc420396300, 0xc420396300, 0x0, 0x0)
/go/src/github.com/docker/distribution/registry/registry.go:86 +0x213
github.com/docker/distribution/registry.glob..func1(0x108b140, 0xc42038e5c0, 0x1, 0x1)
/go/src/github.com/docker/distribution/registry/registry.go:55 +0x106
github.com/docker/distribution/vendor/github.com/spf13/cobra.(*Command).execute(0x108b140, 0xc42038e570, 0x1, 0x1, 0x108b140, 0xc42038e570)
/go/src/github.com/docker/distribution/vendor/github.com/spf13/cobra/command.go:495 +0x190
github.com/docker/distribution/vendor/github.com/spf13/cobra.(*Command).Execute(0x108b2e0, 0xc4201b3f40, 0xc4200001a0)
/go/src/github.com/docker/distribution/vendor/github.com/spf13/cobra/command.go:560 +0x3c3
main.main()
/go/src/github.com/docker/distribution/cmd/registry/main.go:24 +0x2d

We should probably open this unless resolved.

@ankitforcode I understand it is the same error message but we closed this issue because it was resolved. If you having an issue with a release candidate please open up a new issue and provide your registry configuration, exact version, and logs so we can prioritize this for the release. Release candidate issues should always be opened up as new issues and not commented on closed issues.  Thank you for testing the release candidates!


[FR]edit (sub)tasks time spent (date stamp) freely

use case: I have to add time spent at the beginning of a month for the month that just ended. This is currently not possible I believe.

Edit the subtask then change the time spent value?

I meant editing the date stamp

Can you provide an example because I don't get it, what do you call a "date stamp"? which date?

my troubles are with collaborators who use an external time logging tool and close their KB tasks on – say – November 3. My problem is that then the (sub)task reaches into November although it has been finished in October.
Does that make sense?

This issue has been closed automatically by a bot for inactivity after more than 1 year. If you still need this feature, you should consider contributing to this open-source project.


feat(pixels): add my new pixel (30, 11)

Checklist

[x] I ran npm test locally and it passed without errors.

[x] I only edited the _data/pixels.json file.

[x] I entered the username in the pixels.json that I'm also using to create this pull request.
[x] I acknowledge that all my contributions will be made under the project's license.

happy birthday @spacerest, when it comes around : )


finish the code for .git directory scanning

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Description

Problem to be Addressed

Description of the Preferred Solution

Additional Context

References

#0000

Closed by #13