Effects when using historyBack()

@lulupointu
Looks like I already mentioned this. But it's still more appropriate to create a thread about a new feature :D
When we use historyBack()
The effect will be restored when using : to()
IOS:
When opening a new page it will be displayed from right to left
So when using historyBack() it should be done the opposite way by sliding from left to right
Android:
When opening a new page it will be displayed from bottom to top
When using historyBack it should be done in the opposite way of sliding from top to bottom

Indeed opening a new thread is better I think because the other was taken be the feature request 😉
I understand what you are trying to achieve but not your question. Is your question: How to achieve this?

@lulupointu
So, Is there a way to do it right now?
Maybe I missed something from Doc.

There are many ways to achieve this.
The most natural one is to rely on native Page behaviour and use stackedRoutes.
Here is a small example:
import 'package:flutter/material.dart';
import 'package:vrouter/vrouter.dart';

void main() {
      runApp(
            VRouter(
                  debugShowCheckedModeBanner: false,
                  routes: [
                        VWidget(
                              path: '/',
                              widget: HomeScreen(),
                              // Use stackedRoutes to stack
                              stackedRoutes: [
                                    // You will be able to pop from Settings on Home
                                    // Note that 'settings' does not start with '/', it's a relative path
                                    VWidget(path: 'settings', widget: SettingsScreen()),
                              ],
                        ),
                  ],
            ),
      );
}

abstract class BaseWidget extends StatelessWidget {
      String get title;

      String get buttonText;

      String get to;

      @override
      Widget build(BuildContext context) {
            return Scaffold(
                  appBar: AppBar(title: Text(title), leading: context.vRouter.historyCanBack() ? BackButton(onPressed: context.vrouter.historyBack) : null),
                  body: Center(
                        child: Column(
                              mainAxisSize: MainAxisSize.min,
                              children: [
                                    Text(title),
                                    SizedBox(height: 50),
                                    ElevatedButton(
                                          onPressed: () => context.vRouter.to(to),
                                          child: Text(buttonText),
                                    ),
                              ],
                        ),
                  ),
            );
      }
}

class HomeScreen extends BaseWidget {
      @override
      String get title => 'Home';

      @override
      String get buttonText => 'Go to Settings';

      @override
      String get to => '/settings';
}

class SettingsScreen extends BaseWidget {
      @override
      String get title => 'Settings';

      @override
      String get buttonText => 'Go to Home';

      @override
      String get to => '/';
}

@lulupointu
Sorry if I missed something.
But looking through the code above, I just see this is the usual use of : to() and historyBack().
There is no mention of the process of change
I agree historyBack() will work but it will make the current page slide from Right to Left to show the old page below it. What I want here is that it will slide Left To Right.

Oh sorry I did not read the your question correctly, what you are trying to do is about transitions. You can do pretty much anything. You can search on the internet for many example.

Here is the updated example of what you are searching

import 'dart:io';

import 'package:flutter/material.dart';
import 'package:vrouter/vrouter.dart';

void main() {
  runApp(
    VRouter(
      debugShowCheckedModeBanner: false,
      routes: [
        VWidget(
          path: '/',
          widget: HomeScreen(),
          // Use stackedRoutes to stack
          stackedRoutes: [
            // You will be able to pop from Settings on Home
            // Note that 'settings' does not start with '/', it's a relative path
            VWidget(
              path: 'settings',
              widget: SettingsScreen(),
              buildTransition: (transition, reverseTransition, child) {
                return Platform.isAndroid
                    ? SlideLeftToRight(
                        transition: transition,
                        reverseTransition: reverseTransition,
                        child: child,
                      )
                    : SlideBottomToTop(
                        transition: transition,
                        reverseTransition: reverseTransition,
                        child: child,
                      );
              },
            ),
          ],
        ),
      ],
    ),
  );
}

abstract class BaseWidget extends StatelessWidget {
  String get title;

  String get buttonText;

  String get to;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
          title: Text(title),
          leading: context.vRouter.historyCanBack()
              ? BackButton(onPressed: context.vRouter.historyBack)
              : null),
      body: Center(
        child: Column(
          mainAxisSize: MainAxisSize.min,
          children: [
            Text(title),
            SizedBox(height: 50),
            ElevatedButton(
              onPressed: () => context.vRouter.to(to),
              child: Text(buttonText),
            ),
          ],
        ),
      ),
    );
  }
}

class HomeScreen extends BaseWidget {
  @override
  String get title => 'Home';

  @override
  String get buttonText => 'Go to Settings';

  @override
  String get to => '/settings';
}

class SettingsScreen extends BaseWidget {
  @override
  String get title => 'Settings';

  @override
  String get buttonText => 'Go to Home';

  @override
  String get to => '/';
}

class SlideLeftToRight extends StatelessWidget {
  final Animation<double> transition;
  final Animation<double> reverseTransition;
  final Widget child;

  const SlideLeftToRight({
    Key? key,
    required this.transition,
    required this.reverseTransition,
    required this.child,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return SlideTransition(
      position: Tween<Offset>(
        begin: Offset(-1.0, 0.0),
        end: Offset.zero,
      ).animate(transition),
      child: SlideTransition(
        position: Tween<Offset>(
          begin: Offset.zero,
          end: Offset(-1.0, 0.0),
        ).animate(reverseTransition),
        child: child,
      ),
    );
  }
}

class SlideBottomToTop extends StatelessWidget {
  final Animation<double> transition;
  final Animation<double> reverseTransition;
  final Widget child;

  const SlideBottomToTop({
    Key? key,
    required this.transition,
    required this.reverseTransition,
    required this.child,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return SlideTransition(
      position: Tween<Offset>(
        begin: Offset(0.0, -1.0),
        end: Offset.zero,
      ).animate(transition),
      child: SlideTransition(
        position: Tween<Offset>(
          begin: Offset.zero,
          end: Offset(0.0, -1.0),
        ).animate(reverseTransition),
        child: child,
      ),
    );
  }
}

@lulupointu
Thank you for your answer
But it doesn't seem to be what I mean.
I rewatched the DOC
https://vrouter.dev/guide/Examples/Stacking
It's exactly what I meant. But only VWidget (in Stacking) works.
Unfortunately VNested is not working

Then I think I don't really understand what you are trying to achieve. Could you a small example and explain concretely what is the difference between what you are trying to achieve and the example ?

@lulupointu
It will act as your demo on this page (https://vrouter.dev/guide/Examples/Stacking)
<= That's what I expected
But currently VNested is not like that (https://vrouter.dev/guide/Examples/Nesting)
You can see how to display a new screen
VWidget and VNested are not the same (Pay attention to the direction of the arrow)
VWidget:

VNested:

I'm still unsure of what you are looking for but here is an example with the animations you want.

Here it is

import 'package:flutter/material.dart';
import 'package:vrouter/vrouter.dart';

void main() {
  runApp(
    VRouter(
      debugShowCheckedModeBanner: false,
      routes: [
        VNester(
          path: '/',
          widgetBuilder: (child) => MyScaffold(child), // Child is the widget from nestedRoutes
          nestedRoutes: [
            VWidget(
              path: null,
              widget: HomeScreen(),
              buildTransition: (transition, reverseTransition, child) => SlideLeftToRight(
                  transition: transition, reverseTransition: reverseTransition, child: child),
            ), // null path matches parent
            VWidget(
              path: 'settings',
              widget: SettingsScreen(),
              buildTransition: (transition, reverseTransition, child) => SlideRightToLeft(
                  transition: transition, reverseTransition: reverseTransition, child: child),
            ),
          ],
        ),
      ],
    ),
  );
}

class MyScaffold extends StatelessWidget {
  final Widget child;

  const MyScaffold(this.child);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: child,
      bottomNavigationBar: BottomNavigationBar(
        currentIndex: context.vRouter.url.contains('settings') ? 1 : 0,
        onTap: (value) => context.vRouter.to((value == 0) ? '/' : '/settings'),
        items: [
          BottomNavigationBarItem(icon: Icon(Icons.home), label: 'Home'),
          BottomNavigationBarItem(icon: Icon(Icons.settings), label: 'Settings'),
        ],
      ),
    );
  }
}

abstract class BaseWidget extends StatelessWidget {
  String get title;

  String get buttonText;

  String get to;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
          title: Text(title)),
      body: Center(
        child: Column(
          mainAxisSize: MainAxisSize.min,
          children: [
            Text(title),
            SizedBox(height: 50),
            ElevatedButton(
              onPressed: () => context.vRouter.to(to),
              child: Text(buttonText),
            ),
          ],
        ),
      ),
    );
  }
}

class HomeScreen extends BaseWidget {
  @override
  String get title => 'Home';

  @override
  String get buttonText => 'Go to Settings';

  @override
  String get to => '/settings';
}

class SettingsScreen extends BaseWidget {
  @override
  String get title => 'Settings';

  @override
  String get buttonText => 'Go to Home';

  @override
  String get to => '/';
}

class SlideLeftToRight extends StatelessWidget {
  final Animation<double> transition;
  final Animation<double> reverseTransition;
  final Widget child;

  const SlideLeftToRight({
    Key? key,
    required this.transition,
    required this.reverseTransition,
    required this.child,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return SlideTransition(
      position: Tween<Offset>(
        begin: Offset(-1.0, 0.0),
        end: Offset.zero,
      ).animate(transition),
      child: SlideTransition(
        position: Tween<Offset>(
          begin: Offset.zero,
          end: Offset(-1.0, 0.0),
        ).animate(reverseTransition),
        child: child,
      ),
    );
  }
}

class SlideRightToLeft extends StatefulWidget {
  final Animation<double> transition;
  final Animation<double> reverseTransition;
  final Widget child;

  const SlideRightToLeft({
    Key? key,
    required this.transition,
    required this.reverseTransition,
    required this.child,
  }) : super(key: key);

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

class _SlideRightToLeftState extends State<SlideRightToLeft> {
  @override
  void initState() {
    widget.transition.addListener(() {
      print('SlideRightToLeft transition value: ${widget.transition.value}');
    });
    super.initState();
  }
  @override
  Widget build(BuildContext context) {
    return SlideTransition(
      position: Tween<Offset>(
        begin: Offset(1.0, 0.0),
        end: Offset.zero,
      ).animate(widget.transition),
      child: SlideTransition(
        position: Tween<Offset>(
          begin: Offset.zero,
          end: Offset(-1.0, 0.0),
        ).animate(widget.reverseTransition),
        child: widget.child,
      ),
    );
  }
}

I think this is still not what you want ^^
If what you want is exactly the same effect as using stackedroutes I am not sure there is a way to achieve this (surely advanced things I don't know of). However by default when a route is removed (which is the case when 2 VWidgets are side by side), you can't have an animation out.
You can only animate a popping animation, which is what stackedRoutes uses.
This is a Flutter Navigator limitation not a VRouter one. Though if you find a working example with another package I would gladly have a look ! I might not know everything :wink:

@lulupointu
Seems to take up a lot of your time.
So sorry
If my wording is so bad:
All I want

Open a new page : Right To Left
Back to previous page : Left To Right
And when I open a new page, the old page is still there

Then stackedRoutes is the way to go, that's for sure

I've also tried this using stackedRoutes and it's not working as I would expect either. Granted, I'm still new to VRouter, but here's a sample configuration...
VWidget(
  path: '/a',
  widget: LandingScreen(),
  stackedRoutes: [
    VWidget(
      path: '/a/1',
      widget: ChildScreen1(),
    ),
    VWidget(
      path: '/a/2',
      widget: ChildScreen2(),
    ),
    VWidget(
      path: '/a/3',
      widget: ChildScreen3(),
    ),
  ],
)

And here's the behavior and what I would expect at each step.
context.vRouter.to('/a');  // Screen slides in from right to left, good
context.vRouter.to('/a/1'); // Screen slides in from right to left, good
context.vRouter.to('/a/2');  // Screen slides in from right to left, good
context.vRouter.historyBack(); // Screen slides in from right to left, I would expect the reverse transition to happen here.

Hi,
Good question! Actually this is more a "problem" of Flutter Navigator than VRouter: the navigator plays a reversaTransitionAnimation (from left to right in your example) when a page is popped.
So in your example:

Navigating from /a/x to /a will pop the ChildScreenX, therefore playing the left to right animation
Navigating from /a/x to /a/y will *replace ChildScreenX by ChildScreenY, which will not play the animation

I hope that's clear !


Static Analysis should be using CodeQL3000

Static analysis must be updated to CodeQL3000 in production repos by the end of November, 2022 (deadline is Dec. 2). We should confirm if we're already using it, and if not enable the update.
For more information on enabling the update, see https://eng.ms/docs/cloud-ai-platform/developer-services/one-engineering-system-1es/1es-docs/codeql/configuring-codeql3000-ado-pipelines#enabling-codeql-3000
And for information on static analysis, see https://devdiv.visualstudio.com/DevDiv/_wiki/wikis/DevDiv.wiki/1761/Static-Analysis

I have enabled this in .NET a while back https://github.com/Azure/azure-sdk-for-net/blob/main/eng/pipelines/templates/jobs/ci.yml#L47. It might actually already be running automatically in other pipelines as well.

@weshaggard I did not see it auto-injected into the pipelines yet, but will look for it again. Thanks for the reference on .NET 👍

It will only be on the internal pipelines and it only does any real work every few days it doesn't do the work every build because it can be expensive. However the auto-inject step should still show up in the pipelines.


Connect AirPodsPor to use the pink screen to shut down.

Connect AirPodsPor to use the pink screen to shut down.

This seems like a bad translation, I don't understand at all.
@532355805

When the phone is connected to AirPodsPor, the phone will freeze.

Can't reproduce

This seems like a bad translation, I don't understand at all.


[SPARK-49191][SS] Add support for reading transformWithState map state variables with state data source reader

What changes were proposed in this pull request?

Add support for reading transformWithState map state variables with state data source reader.
Why are the changes needed?

Changes are needed to integrate reading state reading with new operator metadata and state schema format for the map state types used in state variables within transformWithState
Does this PR introduce any user-facing change?

No. Similar way as reading valueState, user can now read mapState state var as:
spark
   .read
   .format("statestore")
   .option("operatorId", <operatorId>)
   .option("stateVarName", <mapStateVarName>)
   .load(<state path>)

The output Dataframe will look like:
+----+---------------------------+------------+
|key |map_value                  |partition_id|
+----+---------------------------+------------+
|{k1}|{{v2} -> {5}, {v1} -> {10}}|0           |
|{k2}|{{v2} -> {3}}              |0           |
+----+---------------------------+------------+

Or this if TTL is enabled:
+----+------------------------------------------------+------------+
|key |map_value                                       |partition_id|
+----+------------------------------------------------+------------+
|{k1}|{{key2} -> {{2}, 61000}, {key1} -> {{1}, 61000}}|0           |
+----+------------------------------------------------+------------+

An example schema for output dataframe:
root
 |-- key: struct (nullable = true) # grouping key row
 |    |-- value: string (nullable = true)
 |-- map_value: map (nullable = true)
 |    |-- key: struct # user key row
 |    |    |-- value: string (nullable = true)
 |    |-- value: struct (valueContainsNull = false) # value row in state store
 |    |    |-- value: struct (nullable = true) # value row
 |    |    |    |-- value: integer (nullable = false)
 |    |    |-- ttlExpirationMs: long (nullable = true) # ttl column
 |-- partition_id: integer (nullable = true)

How was this patch tested?

Unit tests in StateDataSourceTransformWithStateSuite
Was this patch authored or co-authored using generative AI tooling?

No.

cc @HeartSaVioR

I also commented in https://github.com/apache/spark/pull/47978 - looks like same issue appears here. The list state and map state are meant to be scalable, flipping the coin, they could be beyond the memory if we materialize all elements. Could you please follow/join the discussion in #47978 and reflect the decision once we have a decision? Thanks!

Please ignore above comment. We will proceed with the current proposed UX.

Thanks! Merging to master.


Notification

Can you please add telegram bot notification for this bot

Can you please add telegram bot notification for this bot

sorry I don't understand

Can you please add telegram bot notification for this bot

sorry I don't understand

I mean output logs on telegram via bot as a notification


Toast component should receive its id as prop

Thanks for this library.
I noticed that you support setting id via addToast, but for some reason (because it's pulled out as key in ToastController) it isn't passed into the Toast component. Having this prop would make it easier to use removeToast from within the Toast component, for example to dismiss it on button click.
Currently the slightly ugly work around is to set id as well as another prop (eg. customId ) with the same value in addToast, and then operate using customId in the Toast component.

This would help me with #103.

This would help me with #103.

@mikos, you can already use the workaround that I suggested to resolve #103.

I also realized today that the typescript types for addToast don't mention id, or customId (or autoDismissTimeout) even though these work; and that ToastProps doesn't allow for customId to be passed in. Had to patch all these :vomiting_face: locally

I am able to invoke onDismiss passed from ToastProps in my custom Toast component without passing in an id as a parameter and it does indeed dismiss the toast.

@brettinternet that makes sense - I didn't notice that parameter / realize that I could invoke it to dismiss. Perhaps this suggests an improvement to the docs, but besides that I think this issue can be closed.

@indigoviolet please feel free to provide a PR with docs changes


go mod support

Hi, can you provide a go mod spec? Or replace the github.com/appscode/go-version dependency with gomodules.xyz/semver, as appscode/go-version's go mod package path is incorrect for go mod. Currently, I have to replace this library as follow:
replace github.com/appscode/go-version => gomodules.xyz/semver v0.0.0-20190324134429-1dbb5e224a

We are going to provide Go mod support after Kubernetes 1.15 release which will add Go mod support to Kubernetes client libraries. This is going happen at the end of June.


🐛 BUG: Wrangler Init Error During Adding the Cloudflare Pages adapter

Which Cloudflare product(s) does this pertain to?
Other
What version(s) of the tool(s) are you using?
3.15.0
What version of Node are you using?
v20.9.0
What operating system are you using?
Windows
Describe the Bug
when trying to create a new project with the template of svelte or any other template such as nextjs it will error at the adding cloudflare page adapters
Please provide a link to a minimal reproduction
No response
Please provide any relevant error logs
`wrangler init
⛅ wrangler 3.15.0
Using npm as package manager.
▲ [WARNING] The init command is no longer supported. Please use npm create cloudflare\@2 instead.
The init command will be removed in a future version.
Running npm create<EMAIL_ADDRESS>using create-cloudflare version 2.6.2
╭ Create an application with Cloudflare Step 1 of 3
│
├ In which directory do you want to create your application?
│ dir ./nameless-dust-67aa
│
├ What type of application do you want to create?
│ type Website or web app
│
├ Which development framework do you want to use?
│ framework Next
│
√ Would you like to use TypeScript? ... No / Yes
√ Would you like to use ESLint? ... No / Yes
√ Would you like to use Tailwind CSS? ... No / Yes
√ Would you like to use src/ directory? ... No / Yes
√ Would you like to use App Router? (recommended) ... No / Yes
√ Would you like to customize the default import alias? ... No / Yes
Creating a new Next.js app in C:\Users\name\OneDrive\Desktop\asdasasddasdasasdasdasdasdasd\nameless-dust-67aa.
Using npm.
Initializing project with template: app-tw
Installing dependencies:

react
react-dom
next
typescript
@types/react
@types/node
@types/react-dom
tailwindcss
postcss
autoprefixer
eslint
eslint-config-next

added 330 packages, and audited 331 packages in 11s
116 packages are looking for funding
run npm fund for details
found 0 vulnerabilities
Initialized a git repository.
A new version of create-next-app is available!
You can update by running: npm i -g create-next-app
╭ Configuring your application for Cloudflare Step 2 of 3
│
├ Created an example API route handler
│
├ Do you want to use the next-on-pages eslint-plugin?
│ yes eslint-plugin
│
├ Adding the Cloudflare Pages adapter
│ npm ERR! code ENOENT
npm ERR! syscall open
npm ERR! path C<EMAIL_ADDRESS>npm ERR! errno -4058
npm ERR! enoent ENOENT: no such file or directory, open 'C<EMAIL_ADDRESS>npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! A complete log of this run can be found in: C:\Users\name\AppData\Local\npm-cache_logs\2023-11-03T20_57_47_020Z-debug-0.log
│
Error: npm ERR! code ENOENT
npm ERR! syscall open
npm ERR! path C<EMAIL_ADDRESS>npm ERR! errno -4058
npm ERR! enoent ENOENT: no such file or directory, open 'C<EMAIL_ADDRESS>npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm ERR!  A complete log of this run can be found in: C:\Users\name\AppData\Local\npm-cache_logs\2023-11-03T20_57_16_170Z-debug-0.log
✘ [ERROR] Command failed with exit code 1: npm create cloudflare@2
If you think this is a bug then please create an issue at https://github.com/cloudflare/workers-sdk/issues/new/choose
C:\Users\name\OneDrive\Desktop\asdasasddasdasasdasdasdasdasd>wrangler version
⛅ wrangler 3.15.0
C:\Users\name\OneDrive\Desktop\asdasasddasdasasdasdasdasdasd>node -v
v20.9.0`

Thanks for the report! This has been reported a few times, so I'm gonna consolidate some issues and close this ticket as a duplicate of https://github.com/cloudflare/workers-sdk/issues/4425, to be fixed by #4445.


dynamic_array_ref::data() should not fail if empty

Following is a body of the dynamic_array_ref::data() member function.
    SBEPP_CPP14_CONSTEXPR pointer data() const noexcept
    {
        SBEPP_ASSERT(!empty());
        return data_checked();
    }

As the first line of the code, there is a check for the emptiness. I'm not sure it should be there.
Consider the following code:
template <typename Byte, typename Len, sbepp::endian E>
void set(::sbepp::detail::dynamic_array_ref<Byte, char, Len, E> dest, std::string_view value) {

    dest.resize(value.size(), sbepp::default_init);
    memcpy(std::data(dest), std::data(value), std::size(value));
}

It is a proper code if you use for example std::vector instead of dynamic_array_ref. The issue is you cannot assign an empty string.
Could you remove that check?
Meanwhile, what is the proper way to initialize all the fields of the message? Is there a some kind of default constructor?

The intent was that data doesn't return "usable" pointer if empty. Actually, in your case assertion is helpful because passing nullptr to memcpy is UB even if size is 0. You can just use dest.assign(std::begin(value), std::end(value)) which is clearer and shorter.
Also, it's not good to use types from detail, they are implementation details. Let me know if there's no way you can avoid it and I'll think about making them public. For example here, can't you just do msg.dataField().assign(std::begin(str), std::end(str)); or at least use auto for the first parameter?

Meanwhile, what is the proper way to initialize all the fields of the message? Is there a some kind of default constructor?

Nope, sbepp generates a low-level wrapper that avoids doing anything beyond what's written explicitly. SBE doesn't have a notion of default values, the best we can do is to set null values for optional top-level fields, initialize group headers with 0 entries and data fields to length 0. Most of that you can achieve by filling your buffer with zeros. However, there are no good default values for required fields, enums, sets and composites so it's possible to have a really good "default constructor".

The intent was that data doesn't return "usable" pointer if empty. Actually, in your case assertion is helpful because passing nullptr to memcpy is UB even if size is 0. You can just use dest.assign(std::begin(value), std::end(value)) which is clearer and shorter.

In this case you can return a pointer right after the varLength header. It is like an end pointer in the STL container.

Also, it's not good to use types from detail, they are implementation details. Let me know if there's no way you can avoid it and I'll think about making them public. For example here, can't you just do msg.dataField().assign(std::begin(str), std::end(str)); or at least use auto for the first parameter?

https://github.com/OleksandrKvl/sbepp/issues/24  :)

Nope, sbepp generates a low-level wrapper that avoids doing anything beyond what's written explicitly. SBE doesn't have a notion of default values, the best we can do is to set null values for optional top-level fields, initialize group headers with 0 entries and data fields to length 0. Most of that you can achieve by filling your buffer with zeros. However, there are no good default values for required fields, enums, sets and composites so it's possible to have a really good "default constructor".

Maybe it is not really a good idea to have a default constructor because of variable length fields...

In this case you can return a pointer right after the varLength header. It is like an end pointer in the STL container.

This has an overhead because dynamic_array_ref is essentially a pointer, it can be nullptr, in this case there's no way I can return "a pointer after varLength". This would require an if-statement which is not free. I need some time to think about it, maybe it really makes sense to remove !empty() check and just say in documentation that in case size() == 0, the returned pointer is not dereferenceable. Want to check how std::vector::data behaves with  debug iterators being enabled.

How it can be null? The header is always there, no?

dynamic_array_ref has reference semantics, it only points to the memory in buffer where data is stored. Default constructed dynamic_array_ref holds nullptr since it doesn't point anywhere.

In this case you may want to see how string_view is implemented

Yes, dynamic_array_ref is closer to std::span. I checked both libstdc++ and libc++, neither of them triggers assertion when data is used on empty object so I will follow the same approach. Will make the change when I'll have free time.


[Feature][scaleph-engine-flink] flink multi-version cluster support

Already searched before asking?

[X] I had searched in the feature and found no similar feature requirement.

Usage Scenario
Scaleph supports flink 1.13.x, 1.14.x, 1.15.x, ...
Description
Flink api evolves between different version and flinkful keeps up with flink through 1.13.6.xxx version or 1.14.4.xxx version.
Scaleph delegates flink cluster and job operate to flinkful and only supports specific flink version.
We need to add support multiple flink version feature to Scaleph.
Are you willing to submit a PR?

[X] Yes, I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

There are two solutions for this problem:

seperate run environment. we can provide seperate environment by image and container
classloader. JVM identifies different class if the same class name loaded by different classloader

https://www.sofastack.tech/projects/sofa-boot/sofa-ark-migration-guide/


Test whether system has all needed libraries

From time to time people ask for a check whether system has all needed libraries that we assume to come with the system.
This should do:
#!/bin/bash

wget -q -c "https://raw.githubusercontent.com/AppImage/pkg2appimage/master/excludelist"

cat > check.c <<\EOF
#include<stdio.h>

int main() {
	printf("All libraries present, check passed\n");
	return 0;
}
EOF

gcc check.c -o check

LIBS=$(cat excludelist | grep -v "^#" | cut -d "#" -f 1 | sort | uniq |tr '\n' ' ')
stringarray=($LIBS)
for LIB in "${stringarray[@]}" ; do
  if [ "$LIB" == "ld-linux.so.2" ] ; then continue ; fi
  echo patchelf --add-needed "$LIB" check
  patchelf --add-needed "$LIB" check
done

rm excludelist

./check

It could possibly be rewritten not to need patchelf, but this works for me.
Reference:
https://github.com/KarlZeilhofer/kicad-appimage/issues/4#issuecomment-549031418

If this does not pass on a mainstream Linux distribution, then likely the excludelist is wrong and a bug should be filed.


This adds a ftdetect file related to vim-perl/vim-perl#191

This seems to work for my situation. vim-perl/vim-perl#191

@harleypig Sorry this took so long to mere; thanks for contributing!


React Native cookie

I am recieveing the response of an api call from the cookie. I tried many ways but i failed to fetch the details.How can i do .I tried react native fetch call and also library react-native-cookies.

I don't understand your problem. How is an api call related to the websocket?
Please feel free to reopen the ticket after you provide more details


Implement db.serverStatus()

We just return an empty JSON document with no details. We could add all the relevant fields in there.

What fields does it need in order to be compatible with, I guess existing client drivers?

Ah, I was very vague in the problem description :man_facepalming:.
Seems like some drivers or frameworks use db.serverStatus() to get server-specific information. Mongoose seems to be looking for version information. Although the failure I found was on the version field, we should add all the relevant fields, not just version. We should try to support the command as complete as possible.
db.serverStatus() has few different sections

instance information - we should do all of it
asserts - I think this could be quite useful, probably not all fields

asserts.regular - could be TraceEvent errors
asserts.warnings - could be TraceEvent warnings
asserts.msg - Any protocol failures could be reported here
asserts.user - User failures. Bad usage of commands etc.
We could add more counters here to represent transactions timeouts and failures. Or we could also make a separate section for them.

backgroundFlushing - It's safe to ignore this section
connections - We can easily add this section
dur - I don't understand this section accurately, this could potentially a place for implicit transactions stats as well
extraInfo - probably safe to ignore, although its easier to provide this info
opLatency and network - sections are interesting.

There are a lot of other sections which we can add as well. This seems like a point of source for MongoDB monitoring tools. More we add better compatible we would be with 3rd party tools.
I would say let's start with "instance information" for 1.7.0 and make sure Mongoose compatibility works. Remaining bits we can add after 1.7.0.


update docker-stacks source path and update Dockerfile

Hi, thanks for the PR! Just a couple of points before merging:
Why did you include pyyaml?
Also, I prefer to keep the DL frameworks explicitly versioned, so could you change those lines back please?
Thanks!

Hi, thanks for the PR! Just a couple of points before merging: Why did you include pyyaml? Also, I prefer to keep the DL frameworks explicitly versioned, so could you change those lines back please? Thanks!

"Hi, the default PyYAML will raise an "AttributeError: cython_sources" when used with Cython 3.0.0a10. This issue is caused by an incompatibility when PyYAML versions older than 6.0.1 are compiled with Cython versions 3.0 or newer. For more information, please refer to this StackOverflow discussion and this GitHub issue."


Enable Timezone Update on User Settings Screen

Update the User Settings screen to allow users to change their timezone if needed.

Ensure that the timezone field is easily editable in case of user relocation.

We decided that would be better get the timezone from user machine to show the values.


Update auto panel ssl to match Vesta

Auto panel ssl feature has recently been implemented on Vesta and is expected to go into the next release: https://github.com/serghey-rodin/vesta/pull/1317
Redo our docker script to utilize the Vesta route instead of the current implementation.

On vacation until 1/10/2018 and will not get to this until then.


Warning messages about ALSA lib after fresh install on v0.2.1

Made a fresh reinstall of Julia 1.5.1 on a Debian machine and after installing SimpleDirectMediaLayer.jl and
using SimpleDirectMediaLayer
SimpleDirectMediaLayer.init()
I receive the following warning (or error) messages on the terminal, which repeatedly appear every several seconds
ALSA lib conf.c:4048:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM default
Creating windows and rendering works still fine (I never use sound), but the warning messages overfill the terminal and are very annoying.
Maybe this it is related to #51. When I pin the version to something before v0.2.* in the package manager
pkg> pin<EMAIL_ADDRESS>the warnings disappear.

I get the same problem.
My guess is that one of the _jll packages (related to audio) uses a hard-coded path to alsa.conf that is not standard.
I am also guessing that this "workspace" directory might have something to do with the machines used to build these packages.

I guess this should also be reported to https://github.com/JuliaPackaging/Yggdrasil as this issue can only gets fixed there.

I see. The "SDML" contributors here are not the maintainers of the _jll files.
Thanks for the heads-up @Gnimuc. Apparently, an issue has already been created:
--> https://github.com/JuliaPackaging/Yggdrasil/issues/1432

This is how I got sound working on Linux. But I'm not sure how to convert that into a permanent solution: https://github.com/JuliaPackaging/Yggdrasil/issues/1432#issuecomment-851065063

With #65, I still get these warnings on CI. But that's probably because the config path on CI is not "/usr/share/alsa/alsa.conf".
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[194](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:197)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[195](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:198)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[196](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:199)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[197](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:200)
Test Summary: | Pass  Total  Time
[198](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:201)
Init+Quit     |    4      4  0.3s
[199](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:202)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[200](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:203)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[201](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:204)
Test Summary: | Pass  Total  Time
[202](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:205)
Text          |    7      7  0.1s
[203](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:206)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[204](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:207)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[205](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:208)
Test Summary: | Pass  Total  Time
[206](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:209)
Rendering     |    9      9  0.1s
[207](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:210)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[208](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:211)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[209](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:212)
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM default
[210](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:213)
ALSA lib conf.c:4499:(snd_config_update_r) Cannot access file /workspace/destdir/share/alsa/alsa.conf
[211](https://github.com/JuliaMultimedia/SimpleDirectMediaLayer.jl/actions/runs/3352202640/jobs/5554188390#step:6:214)
     Testing SimpleDirectMediaLayer tests passed


router: fixing inline write fails for upstream connections

Changing the router code such that we do deferred delete of the upstream request any time we might be under the stack of the upstream request.  the upstream request is still deleted inline for timeouts and other alarms.
Note only HTTP/3 currently does inline writes, so this fixes a currently-http3-only issue
Risk Level: high (changes lifetime of upstream requests)
Testing: new integration test
Docs Changes: n/a
Release Notes: n/a
Runtime guard: envoy.reloadable_features.allow_upstream_inline_write

/wait

Hey Snow, I'm throwing this your way as Matt's out.
I am hoping to land this PR this week because it has some test infra I want to use elsewhere, but given IMO the lifetime change is pretty high risk and we're not sure if we're cutting the release in under 2 weeks, I'm inclined to get an LGTM (making sure all changes pass on all CI with the flag on) then flip the default false right before landing with a TODO to flip true after the release.

Ah, so when TCP does writes, it puts data in the connection buffer, waits for an event, and then writes on the next epoll loop.  for UDP we just write directly to the socket.  If the write fails, we close the connection under the stack of the write, and here we delete the upstream request while doing work in the upstream request, resulting in a use-after-free. This adds a (really synthetic) test of writing fail due to an injected error, and fixes up the code so we don't have a use-after-free.
Some day I'd like to fix TCP to do inline writes because from a perf perspective it's pretty helpful (cc @wbpcode) but before we think of doing that we need to actually handle inline writes correctly which this PR does (and regression tests)


Kivy text input - adding line numbers

Hi, I'm currently trying to create something along the lines of a basic text editor using kivy. I'm trying to use the text input widget, but I am currently stuck on how I should be displaying line numbers. Is there a simple method to do this in Kivy?

This GitHub repository is meant for issues with Kivy codebase directly, please use an appropriate channel from Community Guidelines for asking about how to do things.

I came across the same need, so I did this: https://github.com/griloHBG/TextInputLineNumber
Perhaps this helps someone searching for the same thing.


Incompatibility with hyperref, unknown key in pdfinfo value

thmtools seems to clash with hyperxmp. MWE:
\documentclass{article}

\usepackage{hyperref}
\usepackage{hyperxmp}

\usepackage{amsthm}
\usepackage{thmtools}

\hypersetup{
    pdfinfo={
        CopyrightNotice={Copyright 2023}
    },
}

\begin{document}
    Hello.
\end{document}

errors with
! TeX capacity exceeded, sorry [parameter stack size=20000].
\PE@edefbabel #1#2#3->
                      \begingroup \csname @save@activestrue\endcsname \edef ...

Commenting out \usepackage{thmtools} or removing the CopyrightNotice from \hypersetup solves the issue.
(\PE@edefbabel seems to be a command from the pdfescape package, which is transitively loaded by either hyperref or hyperxmp.)

This seems to work:
diff --git a/source/thm-kv.dtx b/source/thm-kv.dtx
index 9fb16c4..36e1356 100644
--- a/source/thm-kv.dtx
+++ b/source/thm-kv.dtx
@@ -101,7 +101,7 @@
         \@xa\let\csname ifincsname\@xa\endcsname\csname iftrue\endcsname
         \edef\KVS@temp{\endgroup
 % 2019/12/22 removed dependency on etexcmds package
-          \noexpand\KVS@ProcessorDefault{#1}{\unexpanded{#2}}%
+          \noexpand\KVS@ProcessorDefault{#1}{\unexpanded\expandafter{#2}}%
         }%
         \KVS@temp
     }%

A slightly simplified example.
\documentclass{article}
\usepackage{thmtools}
\usepackage{hyperref}

\makeatletter
    % thm-kv.sty/dtx
    \def\kv@processor@default#1#2{%
      \begingroup
        \csname @safe@activestrue\endcsname
        \@xa\let\csname ifincsname\@xa\endcsname\csname iftrue\endcsname
        \edef\KVS@temp{\endgroup
% 2019/12/22 removed dependency on etexcmds package
          \noexpand\KVS@ProcessorDefault{#1}{\unexpanded\expandafter{#2}}%
        }%
        \KVS@temp
    }%
\makeatother

\hypersetup{
    pdfinfo={
        % any key unknown to pdfinfo
        xxx={Copyright 2023}
    },
}

\begin{document}
    Hello.
\end{document}

Need more time to check if that's the right fix.

This seems to work:
diff --git a/source/thm-kv.dtx b/source/thm-kv.dtx
index 9fb16c4..36e1356 100644
--- a/source/thm-kv.dtx
+++ b/source/thm-kv.dtx
@@ -101,7 +101,7 @@
         \@xa\let\csname ifincsname\@xa\endcsname\csname iftrue\endcsname
         \edef\KVS@temp{\endgroup
 % 2019/12/22 removed dependency on etexcmds package
-          \noexpand\KVS@ProcessorDefault{#1}{\unexpanded{#2}}%
+          \noexpand\KVS@ProcessorDefault{#1}{\unexpanded\expandafter{#2}}%
         }%
         \KVS@temp
     }%

No it may break things.

With vanilla kvsetkeys loaded, the key is fully expanded by \edef in \kv@processor@default, and the expanded result is used in \csname ...\endcsname in \KVS@ProcessorDefault.
But thmtools patches both commands to prevent expansion of key. With these patches, given \def\x{mykey}, \kvsetkeys{<family>}{\x=myval} behaves differently from \kvsetkeys{<family>}{mykey=myval}.

https://github.com/muzimuzhi/thmtools/commit/5b9c7ed8e87590e5d55a83a58e8200ab0a7928b2#diff-ae0e09b8ec45f060ab6c6f11989ebb1ca8de04422b8f2a204945540ed57e0380

\documentclass{article}
\usepackage{keyval, kvsetkeys}
\usepackage{thmtools}

\makeatletter
\define@key{fam}{mykey}{value is \texttt{>>\detokenize{#1}<<}}
\makeatother

\begin{document}
\kvsetkeys{fam}{mykey=myval} % both:    "value is >>myval<<"

\def\x{mykey}
\kvsetkeys{fam}{\x=myval}    % with thmtools:
                             %   Package kvsetkeys Error: Undefined key `\x '.
                             % without: "value is >>myval<<"

\def\y{myval}
\kvsetkeys{fam}{mykey=\y}    % both:    "value is >>\y <<"
\end{document}

Unfortunately, in handling unknown keys passed to pdfinfo, hyperref uses (source lines)
        \kv@parse@normalized{%
          \HyInfo@Key={#2}%
        }{%
          \kv@processor@default{pdfinfo}%
        }%

Here \kv@parse@normalized{<key-val list>}{<processor>} is an inner macro called by \kvsetkeys (after some normalization), \HyInfo@Key holds the unknown key passed to pdfinfo (for example CopyrightNotice) and acts as the key, {#2} acts as the value.
The patch on thmtools side has been added since 2012 (see texlive r26251), and the usage of \kv@parse<EMAIL_ADDRESS>on hyperref side has been there since 2010 (see texlive r16720).
Since the author of thmtools, Dr. Ulrich M. Schwarz is inactive, I can't get to know why the patches are needed and how they serves thmtools. IMHO the safest fix is to ask for hyperref to expand \HyInfo@Key before passing it to \kv@parse@normalized.

IMHO the safest fix is to ask for hyperref to expand \HyInfo@Key before passing it to \kv@parse@normalized.

see https://github.com/latex3/hyperref/issues/275. Meanwhile I'll try to provide a workaround, either short- or long-term from thmtools' side.

Thank you for looking into it! I found that as a workaround I can enable pdfmanagement-testphase (and disable hyperxmp).

But thmtools patches both commands to prevent expansion of key.

Hm, changing the semantics of commands of a different package like this sounds like asking for compatibility issues.

Not finally decided yet, but I plan to disable the patches by default, and provide a new package option to turn them on, if any backward compatibility issues are encountered.

@muzimuzhi Can this be closed? The OP's example no longer produces an error


When set time.Location, will be detected Data Race.

What version of Go are you using (go version)?
go 1.11
What did you do?
I set time.Location, then ...
==================
WARNING: DATA RACE
Write at 0x000002e275d0 by main goroutine:
  vcs.taiyouxi.net/platform/planx/timeutil.SetTimeLocal()
      /Users/zhangzhen/serverthreekingdom/src/vcs.taiyouxi.net/platform/planx/timeutil/time_util.go:51 +0xb4
  vcs.taiyouxi.net/platform/planx/timeutil.init.0()
      /Users/zhangzhen/serverthreekingdom/src/vcs.taiyouxi.net/platform/planx/timeutil/time_util.go:42 +0x43
  vcs.taiyouxi.net/platform/planx/timeutil.init()
      <autogenerated>:1 +0xd0
  vcs.taiyouxi.net/jws2/common/time.init()
      <autogenerated>:1 +0xa6
  vcs.taiyouxi.net/jws2/gamex/account/account.init()
      <autogenerated>:1 +0xa6
  vcs.taiyouxi.net/jws2/gamex/logics.init()
      <autogenerated>:1 +0xa6
  vcs.taiyouxi.net/jws2/gamex/cmds/gamemode.init()
      <autogenerated>:1 +0xa6
  main.init()
      <autogenerated>:1 +0xa6

Previous read at 0x000002e275d0 by goroutine 8:
  time.Now()
      /Users/zhangzhen/.gvm/gos/go1.11/src/time/time.go:1060 +0xcf
  time.sendTime()
      /Users/zhangzhen/.gvm/gos/go1.11/src/time/sleep.go:141 +0x44

Goroutine 8 (running) created at:
  runtime.(*timersBucket).addtimerLocked()
      /Users/zhangzhen/.gvm/gos/go1.11/src/runtime/time.go:170 +0x113
  vcs.taiyouxi.net/vendor/github.com/siddontang/go/timingwheel.NewTimingWheel()
      /Users/zhangzhen/serverthreekingdom/src/vcs.taiyouxi.net/vendor/github.com/siddontang/go/timingwheel/timingwheel.go:39 +0x2a0
  vcs.taiyouxi.net/platform/planx/util.init()
      /Users/zhangzhen/serverthreekingdom/src/vcs.taiyouxi.net/platform/planx/util/timer_helper.go:10 +0xf3
  vcs.taiyouxi.net/platform/planx/metrics.init()
      <autogenerated>:1 +0xbf
  vcs.taiyouxi.net/jws2/gamex/cmds/gamemode.init()
      <autogenerated>:1 +0x9c
  main.init()
      <autogenerated>:1 +0xa6
==================

What did you expect to see?
The feature of golang is goroutine, and it is a normal situation that get time in different goroutine.
But only can set time.Location in one goroutine. So the Data Race is inevitable.
I wonder if it is a bug?

It is not a bug. Please synchronize access to time.Location using synchronization primitives in the sync and sync/atomic packages.
For further discussion, have a look at the Questions wiki page; it has a list of good places for asking questions.

Thanks for your replay so quickly.
But there are lots of time.Location used by time of golang. for example: time.Now()
I can't change them.
WARNING: DATA RACE
Read at 0x00c0000b66f0 by goroutine 28:
  time.Time.locabs()
      /Users/zhangzhen/.gvm/gos/go1.11/src/time/time.go:478 +0x24f
  time.Time.AppendFormat()
      /Users/zhangzhen/.gvm/gos/go1.11/src/time/format.go:501 +0x6d
  time.Time.Format()
      /Users/zhangzhen/.gvm/gos/go1.11/src/time/format.go:493 +0xca
  time.Time.String()
      /Users/zhangzhen/.gvm/gos/go1.11/src/time/format.go:439 +0x7f
  vcs.taiyouxi.net/platform/planx/signalhandler.SignalKillHandle.func1()
      /Users/zhangzhen/serverthreekingdom/src/vcs.taiyouxi.net/platform/planx/signalhandler/signal_stop_wraper.go:105 +0x264
  sync.(*Once).Do()
      /Users/zhangzhen/.gvm/gos/go1.11/src/sync/once.go:44 +0xde
  vcs.taiyouxi.net/platform/planx/signalhandler.SignalKillHandle()
      /Users/zhangzhen/serverthreekingdom/src/vcs.taiyouxi.net/platform/planx/signalhandler/signal_stop_wraper.go:98 +0x46
  vcs.taiyouxi.net/jws2/gamex/cmds/game.GameStart.func1()
      /Users/zhangzhen/serverthreekingdom/src/vcs.taiyouxi.net/jws2/gamex/cmds/game/game.go:76 +0x2f
  vcs.taiyouxi.net/platform/planx/util.(*WaitGroupWrapper).Wrap.func1()
      /Users/zhangzhen/serverthreekingdom/src/vcs.taiyouxi.net/platform/planx/util/wait_group_wraper.go:14 +0x34

Previous write at 0x00c0000b66f0 by main goroutine:
  [failed to restore the stack]

So, What should I do ?

Unlike many projects on GitHub, the Go project does not use its bug tracker for general discussion or asking questions. We only use our bug tracker for tracking bugs and tracking proposals going through the Proposal Process.
Please see https://golang.org/wiki/Questions for good places to ask questions.


Is that possible to support kibana 4.x also?

As titled!
Since kibana 4.x is still widely used.

We don't have Kibana4 anywhere actively running any more at our company and unfortunately I currently don't have the free time to do this without needing it ourselves.
That being said, it should be for sure possible to do this if someone has the time to do a fork of this.


fix: make compatible to macOS

Current implementation is not compatible to macOS. Reason is that PowerShell is instantiated also on macOS. This PR instantiates shells lately after knowing the OS.

Thank you for your contribution.

:tada: This PR is included in version 1.0.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


mecha: extend build command with project/modules subcommands and flags

This PR improves the mecha CLI by extending the implementation of the build command to include project and modules subcommands. It also add flags by reusing the same flags as the flash command is already using.

Why is this needed?
Needed if you want to build the binary but not actually flash the device right now.
How to use the code in this PR:
mecha build

This builds the modules in the current project. Same as the 0.1.x  version of the command.
mecha build modules

This builds only the modules in the current project.
mecha build project

This builds only the application in the current project.

Thanks @orsinium now merging.


fix: update bf-dialog to latest rc, adjust syntax

Description

Update bf-dialog library to latest.
Update syntax of call to SchemaMerger to pass full path to generated folder rather than relative path.

This should address some issues reported with Package Manager failing after the bot has started.
Task Item
Fixes #6845

Coverage remained the same at 51.154% when pulling 4a55dbc9053faaac1e19ee0b6b0e1137c6026db7 on benbrown/pkrc1 into 31d20acc127db42abd8db7aa03f63d34f69c9ad2 on main.


Add DOT graph renderer

This PR adds a renderer for SCFG graph.

@gandreadis @FWDekker @JSAbrahams Thanks for the feedback guys. Have updated some stuff.


Faculty/Staff listing should be alphabetic

In the current staging build it is … random? https://umd-mith.github.io/mith-static/people/

They are ordered by last name, but in the Airtable Base middle names are bundled with last names. I have created a separate entry for middle name in the Base (also asked for some clarifications on Slack to be sure). So the next build should look better, at least placing Andrew in the right spot.
However, it could still appear confusing to a new reader... should we sort by first name?

@trevormunoz what do you think about sorting by first name? If we don't want further changes, then I think this is fixed and can be closed.

@raffazizzi Yes, let's try ordered by first name

Let's go with this for now


Are there not annotated data for lesion segmentation or lesion detection in this dataset?

Hi, it's a great dataset!
I have downloaded the dataset and extracted it. However, there is only a DR_grading folder. Are there not annotated data for lesion segmentation or lesion detection in this dataset? or just I should re-download it by some file error?

I'm sorry. It's my fault. After I re-downloaded and extracted it, the '''lesion_detection''' and '''lesion_segmentation''' folder are shown.


Forwarding a picture on whatsapp turns it into a document

Description: When forwarding an image in a Whatsapp account, it appears as a document.
How to reproduce it: Send a JPG image over whatsapp. Select it and press <alt-r> to forward it to (even the same!) chat. Notice when it arrives that what was an image now appears as a document (indeed, its name is now changed from hash.jpg to hash-hash.jpg for some hashes hash)
Environment:

Version: nchat 5.1.29
OS / distro: Linux 6.10.4-arch2-1

Hi @hseg - thanks for reporting a bug! I can reproducing the issue here as well. Will look into this.

Hi again - the issue should be fixed with above commit. Please let me know if it's not.

It didn't fix it -- just tested it with a build off ca01274, and I still can reproduce: I forwarded a JPG back to myself, and got it as a document
EDIT: For some reason, rebuilding nchat on that version does fix the bug. If this strikes again, I'll reopen the bug, but for now things look good.
One thing that may have confused me is that I checked the version using my package manager -- it may be useful to have nchat --version report the commit it was built on for sanity-checking

it may be useful to have nchat --version report the commit it was built on for sanity-checking

Thanks for the suggestion, I'll see if I can add this.


[Script] Add ELMo feature extraction script

The model zoo section on gluon-nlp website does not show ELMo as one of the model. The main reason is that we do not have script for ELMo, but a tutorial. This leads to misunderstanding that gluon-nlp does not have pre-trained ELMo model. I suggest we add an entry to ELMo in the model zoo section and provide a script like #587

@eric-haibin-lin is anyone working on this issue? I can take care of it.

@imgarylai Not at the moment. Let us know if you need any help with it!

I'm writing the script for this issue. I want to say thank you for the tutorial first. The tutorial is a good reference for me. The script is almost done. Several details I want to confirm with you to make sure I understand it correctly.
In the last step of this tutorial, it stops at showing the shape of features of the first batch, including two sentences. And for each feature, the shape represents batch_size, sequence_length, embedding_size. However, there are three features. These three features are not explained in the tutorial. I look it up from the source code. Do these three represent mask, forward, backward respectively? This is my first question.
If my previous understanding is correct, I have the following questions. Assume there is a sentence in a length of 5 and it is the first sentence in the first batch for simplicity. I want to get the features from both forward and backward layers of this sentence.
The idea should be like the following code, right?
batch = next(iter(data_loader))
# get the first batch

features = get_features(*batch)
# get features for first batch

_, forward, barkward = features

forward_feature = forward[0][0][:5]
barkward_feature = barkward[0][0][:5]
# The first index is the index in batch and the second one is the index of the sentence in that batch.

And according to my assumption, since the length of the sentence is 5, I should just get the first five embedding from the forward. And for the barkward_feature, is it same as like forward? My question is we still use the first five embeddings not the last 5, right? (I check the code. It should have been reversed already.)
Thanks for your patient to read these long issue! Please let me know if I misunderstand in any part of this tutorial.

Hi Gary.

These three features are not explained in the tutorial.

They represent the activation of each of the three layers. See ELMoBiLM.
The first dimension of each extracted feature ndarray has size 2 which represents the features from forward and backward directions.
Also, note that there's not enough validation on this functionality so far, so it would be great to at least use this to reproduce one downstream task once done. https://github.com/dmlc/gluon-nlp/issues/523

I think the above points are worth mentioning in the tutorial if you'd help with that too :)

@szha Thanks. I think I understand it. The result represents the following representations right?

And yes, sure. Of course! I will update the tutorial later.

They represent the output of the three bi lstm layers

@szha I read the paper again. I realized I left stupid comments... sorry for that.
I'm also interested in reproducing downstream tasks. I can start from there.

Hi @imgarylai is this still on your roadmap?


One static analysis run is enough

and protect an asterisk!
Ticket: #2235
Issue
@jarednova summoned me

I wonder whether $PREFER_LOWEST is a stray variable...


run it on windows

hello i want to try this project on my desktop before  deploying it to Rpi, how can i install openframework.., should i just include those missing files or what (ofMain.h, ofxCv.h... )

Hi @hardjob
I don't have access to windows hardware. However, if you follow the guide on the openFrameworks site. You be able to install and compile it.
As for Footfall. You'll need to clone the repos from the getrepos.sh file.
I haven't built a windows version but am sure it will work.
Best

Hi @hardjob  - I have built it on Windows 10 with Visual Studio 2015 Community Edition - it should work on other versions with minor adjustments
@DHaylock - I hope it's OK if I reproduce my notes below:
Build Waterfall Footfall on Windows 10 with Visual Studio

Using VisualStudio 2015 Community edition, follow the instructions at http://openframeworks.cc/setup/vs/

Download and unzip VisualStudio OpenFrameworks code from here http://openframeworks.cc/download/
This will create a directory %HOMEPATH%\Downloads\of_v0.9.8_vs_release\of_v0.9.8_vs_release

Install Git for Windows: https://git-for-windows.github.io/ if you don't already have it.

Then to get the Footfall code from Windows shell:

cd %HOMEPATH%
git clone https://github.com/WatershedArts/Footfall.git
set OF=%HOMEPATH%\Downloads\of_v0.9.8_vs_release\of_v0.9.8_vs_release
cd %OF%\addons
git clone https://github.com/kylemcdonald/ofxCv -b stable
git clone https://github.com/arturoc/ofxHttpUtils
git clone https://github.com/jefftimesten/ofxJSON
git clone https://github.com/paulvollmer/ofxCsv

Create a new project in VS called Footfall using the openFrameworks plugin you installed at Step 1 – do NOT check the box to create a directory

Choose the following Official addons when prompted:
ofxNetwork
ofxOpenCv
Choose the following Community addons when prompted:
ofxCsv
ofxCv
ofxHttpUtils
ofxJSON

From the Windows shell:

cd %HOMEPATH%
robocopy Footfall\Footfall\   %OF%\apps\myApps\ -e
Now go back to the Solution Explorer pane in VS, right click on Footfall -> src, and use Add -> Existing Item... to highlight all files in apps\myApps\Footfall\src and add them to the Project

Amend CameraManager.h as shown below, #defining USE_VIDEO:

//#define USE_PI_CAM
//#define USE_WEBCAM
#define USE_VIDEO
To specify a video file to run, follow David's configuration guide here https://github.com/WatershedArts/Footfall/blob/master/docs/configuration.md

There are two apparent bugs that we need to work around :-(

Firstly, the openFrameworks plugin doesn't seem to REALLY add ofxOpenCv to the dependencies, and this leads to many link errors - I had to remove and re-add ofxOpenCv (right click on Footfall in the Solution Explorer pane of VS -> openFrameworks addons -> uncheck ofxOpenCv -> press OK, then repeat but check the ofxOpenCv tickbox -> press OK)
Secondly, there is an additional bug in the openFrameworks plugin where the Additional Dependencies directory list gets corrupted with control characters and causes a single link failure - https://github.com/openframeworks/openFrameworks/issues/4724
To work around this, right click on the Footfall project in the Solution Explorer pane in VS and choose Properties. Select Linker->Input and replace any instances of %3b with semicolon space. There are quite a few, and you may need to do it for both Debug and Release targets, so this is pretty painful …

Build the solution - it will take about 10 minutes to build openFrameworks, then the addons, and finally Footfall itself

i got some errors related to ofxCv :
cannot open source file "ofxCv/Calibration.h"
....
i tried to remove and re-add ofxCv from OF addons but still the same error

@hardjob,
So, do you have something that looks like this in the Solution Explorer ?

I fixed that by editing include directories

@gundrygs  i build it and run it , but i got a blank window, and the debugger don't show any error :

i realised that vs can't cout a non-consol application ....
how can i deal with that ??

@gundrygs can you please send me the video sample you use

Hi hardjob,
Try the attached – you will need to alter the filename at line 47 in CameraManager.cpp to “testFeb20pm.mp4”
I think you will also need to install the video codec pack as mentioned at http://openframeworks.cc/setup/vs/ - link is http://filehippo.com/download_klite_codec_pack/67445/
Regards,
George
From: hardjob<EMAIL_ADDRESS>Sent: 22 March 2017 16:44
To: WatershedArts/Footfall<EMAIL_ADDRESS>Cc: gundrygs<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [WatershedArts/Footfall] run it on windows (#76)
@gundrygs https://github.com/gundrygs  can you please send me the video sample you use
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/WatershedArts/Footfall/issues/76#issuecomment-288461945 , or mute the thread https://github.com/notifications/unsubscribe-auth/AOaaPr46VQRm2bVhQLq5DNWuktpwyJrNks5roU_ngaJpZM4MXdaF .  https://github.com/notifications/beacon/AOaaPoTzfWS1QNFHqFRsi0SMb-FbETc-ks5roU_ngaJpZM4MXdaF.gif

i didn't receive the attachment , please send it at<EMAIL_ADDRESS>also i often get this message , i don't knwo why

Hi hardjob – attachment sent – I’m afraid I can’t help with the exception – remote debugging is pretty impossible !
Hope you work it out,
Regards,
George
From: hardjob<EMAIL_ADDRESS>Sent: 24 March 2017 00:36
To: WatershedArts/Footfall<EMAIL_ADDRESS><EMAIL_ADDRESS>>
Cc: gundrygs<EMAIL_ADDRESS><EMAIL_ADDRESS>>; Mention<EMAIL_ADDRESS><EMAIL_ADDRESS>>
Subject: Re: [WatershedArts/Footfall] run it on windows (#76)
i didn't receive the attachment , please send it at<EMAIL_ADDRESS><EMAIL_ADDRESS>also i often get this message , i don't knwo why
https://cloud.githubusercontent.com/assets/8091800/24275757/c6060ef8-1029-11e7-9e30-0292fe2e1025.PNG
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/WatershedArts/Footfall/issues/76#issuecomment-288900891 , or mute the thread https://github.com/notifications/unsubscribe-auth/AOaaPuRfIN29KcdZv_8aksdDuPlCBTXqks5row_UgaJpZM4MXdaF .  https://github.com/notifications/beacon/AOaaPirHDC43pX1EkDwI5W8aCOuTMzn4ks5row_UgaJpZM4MXdaF.gif

On Visual studio 2015, I was finally able to build the project without any errors . I ran it also using Alt F5, which is when I got the below screenshot. However, I am unable to see the video and the line and the square for cutting the Footfall/the crossover line, layered on top of the video that I usually see on the raspberry Pi. In fact I am unable to see the video being played back at all on Windows.
For building it on Windows, I am using YOURTESTFOOTAGE.mp4 on  Line number 47 - as mentioned by grundygs
the OF\apps\myApps\Footfall\bin\data folder contains, the standard two files - "config.json" and "yourtestfootage.mp4"
There are no build errors, its just that I cant see the video and the cutting line. Neither do I get any output of FF +1 or -1.
Only the CMD window in black and a standard blank, empty, VS forms Window.
Thank you, for the pointers,

Anyways..now I am able to run the FF on a video, however, the configuration of the damn things is so tough!!!


This plugin breaks filetype detection when loading a session

The breakage occurred in the latest commit (cad28c53f0497b56836ca89ede404c7e57df25c8).
Steps to reproduce:

Open a few files that have syntax highlighting in multiple nvim windows
Create a session: :mksession /tmp/repro
Quit nvim
Launch nvim with the -S option: nvim -S /tmp/repro
The session should be loaded, the files should have no syntax highlighting

Expected behavior:

Checkout 10bb37c82e94122be082651ee6ee58b5b2e51cb5 of this repository
Repeat the steps above, the files should have proper syntax highlighting

Based on the changes made in cad28c53f0497b56836ca89ede404c7e57df25c8, this issue likely extends to anything relying on events when a session is loading. Also note that session loading can happen at any time, not only during startup, and this issue still applies in those cases.

This should be helpful in fixing the issue (:help SessionLoad-variable):
The |SessionLoadPost| autocmd event is triggered after a session file is
loaded/sourced.
						*SessionLoad-variable*
While the session file is loading the SessionLoad global variable is set to 1.
Plugins can use this to postpone some work until the SessionLoadPost event is
triggered.

Thanks for reporting. I never noticed any issues myself because I lazy-load this plugin on CursorHold.
Could you check if https://github.com/luukvbaal/stabilize.nvim/commit/bbafcefe2d3f63463bc973c4c7493dc7945bbf19 fixes the issue?

Also note that session loading can happen at any time, not only during startup, and this issue still applies in those cases.

Didn't read this part, I guess https://github.com/luukvbaal/stabilize.nvim/commit/a04ffdb589193268b716cebb7dc9d272b52eed3a won't fix anything then.
Think I'll just revert https://github.com/luukvbaal/stabilize.nvim/commit/cad28c53f0497b56836ca89ede404c7e57df25c8.

I just tested a04ffdb and it seems to work perfectly in both cases 👍


pop chams mode

add so in popchams you can make it so when they pop it starts small than grows and add a speed from small to big or big to small

Why would it grow? Should it start smaller then the player then? That would look ugly.

Why would it grow? Should it start smaller then the player then? That would look ugly.

incredibly bad*


Update creating-team-manifest-manually-for-webpart.md

Category

[x] Content fix
[ ] New article

What's in this Pull Request?
Updated schema version to 1.5 since 1.2 doesn't support webApplicationInfo object.

thx @JarbasHorst, appreciated.


Popup with attributes for devices on map

When the user click on the marker, if the device has attributs a popup window is shown with the device's attributes list.

Have you done jshint and jscs checks? Please do it BEFORE EVERY PULL REQUEST. I tell it to you every time, but you keep ignoring me.

I am not ignoring you, those files already passed all the tests.
Somehow the 4 spaces in two lines where replaces with tabs by mistake.
also I found 4 errors in other files you have, you should check yourself too:
app\view\ReportController.js: line 55, col 50, Strings must use singlequote.
app\view\ReportController.js: line 65, col 56, Strings must use singlequote.
app\view\ReportController.js: line 110, col 69, Strings must use singlequote.
app\view\ReportController.js: line 120, col 62, Strings must use singlequote.
4 errors

Please explain your changes to the loadReport method in MapController.js.
I give you the last chance to review your own pull request before giving it to me for review. Please check every line before saying that it's ready.

Sorry for this, I didn't notice that this file was changed by someone else since I started working on it.
I didn't change this method, those lines where left by the older version of this file.
I will have to write and combine all my changes again on the latest versions of all those files I changed.

Hi Anton,
I am trying to merge the 2 commits you did in the last hour but I'm getting a conflict in Style.js file
and I really don't know how to solve it without upsetting you.
I would really appreciate your assistance here.
Thanks
Erez

Open any merge tool and resolve it. What exactly is the problem? If you don't have any merge tool, you should get one. It's also possible to merge it manually in any text editor if you refuse to use a proper tools.
Also, don't forget to review EVERYTHING before you tell me it's ready. I'm seriously saying that it's your last chance to get it through.

Hi Anton,
Do you have any more comments on this pull request?
Thanks
Erez


Zoom In not working when the "Group By" field is used.

Hi!
I just noticed that when the "Group By" field is used, the Zoom In feature is not working.
I don't know if it's intended because of the varying timeranges, but if yes, than maybe there should be an option to not auto-align the chart between the first start and the last finish, just use the selected time range.
Thank you for your efforts!

Thank you for the feedback! My reasoning has been that when you're grouping activities, you likely want to compare them with similar runs. For example, I'm planning to allow duration on the X-axis when using Group by.
Without the relative time range, Group by is essentially just a filter which could be solved with dashboard variables.
The other option is to have a separate option for toggling between relative and absolute time.
Could you share more about your use case so I can understand it better?

I just used it on the panel because it wasn't relevant dashboard-wide.
It's not a problem, just I think in this case it should be noted somewhere, that it just works if the grouping is not used.


[WIP][From @nzlosh] Interoperability updates for py3.8, py3.9 and py3.10

Based on the updates done in #6157, I merged in the changes that @cognifloyd did on master into the changes that @nzlosh was working on. From here I am going to update things until unit tests work properly on python 3.8-3.10.

pls ignore this for a bit. I am more setting this up for ci-cd for after I figure out this race condition, and will be working with @nzlosh to rebase any changes into his pr to be shipped afterwards.

From inital looks, it seems that tooz is not configured properly to use a datastore during pytest which may be causing race conditions????? I am not quite sure yet, however, we are clearly getting race conditions while testing, and the issue is coming from
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
AUDIT    st2.st2common.services.action:action.py:254 The status of action execution is changed from requested to scheduled. <LiveAction.id=6695750428019631d0419e7f, ActionExecution.id=6695750428019631d0419e80>
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
AUDIT    st2.st2actions.worker:worker.py:195 Launching action execution.
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
AUDIT    st2.st2common.services.action:action.py:254 The status of action execution is changed from requested to scheduled. <LiveAction.id=6695750428019631d0419e8d, ActionExecution.id=6695750428019631d0419e8e>
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
AUDIT    st2.st2actions.worker:worker.py:195 Launching action execution.
AUDIT    st2.st2common.services.access:access.py:91 Access granted to "stanley" with the token set to expire at "2024-07-16T19:14:12.940541Z".
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
AUDIT    st2.st2actions.container.base:base.py:173 Liveaction completed
AUDIT    st2.st2common.services.action:action.py:201 Action execution requested. LiveAction.id=6695750428019631d0419e8d, ActionExecution.id=6695750428019631d0419e8e
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
AUDIT    st2.st2actions.container.base:base.py:173 Liveaction completed
AUDIT    st2.st2common.services.action:action.py:201 Action execution requested. LiveAction.id=6695750428019631d0419e7f, ActionExecution.id=6695750428019631d0419e80
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
ERROR    st2.st2common.services.workflows:workflows.py:71 [6695750428019631d0419e80] Workflow execution completed with errors.
ERROR    st2.st2common.services.workflows:workflows.py:71 [6695750428019631d0419e80] {'type': 'error', 'message': 'Execution failed. See result for details.', 'task_id': 'task1', 'result': {'failed': True, 'succeeded': False, 'return_code': 1, 'stdout': '', 'stderr': 'sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper'}}
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
ERROR    st2.st2common.services.workflows:workflows.py:71 [6695750428019631d0419e80] Workflow execution completed with errors.
ERROR    st2.st2common.services.workflows:workflows.py:71 [6695750428019631d0419e80] {'type': 'error', 'message': 'Execution failed. See result for details.', 'task_id': 'task1', 'result': {'failed': True, 'succeeded': False, 'return_code': 1, 'stdout': '', 'stderr': 'sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper'}}
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.
ERROR    st2.st2common.services.workflows:workflows.py:71 [6695750428019631d0419e80] Workflow execution completed with errors.
ERROR    st2.st2common.services.workflows:workflows.py:71 [6695750428019631d0419e80] {'type': 'error', 'message': 'Execution failed. See result for details.', 'task_id': 'task1', 'result': {'failed': True, 'succeeded': False, 'return_code': 1, 'stdout': '', 'stderr': 'sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper'}}
WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible.

Every time something fails, we get WARNING  st2.st2common.services.coordination:coordination.py:244 Coordination backend is not configured. Code paths which use coordination service will use best effort approach and race conditions are possible. coming up quite a few times. I wonder if I change the tests to auto setup a different backend for tooz to coordinate off of if it would fix this issue (I have no clue what it is using now I am assuming a file rn).

I read the test, my last comment was dumb. We do noop(s) on tooz calls. Still no clue what is happening on that end though.

The race conditions are due to noop being used instead of actual coordination in the unit testing.  Setting up redis and coordination will fix these.

+1 @ajjonen.  Redis wasn't a hard dependency initially but has been for a couple of years now, I think it makes sense to use redis as the tooz coordinator to run tests.

Okay makes sense to me. I'll do that then. Thanks for the heads up good to see I wasn't as crazy as I initially thought with this https://github.com/StackStorm/st2/pull/6223#issuecomment-2229317377


No audio in Release Build on Device

Application works fine in Debug and Release build on a iPhone simulator. It runs fine in Debug mode on a connected device but it fails (hangs) when it is build for Release.

Problems seems to be that the audio files are not copied over. The same problem exists on Droid... What do I need to do to get my MP3's copied over to a device?

i am having the same issue even in debug mode. I deployed the app on a physical device but it's not playing the sound. It's working fine only on the simulator. I didn't test the android. I faced this in iOS


What is callback, callback_threshold?

I'm not sure how to define callback and callback_threshold arguments. It is not clear from the help.

callback is a callable which is called at every callback_threshold bytes downloaded. You can think of it like a progress updater. Developers can use it to get regular updates about the download process.

Thanks for clarifying!


Provide stage-out cwl example

Document required and optional fields

CWL example for stage-out https://github.com/unity-sds/unity-data-services/tree/cwl-examples/cwl/stage-out-stac-catalog
Description of required/optional fields https://unity-sds.gitbook.io/docs/developer-docs/data/docs/users-guide/stage-out


sfdx commands --json repeats commands

Summary
Certain commands are repeated and show up in twice in the output of sfdx commands --json. This creates unncesseary clutter in my autocomplete script. Makes me wonder if source commands are repeated in multiple core plugins.
Steps To Reproduce:

Run sfdx commands --json > allcommands.json
Look for force:source:pull in the allcommands.json file generated above.

Expected result
The JSON for force:source:pull occurs twice in the file.
Actual result
The JSON for force:source:pull should appear only once in the file.
System Information

Bash in WSL2

CLI Version:
        sfdx-cli/7.172.0

 Architecture:
        wsl-x64

 Node Version:
        node-v18.3.0

 Plugin Version:
        @oclif/plugin-autocomplete 1.3.1 (core)
        @oclif/plugin-commands 2.2.1 (user)
        @oclif/plugin-help 5.1.14 (core)
        @oclif/plugin-not-found 2.3.3 (core)
        @oclif/plugin-plugins 2.1.1 (core)
        @oclif/plugin-update 3.0.2 (core)
        @oclif/plugin-version 1.1.2 (core)
        @oclif/plugin-warn-if-update-available 2.0.6 (core)
        @oclif/plugin-which 2.1.0 (core)
        alias 2.1.5 (core)
        apex 1.2.0 (core)
        auth 2.2.13 (core)
        community 2.0.3 (core)
        config 1.4.21 (core)
        custom-metadata 2.0.1 (core)
        data 2.1.4 (core)
        generator 2.0.5 (core)
        info 2.1.9 (core)
        limits 2.0.5 (core)
        org 2.2.7 (core)
        packaging 1.9.4 (core)
        schema 2.1.10 (core)
        signups 1.2.7 (core)
        source 2.0.17 (core)
        telemetry 2.0.2 (core)
        templates 55.1.0 (core)
        trust 2.0.4 (core)
        user 2.1.10 (core)
        @salesforce/sfdx-plugin-lwc-test 1.0.1 (core)
        @salesforce/sfdx-scanner 3.6.2 (user)
        salesforce-alm 54.8.1 (core)
        sfdmu 4.17.6 (user)
        sfdx-apex-typings-generator 3.0.1 (user)

 OS and Version:
        Linux <IP_ADDRESS>-microsoft-standard-WSL2

 Shell:
        bash

Hi @surajp - I was able to recreate the above behavior. This is actually an OCLIF plugin-commandslevel behavior bug, you can tell by running sfdx which commands to see which plugin a command belongs to.
cc: @mdonnalley

@WillieRuemmele Thanks. I'm aware that plugin-commands is responsible for generating that output. (I install it manually for my autocomplete script to work with the new Salesforce cli ( since it doesn't seem to bundled there). However, if this is a bug with the plugin itself, why do we see this happening with only certain sets of commands (source commands, for example) and not all commands?

@surajp, I'm not sure why some commands are duplicated... I'd need to look into it more. However, sf should support autocomplete by running sf autocomplete and following the instructions there.

@WillieRuemmele Thank you. The script I offers fuzzy search and more features than the standard sf autocomplete script.


Docker for Linux build/* file missing

*Using Ubuntu 20.04.2 LTS
Run -  python build.py build --desktop cpu --include_opencv_libs -v
-> Cannot stat 'build/': No such file or directory
DEBUG (build.py): Unarchiving 'bazel-bin/mediapipe_api/mediapipe_desktop.zip' to 'build/Plugins'... INFO (build.py): Built native libraries for Desktop INFO (build.py): Installing... DEBUG (build.py): Running cp -r build/* Packages/com.github.homuler.mediapipe/Runtimecp: cannot stat 'build/*': No such file or directory Traceback (most recent call last):   File "/home/mediapipe/build.py", line 357, in <module>     Argument().command().run()   File "/home/mediapipe/build.py", line 156, in run     self._run_command(['cp', '-r', f'{_BUILD_PATH}/*', _INSTALL_PATH])   File "/home/mediapipe/build.py", line 43, in _run_command     return subprocess.run(command_list, check=True)   File "/usr/lib/python3.9/subprocess.py", line 528, in run     raise CalledProcessError(retcode, process.args, subprocess.CalledProcessError: Command '['cp', '-r', 'build/*', 'Packages/com.github.homuler.mediapipe/Runtime']' returned non-zero exit status 1.

I try to fix this problem. Ready to request a PR. #122

Thank you for reporting the issue.
https://github.com/homuler/MediaPipeUnityPlugin/commit/dd9986746cb746e06cc7a4ec846f59eaa3cc3990 fixed it.


Multiple file input

It would be good to support multiple files as input.

I never used multiple files as input but it seem interesting feature.
Could you give me some command line examples?
Thanks

Sure,
I need to concatenate certain JSON files into a single file, and make a JSON object where each key is the original file name and the value is the original file JSON.
I can do this for e.g. two files like this:
jq '{ (input_filename|rtrimstr(\".json\")) : . }' file1.json file2.json | jq -s add

I'm sure there's a way to do it in one jq command, but you get the idea.
What I actually do is read all files in a folder and do that:
ls -I data.json | xargs jq '{ (input_filename|rtrimstr(\".json\")) : . }' | jq -s add > data.json


Update code blocks to be scrollable

Because of the work on 18F/cg-docs#291, we need scrollable <code> blocks.

This looks good to me! We'll need to do a release and publish to npm to get this reflect in cg-docs. @msecret can you and I pair on that today? I think I could handle it, but since you did one recently and there were some bugs I'd rather just pair on it and make sure it gets done right the first time :)


[BEAM-2595] Allow table schema objects in BQ DoFn

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[ ] Make sure tests pass via mvn clean verify.
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

R: @chamikaramj PTAL

Retest this please

Coverage increased (+0.02%) to 70.701% when pulling f89d59db369037c0bdb8fcb5d26fb1fd4b4599f7 on sb2nov:BEAM-2595-allow-table-schema-bq-dogn into 66b4a1be09b58a761cf49cc18a04eaaff555e376 on apache:master.

LGTM

Coverage increased (+0.01%) to 70.698% when pulling 37ca0db4ebef9cd828663507fab9e8db77926728 on sb2nov:BEAM-2595-allow-table-schema-bq-dogn into 889776fcad72e45a93ce4e206ee728595361b1cb on apache:master.


[Bug]: No Devices found

Adapter version
0.9.4
JS-Controller version
4.0.23
Node version
16.17.0
Operating System type
Linux
Operating system version
Raspbian GNU/Linux 11 (bullseye)
Describe the bug
My Instance found no devices
the logs shows:
No devices found.
No stations found.
The instance is green. But i dont understand why. My account has two factor authentication enabled. But the instance is green without entering two factor code. In the logs there was no request for the verification code.
Maybe this is the problem?
In the documentation https://bropat.github.io/ioBroker.eusec/#/configuration there was recommended to use a separete account. I also tried to invite a separate account and login this separete account in the adapter. But there was the same result.
To reproduce
I installed the adapter and then logged in. The instance is connected. But one devices are found
Screenshots & Logfiles

Additional context
No response

I have the same problem. I don't have 2 factor authentication. Also tried it with two eufy accounts - one with the devices originally added to and one with them shared.
Adapter version
0.9.4
JS-Controller version
4.0.23
Node version
16.17.0
Operating System type
Linux
Operating system version
Ubuntu
Describe the bug
My Instance found no devices and no stations.
the logs shows:
No devices found.
No stations found.

@royakaacky @edgarloxton
The adapter uses the country setting under ioBroker to find the devices. If you have registered the Eufy devices under a different country than you have set in ioBroker, the adapter will not find your devices.


How to compile it?

How to compile it on windows?

I got this error
C:\Users\OSPFv3\go\pkg\mod\github.com\!hyper!dbg\golibrary>go build -o 12.exe man.go
reading go.work: path C:\Users\OSPFv3\go\pkg\mod\github.com\!hyper!dbg\golibrary appears multiple times in workspace

I apologize for the stupid questions. It's just that I usually program in asm/c/c++ and very rarely have I encountered golang projects in reverse for x86-64

I got this error
C:\Users\Nir0-G\go\pkg\mod\github.com\!hyper!dbg\golibrary>go build -o 12.exe man.go
reading go.work: path C:\Users\Nir0-G\go\pkg\mod\github.com\!hyper!dbg\golibrary appears multiple times in workspace

I apologize for the stupid questions.
What doesn't he(https://github.com/HyperDbg
/gui) like right now?!

@ddkwork
Ye, i delete this file. Thanks!
But the problem above appeared after this action =(

@ddkwork
Ye, i delete this file. Thanks!
But the problem above appeared after this action =(

Hi, i was updated all file, try again.

@ddkwork
Hi, i was updated all file, try again.
Thank you very much! Most of the errors have disappeared, but he still doesn't want to compile for some reason

<EMAIL_ADDRESS>build -o 12.exe main.go
package command-line-arguments
        imports github.com/ddkwork/hyperdbgui/ux/menus
        imports github.com/ddkwork/golibrary/skiaLib/widget
        imports github.com/ddkwork/golibrary/skiaLib/widget/doctable
        imports github.com/ddkwork/golibrary/skiaLib/widget/tabbar
        imports github.com/richardwilkes/unison
        imports github.com/go-gl/gl/v3.2-core/gl: build constraints exclude all Go files in
<EMAIL_ADDRESS>

@ddkwork
Hi, i was updated all file, try again.

Thank you very much! Most of the errors have disappeared, but he still doesn't want to compile for some reason
<EMAIL_ADDRESS>build -o 12.exe main.go
package command-line-arguments
        imports github.com/ddkwork/hyperdbgui/ux/menus
        imports github.com/ddkwork/golibrary/skiaLib/widget
        imports github.com/ddkwork/golibrary/skiaLib/widget/doctable
        imports github.com/ddkwork/golibrary/skiaLib/widget/tabbar
        imports github.com/richardwilkes/unison
        imports github.com/go-gl/gl/v3.2-core/gl: build constraints exclude all Go files in
<EMAIL_ADDRESS>

You need add gcc path to system env.

@ddkwork
You need add gcc path to system env.

do you have tdm-gcc?!
I have this problem when compiling through this go of any c
Nitr0-G@WIN-T1RR1J259AK MINGW64<EMAIL_ADDRESS># go build -o gui.exe main.go
# runtime/cgo
gcc_libinit_windows.c: In function ‘_cgo_beginthread’:
gcc_libinit_windows.c:136:27: error: implicit declaration of function ‘_beginthread’; did you mean ‘_cgo_beginthread’? [-Werror=implicit-function-declaration]
  136 |                 thandle = _beginthread(func, 0, arg);
      |                           ^~~~~~~~~~~~
      |                           _cgo_beginthread
cc1: all warnings being treated as errors

@ddkwork
You need add gcc path to system env.

do you have tdm-gcc?! (https://stackoverflow.com/questions/59517128/implicit-declaration-of-function-beginthread-when-call-go-library-from-c-code)
I have this problem when compiling through this ".go" of any ".c"
Nitr0-G@WIN-T1RR1J259SK MINGW64<EMAIL_ADDRESS># go build -o gui.exe main.go
# runtime/cgo
gcc_libinit_windows.c: In function ‘_cgo_beginthread’:
gcc_libinit_windows.c:136:27: error: implicit declaration of function ‘_beginthread’; did you mean ‘_cgo_beginthread’? [-Werror=implicit-function-declaration]
  136 |                 thandle = _beginthread(func, 0, arg);
      |                           ^~~~~~~~~~~~
      |                           _cgo_beginthread
cc1: all warnings being treated as errors

Oh, I deleted that function and now I get another error promotion xD xD
# go build -o gui.exe main.go
# command-line-arguments
C:\msys64\mingw64\lib\go\pkg\tool\windows_amd64\link.exe: running gcc failed: exit status 1
/usr/lib/gcc/x86_64-pc-msys/11.3.0/../../../../x86_64-pc-msys/bin/ld: cannot find -lmingwex: No such file or directory
/usr/lib/gcc/x86_64-pc-msys/11.3.0/../../../../x86_64-pc-msys/bin/ld: cannot find -lmingw32: No such file or directory
collect2: error: ld returned 1 exit status

@ddkwork
You need add gcc path to system env.

do you have tdm-gcc?! (https://stackoverflow.com/questions/59517128/implicit-declaration-of-function-beginthread-when-call-go-library-from-c-code)
I have this problem when compiling through this ".go" of any ".c"
Nitr0-G@WIN-T1RR1J259SK MINGW64<EMAIL_ADDRESS># go build -o gui.exe main.go
# runtime/cgo
gcc_libinit_windows.c: In function ‘_cgo_beginthread’:
gcc_libinit_windows.c:136:27: error: implicit declaration of function ‘_beginthread’; did you mean ‘_cgo_beginthread’? [-Werror=implicit-function-declaration]
  136 |                 thandle = _beginthread(func, 0, arg);
      |                           ^~~~~~~~~~~~
      |                           _cgo_beginthread
cc1: all warnings being treated as errors

Oh, I deleted that function and now I get another error promotion xD xD
# go build -o gui.exe main.go
# command-line-arguments
C:\msys64\mingw64\lib\go\pkg\tool\windows_amd64\link.exe: running gcc failed: exit status 1
/usr/lib/gcc/x86_64-pc-msys/11.3.0/../../../../x86_64-pc-msys/bin/ld: cannot find -lmingwex: No such file or directory
/usr/lib/gcc/x86_64-pc-msys/11.3.0/../../../../x86_64-pc-msys/bin/ld: cannot find -lmingw32: No such file or directory
collect2: error: ld returned 1 exit status

Try go build.

@ddkwork
Try go build.

Nitr0-G@WIN-T1RR1J259SK MINGW64<EMAIL_ADDRESS># go build
go: downloading github.com/hjson/hjson-go v3.3.0+incompatible
# github.com/ddkwork/hyperdbgui
C:\msys64\mingw64\lib\go\pkg\tool\windows_amd64\link.exe: running gcc failed: exit status 1
/usr/lib/gcc/x86_64-pc-msys/11.3.0/../../../../x86_64-pc-msys/bin/ld: cannot find -lmingwex: No such file or directory
/usr/lib/gcc/x86_64-pc-msys/11.3.0/../../../../x86_64-pc-msys/bin/ld: cannot find -lmingw32: No such file or directory
collect2: error: ld returned 1 exit status

https://github.com/golang/go/issues/7265
I found something similar, but here is Cygwin. I use msys...

Hurray! I succeeded, I compiled this miracle.
Now the other one, how can I connect it to the user-mode and kernel-mode debugger?

 It's just that it's not written anywhere here

Hurray! I succeeded, I compiled this miracle.
Now the other one, how can I connect it to the user-mode and kernel-mode debugger?)

Not work now, because the table feature is not well, so i think need test this lib for replace it.
https://github.com/ddkwork/uxtest

@ddkwork
Not work now, because the table feature is not well, so i think need test this lib for replace it.
https://github.com/ddkwork/uxtest

Which specific folders do I need to replace:?
Should I leave go.mod and go.sum and main.go(in uxtest)?
  This is a gui for kernel mode only. I thought that somehow through IPC it still contacts user mode hyperdbg, but no.


update Simplified Chinese translation

I'm going to merge this PR but revert updates of existing tranlations.
Is that OK? @Felix2yu


frontends: llvm: extend type recognition

Extends to recognizing bool, float, double, short and void.

Ref https://github.com/ossf/fuzz-introspector/issues/1188


Why not submit to CDNJS?

It would be nice if you can put the script in any cdn, i.e. cdnjs

Hi @ttodua

Hi @ttodua,
You can to use this https://unpkg.com/vue-head


Menu is shown in horizontal view

The menu button is always shown in horizontal view

Fixed :+1:

Closing


Various fixes for section 8 (General utilities library)

This PR is intended to fix the issues reported by #398.

As a side note: I mentioned the idea of splitting P2300 up into different parts. This section may be a prime candidate for a stand-alone change.

The rest of the spec depends on  tag_invoke, so I'm not sure what would be gained by splitting it out.

There were proposals in that space in the past which caused substantial discussion and I think it is more effective to discuss/process this particular part independent of the rest of the paper. It would be a shame if we spend a lot of effort to get things sunk for C++23 due to objection to the overall customization approach.

There is no practical way of re-specifying P2300 without tag_invoke. If the Committee disapproves of tag_invoke, I think they disapprove of P2300.