ESP32-C3 Support?

During the installation of ESP32-C3 I got an error message that it is not compatible with C3. Will it be compatible later or is it technically not possible?

my idea was to design out of box device like nuki brige. You put it into the socket and use it with nuki hub. My choice were esp32 c3, because it is the smallest esp32 module.
I will try to redesign it with esp32-s.
Thank you for explanation.

While what I said still holds true, we can give it a try. This is a binary compiled for the C3. I have idea wether or not it works, since I don't have C3 to test it with.
What about using a D1 mini form factor:
https://www.amazon.de/AZDelivery-Bluetooth-Internet-Development-Compatible/dp/B08BTLYSTM
It's still quite small, I've used in a project where I had limited space.
nuki_hub-c3.zip

If you want something small, compatible and with a case, have a look at these:
https://shop.m5stack.com/products/atom-lite-esp32-development-kit?variant=32259605200986
Almost the same size than the smallest C3 (242410mm) with more features.

If you want something small, compatible and with a case, have a look at these: https://shop.m5stack.com/products/atom-lite-esp32-development-kit?variant=32259605200986
Almost the same size than the smallest C3 (242410mm) with more features.
With with to plug it on a phone charger if you don't want to use a short USB cable: https://www.amazon.fr/3-1-mâle-2-0-adaptateur-Chromebook-tablette-appareils/dp/B075B1T4Y9
The whole footprint is smaller than the Nuki Hub.

I have thought about m5stack, unfortunately I have not found a good solution how it can combine well with the socket.

While what I said still holds true, we can give it a try. This is a binary compiled for the C3. I have idea wether or not it works, since I don't have C3 to test it with.
What about using a D1 mini form factor:
https://www.amazon.de/AZDelivery-Bluetooth-Internet-Development-Compatible/dp/B08BTLYSTM
It's still quite small, I've used in a project where I had limited space.
nuki_hub-c3.zip

Thanks, I will try your build.
i am currently waiting for the power supplies from aliexspress. Then I will see how I can pack everything well and compactly together

Nice job! Will you share the parts and sources for both PCB and case?

Nice job! Will you share the parts and sources for both PCB and case?

Yes, after all testing are done and I can confirm that my approach is ok, I will share all information.

Hi Technyon!
Thank you for this great project!
I've tested the c3 bin file, looks like flash and download completed with no errors
Now, I don't see wifi network, am I missing something?

Thanks!

Hi Technyon!
Thank you for this great project! I've tested the c3 bin file, looks like flash and download completed with no errors Now, I don't see wifi network, am I missing something?

Thanks!

I have a boot loop with c3

Hi,
@yehoolte The C3 is not supported. The binary was just for testing if it could work. Since the experiment failed, please use a regular ESP32.

@technyon
Thanks anyway! I will use the ESP32

Hi Guys, the pcb is here. I will perform some tests. Enclosure is designed as well 😁

I think this topic can be closed. I have uploaded an esp32 pcb and small case for it to github
https://github.com/Diddlik/Esp32-Mini-PCB

Amazing job! I'll add to the readme.

Hi. I tried the last few hours to build this on MacOS, without luck. (the VM was to big to download from mega.) next time I try it in my Ubuntu VM.
I have a few M5 stamp c3 and I was able to compile wled for them. so I hope to get this software running too.

I think the toolchain has some problems on MacOS. Why do you need it running on a C3 ?

Because I have 6 of the m5StackC3.
I tried to follow the instructions from here: https://github.com/technyon/coffeetimer
then downloaded the last 1.x Arduino Release.
Installed:
sudo apt-get install git wget make libncurses-dev flex bison gperf python3 python3-serial

sudo apt install build-essential cmake clang cmake-curses-gui

and the ESP toolchain from here: https://docs.espressif.com/projects/esp-idf/en/release-v3.0/get-started/linux-setup.html
In Ardurino I installed the ESP32 Software 2.0.7
ran:
export PATH="$PATH:$HOME/Downloads/xtensa-esp32-elf-linux64-1.22.0-80-g6c4433a-5.2.0/xtensa-esp32-elf/bin/"
export ARDUINO_SDK_PATH="/home/ubuntu/Downloads/arduino-1.8.19/"
#export CXX="/usr/bin/clang++" #because of the following error

cmake \
-D CMAKE_TOOLCHAIN_FILE=/home/ubuntu/Downloads/Arduino-CMake-Toolchain/Arduino-toolchain.cmake \
-DARDUINO_INSTALL_PATH="/home/ubuntu/Downloads/arduino-1.8.19/" .

and also:
./nuki_hub$ ccmake .

The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:5 (project):
The CMAKE_CXX_COMPILER:
 {tools.{build.tarch}-esp32-elf-gcc.path}/bin/xtensa-esp32-elf-g++

is not a full path and was not found in the PATH.
Tell CMake where to find the compiler by setting either the environment
variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
to the compiler, or to the compiler name if it is in the PATH.

I don't know how to fix that problem.

You should use my version of the toolchain:
https://github.com/technyon/Arduino-CMake-Toolchain
I've updated it in the coffetimer readme.

thank you.
but i have finally downloaded the vm and will try it first.

I think this topic can be closed. I have uploaded an esp32 pcb and small case for it to github https://github.com/Diddlik/Esp32-Mini-PCB

Amazing work. Do you sell prebuilt devices somewhere? I'm really bad with hw unfortunately but would love to have this. Please let me know, thanks.


Wget Fixes

• Fixes user-agent - download now works on twist.moe
• Rebased

Codecov Report

Merging #1 into master will decrease coverage by 8.88%.
The diff coverage is 4.23%.

@@            Coverage Diff             @@
##           master       #1      +/-   ##
==========================================
- Coverage   25.85%   16.97%   -8.89%
==========================================
  Files          89      117      +28
  Lines        3434     4530    +1096
==========================================
- Hits          888      769     -119
- Misses       2546     3761    +1215

Impacted Files
Coverage Δ

anime_downloader/__version__.py
0.00% <0.00%> (ø)

anime_downloader/animeinfo.py
0.00% <0.00%> (ø)

anime_downloader/cli.py
0.00% <0.00%> (ø)

anime_downloader/commands/config.py
0.00% <0.00%> (ø)

anime_downloader/commands/dl.py
0.00% <0.00%> (ø)

anime_downloader/commands/ezdl.py
0.00% <0.00%> (ø)

anime_downloader/commands/test.py
0.00% <0.00%> (ø)

anime_downloader/commands/watch.py
0.00% <0.00%> (ø)

anime_downloader/config.py
51.78% <ø> (ø)

anime_downloader/downloader/http_downloader.py
24.59% <0.00%> (-0.84%)
:arrow_down:

... and 128 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 62f0cf4...38be316. Read the comment docs.


Update Dagger 2.2 -> 2.6

https://github.com/google/dagger/releases
🐹

Dup of https://github.com/konifar/droidkaigi2016/pull/370? Umm 💭

Related to this one? http://stackoverflow.com/questions/33404552/execution-failed-for-task-appcompiledebugjavawithjavac-in-android-studio

How kind you guys are...

Sorry guys... yes, it is duplicated (totally forgot about another pr was there) and I think I have not checked properly ... (seemed to me this dagger 2.6 is working just fine when I tested locally)

@hkurokawa Yes you are right; it replicates locally by running compileDevelopDebugJavaWithJavac.
注意:Generating a MembersInjector for io.github.droidkaigi.confsched.activity.MainActivity. Prefer to run the dagger processor over that class instead.
注意:Generating a MembersInjector for io.github.droidkaigi.confsched.activity.SearchActivity. Prefer to run the dagger processor over that class instead.
注意:[OrmaProcessor] process classes in 133ms
/xxx/xxx/Documents/xxx/droidkaigi2016/app/src/main/java/io/github/droidkaigi/confsched/MainApplication.java:13: エラー: シンボルを見つけられません
import io.github.droidkaigi.confsched.di.DaggerAppComponent;
                                        ^
  シンボル:   クラス DaggerAppComponent
  場所: パッケージ io.github.droidkaigi.confsched.di
:app:compileDevelopDebugJavaWithJavac FAILED
:app:compileRetrolambdaDevelopDebug

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileDevelopDebugJavaWithJavac'.
> java.lang.NoSuchMethodError: com.google.common.collect.FluentIterable.append(Ljava/lang/Iterable;)Lcom/google/common/collect/FluentIterable;

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 13.11 secs
com.google.common.collect.FluentIterable.append(Ljava/lang/Iterable;)Lcom/google/common/collect/FluentIterable;

@shaunkawano As Gradle Plugin for Android is updated with PR #396, I believe now you can upgrade Dagger without an error.  Yes I will try it now 👍

I hope 🙏

hmmm before even I start updating Dagger library, I'm kind of stuck with this error:
Error:Cause: com/android/build/gradle/internal/model/DefaultAndroidProject : Unsupported major.minor version 52.0

After a few-minute-search, I have found that this error is related to my local JDK location, which is this:

But I'm still trying to figure out what's causing this error.. Does anybody have the same issue?

I will try this: http://stackoverflow.com/a/37467179/5449688

hmmm it did not solve my problem..! Seems like I need to reset local JDK location or create one for Android Studio?
http://stackoverflow.com/questions/37466744/android-studio-continues-to-get-a-unsupported-major-minor-version-52-0

Hmm... Thanks! I also try this later

@shaunkawano Sorry, probably I should have explained more details. The thing is, I guess, you didn't merge the latest master branch. If you upgraded Gradle Plugin for Android, I am sure you can solve this build error. Could you try to merge the latest build and see how the build goes?

@hkurokawa Thank you for your details; actually this error has occurred right after I merged the latest master branch into my local one, (even before I re-update Dagger to 2.6), so I am guessing the cause of this error is something different...

My apology for my misunderstanding 🙇
I created another PR to update Dagger 2. It seems the compile went well. I have no idea why this PR doesn't get compiled.
https://github.com/konifar/droidkaigi2016/pull/395
Do you mind if I ask @konifar to merge that PR instead of this? Appreciate your hard work.

Agree. Thanks your work @shaunkawano !

@hkurokawa Again, thank you very much for your info!

I have no idea why this PR doesn't get compiled.

Neither do I; I will keep investigating what is causing my local build to fail but anyhow great we eventually made it!!

Dup of #395


Center the center text

Is there a way to center the text in the middle of rooms?

The text on the right is overflowing and it would be great to center it perfectly under the dot instead of it being to the right of it.

Can you explain to me how you created that svg to work with the package? SVG's generated by blender do not even show. My only guess is that my svg is too complex but when I tried one that is just a square it also was not shown. What am I missing?

My friend worked on creating the svgs and he did it in adobe illustrator I think. They are composed of paths each with id and name.
Example of one rectangle:
Maybe if you create a path with more points you could create something besides the rectangles but I'm not sure as I haven't tested it to that extent, we just needed a simple map for our school.


CUDA GPU devices show up as cuda

The GPU device repr could use some love:
In [1]: import jax; jax.devices()
Out[1]: [cuda(id=0), cuda(id=1)]

I think ideally this would be GpuDevice or maybe CudaDevice... something that makes more clear what the object is, i.e. a Device:
In [5]: type(jax.devices()[0])
Out[5]: jaxlib.xla_extension.Device

I think the relevant code is here: https://github.com/openxla/xla/blob/79b4239076b80f84c2bc64f22b1ae05c596ae3ca/xla/pjrt/pjrt_stream_executor_client.h#L123-L124


Maintain project ordering in configuration file

Nice to have

Not sure how to do this cleanly without changing the structure of the config file, so punting for now.


Output path does not match folder selected in docker command

The folder in the setup.cfg file should be updated to match the path that is being suggested in the README when creating the docker volumes

I'm not sure what we meant with this, but the updates to the README in #7 probably also fix this.


StopWatch - Usefully Buttons

Fixed: #628
I have made only the working buttons visible
Screenshots
Initially

When start is clicked

When stopped button is clicked

When start then lap option is clicked

@Vishal-raj-1 @urvashi-code1255 please view this PR.

Good Work!
Please the squash the commits into one single commit.
Let me know if you need any help.


How to manage Authentication flow, a.k.a SwitchNavigator?

React has support for sensible and easy to use authentication flows, using SwitchNavigator.
Here is a typical situation:

The user opens the app, and is presented by a landing page, (like a spinner).
The app loads some authentication state from persistent storage (like Keychain).
When the state has loaded, the user is presented with either authentication screens or the main app, depending on whether valid authentication state was loaded.
When the user signs out, we clear the authentication state and send them back to authentication screens.

In flutter, we only have simple navigation.
If we try to create a landing page + auth page + home page in flutter, the user can accidentally navigate back to the landing page, which results in a wierd UX.
This is solvable, if we could somehow restrict the user from being able to go back to the landing page, i guess.

You can use one of the replaceXxx methods of Navigator to have the previous route replaced by the new one, then there is no way of navigating back to it.

Thanks, I will try it out and get back to you.

Works flawlessly, thanks!
Here is a sample code.
Can we add this use case to the documentation, it would be quite useful for newcomers.
import 'dart:async';
import 'package:flutter/material.dart';

check_if_authenticated() async {
  await Future.delayed(Duration(seconds: 5));  // could be a long running task, like a fetch from keychain
  return true;
}

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'MyApp,
      initialRoute: '/',
      routes: {
        '/': (context) => LandingPage(),
        '/login': (context) => LoginPage(),
        '/home': (context) => HomePage(),
      },
    );
  }
}

class LandingPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    check_if_authenticated().then((success) {
      if (success) {
        Navigator.pushReplacementNamed(context, '/home');
      } else {
        Navigator.pushReplacementNamed(context, '/login');
      }
    });

    return Center(
      child: CircularProgressIndicator(),
    );
  }
}

class LoginPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text('login'),
        ),
        body: Center(
          child: Text('Login page content'),
        ));
  }
}

class HomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text('home'),
        ),
        body: Center(
          child: Text('home page content'),
        ));
  }
}

I'd suggest checking authentication status in initState().
build() can be called more than once.

didChangeDependencies() it is then, there xou have access to context

What if we just do this?

class LandingPage extends StatefulWidget {
  @override
  _LandingPageState createState() => _LandingPageState();
}

class _LandingPageState extends State<LandingPage> {
  var authSuccess;

  _LandingPageState() {
    checkIfAuthenticated().then((success) {
      setState(() {
        authSuccess = success;
      });
    });
  }

  @override
  Widget build(BuildContext context) {
    if (authSuccess != null) {
      if (authSuccess) {
        Navigator.pushReplacementNamed(context, '/home');
      } else {
        Navigator.pushReplacementNamed(context, '/login');
      }
    }

    return Center(
      child: CircularProgressIndicator(),
    );
  }
}

Should work. Not sure which way is better.

So that crashed xD
I/flutter (27933): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter (27933): The following assertion was thrown building LandingPage(dirty, state: _LandingPageState#b30ea):
I/flutter (27933): setState() or markNeedsBuild() called during build.
I/flutter (27933): This Overlay widget cannot be marked as needing to build because the framework is already in the
I/flutter (27933): process of building widgets. A widget can be marked as needing to be built during the build phase
I/flutter (27933): only if one of its ancestors is currently building. This exception is allowed because the framework
I/flutter (27933): builds parent widgets before children, which means a dirty descendant will always be built.
I/flutter (27933): Otherwise, the framework might not visit this widget during this build phase.
I/flutter (27933): The widget on which setState() or markNeedsBuild() was called was:
I/flutter (27933):   Overlay-[LabeledGlobalKey<OverlayState>#ee20e](state: OverlayState#1797a(entries:
I/flutter (27933):   [OverlayEntry#e40cf(opaque: false; maintainState: false), OverlayEntry#6e04e(opaque: false;
I/flutter (27933):   maintainState: true), OverlayEntry#08db2(opaque: false; maintainState: false),
I/flutter (27933):   OverlayEntry#40dfa(opaque: false; maintainState: true)]))
I/flutter (27933): The widget which was currently being built when the offending call was made was:
I/flutter (27933):   LandingPage(dirty, state: _LandingPageState#b30ea)

I tried doing it using initState, but that fails with same error.
_LandingPageState() {
    checkIfAuthenticated().then((success) {
      setState(() {
        authSuccess = success;
      });
    });
  }

to
@override
  initState() {
    super.initState();
    checkIfAuthenticated().then((success) {
      setState(() {
        authSuccess = success;
      });
    });
  }

I even tried a FutureBuilder, and it still returns with the same error.
class LandingPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return FutureBuilder(
        future: checkIfAuthenticated(),
        builder: (BuildContext context, AsyncSnapshot snapshot) {
          if (snapshot.connectionState == ConnectionState.done) {
            print(snapshot.data);
            if (snapshot.data) {
              Navigator.pushNamed(context, '/home');
            } else {
              Navigator.pushNamed(context, '/login');
            }
          }
          return Center(
            child: CircularProgressIndicator(),
          );
        });
}

dup of #16218

We can access the the context from initState(), I feel stupid now..
class LandingScreen extends StatefulWidget {
  @override
  LandingScreenState createState() {
    return new LandingScreenState();
  }
}

class LandingScreenState extends State<LandingScreen> {
  @override
  void initState() {
    super.initState();
    checkIfAuthenticated().then((success) {
      if (success) {
        Navigator.pushReplacementNamed(context, '/browse');
      } else {
        Navigator.pushReplacementNamed(context, '/login');
      }
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Verifying credentials'),
      ),
      body: LoadingScreen(),
    );
  }
}

@devxpy not really.
This only works in your case because .then(...) is executed delayed and then the context getter from the StatefulWidget class is already set.

setState()

This only works in your case because .then(...) is executed delayed and then the context getter from the StatefulWidget class is already set.

checkIfAuthenticated() is placed in the State class, not the StatefulWidget class.
The docs on State class say -

The framework associates State objects with a BuildContext after creating them with StatefulWidget.createState and before calling initState.

And sure enough, when I print out the context in initState, it is definitely there.
However, If I remove the delay and immediately call pushReplacementNamed(), it does fail.
(just like in  this comment)
didChangeDependencies()
Like you suggested earlier, I did try to use didChangeDependencies(), but that fails with a similar eror.
Another approach
I stumbled upon another approach that avoids the life-cycle  of the widget all-together.
It does use global variables though.
Here is what it looks like -
void main() async {
  _isAuthenticated = await checkIfAuthenticated();
  print('app loaded!');
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'secure pdf viewer',
      initialRoute: '/',
      onGenerateRoute: (RouteSettings settings) {
        switch (settings.name) {
          case '/':
            return MaterialPageRoute(builder: (_) {
              return _isAuthenticated ? BrowseScreen() : LoginScreen();
            });
          case '/login':
            return MaterialPageRoute(builder: (_) => LoginScreen());
          case '/browse':
            return MaterialPageRoute(builder: (_) => BrowseScreen());
        }
      },
    );
  }
}

It also,

Avoids creating a new widget just for waiting, which reduces app launch time.
Does the "checking" while the splash screen is active which IMO, results in a better UX.

It does however, make the '/' route potentially unusable (which is an acceptable trade-off)

Thanks @devxpy ! Your final approach works great. I added a parameter to the MyApp class to avoid using the global variable.

Thanks @devxpy. it works.
I would like to separate the login page into 2 pages - one which will display 3 buttons (facebook, google and email login), the other page can be navigated from when pressing email login button. This page will show the signup or login form.
Using the final approach breaks in such instance. Anyone with suggestion to handle this? Thanks

@myhendry how does it break? Sharing your code may help others help you.

@darrencole
Hi. My code is as follow. AuthPage is the page which will contain the 3 buttons for different types of login methods (google, facebook and email). EmailPage is the page which contains the form for email login and signup. Below setup allows me to navigate between the AuthPage and the EmailPage. However, when i log in from the EmailPage, the isAuthenticated state toggles to true but the EmailPage remains there. I can only see my HomePage after i pop off the EmailPage when i click on 'Go back' button
If it is just the EmailPage without any AuthPage, then @devxpy works wonderfully. If adds in another EmailPage, then it doesn't work. Any advise? Tq
In my main.dart file
@override
Widget build(BuildContext context) {
print(isAuthenticated);
return ScopedModel(
model: model,
child: MaterialApp(
theme:
ThemeData(primaryColor: Colors.lime, buttonColor: Colors.teal),
title: 'App',
initialRoute: '/',
onGenerateRoute: (RouteSettings settings) {
switch (settings.name) {
case '/':
return MaterialPageRoute(builder: () {
return isAuthenticated ? HomePage() : AuthPage();
});
case '/auth':
return MaterialPageRoute(builder: () => AuthPage());
case '/email':
return MaterialPageRoute(builder: () => EmailPage());
case '/home':
return MaterialPageRoute(builder: () => HomePage());
case '/list':
return MaterialPageRoute(builder: () => ListPage());
case '/create':
return MaterialPageRoute(builder: () => CreatePage());
case '/products':
return MaterialPageRoute(builder: () => ProductsPage());
}
}));
}
Inside my auth.dart file
RaisedButton(
child: Text('Email'),
onPressed: () {
Navigator.pushNamed(context, '/email');
},
)
Inside my email.dart file
FlatButton(
child: Text('Go back'),
onPressed: () {
Navigator.pop(context);
},
)

@myhendry So I see what you're saying. I believe I can help.
Simple answer, in your EmailPage, after the user logs in successfully, you want to use Navigator.pushNamed() to route the user to your HomePage. If you don't want them to use the back arrow to return to the EmailPage, I suggest you use Navigator.pushReplacementNamed() instead.
//on successful login
Navigator.pushReplacementNamed(context,  '/home');

Thanks @darrencole . I give it a try. Tq

it works. seems ok from my testing
below is my codes for those who need reference
https://github.com/myhendry/flutter
look for my commits named 'Dual Page Auth' to refer to the changes i made to the original source code (as suggested by @darrencole) to have it working. Thanks

Authenticaton flow in flutter - Medium
github repo - vemarav/auth_flow

Build Authenticaton flow in flutter - Medium
github repo - vemarav/auth_flow

@vemarav This is great but in your example the login page is always show for a brief moment even when the user is already authenticated.

According to the accepted answer on this thread, we can access context from initState but code has to be wrapped in a Future.delayed method to work properly.
Need to give it a try.

It may not be relevant anymore, but I think I found a better way to do navigation without userinput once the authentication check is completed.
class SplashScreen extends StatelessWidget {

  Future<bool> _checkSignIn(BuildContext context) async {
    await globals.checkSignIn();
    globals.intialRoute = '/';
    if (globals.signInMode == SignInMode.SignedIn) {
      Navigator.of(context).pushNamedAndRemoveUntil('/', ModalRoute.withName('/splash'));
    } else {
      Navigator.pushReplacementNamed(context, '/login');
    }
    return true;
  }

  @override
  Widget build(BuildContext context) {
    _checkSignIn(context);
    return Scaffold(
      body: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        crossAxisAlignment: CrossAxisAlignment.center,
        children: const <Widget>[
          CircularProgressIndicator(),
        ],
      ),
    );
  }
}

The globals.checkSignIn() methods checks if the user is already signed in. It returns globals.signInMode based on the signin status. Based on the status, the navigator is called to navigate to the next page.
The _checkSignIn() method is called in the build method without an "await". This is because our intention is to just build a screen while waiting for the signin check. Once the check is done, the navigator takes care of the rest.
Hope this helps!

Hey folks, What is the best way to store the authenticated user state? Like sqlite. And how to retrieve that for checking?

How can I access the buildContext in initState()? The context is required for the Navigator to work ..

methods other than build of your stateful widget don't need to receive context as a parameter, it is available throughout the widget.


API Review for v0.6.0 release

What type of PR is this?
/kind api-change
What this PR does / why we need it:
THIS PR WILL NOT MERGE, THIS IS INTENDED FOR REVIEW ONLY.
This is a draft PR to facilitate the review of the v0.6.0 release of Gateway API. This compares the current state of /apis from the main branch with the state in v0.5.
Does this PR introduce a user-facing change?:
Changelog will be computed separately.
/cc @bowei @shaneutt @youngnick @howardjohn @keithmattix @mikemorris
/assign @khenidak @thockin

/hold forever

Thanks for the reviews @khenidak and @thockin! Can you formally approve these changes for v0.6.0 release?

/approve /lgtm

Kal - each bot cmd goes on its own line :)
/lgtm
See? :)

Thanks to everyone for the reviews! We've released v0.6.0 and linked to this as where the release was approved. Will close this out.


Dscanner Makefile: separate target + order-only dependencies

Make $(LIB) and $(LIB) an order-only dependency for DScanner

$(DMD) and $(LIB) ?

$(DMD) and $(LIB) ?

Fixed. Sorry.

To avoid problems due to stale versions of DScanner, I'd suggest cloning it to a directory with the commit hash as part of the directory name, in the same way the dlang.org makefiles clone the stable versions of Phobos etc.
LGTM otherwise.


Add Italian to available languages

Hi Carlo, looks good to me. Do you plan to add further improvements (e.g. adding italian to main_text_gen_gpt2.py)? If not, just tell me and I'll do the rest and merge.

I don't really know at this point... I am adding things as I go, and I do not really plan to use gpt2 (wiki is more than enough for what I would like to try)
On my fork I added texts and samples to the gitignore. I think they should be excluded from the repo.
Also maybe setting the default language to "en" instead of "de", but those are all cosmetic improvements

Okay, then let me merge for now and see what else is coming.

Merged and added GPT2 generation for Italian.


Add OpenStackDataPlaneDeployment deploy step

This change adds a task to deploy the OpenStackDataPlaneDeployment CR as described by this PR:
https://github.com/openstack-k8s-operators/dataplane-operator/pull/378
This CR is required for the NodeSet to be deployed as of the above mentioned PR.
As a pull request owner and reviewers, I checked that:

[x] Appropriate testing is done and actually running
[x] Appropriate documentation exists and/or is up-to-date:

[x] README in the role
[x] Content of the docs/source is reflecting the changes

@bshephar Hi! is this still needed?

recheck

need to verify image if is fine in nodepool launcher.

@bshephar is this still active and/or relevant?


fix: pinning is broken

prefactor https://github.com/bazel-contrib/rules_oci/issues/122

File a TODO issue so we eventually add some integration testing for it?

File a TODO issue so we eventually add some integration testing for it?

https://github.com/bazel-contrib/rules_oci/issues/202


Move configuration file to default config directory

It would be nice if the configuration file was created in the standard config directory, instead of a separate single-use folder.

I created the PR against the fabric-1.17 branch so that it can then easily be pulled through into the fabric-1.18 branch as well. Feel free to retarget it if you desire.


Throw meaningful exception when config.ini is missing

config.ini is actually completely optional, so I'm going to close this unless I see a reason to re-open.


fix bug

If we don't have the cluster in the ASG, we got error when opening deploys page:

After this PR, it was fixed:

Similar to this PR: https://github.com/pinterest/teletraan/pull/1733
I just missed another place to fix.


Update elasticsearch integration test to 8.0.0

Update elasticsearch image to version 8.0.0

in 8.0.0 default user is elasticsearch not root
disable Elasticsearch security features as used in version 7.8.1
for elasticsearch 8.0.0 the base docker image is Ubuntu 20.04.3 LTS previously was CentOS Linux 7 (Core)

Looks great.  Thanks @michalbiesek!  Merging!


Enterprise customer seeing crashes on iOS, Ably version 1.2.1

One of our enterprise customers are seeing crashes on Ably version 1.2.1

This issue has 14 crashes affecting 13 users, in the last 90 days.

Requested the full stack trace log file that is accessible from the Crashlytics dash from the customer

Issue will be tracked internally here https://ably.atlassian.net/browse/SDK-92


removed execution_ts from failed_records sql query

Thanks for this @AmandeepSinghCS . I want to confirm that this removes the execution_ts ONLY from the failed_records query? I want to make sure this does not lead to any backwards breaking change to existing queries used to create dq_summary.

Thanks for this @AmandeepSinghCS . I want to confirm that this removes the execution_ts ONLY from the failed_records query? I want to make sure this does not lead to any backwards breaking change to existing queries used to create dq_summary.

Yes, @thinhha this will only remove execution_ts from the failed_records_query. The dq_summary and the target table will still have the execution_ts.

OK thanks for confirming. Could you let me know why execution_ts is also removed from most of the test templates? aren't they also needed for the standard tests for the sql generated by dq_summary.

OK thanks for confirming. Could you let me know why execution_ts is also removed from most of the test templates? aren't they also needed for the standard tests for the sql generated by dq_summary.

@thinhha the execution_ts is removed from failed_records_query field in the sql generated, but not from the actual generated sql that contains failed_records_query. This is a subfield inside the generated sql, which has been modified.


[DIT-5321] Support generating ESM JavaScript driver

Overview
Refactors generateJsDriver to depend on the type property of the nearest package.json file.

if type is module, an ESM module is generated
otherwise, a CommonJS module is generated

Context
https://linear.app/dittowords/issue/DIT-5321/make-ditto-react-work-with-default-vite-react-setup

Test Plan

[ ] Test with https://github.com/dittowords/ditto-react-demo/pull/10 and confirm that the sample project operates normally

To be included in 4.1 release


App key became invalid after PC reboots

Hi all,
I have a Windows PC application that help user connect to HUE bridge and control the HUE light bulbs.
I will prompt user to push HUE bridge button during first time connection to get the app key and will connect HUE bridge automatically whenever my application restarts since then.
How I get the app key, appLey:
 var appKey = await client.RegisterAsync("mypersonalappname", "mydevicename");
The issue is whenever the user reboot his PC,  the original app key seems become invalid so the SendCommandAsync throws catch error. My application code:
m_hueClient = new HueClient(ip, appKey);
m_hueClient .Initialize(appKey);

m_hueClient.SendCommandAsync(command);

Let me know, if I am doing anything wrong, thanks!

Your code looks fine.
If you use the HueClient constructor with the appKey, you don't need to call Initialze. It will do that for you.
The application key is provided by the Hue bridge, and app keys won't become invalid due to an application restart.
So the problem might be with the storage of the application key in your app?
When you restart the app, do you get the same key you have previously from your custom storage?
This library does not store the key for you. You'll need to supply the correct key and then it will work.

Thanks at first! Yes, I supply the correct key after my app restarts. I store the key in Windows registry and read it later on. Not sure what makes the key fail though.

Can you inspect the request to the bridge, with https://www.telerik.com/fiddler ?
Maybe that way you can figure out what the difference is and if the same key is being sent to the bridge.

I will try the link thanks. I just thought of there are two possible IPs I will get from my HUE bridge. One is 192.168.xx.xx and the other one is 192.168.xx.xx:80 ,which I will treat as two different IPs and store two different App keys to  Windows registry. Maybe it is because I use the wrong App key that does not match the current IP(with or without port number). Anyway, should IP with and without port number, 80, makes a difference?

The port number does not matter, as long as you connect to the same Hue bridge. The app key is registered to that bridge. You can even use the same app key on a different PC if you connect to the same bridge.

I see. I found that the key is fine. It is because the internet connection leading SendCommandAsync failure. Once the pc reboot, there's a really short amount of time required for the internet to go online while my service has already up and running trying to connect and send command to the HUE bridge.
Is there a stable way to check if the HUE bridge connects to the PC successfully and have a re-try mechanism if it fails? I am currently using the following method to check the connection:
m_hueClient = new HueClient(ip, appKey);

var command = new LightCommand();
command.On = true;
if(m_hueClient.SendCommandAsync(command))
   m_status = "connected";
else
{
 m_status = "disconnected";
 delete m_hueClient;
}

Good to hear you found the problem.
The HueClient does not have build in functionality to check if there is an active internet connection. The api calls will fail if the hue bridge can't be reached. There are problably other libraries that provide functionality to check if there is an active network connection, or build in functionality depending on the platform you're targeting.


how to fuso the handpose paramter into SMPL-H or SMPL-X?

I input the rotmat directly into SMPLH handpose parameter, but it doesn't match.
So how to trans the rotmat data?

@ireneMsm2020 same problem, do you have any updates on this?

@fishfishson same problem, do you have any updates on this?

Did you check the flat_hand_mean parameter?


FR: Labels inline with Highlight

Great plugin and service! I'm considering switching from Readwise, currently testing the featureset of your app. If this feature was already mentioned somewhere or is included and I missed it, then I apologize in advance.
I would like for my highlights to be tagged inline with the label I assigned inside Omnivore. So, I highlight a line, assign that highlight a label, then set my Template (within Obsidian plugin) to include something like {{highlightLabels}} at the end of the line for highlights. After syncing to Obsidian, the result would be the file with the highlighted line(s), each with any label(s) assigned to the highlight formatted as a #tag (in my case, at the end of the line).
The benefit of this would be that searching inside of Obsidian for a tag would provide results of the line(s) that were highlighted. Instead of just the article itself, it would be possible to find specific highlights by a searched tag.
Again, if this is already possible then I missed that mentioned in your documentation. I tried {{highlightLabels}} but that did not work.

Working in #38

Hey @profucius, we have released a new version 1.1.1 to address this issue.
Now you can use the {{labels}} variable which has a {{name}} attribute, in your template.
I have tagged my highlight with bug and test labels:

The highlight section in the template:
> {{{text}}} [⤴]({{{highlightUrl}}}) {{#labels}} #{{name}} {{/labels}}


'NoneType' object is not iterable

I used this library but when I could not find the page it prints nonetype object is not iterable but does not return exception in return which makes it impossible to identify on which page it will print the nonetype exception. Please return the exception so, in the script, this exception can be caught and this will help in identifying the page number for each search.

I used this library but when I could not find the page it prints nonetype object is not iterable but does not return exception in return which makes it impossible to identify on which page it will print the nonetype exception. Please return the exception so, in the script, this exception can be caught and this will help in identifying the page number for each search.

Will added it in the next release.

The new release version is allowed to throw exception if you set googlenews.enableException(True)


RecapBoundwithsProcessingJob will not include all records

Most constituent records don’t have any holdings and so won't be included in a recap publishing job. We won't have them in order to cache them.
Need to consult with @mzelesky to determine the best logic -- use the script he wrote as a starting point for auditing / adjusting the logic we have.

@mzelesky: this is not needed before the end of August

Duplicate of #1373


"In Stock" filter

Hello,
It would would be good to have an "In Stock" filter like on digikey and mouser.
The current version allows sorting by the stock level, so that is pulled and those with stock of 0 might be filterable.
JLCPCB parts library lives quite a bit and parts come and go, so the list has loads of parts that might never re-appear and having them in your search will just slow down one's work.

Nice idea! Implemented in 55b1b0d and already online.


Only obfuscated user supplied domains

This change adds a new field in the obfuscation type of Domain which is used to obfuscated only domains and subdomains of the input.

cool, /lgtm thanks!

/lgtm


Note numbering

Outside of termnotes, all notes shall be numbered, but only if there is more than one in their container.

Move to isodoc

@opoudjis could you help refer to the specific isodoc issue for reference purposes? Thanks!

https://github.com/riboseinc/isodoc/issues/25


Make new wordcount function yield a human readable number?

I write books in Vim. I like the new wordcount function, especially to use with vim-airline so that the wordcount is in the statuts bar, but instead of 76981, is it possible to add the comma for easy reading.
76,981. I have a Python function that does this but I don't know how to script in Vim.
Thanks for considering.
Rick Dooling

I think, this is an airline issue, so closing (see mentioned PR from vim-airline)


Unable to send to stealth address from debug

Trying todo "sendtostealthaddress addresshere 0.5" from console,  gives "value is type str, expected real (code -1)"

I think this is already fixed with issue #200. Can you please check?

that is the same issue yes, however wouldn't able to compile from source to confrim that the fix.

To add to that I think the following code change is directly the fix which was applied: if (strMethod == "sendtostealthaddress"   && n > 1) ConvertTo(params[1]);

alright thanks, any idea when that might get pushed to the next release build? in process of downloading visual stuido but that is gonna take awhile.


Possible to create tuntap links?

There doesn't currently seem to be any way to create tuntap interfaces. Is this likely to be supported (i.e. just a matter of adapting the code) or was there a fundamental limitation to doing it?

I'm totally lagging behind on the issues here! :-)
I think adding tuntap should not be that hard. I might look into adding them in!

You can find a repo named water here - A simple TUN/TAP library written in native Go (golang).


Fix release workflow

remove "latest" image tage from docker meta
remove use of IMAGE_NAME in manifest creation as docker meta tag is the full image name

https://github.com/adrianchiris/sriov-cni/actions/runs/7032568282/job/19136573250


Add spring boot configuration for hystrix so that it helps developers within IDE

Enhancement
Currently adding hystrix properties to the properties is a pain as the developers need to lookup the properties from the web/explore source of the hystrix.
It would help the developers significantly if the properties can be made available to IDEs via spring-configuration-metadata.json so that developers dont have to struggle finding the appropriate properties
Currently, in order to make this work, I created the following class & json file in my project to make the suggestions available inside IDE
HystrixProperties.java
package org.springframework.cloud.netflix.hystrix.extern;

import com.netflix.hystrix.HystrixCommandProperties.ExecutionIsolationStrategy;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
public class HystrixProperties {
  private HystrixCommandProperties command;
  private HystrixCollapserProperties collapser;
  private HystrixThreadpoolProperties threadpool;

  @Getter
  @Setter
  public class HystrixThreadpoolProperties {
    private boolean allowMaximumSizeToDivergeFromCoreSize;
    private int coreSize;
    private int maximumSize;
    private int keepAliveTimeMinutes;
    private int maxQueueSize;
    private int queueSizeRejectionThreshold;
    private Metrics metrics;
    @Getter
    @Setter
    public class Metrics {
      private MetricsRollingStats rollingStats;
    }
  }

  @Getter
  @Setter
  public class HystrixCollapserProperties {
    private int maxRequestsInBatch;
    private int timerDelayInMilliseconds;
    private RequestCache requestCache;
    private Metrics metrics;

    @Getter
    @Setter
    public class Metrics {
      private MetricsRollingStats rollingStats;
      private MetricsRollingPercentile rollingPercentile;
    }
  }

  @Getter
  @Setter
  public class HystrixCommandProperties {
    private CircuitBreaker circuitBreaker;
    private Execution execution;
    private Fallback fallback;
    private Metrics metrics;
    private RequestCache requestCache;
    private RequestLog requestLog;
    private String threadPoolKeyOverride;

    @Getter
    @Setter
    public class CircuitBreaker {
      private boolean enabled;
      private int requestVolumeThreshold;
      private int sleepWindowInMilliseconds;
      private int errorThresholdPercentage;
      private boolean forceOpen;
      private boolean forceClosed;
    }

    @Getter
    @Setter
    public class Execution {
      private ExecutionIsolation isolation;
      private ExecutionTimeout timeout;

      @Getter
      @Setter
      public class ExecutionIsolation {
        private ExecutionIsolationStrategy strategy;
        private ExecutionIsolationThread thread;
        private ExecutionIsolationSemaphore semaphore;
      }

      @Getter
      @Setter
      public class ExecutionTimeout {
        private boolean enabled;
      }

      @Getter
      @Setter
      public class ExecutionIsolationThread {
        private int timeoutInMilliseconds;
        private boolean interruptOnTimeout;
        private boolean interruptOnFutureCancel;
      }

      @Getter
      @Setter
      public class ExecutionIsolationSemaphore {
        private int maxConcurrentRequests;
      }
    }

    @Getter
    @Setter
    public class Fallback {
      private FallbackIsolation isolation;
      private boolean enabled;

      @Getter
      @Setter
      public class FallbackIsolation {
        private FallbackIsolationSemaphore semaphore;
      }

      @Getter
      @Setter
      public class FallbackIsolationSemaphore {
        private int maxConcurrentRequests;
      }
    }

    @Getter
    @Setter
    public class Metrics {
      private MetricsRollingStats rollingStats;
      private MetricsRollingPercentile rollingPercentile;
      private MetricsHealthSnapshot healthSnapshot;
    }

    @Getter
    @Setter
    public class RequestLog {
      private boolean enabled;
    }
  }

  @Getter
  @Setter
  public class RequestCache {
    private boolean enabled;
  }

  @Getter
  @Setter
  public class MetricsRollingStats {
    private int timeInMilliseconds;
    private int numBuckets;
  }

  @Getter
  @Setter
  public class MetricsRollingPercentile {
    private boolean enabled;
    private int timeInMilliseconds;
    private int numBuckets;
    private int bucketSize;
  }

  @Getter
  @Setter
  public class MetricsHealthSnapshot {
    private int intervalInMilliseconds;
  }

}

/META-INF/additional-spring-configuration-metadata.json
{
  "hints": [
    {
      "name": "hystrix.command.keys",
      "values": [
        {
          "value": "default",
          "description": "Default command"
        }
      ],
      "providers": [
        {
          "name": "any"
        }
      ]
    },
    {
      "name": "hystrix.collapser.keys",
      "values": [
        {
          "value": "default",
          "description": "Default command"
        }
      ],
      "providers": [
        {
          "name": "any"
        }
      ]
    },
    {
      "name": "hystrix.threadpool.keys",
      "values": [
        {
          "value": "default",
          "description": "Default command"
        }
      ],
      "providers": [
        {
          "name": "any"
        }
      ]
    }
  ],
  "groups": [],
  "properties": [
    {
      "name": "hystrix.command",
      "type": "java.util.Map<java.lang.String,org.springframework.cloud.netflix.hystrix.extern.HystrixProperties.HystrixCommandProperties>"
    },
    {
      "name": "hystrix.collapser",
      "type": "java.util.Map<java.lang.String,org.springframework.cloud.netflix.hystrix.extern.HystrixProperties.HystrixCollapserProperties>"
    },
    {
      "name": "hystrix.threadpool",
      "type": "java.util.Map<java.lang.String,org.springframework.cloud.netflix.hystrix.extern.HystrixProperties.HystrixThreadpoolProperties>"
    },
    {
      "name": "hystrix.metrics",
      "type": "org.springframework.cloud.netflix.hystrix.HystrixMetricsProperties"
    },
    {
      "name": "management.endpoint.hystrix",
      "type": "org.springframework.cloud.netflix.hystrix.HystrixProperties"
    }
  ]
}

Since these are required only for development purpose, we can have a separate suggestion jar that developer can add to compileOnly scope of their build
For detailed discussion, see here

I've added this for team discussion. Shipping a separate jar just for configuration hints seems weird.

Thanks for the update.
Sure its weird. Is there a alternative way other than living with the status quo?

@thekalinga we would accept a flushed out additional-spring-configuration-metadata.json, but not the process of auto-generating it since those classes wouldn't be used anywhere. Doing it once should be ok since hystrix is not changing much. It would need to include comments for individual properties.

With just additional-spring-configuration-metadata.json & no class, we will not able to support the dynamic map key scenario that we discussed earlier in the other thread.
Since the plugin need to dynamically show the suggestions for each key, we will require the class (Spring boot documentation does not have any other way to refer to dynamic properties other than via class).
What happened to the idea of a separate jar just for suggestions (that might include ribbon properties aswell) :)?

The team wasn't comfortable with that option.


Npm Build Environment

Intro
My goal with this change is to modify the developer environment to be more reliable and consistent across *NIX + Windows. This is a build related refactor, so the sharapi core logic/hooks/handles remain untouched.
New Components

Cross-platform dev environment leveraging NPM scripts.
tsconfig.json for TypeScript compilation
rollup.config.json for rollup params/settings

Removed Components

Pathfinding + navmesh component
Makefile definitions

Improvements

exports.ts now takes a glob parameter rather than a list of src files.
tsc is only called once to improve the startup overhead. This is accomplished using references to create a TypeScript project hierarchy.

What's Happening Under The Hood?
I'm going to outline the build process defined in this pr.

tsc --build. The --build flag allows tsconfig.json projects to also build referenced TypeScripts projects from the same invocation of tsc. Under the hood, this is would be similar to running tsc tsconfig.json && tsc build/tsconfig.json. This generates imports.js and generates *.js for all of our src/* TypeScript files. These .js files are located in the newly generated dist/ directory.
node dist/exports.js 'src/*.ts' > dist/import.js. This leverages the globbing pattern to find all of our ts files and generate the import.js accordingly in the dist directory.
rollup -c. Executes rollup using the rollup.config.json file in the root of the repo. This exports our rolled up scriptfile.out.js to the dist/ directory.
concat -o dist/scriptfile.out.js dist/System.js dist/sharapi.js dist/main.js. For reasons outlined in code comments, I think it's fine to maintain the currently flow of typescript -> js -> rollup -> concat for a single entry point.

Basic Developer Commands
npm run build
npm run release
npm run clean
Decisions/Rationale

Why use NPM scripts instead of Makefiles?

Using NPM as our package manager allows us to use OS agnostic packages to manage the build steps. It's going to be hard to support a barebones Windows dev environment if our makefiles contain NIX specific commands (cat, touch, etc.)

Why use NPM scripts instead of a more fully featured task runner (Grunt, Gulp, etc)?

The build tasks in this repo are currently fairly lightweight. I personally don't think the codebase warrants the bloat that fully-featured task runners ship with. I didn't want to deal with the headache of configuring task runner plugins for each step in the build process.

Once we narrow in on what the final version of the update developer environment looks like, I'll add the proper onboarding documentation to the readme 🎉

@taviso - no pressure on the review, but bumping the latest revisions for review. Thanks so much!


ReorderableListView.builder in Horizontal moves last item into view when dragging

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce

Run the code below
Resize the window to the image provided (make sure to Resize it properly)
Make sure only 3 of the 4 widgest are visible, like the image provided
Drag the first "Test" widget
Notice when you start to drag, even though the 4th widget isn't on the screen, it moves into view over thte 3rd widget text.  So you see "Something" over "Good"

Expected results

When dragging, things farther in the view shouldn't glitch over into view

Actual results

Widgets move from outside the viewport into view

Code sample
Code sample

import 'dart:math' as math;

import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';

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

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      scrollBehavior: const MaterialScrollBehavior().copyWith(
        // Mouse dragging enabled for this demo
        dragDevices: PointerDeviceKind.values.toSet(),
      ),
      debugShowCheckedModeBanner: false,
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatelessWidget {
  final String title;

  const MyHomePage({
    Key? key,
    required this.title,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    List<String> items = ['Test', 'Bad', 'Good', 'Something'];
    return Scaffold(
      appBar: AppBar(title: Text(title)),
      body: ReorderableListView.builder(
        proxyDecorator: (child, index, animation) {
          return Container(
            decoration: BoxDecoration(
              color: Colors.black26,
              borderRadius: BorderRadius.circular(10.0),
              border: Border.all(
                color: Colors.white10,
                width: 2.0,
              ),
            ),
            child: SizedBox(
              width: 500,
              child: child,
            ),
          );
        },
        buildDefaultDragHandles: false,
        scrollDirection: Axis.horizontal,
        itemCount: 4,
        onReorder: (oldIndex, newIndex) {},
        itemBuilder: (context, i) => ReorderableDragStartListener(
          key: ValueKey(i),
          index: i,
          child: GestureDetector(
            onSecondaryTap: null,
            child: SizedBox(
              width: 500,
              child: TextButton(
                onPressed: null,
                child: Row(
                  children: [
                    Text(
                      items[i],
                    ),
                  ],
                ),
              ),
            ),
          ),
        ),
      ),
    );
  }
}

Screenshots or Video

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output

Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 3.13.3, on Microsoft Windows [Version 10.0.22621.2134], locale en-US)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[√] Chrome - develop for the web
[√] Visual Studio - develop Windows apps (Visual Studio Build Tools 2022 17.7.3)
[√] Android Studio (version 2021.3)
[√] VS Code (version 1.82.2)
[√] Connected device (3 available)
[√] Network resources

• No issues found!

Also, notice the size of the window, it's much smaller, you'll need to start with it looking like this, then drag "Test" and you'll see the glitch.  Notice "Good" is just barely in view.

Thanks for your response and pointing that out. I can reproduce this on the latest master and stable channels following the steps highlighted.
https://github.com/flutter/flutter/assets/53122008/19c83d4c-586e-46a8-a78d-9c6470ddd4a6
stable, master flutter doctor -v

[✓] Flutter (Channel stable, 3.13.6, on macOS 13.0 22A380 darwin-arm64, locale
    en-NG)
    • Flutter version 3.13.6 on channel stable at
      /Users/damilolaalimi/sdks/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ead455963c (5 days ago), 2023-09-26 18:28:17 -0700
    • Engine revision a794cf2681
    • Dart version 3.1.3
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/damilolaalimi/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/damilolaalimi/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

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

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

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b802.4-9586694)

[!] Android Studio (version unknown)
    • Android Studio at /Users/damilolaalimi/Downloads/Android Studio
      Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to determine Android Studio version.
    • Java version OpenJDK Runtime Environment (build
      17.0.7+0-17.0.7b1000.6-10550314)

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

[✓] Connected device (4 available)
    • Halimat’s iPhone (mobile)  • 71c843fa5f3dec767999f36224653c0faa78660e •
      ios            • iOS 16.6 20G75
    • iPhone 14 Pro Max (mobile) • BB55E997-7F31-462D-B3B1-6B177D9B40C7     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-arm64   • macOS 13.0 22A380 darwin-arm64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 117.0.5938.132

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

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 3.15.0-13.0.pre.45, on macOS 13.0 22A380 darwin-arm64, locale en-NG)
    • Flutter version 3.15.0-13.0.pre.45 on channel master at /Users/damilolaalimi/fvm/versions/master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 4f6d4f21db (3 hours ago), 2023-10-02 02:57:41 -0400
    • Engine revision 1410d689bd
    • Dart version 3.2.0 (build 3.2.0-220.0.dev)
    • DevTools version 2.28.1

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/damilolaalimi/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/damilolaalimi/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

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

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

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

[!] Android Studio (version unknown)
    • Android Studio at /Users/damilolaalimi/Downloads/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to determine Android Studio version.
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

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

[✓] Connected device (4 available)
    • Halimat’s iPhone (mobile)  • 71c843fa5f3dec767999f36224653c0faa78660e • ios            • iOS 16.6 20G75
    • iPhone 14 Pro Max (mobile) • BB55E997-7F31-462D-B3B1-6B177D9B40C7     • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)            • macos                                    • darwin-arm64   • macOS 13.0 22A380 darwin-arm64
    • Chrome (web)               • chrome                                   • web-javascript • Google Chrome 117.0.5938.132

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

! Doctor found issues in 1 category.


Somebody Help ME plz!

ive successfully installed binance-futures-connector

and somehow when i run, it keeps showing this

I just started programming on my own (I used to have a partner when i didnt need to worry about programming stuff at all...) and now heavily relying on ai. Now I'm kind of stuck

Hey,
What happens when you set up an environment?
You can test it by running the following commands in the root of your project:
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install binance-futures-connector


Investigate possibility of static IP addresses for office computers

To work on the office computers (Xavier, vortex-hvit etc.) from home, we may SSH into them.
If any of these computers are rebooted, they may change IP address as they are dynamic. We should contact NTNU (perhaps the IT department) to find out whether or not we may set static IP addresses for our devices.

Static ip addresses can be set in the /etc/network/interfaces file. The only thing I am not sure about is whether or not the DHCP server knows that these IPs are fixed by us. If not, we might end up with conflicting addresses. Having a reserved space would potentially be something we can bring up with whoever is responsible for IT

Closing this as Michael has contacted IT, which should resolve this :smile: We will hopefully get an ethernet wall plug by the switch that actually holds the cable in place


Restrictions on Funding Change Script Public Keys

Do we want any restrictions on what change Script Public Keys are allowed to be?
In the current state of the specification (see #51) both parties pay equal fees for the funding transaction so I'm currently leaning towards starting out with the restriction that specifying the length of the SPK requires only one byte (i.e. the var_int for the spk length takes up only one byte of the transaction).
In the future we will likely move to a model where each participant pays the fees for their own inputs and outputs rather than sharing this burden, at which point perhaps this restriction should be lifted.

Is there any reason to have var_int superior to one if we restrain to Segwit outputs only ? DLC is a new sytem, so less concern with being compatible with pre-Segwit software ?

So currently I see no reason to restrict things only to Segwit (e.g. what if you're using DLC software on top of an older hardware wallet for cold stuff which wants to do P2SH or P2WPKH or something).

It seems like it comes at very little cost and I only have the var_int restriction right now to make things simpler. Once parties are paying for their own change output fees then I can't think of a good reason to really have any restriction (but I could be wrong).

Having a mix of p2wpkh and p2sh(p2wpkh) inputs can reduce privacy. More than likely if there is a mix, one user has all p2wpkh inputs and the other use has all the p2sh(p2wpkh) inputs. However, I think that shouldn't be restricted by the protocol, if a user wants to protection from that they should be able to configure their wallet to do so.

My argument for restricting it is for simplifying the number of scripts library developers need to support when building on the DLC protocol. I don't think this is a concenr for us per-se in bitcoin-s as we have pretty extensive Script support, but other library developers may not and may not want to spend time on supporting eccentric change output scripts. :man_shrugging:

An example of real world problem of this the relay policy of bitcoin core nodes, I don't think bitcoin core will relay txs with non standard scripts. 🤷♂

That makes sense, we can say only standard scripts I think that is just
P2PK, Raw Multisig. P2PKH, P2SH, P2WPKH, P2WSH

I agree with those minus P2PK (pre-taproot any way) and raw multisig as I don't think bitcoin core will relay those? I'm not 100% on that though.

https://github.com/bitcoin/bitcoin/blob/master/src/script/standard.cpp#L46
They are considered standard

My argument for restricting it is for simplifying the number of scripts library developers need to support when building on the DLC protocol.

I'm quite confused, why on earth would a library need to support an SPK type in order to include it in a change output?

I think I might understand ... they must only implement or call to something like what Ben is talking about because otherwise relay issues (but I still think calling this "support for SPK types" is a but much).
I'm reading the new dual-funding proposal and it looks like they have this requirement on outputs (checking standard-ness)

Yeah, only restriction should be is the output standard. That should cover every functionality a user could want but prevent people from putting a maliciously non-standard script so the tx isn't relayed

Hm one consideration I hadn't though of before RE standardness is that if we want to use address serializations then we need the restriction proposed by @Christewart here along with P2PKH.


added myself

Hello, this is my first PR for the Hacktober Fest 2020 event. Please accept it. Thank you.

It is clearly mentioned to not change any other part of the code but the one required. Yet, you made changes for new widgets.
Create new pull request with just the change in coding part


MX Tests need troubleshooting with regards to api keys and tests failing

Customers Version: ``
What were you trying to do?
Trying to run tests in cmd/server/accounts/validator/mx/strategy_test.go
What did you expect to see?
Test passed
What did you see?
Test failed due to api creds issued by MX
How can we reproduce the problem?
Run the test cmd/server/accounts/validator/mx/strategy_test.go:TestStrategy

Can we check the rate limit and if we've got 10% or more of the remaining requests run our test?


Link to online documentation in README

EDIT: Also took the liberty to fix links.

Codecov Report

Merging #31 (1979391) into main (7507e56) will decrease coverage by 2.87%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #31      +/-   ##
==========================================
- Coverage   86.40%   83.52%   -2.88%
==========================================
  Files           3        3
  Lines         103       85      -18
==========================================
- Hits           89       71      -18
  Misses         14       14

Flag
Coverage Δ

unittests
83.52% <ø> (-2.88%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/groups.jl
85.18% <0.00%> (-9.11%)
:arrow_down:

src/group_elements.jl
100.00% <0.00%> (+1.88%)
:arrow_up:

src/GroupsCore.jl
28.57% <0.00%> (+1.90%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 7507e56...1979391. Read the comment docs.

very well, but the documentation is linked under a blue button just below the GroupsCore in the REAMDE, isn't it?

Oh, I've never used those buttons. You are right.

yeah, I'm not fan of linking to dev docs directly. I'll have to figure out how to create and deploy docs for each version

Let's do like this right now.


Automatic deploy to GitHub pages is not available

See: https://github.com/peaceiris/actions-gh-pages/issues/9

We can now deploy GitHub pages with GITHUB_TOKEN :tada:


demo example doesn't work and throws a error on browser console.

Same issue, even on the example.html page provided with this package

Not compatible with videojs 7 Should be fixed by #33

Hi @yringler, I tried your fork repo but the example file still doesn't work for me. There's no /lib in your project. Any advice?

Looks like I didn't update it all the way. The lib reference (video is ads)
in the example should be coming from node_modules/ npm if I
remember correctly.
On Mon, Oct 26, 2020, 1:08 AM Mitch<EMAIL_ADDRESS>wrote:

Hi @yringler https://github.com/yringler, I tried your fork repo but
the example file still doesn't work for me. There's no /lib in your
project. Any advice?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dirkjanm/videojs-preroll/issues/31#issuecomment-716306200,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA7B3KNDTTSRZG7T25342OLSMT74ZANCNFSM4E7GUIJA
.

@yringler Okay cheers! Sorry I got it working and deleted my post moments after I posted.

I was wondering about that. I thought it was a big in my app at first.
Usually I wouldn't be up at 2am anyway. One of those nights...
Anyway, glad it's working for you.

Haha no worries, I know what that's like. I'll likely be up too, trying to get this library integrated with our system. I really hope it works with RTMP streams or it's back to the drawing board.

@yringler Sorry to bother, but have you ever used this library with Google IMA ads? Is it possible?

No, we only used it with internal ads, directing viewers to other content / partners etc.
Is it possible? IDK. If google provides an API for IMA where you can get some sort of URL for an ad, you should be able to work it in.

https://github.com/googleads/videojs-ima
looks interesting

@yringler Thanks for getting back! I just had a look and that library is just what I'm after. :D


[Text Analytics] Updates/Renames for Custom Text and Language

Library name
Azure.AI.TextAnalytics
Please describe the feature.
The service team requested the updates/renames documented in https://github.com/Azure/azure-sdk-for-js/issues/21406#issue-1204786325

Double check that these are still accurate. Sounds like there might have been since changes since this was filed. Talk with others in the v-team. Could we add the x-ms-client-name and/or x-ms-enum so it's available to everyone.

Having checked over all those renames from the comment and based on internal conversations - specifically, we'll stick with "CustomEntities" not "CustomNamedEntities" (cc @kristapratico @mssfang) - all these are already complete with many done in swagger itself.


Bad gtk theme on Xfce4

Issue description

i will change default xfce4 theme to Arc but the theme is bad, how to fix it?
Technical details

System: 17.03.1645.08bc48049c (Gorilla)
Nix version: 1.11.13
Nixpkgs version: 17.03.1645.08bc48049c"
Sandboxing enabled: false

See if this works: https://www.youtube.com/watch?v=dTC4vfDu5bs


refactoring and changing form of return file

reduce duplication.
return csv file. not txt.

After I received your comments, I checked up my code and found logic redundancy. I merge your commits to this repository. Thank you for your contribution.

After I received your comments, I checked up my code and found logic redundancy. I merge your commits to this repository. Thank you for your contribution.


When saving in PNG and SVG format molecules lose color (Ketcher Standalone)

Steps to Reproduce

Launch Ketcher Standalone
Create any structure and add any text or use ketcher (16).zip
Save it in PNG and SVG format
Open saved files

Expected behavior
Molecules don't lose color
Actual behavior
Molecules lose color
Screenshots

Desktop:

OS: Windows 10
Browser Chrome
Version 106.0.5249.119 (Official Build) (64-bit)

Ketcher version [Version 2.6.0-rc.3]
Build at 2022-10-27; 18:01:49
Indigo related issue: https://github.com/epam/Indigo/issues/888

use render-coloring = True for the rendering inside indigo

Indigo effort is not required. Issue will be fixed on Ketcher side


[2.150.0][deliver] better error when uses non exempt encryption not set

Motivation and Context
https://github.com/fastlane/fastlane/issues/16645
Description
The error when "uses non exempt encryption" is not set isn't very helpful to the user. This should help them out 😊
FastlaneCore::Interface::FastlaneError: [!] Export compliance is required to submit
Add information to the :submission_information option...
  Docs: http://docs.fastlane.tools/actions/deliver/#compliance-and-idfa-settings
  Example: submission_information: { export_compliance_uses_encryption: false}
This can also be set in your Info.plist with key 'ITSAppUsesNonExemptEncryption'

Where did this land?
We are still seeing the error message "The provided entity is missing a required attribute - You must provide a value for the attribute 'usesNonExemptEncryption'"

@AdamWheatley It looks like this was included in 2.150.1 so I'm kind of surprised that you are still seeing this 🤔 Can you create a new issue and mention me in it? I'd like to have a convo there to see if we can see what is different about your setup that I'm not seeing 🙃

@joshdholtz I am also able to see this.

@ppamorim Weird! Can you create an issue with your env and entire CLI output for me? 😇


Apply language to context before creating Notifications

Fixes #2245
If you can think of a better way of doing this, I'm happy to hear ideas. It's quite ugly.

It feels like we should have a central entry-point where this is done for notifications, not X different places.
On the other hand, maybe we should remove the ability to select a language completely. It was originally introduced because early Android versions didn't offer to select some of the languages we supported in K-9 Mail. But I'm guessing it stopped being an issue a long time ago.


:bug: Fix for Issue #1248

This fixes the base url and the domain of the generated website.
Related issue: #1248

@cookiengineer Thanks for your help! I guess, after the change, "http://jerryscript.net" will work. But will "http://samsung.github.io/jerryscript" also keep working?

The github.io/jerryscript link is a redirect to jerryscript.net - so it will also work, as github will use the CNAME file anyways. github.io is not accessible if a CNAME file with a custom domain is present and therefore will lead to a redirect.

Ah, thanks for the clarification. LGTM.

Please add the signed off message to your patch.

JerryScript-DCO-1.0-Signed-off-by: Cookie Engineer<EMAIL_ADDRESS>

To the patch commit message please not here as a comment.

The commit message is still incorrect. It must be:
JerryScript-DCO-1.0-Signed-off-by: your real name
I am sorry for the extra effort but this legal binding is needed to ensure JerryScript conforms with apache 2.0 license, and the project is "clean".

Note: here is a longer explanation https://github.com/Samsung/jerryscript/wiki/JerryScript-Developer's-Certificate-of-Origin

LGTM

It would be great to land this patch. Please fix the commit message.

@cookiengineer as @zherczeg already mentioned, in order for us to be able to accept the contribution you must sign the JerryScript DCO with your real name as part of the commit message.
Can you please update your patch accordingly? :)

Is this now correctly signed off?

The email address that is used to author the commit is still missing (most probably<EMAIL_ADDRESS>

Okay, now I'm a bit annoyed by that signoff shit here.

The commit message is still incorrect. It must be:

JerryScript-DCO-1.0-Signed-off-by: your real name

Either document it properly now with exactly what you guys want, which is obviously totally project-specific and needs an seriously annoying amount of overhead time. Document exactly what you want or I refuse to signoff anything again and you can ignore my pull requests.

@cookiengineer Apologies for the trouble, you can find the exact instructions here: https://github.com/Samsung/jerryscript/wiki/JerryScript-Developer's-Certificate-of-Origin

Using the Signed-Off-By Process
We have the same requirements for using the signed-off-by process as the Linux kernel. In short, you need to include a signed-off-by tag in every patch:
"Signed-off-by:" this is a developer's certification that he or she has the right to submit the patch for inclusion into the project. It is an agreement to the Developer's Certificate of Origin (above). Code without a proper signoff cannot be merged into the mainline.
You should use your real name and email address in the format below:
JerryScript-DCO-1.0-Signed-off-by: Random J Developer<EMAIL_ADDRESS>
In the near future we plan to add a CONTRIBUTING.md to the project which describes the contribution process in more detail, that will hopefully help to prevent misunderstandings and make the process more transparent.

@cookiengineer Can you please confirm that the Signed-off-by line below matches your real name and email address? I'm happy to rebase and merge the patch after I receive your confirmation. Thanks!
JerryScript-DCO-1.0-Signed-off-by: Christoph Martens<EMAIL_ADDRESS>

@cookiengineer Friendly ping :)

Closing as the web site has been fixed with #1340.


Py deps upgrade, TF upgrade, TF fixes

to: @airbnb/binaryalert-maintainers
resolves #145
resolves #173
resolves #167
resolves #166
resolves #154
resolves #153
resolves #152
resolves #142
resolves #144
Background
I see that there are many pending PR and open issues, so I tried to take the most important into account into one, comprehensive PR.
Changes

TF upgrade to latest version 0.14.5
Python deps upgrades (at some point I suggest to migrate to Poetry as opposed to PIP)
Added TF variable aws_account_name to solve #145
Changed /usr/bin/env python3 into /usr/bin/env python to be venv friendly (Py3 should be the default)

Testing
python manage.py unit_test

I checked the logs of the CI job but I can't see any meaningful error message. I see that both jobs on Py 3.6 and Py 3.7 have errored, but I can't see the cause. Maybe you have some hints on how to dig deeper @ryandeivert ? Thanks!

I checked the logs of the CI job but I can't see any meaningful error message. I see that both jobs on Py 3.6 and Py 3.7 have errored, but I can't see the cause. Maybe you have some hints on how to dig deeper @ryandeivert ? Thanks!


Android doesn't compile

{app_root}/node_modules/@estimote/react-native-proximity/android/src/main/java/com/estimote/react/RNEstimoteProximityModule.java:8: error: cannot find symbol import com.estimote.proximity_sdk.proximity.ProximityAttachment;

iOS works fine. Android fails to build with this error. Latest RN.

Thanks for the heads up! Looks like our Android team released a new version of the Android Proximity SDK, 0.6.0, with some breaking API changes. (We're still fine-tuning the API before the 1.0 release.)
For now, I've just hard-coded the React Native wrapper to use the 0.5.1. We'll update the wrapper for 0.6.0 at a later date.


⚠ Bofrost.de has degraded performance

In 89f5c22, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1024 ms

Resolved: Bofrost.de performance has improved in 7bc298e.


Enable use of InstanceProfile on EC2 instances

On EC2 instances with an InstanceProfiles the binary should use the provided IAM temp user capability provided by AWS when an explicit profile is not set.
See http://docs.aws.amazon.com/sdk-for-go/api/aws/Config.html#Credentials-field For details.

Expect a PR shortly for this.


Treat a . (dot) in glob pattern as dot instead of character wildcard

A dot inside a pattern token is passed to the regex as common dot, where
it is treated as an arbitrary character instead of real dot character.
By prefixing with a backslash in the regex, the dot is treated as real
character.

@molehillrocker is there a reason that you closed and deleted this PR? Seem like a sensible suggestion to me.

I became confused due to the fact that the issue is labeled as #431 and my contribution as #432. I thought I'd named my branch wrong and changed it to #432, which ended in a PR with label #433. :smile:
Lesson learned: Branch name has no effect on the id of the PR.

Ah, gotcha.  Yeah, each Pull Request is actually a new issue, so you won't get a PR numbered the same as the Issue that it is intended to fix.


This contract object doesn't have address set yet, please set an address first.

+1, facing same error

+1, facing same error @nikhildsahu

They are no longer maintaining the repo. and majority of the dependencies are outdated and depreciated because of that the above errors raises.


[META]Add fillnull command to PPL

Description:
We propose adding a fillnull command to OpenSearch's Piped Processing Language (PPL) to provide a convenient way to handle null or missing values in query results. This feature would be similar to the fillnull command in Splunk's SPL, enhancing PPL's data cleaning and preparation capabilities.
Proposed Functionality:

The 'fillnull' command should allow users to replace null values with a specified value.
It should support filling nulls for specific fields or all fields.
The command should allow different fill values for different fields.
It should support conditional filling based on other field values or expressions.

Example Usage:
... | fillnull value=0

This would replace all null values in all fields with 0.
... | fillnull value=N/A field1, field2

This would replace null values in field1 and field2 with "N/A".
... | fillnull field1=0 field2="Unknown" field3=false

This would fill null values in different fields with different values.
... | eval new_field = if(field1 == "category1", field2, null) | fillnull value=0 new_field

This example uses eval to create a new field (or overwrite an existing one) based on a condition, and then use fillnull  to handle the null values
...
| eval field1 = if(field1 == "category1", field1, null), field2 = if(field2 == "category2", field2, null)
| fillnull field1=0 field2="Unknown"

This example uses multiple eval expressions to handle different conditions for multiple fields, followed by fillnull

implementation Considerations:

Ensure compatibility with existing PPL commands and syntax
Optimize performance for large datasets with many null values
Provide clear documentation and examples for users
Consider type-checking or type-conversion for filled values

Support for PPL fillnull functionality is required for both:
OpenSearch based PPL engine

https://github.com/opensearch-project/sql/issues/3032

Spark based PPL engine

https://github.com/opensearch-project/opensearch-spark/issues/670

[Catch All Triage - 1, 2,  3,  4]


Local installation: quick start script

A shell script which will help users in installing the package in a virtual Python environment.

0.1.2 -> 0.1.3


Maintain Item Order within the Editor

I was wondering if there is any way to prevent the editor from changing the order of the items in startval when it creates the editor object. It isn't changing a lot but a few items it reorders and I am not sure how to stop it.

I worked around this by overriding layoutEditors to assign a property order matching the object order if it is not already specified:
    JSONEditor.defaults.editors.object = JSONEditor.defaults.editors.object.extend({
      layoutEditors: function(){
        let propertyNumber = 1;
        for(let key of Object.keys(this.editors)) {
          let schema = this.editors[key].schema;
          if(!schema.propertyOrder){
            schema.propertyOrder = propertyNumber;
          }

          ++propertyNumber;
        }

        this._super();
      }
    });


Merge js-libp2p-{core pieces} into js-libp2p repo

Following https://github.com/ipfs/js-ipfs/issues/2222, the proposal is to:
Merge into js-libp2p, the following modules:

[x] js-libp2p-connection-manager
[x] js-libp2p-identify
- [ ] js-libp2p-keychain
- [ ] js-libp2p-nat-mngr
[x] js-libp2p-pnet
[x] js-libp2p-ping
[x] js-libp2p-switch https://github.com/libp2p/js-libp2p/pull/388
[x] js-libp2p-circuit

Cleanup
NPM Deprecation Notice

[x] https://www.npmjs.com/package/libp2p-circuit
[x] https://www.npmjs.com/package/libp2p-connection-manager
[x] https://www.npmjs.com/package/libp2p-identify
[x] https://www.npmjs.com/package/libp2p-pnet
[x] https://www.npmjs.com/package/libp2p-ping
[x] https://www.npmjs.com/package/libp2p-switch

Readme Deprecation Notice

[x] js-libp2p-circuit
[x] js-libp2p-connection-manager
[x] js-libp2p-identify
[x] js-libp2p-pnet
[x] js-libp2p-ping
[x] js-libp2p-switch

Github Archival
Description replacement: [DEPRECATED]: now part of the https://github.com/libp2p/js-libp2p repo

[x] js-libp2p-circuit

[x] Update description

[x] js-libp2p-connection-manager

[x] Update description

[x] js-libp2p-identify

[x] Update description

[x] js-libp2p-pnet

[x] Update description

[x] js-libp2p-ping

[x] Update description

[x] js-libp2p-switch

[x] Update description

I put together a Draft PR of this, https://github.com/libp2p/js-libp2p/pull/388, for just libp2p-switch so we can chat about the approach there.

@daviddias each module has been deprecated on npm, and the readme's all include the notice and a link to js-libp2p. I added TODOs to the issue description, https://github.com/libp2p/js-libp2p/issues/384#issue-470661287, to archive and update the description of each repo. If you could help with that, it would be much appreciated! ❤

@jacobheun done! Thank you for making it super simple :)

PR to follow for those interested https://github.com/libp2p/js-libp2p/pull/525


parsedatetime failing to parse dates with dashes even though it has unit tests where they pass

See failing unit test: test_date_cast_parser

Relevant parsedatetime test: https://github.com/bear/parsedatetime/blob/master/parsedatetime/tests/TestSimpleDateTimes.py#L109

This appears to have been fixed in parsedatetime 1.6. May just have to wait for a release.

Bad news, this also fails with full iso8601 datetimes. Going to need to pull in another dependency.

Resolved this by pulling in isodate and explicitly testing for iso formats if parsedatetime fails. A middling solution, but the tests pass.


[Suggestion] Curios compat for leyden jar/beam cage

Suggestion
Curios, is the new mod that replaces baubles, and it exists. Compat for leyden jar/beam cage.
Justification
Been discussed before, only a matter of implementation.

Added in the latest beta.


Pinyin 韵母错误bug

Hello, hanlp developers, I found some bugs in the file Pinyin.java
in commit 6b60684f447d4c9f4ad68016fd1b443ef50e9bb4
lve3  's yunmu is ve ， but lve4 's yunmu is  ue .
https://github.com/hankcs/HanLP/blob/1.x/src/main/java/com/hankcs/hanlp/dictionary/py/Pinyin.java#L702
https://github.com/hankcs/HanLP/blob/1.x/src/main/java/com/hankcs/hanlp/dictionary/py/Pinyin.java#L698
https://github.com/hankcs/HanLP/blob/1.x/src/main/java/com/hankcs/hanlp/dictionary/py/Pinyin.java#L841

[auto-reply] Thanks for your comment. However, the essential information is required. Please carefully fill out the form when open a new issue.


CPU Support (?)

I recently upgraded my hardware (13600k and MSI B760), and now the hypervisor is refusing to boot. On UEFI it seems to be hanging inside of AllCpusProc when calling UefiToHypervisorTrampoline64. I'm not sure where it's hanging on legacy mode. The only way I've gotten it to boot is by using legacy BIOS configuration and keeping only a single core active in the BIOS.
I've been trying to get this to work for days, but have made no progress due to the erratic behavior I'm seeing. I'm not sure how to debug this or even provide some more information because it's happening long before the OS or hypervisor boots.

https://github.com/bitdefender/napoca/blob/master/napoca/boot/ap_initialization.nasm#L182
lapic id is overflowing and corrupting the stacks of other CPUs, comment this line out, this fix has only been tested on legacy BIOS


Reciprocal check  for modifications

Does every protein that is a target of a protein modifying enzyme
https://www.pombase.org/term/GO:0140096 (catalytic activity acting on a protein)
have the reciprocal modified-by protein-blah?

Does every modified_by protein-blah have the reciprocal target_of protein modifying enzyme?

Ideally there would be some prompt in Canto when a reciprocal annotation is expected

This would be a nice check to fill in missing annotations

Are these one-off checks or should they run every night with output in a log file?

I'm not sure. We should be able to automatically instantiate them if they are missing. We may begin with a log file so we can see how many and whether they make sense, and then we can decide?

For 1. and 2. could you add an example of missing annotations and an example where the annotations are there?

Another example from this old ticket
hta1,2 check https://github.com/pombase/pombase-chado/issues/1077
contains an example. I won't fix it for now...
https://github.com/pombase/pombase-chado/issues/452


Adding a seperate template for date-of-birth openinvoice validation checks.

Fixing conflicting validation checks with customer date-of-birth in onepagecheckout
Same as https://github.com/Adyen/magento/pull/592 but now, as requested, in develop branch.

@eriktimmers,
Thanks I merged it.
Regards,
Rik
Adyen


add mcp-server-playwright

Added the mcp-server-playwright package

Hey there, thanks for the PR. I think you need to set name to  @automatalabs/mcp-server-playwright so it is installable.
I will merge once you fix that.

Hey there, thanks for the PR. I think you need to set name to @automatalabs/mcp-server-playwright so it is installable.
I will merge once you fix that.

Just fixed it up!


⚠ Samsung has degraded performance

In 478d66e, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2328 ms

Resolved: Samsung performance has improved in fa9fa9c.


RSC and data Streaming with tRPC

Could you unstable_httpBatchStreamLink instead of httpBatchLink, which unlock the feature of React suspense streaming on tRPC call. There is an implementation with this install: pnpm create<EMAIL_ADDRESS>

kirimase is now compatible T3, thanks !


Add maxReconnectAttempts option

This pull request adds a maxReconnectAttempts option which controls the maximum number of reconnection attempts ReconnectingWebSocket will make before giving up.
This will allow users of this library to use short reconnection intervals without the risk of being smashed by potentially tens of thousands of clients trying to reconnect forever in case the WebSocket server goes down.

Merged. Thanks!


Release 0.3.1

I tested that it works fine in HA, including login flow.
Please create a release and publish the new version after merging 🙂
Btw, I can try to configure poetry to detect version from github release so these version bumps won't be needed. We can even automate publishing to pypi after that. So just creating a github release should do all the work. Do you want to try that? 🙂

@KapJI thanks for trying the package after changes, especially with HA.
The poetry automatic bump up would be amazing.
I could totally see how that could be an amazing custom github action where in configurations you set what files to change when github release PR is open... that could be super useful, so one can set it up in HA to bump up manifest file as well. I dunno if that would be hard to make thou... a bit of regex maybe grasping the specified files? 🤔


AmigaTestKit: Amiga 1000 incorrectly detected as PAL

AmigaTestKit v1.10 incorrectly detects my Amiga 1000 as a PAL machine.
The machine is a unmodified NTSC model / Rev 6 motherboard:

28.3636 mhz crystal
8361R3 Agnus

The Chipset IDs shown on the CIA / Chipset menu are '0000' for Agnus and 'ffff' for Denise.

It's not just Amiga Test Kit:

'WhichAmiga' reports 'OCS PAL Agnus 8367'
'SysInfo' reports 'STD AGNUS - 512' and 'Mode: PAL'

Possibly it's a quirk of the "thin" Agnus used in A1000s.
If so, it's not a quirk that WinUAE emulates.  Emulating an A1000 w/NTSC OSC and chipset extra = A1000, ATK sees chip id =10 (NTSC).

Okay here is an updated version of ATK for you to try. The source for this is on branch issue-23 of the repository.
atk_23_1.zip

That totally works!  A1000 is correctly detected as OCS/NTSC (...and now passes CIA timer tests.)
I think all of the Agnus chips with id=00 are 512k variants, which IIRC are incapable of switching between NTSC/PAL (i.e., no risk choosing the wrong 'cpu_hz' if someone boots an NTSC machine in PAL mode, or vice-versa).
One paranoid thought: is there any chance that choosing between PAL/NTSC by comparing VBLs vs. CIA ticks might mask failures in the timer tests?  (I don't know.  I just noticed that the CIA timer tests seem to be doing similar comparisons.)
Anyway, I think it's a fascinating problem and am happy to volunteer my A1000 for future ATK testing.  Ping me any time!

It won't mask grotesque errors, only errors in the region of a couple of percent. And of course the new test depends on functioning CIA timer. Hence I use the existing PAL/NTSC detection unless the Agnus ID is 00. I think that's as rigorous as we can possibly be.

Reading the source for 'WhichAmiga' (here) it distinguishes a "thin" Agnus (8361/8367) vs. a "fat" Agnus (8370/8371) by checking for a known bug in the chip:
.subr	move.l	(ExecBase00,pc),a6	;Test for 8361/8367 Agnus:
	call	Disable
	moveq	#32,d6			;Multicheck: 32 times
	move.l	_GfxBase,a6
	lea	$DFF000,a5		;Loads of preloads:
	lea	(bltsize,a5),a4
	lea	(dmaconr,a5),a3
	moveq	#$41,d4			;Shortest possible blit
	call	OwnBlitter
	move.w	(a3),d5			;Save dmacon
	move.w	#DMAF_BLITHOG,(dmacon,a5) ;<- No nasty blitter, please!
.blitloop	call	WaitBlit		;Do it right, but only here! :-O
	move.w	#$0E00,(bltcon0,a5)	;Dummy blit, no dest
	bra.b	.blitcnop
	CNOP	0,4			;Align to longword
.blitcnop	move.w	d4,(a4)			;/ Fetched in   \
	move.w	(a3),d0			;\ one longword /
	btst	#DMAB_BLTDONE,d0	;<- _Very_ old agnus
	beq.b	.old_agnus		;   get this wrong!!!
	subq.l	#1,d6
	bne.b	.blitloop
	addq.b	#2,d7
.old_agnus	or.w	#INTF_SETCLR,d5		;Restore dmacon
	move.w	d5,(dmacon,a5)
	call	WaitBlit		;Wait blit to finish, if any
	call	DisownBlitter
	move.l	(ExecBase00,pc),a6
	call	Enable
	rts

Might not be worth the effort, but ATK could potentially use the above technique to narrow the VBL timing test in detect_ntsc_8361() to only machines with a "thin" Agnus (i.e., just old A1000s like mine.)
Another fun quirk I learned about in the 'WhichAmiga' source is that chip id reported by early OCS revisions of Denise can change:
	lea	($7C,a5),a0		;Preload denise/lisa ID hw addr
	move.w	#$FF,d3			;Preload 'and' value

	moveq	#1-1,d0			;!!  OCS denise gives value $FFFF
					;! when all dma is off (hmm?)
	move.w	d1,(dmacon,a5)		;Enable dma again
	not.w	d0			;!! Well, my old trusty A500 does!!
	beq.b	.OCS			;!! (CAN'T BE SURE ABOUT THIS)

	move.w	(a0),d0		 	;Get ID
	and.w	d3,d0
	moveq	#128-1,d2		;Check 128 times (try to notice old denise random)
.loop	move.w	(a0),d1			;Get ID again
	and.w	d3,d1
	cmp.b	d0,d1			;Same value?
	bne.b	.OCS			;Not the same value, then OCS Denise
	subq.l	#1,d2
	bpl.b	.loop

...and sure enough: ATK sometimes reports the chip ID of Denise as 'ffff' and sometimes as '0000'.  :-)
(Just sharing in case it's helpful / interesting.  Feel free to ignore.)

Thanks for these!
Regarding the blitter bug, it is hard to reproduce (hence WhichAmiga iterating 32 times). I will stick with what we have now in TestKit: startup already relies on vblank irqs basically working, and the worst case is that we misidentify an NTSC as PAL or vice versa. It is small beans really.
The Denise ID weirdness is actually because those chips do not have an ID, so you get randomness on the data bus.


Autostart

Once the system tray is added, add a flag to enable the program to autostart

I wonder if auto-start could be abstracted away into a separate crate?

I'd imagine you'd need autostart functionality tied pretty close to how the app is "installed" on the machine? Not sure I know enough about how this should work for windows to make a one size fits all solution.
My thought was just having the program check if autostart was enabled (a flag in the system tray menu) that gets synced to the config file, and if so, it'd make sure a copy of the executable was installed to it's %APPDATA% folder, then make the appropriate registry edit to launch it from there.
I generally want to stay away from having to bundle in an actual installer, but maybe that's best practice? This is my first program for windows so I'm totally open to ideas here.

std::env::args().first() gets you the running command and that’s what you’d need to autostart. As a possible alternative to the registry there’s a StartUp folder in the windows menu so I guess one could just create a shortcut there (well there was a decade ago - I am assuming it’s still there!).
Sent with GitHawk

I'm using std::env::current_exe to get path to current executabe. I added a toggle in the system tray for autostart. If this is enabled, it'll set / add the item to the config file as true, copy the executable to %APPDATA%\grout\grout.exe if it's not already being run from there, then create a registry key in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run linking to that path.
If the option is deselected, the config file  is updated accordingly and the registry key is deleted.