TextField selection truncated in Chinese

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
main.dart
MaterialApp.(
  localizationsDelegates: const <LocalizationsDelegate<Object>>[
    GlobalWidgetsLocalizations.delegate,
    GlobalMaterialLocalizations.delegate,
    GlobalCupertinoLocalizations.delegate,
  ],
  localeResolutionCallback: (locale, supportedLocales) => locale,
)

pubspec.yaml
environment:
  sdk: '>=3.0.5 <4.0.0'

dependencies:
  flutter:
    sdk: flutter
  flutter_localizations:
    sdk: flutter

Expected results
display Chinese normally under Pixel 7 API 34

Actual results
cannot display Chinese normally under Iphone14 Pro Max iOS 16.6

Code sample
Code sample
[Paste your code here]

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[√] Flutter (Channel stable, 3.13.0, on Microsoft Windows [版本 10.0.22621.2134], locale zh-CN)
    • Flutter version 3.13.0 on channel stable at C:\Apps\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision efbf63d9c6 (2 days ago), 2023-08-15 21:05:06 -0500
    • Engine revision 1ac611c64e
    • Dart version 3.1.0
    • DevTools version 2.25.0

[√] Windows Version (Installed version of Windows is version 10 or higher)

[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at C:\Users\95646\AppData\Local\Android\sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: C:\Apps\Android Studio\jbr\bin\java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-b2043.56-10027231)
    • All Android licenses accepted.

[X] Chrome - develop for the web (Cannot find Chrome executable at .\Google\Chrome\Application\chrome.exe)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[√] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.6.5)
    • Visual Studio at C:\Apps\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.6.33829.357
    • Windows 10 SDK version 10.0.22000.0

[√] Android Studio (version 2022.3)
    • Android Studio at C:\Apps\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-b2043.56-10027231)

[√] Connected device (4 available)
    • AOSP on IA Emulator (mobile) • emulator-5554 • android-x86    • Android 9 (API 28) (emulator)
    • sdk gphone64 x86 64 (mobile) • emulator-5556 • android-x64    • Android 14 (API 34) (emulator)
    • Windows (desktop)            • windows       • windows-x64    • Microsoft Windows [版本 10.0.22621.2134]
    • Edge (web)                   • edge          • web-javascript • Microsoft Edge 115.0.1901.203

@Kigoal ,  Take a look at issue  #132818 . It may be related because the user that has this issues is also on a Chinese locale zh-CN

@Kigoal , Take a look at issue #132818 . It may be related because the user that has this issues is also on a Chinese locale zh-CN

not the same question

@kennyfully88  has a new question, the virtual keyboard flashes when you press and swipe
https://github.com/flutter/flutter/assets/21240282/7cd7ea10-b9c5-4cfb-a919-62c496aefae7

Hi @Kigoal. Thanks for filing this issue. This seems to be similar/related to https://github.com/flutter/flutter/issues/69847. Can you check this out? If not, kindly provide more information on this issue. More specifically, a completed and minimal reproducible code sample.
Thank you!

The same goes for Japanese.

Hi @Kigoal. Thanks for filing this issue. This seems to be similar/related to #69847. Can you check this out? If not, kindly provide more information on this issue. More specifically, a completed and minimal reproducible code sample.
Thank you!

@dam-ease this is a new project
import 'package:flutter/material.dart';
import 'package:flutter_localizations/flutter_localizations.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,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
      localizationsDelegates: const <LocalizationsDelegate<Object>>[
        GlobalWidgetsLocalizations.delegate,
        GlobalMaterialLocalizations.delegate,
        GlobalCupertinoLocalizations.delegate,
      ],
      localeResolutionCallback: (locale, supportedLocales) => locale,
    );
  }
}

class MyHomePage extends StatelessWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: Text(title),
      ),
      body: const Center(
        child: TextField(),
      ),
    );
  }
}

name: flutter_application_2
description: A new Flutter project.

publish_to: 'none'

version: 1.0.0+1

environment:
  sdk: '>=3.1.0 <4.0.0'

dependencies:
  flutter:
    sdk: flutter
  flutter_localizations:
    sdk: flutter

  cupertino_icons: ^1.0.2

dev_dependencies:
  flutter_test:
    sdk: flutter

  flutter_lints: ^2.0.0

flutter:

  uses-material-design: true

Hi @Kigoal. Thanks for responding. From my understanding of this, it seems this issue is similar to  https://github.com/flutter/flutter/issues/69847. Can you check this out and if possible explain the difference?
Thank you!

This appears to be a more generic problem with text being clipped with all fonts, including Latin while inside a CupertinoTextSelectionToolbar.
I've created https://github.com/flutter/flutter/issues/133140 with minimum repro.


Speed up the end-to-end tests (from 34 minutes down to 26 minutes) by increasing the ginkgo node count from 10 to 20

In this PR, I propose to bump the number of "nodes" from 10 to 20. Why 20 and not 10 or 30? Because I noticed that many tests start timing out when the Prow pod gets overloaded. We are using a n1-standard-8 VM (7900m vCPU and 24GiB of RAM), and the pod requests 3500m of vCPU and 12GiB of RAM. The components that seem to overload are kyverno (which is in the hot path of kube-apiserver), etcd, the kube-apiserver. cert-manager then becomes sluggish due to slow calls to the apiserver.
In the following table, the first column shows the various -nodes values tested when running ginkgo. The "test duration" is the time spent while running "ginkgo", and the column"timeouts" column shows the number of tests that failed with a time out (including the tests that are retried; tests that show in the "Flaky" column in the Prow UI are thus counted twice).
Previously, with Bazel (that also uses caching):

nodes
ginkgo duration
timeouts
total duration
startup time
link

10
25m 10s
0
34m 17s
9m 7s
0

With this PR:

nodes
ginkgo duration
timeouts
total duration
startup time
link

5
37m 49s
0
40m 21s
2m 32s   (hot)
1

10
27m 49s
0
34m 53s
7m 4s   (cold)
2

10   (--unsafe-no-fsync)
24m 26s
0
27m 17s
2m 51s   (hot)
9

20
24m 16s
0
26m 46s
2m 30s   (hot)
3

20
24m 15s
1
30m 15s
6m 0s   (cold)
4

20 (--unsafe-no-fsync)   🌟
23m 23s
0
29m 23s
6m 0s    (cold)
8

30
23m 42s
0
26m 35s
2m 53s   (hot)
5

40
26m 26s
26
29m 29s
3m 3s    (hot)
6

50
interrupted (*)
431

7

The startup time is calculated by subtracting the "started time" visible on the Prow UI with the first line that has a timestamp. This time depends on whether this Kubernetes node already has a cache or not.
These results have no statistical significance since each line is the result of a single Prow job. But these results still show that 10 is a good number.
(*) It seems like at 50 nodes the pod gets killed somehow.
As part of this PR, I also propose some enhancements:

I have added a "cache" feature in https://github.com/jetstack/testing/pull/651. In the above table, you can see a 5 minutes decrease thanks to the cache. The cached folders are bin/downloaded, GOCACHE, and GOPATH/pkg/mod.
I added a backoff to the way we log output. Even we need to poll every 500 ms, we don't need to log every 500 ms. There are way less messages in the logs now.
The job pull-cert-manager-make-test should now properly show the JUnit output in the Prow UI. I have decided to hide the fuzz_* tests since there are 40,000 of them which is overwhelming the UI.

To be done at a later stage:

When the prow entrypoint times out, it sends a SIGINT signal to runner, but runner won't trickle that down to the ginkgo process, meaning that the kind logs won't be produced and it becomes hard to debug issues. I have opened https://github.com/jetstack/testing/issues/650 to track this issue.

/test pull-cert-manager-e2e-v1-23

/retest

@maelvls another trick that might speedup the tests is adding the --unsafe-no-fsync flag to etcd: https://github.com/etcd-io/etcd/pull/11946
I previously added that flag to my kind config as follows:
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
  kubeadmConfigPatches:
  - |
    apiVersion: kubeadm.k8s.io/v1beta2
    kind: ClusterConfiguration
    metadata:
      name: config
    etcd:
      local:
        extraArgs:
          unsafe-no-fsync: "True"

This PR is now ready for another round of review!

Not sure how it managed to fail on the test TestManyPasswordLengths test (logs):
=== FAIL: pkg/controller/certificates/issuing/internal TestManyPasswordLengths (unknown)
panic: runtime error: index out of range [-2]

goroutine 3606 [running]:
math/rand.(*rngSource).Uint64(...)
	/home/prow/go/src/github.com/cert-manager/cert-manager/bin/tools/goroot/src/math/rand/rng.go:249
math/rand.(*rngSource).Int63(0xc0000dbab0)

/test pull-cert-manager-make-test

/test pull-cert-manager-make-e2e-v1-23

The time out of make-e2e is very unexpected. I fixed the acmesolver image and was expecting this issue to be gone. I'll investigate first thing in the morning.

/test pull-cert-manager-make-e2e-v1-23

Part of the migration to make: #4712

I was able to reproduce the 2 hours timeout, it seems bind is somehow misconfigured and that might be due to  719a48996b1b1c5158723f62179006b84bbba2ca I committed.
To reproduce:
make clean
make e2e-setup
make e2e GINKGO_FOCUS=".*ACME CertificateRequest \(HTTP01\) should automatically recreate challenge pod and still obtain a certificate if it is manually deleted"

then:
$ kubectl -n cert-manager logs deploy/cert-manager
E0329 08:08:33.501784       1 sync.go:186] cert-manager/challenges "msg"="propagation check failed" "error"="failed to perform self check GET request: dial tcp: lookup xryfu.ingress-nginx.http01.example.com on <IP_ADDRESS>:53: server misbehaving"

/kind cleanup

Hypothesis to work on: @irbekrm and I think that when a job is running on a VM, it takes way over 50% of the CPU or memory resources, which means when there are two jobs simultaneously scheduled on the same VM, they fight over CPU.

Somewhat related https://github.com/jetstack/testing/pull/513 although this was integration tests I think


HDDS-2690. Improve the command usage of audit parser tool

What changes were proposed in this pull request?
This PR was created for improving the command usage of audit parser tool.
Fix 1. Show the structure of table audit to user.
Fix 2. Add the detailed description with <path to db file> to use the tool effectively.
Fix 3. Show the avaliable template to use the tool easily.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-2690
How was this patch tested?
Just UI changed.
Build and compiled.
Ran on standalone cluster.

Also LGTM. @adoroszlai  could you please have an additional review for this?

Thanks @maobaolong and @linyiqun for reviewing.
And thanks @elek for committing it.


PRUDP port handling

PRUDP packets contain a source and destination port (just like regular TCP/UDP packets). These can be used to:

Establish multiple PRUDP connections using a single transport connection (e.g. using a single websocket connection)
Host multiple PRUDP servers at the same address (e.g. under the same websocket server)

My current implementation does not support this however. It always establishes a new transport connection for each PRUDP connection, and only one PRUDP server can be hosted at a given TCP/UDP port.
For completeness sake, it would be nice to properly implement PRUDP ports. Unfortunately, this is very difficult.

This is implemented in 74039d5e29b6c544ac6be05b0cf36045574d0b41.


New ci/cd-managed source image for tap-mssql

This update redirects tapdance docker image builds to pull from a new auto-managed docker repository which is linked to the aaronsteers fork's CI/CD process in github.

@jtimeus-slalom - This'll be ready to merge once the CI pipeline finishes the docker image builds. The PR is much larger due to fixing up some technical debt; really the core change for us is just the one-liner in docker/tap-mssql.Dockerfile: https://github.com/aaronsteers/tapdance/pull/29/files#diff-0949a0c760a1ad3a973ae3efe0da658170f0b0ae84beb968ba62b5952ca3e567R3


Complete moving our build away from machine state

As of ~1 month ago, a rube-goldberg machine installation of machine dependencies were required to do anything in the Visual F# Tools.  That won't be a thing soon.  We want the following process to be all that is required:

Clone the repo.
Run build.

Related PRs:
#4023
#4005
#4004
#4002
#4001
#3995
#3992

This is about as complete as it will get. We will depend on the .NET SDK when we migrate away from project.json, but the story here is far, far better than it used to be.


Documentation updates for QR code simulations - ChrisDa is managing

We are soon going to public preview for QR code simulations in Attack simulation and Training (likely in the week of 19th Aug). This PR covers documentation updates regarding running simulations, payload library, training references, and reporting. This also includes image references.

Have opened this PR for review of the content and updates, but would request to hold off merge until we are ready to flight the feature WW (likely post 15th august/week of 19th august)

Closing. Information recreated in different PRs.


add conditional PodDisruptionBudget

Add a PodDisruptionBudget only if the number of minimum replicas is less than the number of replicas.

#69


Provide values in the cli, during compilation, that can be read in the document

Description
To be able to pass arguments in the CLI compilation process, something like typst compile document.typ --extVar value that can be read in the script and be used, for instance, as a condition evaluation.
#if extVar {
 somethings
}

Use Case
This would be useful for compiling different versions of a document in compilation time, without having to change anything in the script.
As in a resume use case, one would be able to compile several resumes in different languages using conditionals in the script that evaluate this one value passed in the CLI.

https://github.com/typst/typst/pull/2894
it will appear in next version

Ok, thank you for the reply


attempting to use with react-native - but hit a snag

warn Package use-between has been ignored because it contains invalid configuration. Reason: Cannot find module 'use-between/package.json'

Hi @johndpope, thanks, I will see.

I've been able to install and use it in my react expo project just fine.

been fighting with expo - forgive me. I do love this project. Thanks for your help.

Thanks for your choice! And have a nice code👌

@johndpope Were you able to successfully use useBetween in an Expo React Native project?

@ronster37  Could you please share a minimal example?

@YahyaBagia This is how I used it:
import { useBetween } from "use-between"
import { useState } from "react"

const useCart = () => {
  const [cartItems, setCartItems] = useState<number[]>([])

  const addToCart = (item: number) =>
    setCartItems((prevValue) => [...prevValue, item])

  return {
    addToCart,
    cartItems,
  }
}

export default function useSharedCart() {
  return useBetween(useCart)
}

Now in different screens I could do:
import useSharedCart from "../../hooks/useCart"

export default function LoginScreen({
  navigation,
}: RootStackScreenProps<"PricesAndPackages">) {
  const { cartItems } = useSharedCart()
  ...

 or any other Screen

Now all the screens can share and modify the same cart state.

@ronster37
My use case is a bit more complex because I'm using expo-router along with useLocalSearchParams. I couldn't make it work, so I decided to change my approach to avoid the need to share the controller.

Hi, YahyaBagia.
Can you explain more about type of error you see.
May be some of useful thoughts you will find in this issue, of course if its fit to you.
https://github.com/betula/use-between/issues/43

@betula
I was about to create an Expo Snack to reproduce the issue, but to my surprise, Expo Snack still doesn’t support expo-router. I don’t have enough time at the moment to set up a local project to recreate the issue. If I manage to recreate it later, I’ll share it here for further investigation.

@betula
Here's my controller that I want to share between different routes (using expo-router). It throws two distinct sets of errors on Web and Native (Android + iOS).
import { useEffect, useState } from "react";
import { useGlobalSearchParams } from "expo-router";
import { useBetween } from "use-between";

import UserAPIs from "@/src/apis/user/UserAPIs";
import { IUser } from "@/src/apis/user/Models/IUser";
import { IUserDetails } from "@/src/apis/user/Models/IUserDetails";

import EventDispatcher from "@/src/common/EventDispatcher";

import {
  useAPIDataState,
  useShallow,
} from "@/src/global-state/APIDataState/APIDataState";

import UIComponentsStateActions from "@/src/global-state/UIComponentsState/UIComponentsStateActions";

const _useUserDataController = () => {
  const { _id } = useGlobalSearchParams<{ _id: string }>();

  const [userDetails, setUserDetails] = useState<IUserDetails>();

  const [getDataItem] = useAPIDataState(
    useShallow((state) => [state.getDataItem])
  );

  useEffect(() => {
    loadUserDetails();

    EventDispatcher.onReloadData(loadUserDetails);
    return () => {
      EventDispatcher.offReloadData(loadUserDetails);
    };
  }, []);

  const user = getDataItem("users", _id!) as IUser;

  const loadUserDetails = async () => {
    try {
      UIComponentsStateActions.showLoaderHud();
      const response = await UserAPIs.getUserDetails(_id);
      const { success, data } = response;
      if (success) {
        setUserDetails(data);
      } else {
        UIComponentsStateActions.showAPIErrorMsg(response);
      }
    } catch (error) {
      UIComponentsStateActions.showAPICallFailedMsg(error);
    } finally {
      UIComponentsStateActions.dismissLoaderHud();
    }
  };

  return { user, userDetails };
};

const useUserDataController = () => useBetween(_useUserDataController);
export default useUserDataController;

Errors Thrown

Web
iOS
Android

Environment:
"expo": "~51.0.31",
"react-native": "0.74.5",
"expo-router": "~3.5.23",
"use-between": "^1.3.5",

Hi @YahyaBagia,
I recommend using useBetween generally for sharing state, because oftenly some hooks inside your logic, can use logic depends on contexts or another state management systems inside libraries.
In that case you should keep and share only IUserDetails state between your app components.
/**
 * Keep your app state here
 */
const useUserDetails = () => {
	const [userDetails, setUserDetails] = useState<IUserDetails>();
	return [userDetails, setUserDetails];
}

/**
 * Share your app state
 */
const useSharedUserDetails = () => {
	return useBetween(useUserDetails);
}

Next step update your useUserDataController for using shared app state.
const useUserDataController = () => {
  const { _id } = useGlobalSearchParams<{ _id: string }>();

  //
  // !ATTENTION HERE
  //
  // Update this line only useSharedUserDetails() instead of useState<IUserDetails>()
  //
  const [userDetails, setUserDetails] = useSharedUserDetails();

  const [getDataItem] = useAPIDataState(
    useShallow((state) => [state.getDataItem])
  );

  useEffect(() => {
    loadUserDetails();

    EventDispatcher.onReloadData(loadUserDetails);
    return () => {
      EventDispatcher.offReloadData(loadUserDetails);
    };
  }, []);

  const user = getDataItem("users", _id!) as IUser;

  const loadUserDetails = async () => {
    try {
      UIComponentsStateActions.showLoaderHud();
      const response = await UserAPIs.getUserDetails(_id);
      const { success, data } = response;
      if (success) {
        setUserDetails(data);
      } else {
        UIComponentsStateActions.showAPIErrorMsg(response);
      }
    } catch (error) {
      UIComponentsStateActions.showAPICallFailedMsg(error);
    } finally {
      UIComponentsStateActions.dismissLoaderHud();
    }
  };

  return { user, userDetails };
};

After that your should use useUserDataController hook in one place of your application, this will be setted shared state of your user details.
But useSharedUserDetails will be accessed everywhere.
Please @YahyaBagia try this decision, and provide feedback about result.

Thank you @betula for guiding me.
It worked once I separated the state and logic between different controllers (custom hooks).


Can't libtbx configure on Windows

running in an empty build directory next to the usual modules/ checkouts with cctbx-base 2021.6 gives:
python ..\modules\cctbx_project\libtbx\configure.py scitbx iotbx cbflib

scitbx is already installed
Traceback (most recent call last):
  File "..\modules\cctbx_project\libtbx\configure.py", line 34, in <module>
    if not run():
  File "..\modules\cctbx_project\libtbx\configure.py", line 29, in run
    libtbx.env_config.cold_start(sys.argv)
  File "C:\DialsBuild\modules\cctbx_project\libtbx\env_config.py", line 3010, in cold_start
    env.process_args(pre_processed_args=pre_processed_args)
  File "C:\DialsBuild\modules\cctbx_project\libtbx\env_config.py", line 1046, in process_args
    assert self.path_utility.isfile()
AssertionError

a
print(abs(self.path_utility))
yields
d:\bld\cctbx-base_1625205021395\_h_env\Lib\site-packages\command_line\path_utility.py,
so it looks like this comes from the prebuilt package?

I'll take a look this week. It looks like we're setting an absolute path which can happen on Windows.

There are some configuration issues on Windows that I'm looking into this week.

The Windows build should work now. It was not working in earlier releases since it was not fully tested.

Create the environment with one of the recent nightly builds of the cctbx-base package. The only package in the environment that comes from the cctbx-nightly channel is cctbx-base. Everything else should come from conda-forge.

conda create -n test -c cctbx-nightly -c conda-forge cctbx-base python=3.7 scons hdf5=1.10
conda activate test

Configure (dxtbx is on the dials-3.5 branch)

mkdir build
cd build
libtbx.configure dxtbx cbflib

Build (the Visual C++ 2017 compiler is already in the path)

libtbx.scons -j 8


Add an entry for the 1.4 branch to the versions dropdown in the website nav

See this PR for an example of what needs to be done.
https://github.com/kubeflow/website/pull/2997/files

/lgtm


Support settings from command line options

Allow user to start ZipChord with specific settings (chord dictionary, language, spacing etc.) from command line using command line options.
Also allow changing settings using the command line options while the app is running.

Thank you! I did not know about Scoop. That's a cool alternative to setting off false positives with my own installer.
The app will need a small adjustment. Currently, I'm saving the app configuration options into Windows Registry, and keyboard/language settings into an ini file in the user's %appdata% directory. But I will switch the app configuration to go into appdata also.
The two files for persisting will be: %appdata%\ZipChord\locales.ini and %appdata%\ZipChord\config.ini (and should not need renaming for Scoop). There could be other files in the same directory in the future (currently, I have the license text file there also) but those could/should be removed when uninstalling.
I'll open a separate ticket. I'm pretty sure, this is something I can do fairly quickly after work.
Also, let me know if there's some naming convention for releases and zip file naming that would make it easier to use an autoupdate for the Scoop package.

The #157 is now completed, and I included details about the naming conventions for any automated detection of new builds.
I will keep this issue open to track the implementation of the command line options.
(Unrelated, I am now running into more issues with Windows Defender false positives even for the non-installation zip files, but Microsoft has been whitelisting ZipChord when I flagged this in the past, so I hope I can get this resolved with them in a better way than just the current case-by-case.)


Create bindings to libxsmm (in a separate package)

See https://github.com/Mikolaj/horde-ad/issues/9#issuecomment-1086211063.'
To test the bindings, implement convolution in horde-ad tests using them.

The library also supposedly implements LSTM. If that implementation is adequate and with pure enough API, let's create some example neural networks with that. If not and if no libraries offer a good alternative, let's implement our own. Two good blog posts about LSTM: https://jasdeep06.github.io/posts/Understanding-LSTM-in-Tensorflow-MNIST and https://colah.github.io/posts/2015-08-Understanding-LSTMs.

Actually, I'm not even sure backpropagating through all (popular) variants of LSTM and GRU can be modelled by expressing the whole neural net, including the LSTM, as a single function and taking its gradients. I'm seeing hints that variants with "hard attention" can't, as opposed to those with "soft attention". That's a theory question related to non-differentiable functions (nns with the bad LSTM are supposedly not differentiable despite their various components being so). CC @fkrawiec.


Dead keys not working (caret, tilde)

I type on a Brazillian ABNT 2 layout keyboard, but this can be reproduced on any layout with dead keys, including "US International w/ dead keys" for instance.
On terminal vim, pressing the ^ key twice should take me to start of line, and ~ twice should switch character case. Instead of that, the expected action occurs but after that the corresponding character (~ or ^) is printed on current position and substitutes the character on that position. My guess is that it has something to do with dbus or something

Can you try to set in vscode settings "keyboard.dispatch": "keyCode" ?

Can you try to set in vscode settings "keyboard.dispatch": "keyCode" ?

switched this setting and restarted VSCode, makes no difference at all

The same was happening with me on a Arch Linux + KDE clean install.
I then installed Fcitx5 and all started working.

O mesmo estava acontecendo comigo em uma instalação limpa do Arch Linux + KDE. Então instalei o Fcitx5 e tudo começou a funcionar.

This solution worked for me on Arch, too.
sudo pacman -S fcitx5


Showing upload/download progress

Awesome library you built here. Especially with the multipart upload. Would there be any effort to include progress related functionality for upload and download?

I haven't been doing a ton of Swift recently, so this will probably not come from me anytime soon.  I'm definitely accepting pull requests if someone wants to implement it.

Thanks for letting me know, I figured as much.
On Feb 27, 2015 12:14 PM, "Adam Nalisnick"<EMAIL_ADDRESS>wrote:

I haven't been doing a ton of Swift recently, so this will probably not
come from me anytime soon. I'm definitely accepting pull requests if
someone wants to implement it.
—
Reply to this email directly or view it on GitHub
https://github.com/theadam/SwiftClient/issues/2#issuecomment-76431639.


Add support for Badge Position CENTER

Library is very useful,  and all the provided methods are amazing.
but the only feature which lacks is the center positioning of badge over parent Drawable.

Thanks @priyanshu2112,
We'll support more position CENTER_LEFT CENTER_RIGHT CENTER_TOP CENTER_BOTTOM on next release.


Proxy Support

Can you add a option to configure the network proxy just like 'g:copilot_proxy' in copliot.vim?

We support the standard environmental variables HTTPS_PROXY/HTTP_PROXY/NO_PROXY right now. Does that work for your proxy configuration?

Feel free to open a PR to set these environmental variables just for the server process based on an option.
You can find the documentation for Neovim jobstart here: https://neovim.io/doc/user/builtin.html#jobstart()
And for Vim job_start here: https://vimhelp.org/channel.txt.html#job-start

I can also take a stab but won't be able to get to this for quite some time unfortunately.


Add NMEA receiving feature (null safety update)

:sparkles: What kind of change does this PR introduce? (Bug fix, feature, docs update...)
New feature.
:arrow_heading_down: What is the current behavior?
There is no current option to receive NMEA messages.
:new: What is the new behavior (if this is a feature change)?
With this PR, you can receive NMEA messages (only on Android N and above, no iOS due to limitations).
:boom: Does this PR introduce a breaking change?
No
:bug: Recommendations for testing
:memo: Links to relevant issues/docs
Closes #605, closes #561
This PR takes most changes from #605 and updates them to null safety and the latest changes from master.
:thinking: Checklist before submitting

[X] I made sure all projects build.
[X] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
[X] I updated CHANGELOG.md to add a description of the change.
[X] I followed the style guide lines (code style guide).
[X] I updated the relevant documentation.
[X] I rebased onto current master.

Note: to avoid conlicts, I was using my own GitHub fork for the packages, so the analyzer checks failed. I will update their versions, but note that most checks will fail as I have to update the pubspecs for android, geolocator and geolocator_platform_interface.

Closed in favour of #932 as it implements NMEA with the latest changes.


jupyterlab missing from conda install

jupyterlab package is missing from install command.  It might help to include an environment.yaml file with the repo.

Are you specifying the repository to pull jupyterlab from? You might try conda install -c conda-forge jupyterlab if you haven't already, or you can refer to the documentation at https://jupyterlab.readthedocs.io/en/stable/getting_started/installation.html
I hope this helps.

I've solved the roblem for myself but was suggesting that jupyterlab be added to the conda install instructions in the README.md.  I can make thos changes and submit a PR if you want.

Oh okay. There are many Python environments to choose from, so I thought you just needed help installing the specific one you picked. I'm not a package maintainer, so I don't know if they would approve a PR. You could always submit one and see what happens.


Add user

When a new user adds, the existing user's access goes.
Think have to fix it from here.
https://github.com/Sayrix/ticket-bot/blob/078cae16944594e13f28b35b5d1b485e6cce7c4d/commands/add.js#L24

https://github.com/Sayrix/ticket-bot/discussions/55


chore(android): move contentStartTime into source prop

Summary
move contentStartTime into source prop
Motivation
fix next item for ticket: https://github.com/TheWidlarzGroup/react-native-video/issues/2693
Changes
Just an internal refactor + doc clean up
Test plan
N/A

@freeboub
This branch has conflicts.


Seeking Stability in Uncertainty through the Taygen Protocol

Description:
Taygen is a decentralized stable yield protocol that allows users to invest their USDC and generate passive income by employing a multi-strategy approach. With stable 8% yields, Taygen aims to become the world's most stable crypto asset manager.
Labels for Talk Style, Talk Audience Type
Audience Type: Intermediate
Talk Style: 10 min-Ted Style Talks/Lightning Talks
Details of any additional information or resources you need if you are submitting for a Teach Me Something Booth like Whiteboard, Marker, Jar, Sticky, Extensions, Crayons, etc. anything to make your teach me something booth activity better.
N/A

@adiig7 could you please change the Topic to DeFi from Blockchain & Cryptocurrencies, thank you!


Added keyword click a point with duration

Added keyword click a point with duration for supporting long press, press almost application with different application ID

@minhnguyenphuonghoang What about integrate this keyword to click a point and give an optional parameter for duration?
Would it simplify?

Nope,
In the click a point keyword, when we perform the tap, it releases immediately.
We have to use press so that is why I created a new keyword instead of editing the click a point.
BTW, I can edit the click a point keyword like you said.


Immutable-js newest version -> draft-js incompatible

What happened
I updated to 4.0.0-rc.7.
Suddenly i noticed draft-js stopped working. Threw  an unrecoverable error.
How to reproduce
Install draft-js, install the version of immutable i mentioned. It will happen naturally.
I also posted on draft-js

@flarnie has been helping to update draft.js, but at this time draft.js lists its dependencies as an earlier version.
I'm not sure there's action that can be taken on this repo - if you see something that you think is a bug, please reopen with more details.
I suggest following up with the issue on draft-js with more details. What sort of error do you see? Is there code you can share that will reproduce the issue? Could you submit a PR with a test that fails or a suggested fix? Those sorts of things will likely lead to a faster fix

Yup - this is an issue we will fix in Draft. Thanks @leebyron and @markpradhan

@flarnie - If there are breaking changes that are particularly tricky to work around in supporting v3 and v4, let me know so I can work on a smoother migration plan


Add tests for documentation and fix issues

Codecov Report
Patch has no changes to coverable lines.
:loudspeaker: Thoughts on this report? Let us know!.


React Native Drawer does not respond to onTouchDrag or: How to make it work

Hey guys! I'm trying to make react native drawer's touch drag work with react native router flux.
However, the drawer's pan handler does not seem to notice the drag.
Version
Tell us which versions you are using:

react-native-router-flux v3.35.0
react-native v0.36.0

Expected behaviour
On touch drag beginning at the edge of the drawer's position, the drawer should tween into fully expansion.
Actual behaviour
The drawer's pan handler does not recognize the onTouchDrag and does not show.
Steps to reproduce
Router.js
// Essential parts of Router.js
class NavigationRouter extends Component {

  render () {
    return (
      <Router>
        <Scene key='drawer' component={NavigationDrawer} open={false}>

          <Scene
            key='drawerChildrenWrapper'
            navigationBarStyle={Styles.navBar}
            titleStyle={Styles.title}
            leftButtonIconStyle={Styles.leftButton}
            rightButtonTextStyle={Styles.rightButton}>

            <Scene
               key='login'
               initial
               component={LoginScreen}
               direction="vertical"
               title='Login'
               hideNavBar />

          </Scene>
        </Scene>
      </Router>
    )
  }
}

NavigationDrawer.js
class NavigationDrawer extends Component {
  render () {
    const state = this.props.navigationState
    const children = state.children
    return (
      <Drawer
        ref='navigation'
        type='displace'
        open={state.open}
        acceptPan={true}
        onOpen={() => NavigationActions.refresh({key: state.key, open: true})}
        onClose={() => NavigationActions.refresh({key: state.key, open: false})}
        content={<DrawerContent />}
        styles={Styles}
        tapToClose
        openDrawerOffset={0.2}
        panCloseMask={0.2}
        negotiatePan={true}
        tweenHandler={(ratio) => ({
          main: { opacity: Math.max(0.54, 1 - ratio) }
        })}
      >
        <DefaultRenderer navigationState={children[0]} onNavigate={this.props.onNavigate} />
      </Drawer>
    )
  }
}

Seeing similar issue, did you ever resolve this?

@denizs Same question, did you find a solution for this?

Nah not really - I discovered the lines in the code which prohibit the dragging but I wasn't able to dig into it deeper as I'm currently pretty busy 😢


Re-arrange changelog file to emphasize breaking changes better

Are you sure that changes to internal and alpha APIs should be the first thing users see when they check what's new?

Are you sure that changes to internal and alpha APIs should be the first thing users see when they check what's new?

@pmconne true, I'll re-order this a bit and make it clear.  The ApplicationType one is important though since some of our samples are making use of it and Agents will need to update accordingly.

@kabentley made a couple changes to the IModelHost.md file to link to the individual sub-classes if you could take a quick look. I'll open a PR into master too.
Also, any reason we don't make ApplicationType public or beta instead of internal?  While in most cases it isn't needed, it's currently required for all Agents to avoid the automatic attempt at usage logging.
Maybe the automatic usage logging is the part that should change instead of making ApplicationType exposed but that'd a larger refactor...


Do not push up main content #question

I am looking to get the overlay panel to pull up, but keep the main content in the same spot. When reading the "Caveats..." is says to set the SetOverlayed or umanoOverlay, but that does not seem to be working for me when I do it in the layout or in the code behind. I am missing something else?
mlayout = (SlidingUpPanelLayout)findViewById(R.id.sliding_layout);
mlayout.setOverlayed(true);

@mountaingoat99 The umanoOverlay attribute does something different than what you want: it controls whether or not the main layout extends below the panel (in collapsed state).
What you probably have is a parallax offset. You'll have to check whether you have the umanoParallaxOffset set or use setParallaxOffset(). Delete those and you should be fine.

@TR4Android Perfect. Just what I needed. Thanks!


[🐛] NullPointerException: android.net.Uri.getLastPathSegment(), from getResponseMap(Utils.java:339)

Description
Crashlytics has reported an issue related to NullPointerException on Utils.java (line 339)
String fileName = uri.getLastPathSegment();
Fatal Exception: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=13002, result=-1, data=Intent { dat=content://com.sec.android.gallery3d.provider/union/image/item/15652 flg=0x1 (has extras) }} to activity {com.x/com.x.MainActivity}:
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.net.Uri.getLastPathSegment()' on a null object reference

How to repeat issue and example
I didn't find this error myself. Testing on my local Android devices always work fine but some portion of our users found errors according to Crashlytics report.
Solution
Crashlytics revealed that the crash is from devices running Android 8.1.0. I have gone through the code and am convinced that there is an exception somewhere in resizeImage() as this method has a big try-catch wrapped around it. So it would return null and cause the crash in the next following line in getResponseMap().
Additional Information

Image Picker version: 3.5.0
React Native version: 0.62.2
Platform: Android
Development Operating System: MacOS
Dev tools: N/A

Having same issue
{"errorCode": "others", "errorMessage": "Attempt to invoke virtual method 'java.lang.String android.net.Uri.getLastPathSegment()' on a null object reference"}


[dattri.func] Re-define Arnoldi algorithm as a projection method

Description

1. Motivation and Context
Originally, Arnoldi algorithm is defined as one of the ihvp method in dattri/func/ihvp.py, but funcitonal-wise, it is closer to a projection method with approximation on the inverse-Hessian. Thus, we move it to dattri/func/projection.py.

2. Summary of the change

Re-name dattri/func/random_projection.py as dattri/func/projection.py
Define a new class of projector named ArnoldiProjector to take care of the Arnoldi algorithm.

3. What tests have been added/updated for the change?

[x] Unit test: Typically, this should be included if you implemented a new function/fixed a bug.

The projector LGTM, so we still need another PR to make this support IFAttributorArnoldi right?

Yes, or do you think it is better to include that in this PR?

The projector LGTM, so we still need another PR to make this support IFAttributorArnoldi right?

Yes, or do you think it is better to include that in this PR?

probably not, I will do this in the next PR.

Closed since commit history is too messy, a new PR will replace this.


[Phcode.dev Bot] Publishing Release v1.3.1 to Extension Store

Thank you for contributing to phcode.dev extension store.
Please track extension/theme publish status by clicking this link.
You may close this issue at any time.

Extension successfully published to store. You can close this issue at any time.


[NDTensors][ITensors][ITensorsGPU] Address issue #1026

Description
Non Base.Vector Array types promote_rules were broken inside of dense.jl. In issue, an error occurred when trying to addtwo CUDA vector based ITensors. Recent PR's fixed similar allowing a CuVector based Dense to be properly constructed but promote_rules accidentally constructed a CuVector{T} where {T} when attempting to promote a Float64 to ComplexF64. In all other locations the eltype was properly determine. This was a known issue for promote_types and a specific Vector fix (promote_rules function) was found in dense.jl
Fixes #(issue)
To fix this problem in general, similartype is used in a type generic dense promote_rules to make sure that the DataT uses the promoted eltype.
Heres how I tested the code
using ITensors, ITensorsGPU, Test
i = Index(2)
A = randomITensor(Float64, i)
B = randomITensor(Float64, i)

cA = cu(A)
cB = cu(B)

C = A + B
cC = cA + cB

@test NDTensors.data(storage(C)) \approx cpu(NDTensors.data(storage(cC)))

Codecov Report

Merging #1075 (3ad00de) into main (76db1d5) will decrease coverage by 25.93%.
The diff coverage is n/a.

:exclamation: Current head 3ad00de differs from pull request most recent head 79c57ce. Consider uploading reports for the commit 79c57ce to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@             Coverage Diff             @@
##             main    #1075       +/-   ##
===========================================
- Coverage   67.81%   41.89%   -25.93%
===========================================
  Files          95       94        -1
  Lines        9999     9944       -55
===========================================
- Hits         6781     4166     -2615
- Misses       3218     5778     +2560

Impacted Files
Coverage Δ

src/adapt.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/mps/adapt.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/mps/projmpo.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/mps/observer.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/physics/autompo/matelem.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/physics/autompo/qnmatelem.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/physics/autompo/opsum_to_mpo.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/physics/autompo/opsum_to_mpo_qn.jl
0.00% <0.00%> (-97.62%)
:arrow_down:

src/physics/autompo/opsum_to_mpo_generic.jl
0.00% <0.00%> (-95.75%)
:arrow_down:

src/mps/mps.jl
0.00% <0.00%> (-90.38%)
:arrow_down:

... and 38 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Finding the mapping of string class labels to integer indices used by a TrainedClassifierModel

Hi folks,
I created a TrainedClassifierModel using a training dataset in which the label column is string-valued. I've noticed that when I apply the TrainedClassifierModel's transform method to a validation dataset, the resulting scored_labels column is integer-valued: presumably those are integer indices for the predicted labels. To produce a human-interpretable result, I'd like to map the scored_labels values back to their corresponding strings.

How can I find the label-to-index mapping that the TrainedClassifierModel has learned? Is it exposed as an attribute?
Suppose that I manually mapped my string-valued labels to consecutive integer indices beginning at zero, then used that integer column as my label column during training. Will MMLSpark adopt my integer-valued labels as its own class indices, or is there a potential for permutation?

If the former is true, then I would know exactly how to map scored_labels indices back to strings.
The latter may be true e.g. if MMLSpark simply assigns indices to labels in the order it encounters them.

Thanks!

we can add a transform to map back the scored labels, but as a workaround for now you can use the index to value transform.
Thank you, Ilya

Thanks again @imatiach-msft! The IndexToString feature transformer in pyspark.ml.feature did the trick for me so I'll close this issue. (Not sure whether you were thinking of adding this as an option for trained models' transform() method; if so, might want to add it to the backlog if that hasn't been done already.)


Handle AddTrip

AddFlightToTrip needs to be implemented to finish this card

Worked for 45 minutes; not sure how to search for a trip that is not owned by the user. May just not be implemented bc API is not connected

@Blarfnip any idea how we might search for these flights?

Finished structure of add trip; worked another 45 minutes.


Fix writing on Upload Files Page

"fastq or fastq.gz (gziped fastq) for sequences. Note that zip files can not be processed” should be: “fastq or fastq.gz (gzipped fastq) for sequences. Note that ‘.zip’
files can not be processed."
So: add another p to "gziped" and add a period at the end of the sentence

Hey @stephanieorch, @josenavas and I are wondering if you want us to add quotes between .zip and a . at the end of each point in the list? Thanks!

Yes for the quotes around .zip and a . at the end of the first point.

Closed by https://github.com/biocore/qiita/pull/2369


Note to self: goroutines

Use channels to limit concurrents

package main

import (
    "fmt"
    "math/rand"
    "time"
)

func main() {
    // create a channel to hold the functions that need to be executed
    funcChan := make(chan func(), 6)

    // define the functions to execute
    func1 := func() {
        fmt.Println("Function 1 started")
        time.Sleep(time.Duration(rand.Intn(3)) * time.Second)
        fmt.Println("Function 1 finished")
    }
    func2 := func() {
        fmt.Println("Function 2 started")
        time.Sleep(time.Duration(rand.Intn(3)) * time.Second)
        fmt.Println("Function 2 finished")
    }
    func3 := func() {
        fmt.Println("Function 3 started")
        time.Sleep(time.Duration(rand.Intn(3)) * time.Second)
        fmt.Println("Function 3 finished")
    }
    func4 := func() {
        fmt.Println("Function 4 started")
        time.Sleep(time.Duration(rand.Intn(3)) * time.Second)
        fmt.Println("Function 4 finished")
    }
    func5 := func() {
        fmt.Println("Function 5 started")
        time.Sleep(time.Duration(rand.Intn(3)) * time.Second)
        fmt.Println("Function 5 finished")
    }
    func6 := func() {
        fmt.Println("Function 6 started")
        time.Sleep(time.Duration(rand.Intn(3)) * time.Second)
        fmt.Println("Function 6 finished")
    }

    // send all the functions to the channel
    funcChan <- func1
    funcChan <- func2
    funcChan <- func3
    funcChan <- func4
    funcChan <- func5
    funcChan <- func6

    // create a worker function that will execute the functions
    numWorkers := 4
    jobs := make(chan func(), 6)
    results := make(chan int, 6)

    worker := func(id int, jobs <-chan func(), results chan<- int) {
        for j := range jobs {
            j() // execute the function
            results <- id
        }
    }

    // create a goroutine for each worker
    for w := 1; w <= numWorkers; w++ {
        go worker(w, jobs, results)
    }

    // loop through the functions in the channel and send them to the workers
    semaphore := make(chan struct{}, numWorkers)

    for i := 0; i < 6; i++ {
        // wait until there is space in the semaphore
        semaphore <- struct{}{}

        // get the next function from the channel
        f := <-funcChan

        // send the function to a worker
        go func() {
            jobs <- f
            <-results // discard the result
            // signal that a worker is free
            <-semaphore
        }()
    }

    // wait for all the workers to finish
    for i := 0; i < 4; i++ {
        <-results
    }
}

sqlite doesn't seem to friendly to multi-threading... closing this one for now, it's to complex for this point in time


Attempt to fix native image test failures by switching from GraalVM to Mandrel

Replaced by https://github.com/DependencyTrack/hyades/pull/711


Property 'update' does not exist on type 'NextAuthResult

Regarding the 'update' callback in ServerSide auth, it keeps returning an error:
Property 'update' does not exist on type 'NextAuthResult

Regarding the 'update' callback in ServerSide auth, it keeps returning an error: Property 'update' does not exist on type 'NextAuthResult

You have to update config files, based on the latest changes. That's probably a typescript error. Check auth.config.ts and auth.ts.


dummy pull request to run unit tests

dummy pull request  to run unit tests

it was a dummy pull request


FillBurn

FillBurn seems to be producing unusual DEMs (see below), with streams burned in to -10,000m. This may or may not be related to #230, but opening a new issue in case its not. I can reproduce the issue here using R.
library(whitebox)
library(terra)
library(sf)

save_dir <- tempdir()

## Import dem and streams from openSTARS package
# devtools::install_github("MiKatt/openSTARS", ref = "dev")

ot<-system.file("extdata", "nc", "elev_ned_30m.tif", package = "openSTARS") %>%
  rast()

crs(ot)<-crs(rast(system.file("extdata", "nc", "landuse_r.tif", package = "openSTARS")))
writeRaster(ot,file.path(save_dir, "toy_dem1.tif"),overwrite=T)

toy_dem<-rast(file.path(save_dir, "toy_dem1.tif"))

# Bring in and process stream vector
system.file("extdata", "nc", "streams.shp", package = "openSTARS") %>%
  vect() %>%
  st_as_sf() %>%
  st_transform(st_crs(toy_dem)) %>%
  vect() %>%
  writeVector(file.path(save_dir, "toy_streams.shp"),overwrite=T)

wbt_fill_burn(
  dem=file.path(save_dir,"toy_dem1.tif"),
  streams=file.path(save_dir,"toy_streams.shp"),
  output = file.path(save_dir, "toy_dem_burned.tif")
)

plot(rast(file.path(save_dir, "toy_dem_burned.tif")))

I cannot exactly point to where the problem is in the code (most likely in the flooding operation), but this occur when one pixel of the rasterized stream network touches a NoData cell on the exterior of the DEM (beyond its extent or linked to it by region growing). In your case, one feature of your stream data goes beyond the extent of the DEM (cat: 42983) and several others are touching the cells on the perimeter of the DEM.
So making sure that your DEM is always at least one pixel larger on all sides than the extent of your vector data should avoid this.

Yes that did resolve the issue. Thank you.


fix: Ensure tools handle parameters passed post-creation correctly

Fixed an issue where multiple RagTool based tools failed to function if parameters were provided after tool creation.
Updated tools to correctly process source file/URL passed by the agent post-creation as per documentation.

Closes #<47>

I accidentaly used main branch on my fork, so i close this PR and open new one: https://github.com/joaomdmoura/crewAI-tools/pull/58


chore(frontend): fix filename typo

I replaced useDeppCompareMemoize.ts with useDeepCompareMemoize.ts

I have read the CLA Document and I hereby sign the CLA


Performance: Improve rendering time of the Page (Discovery)

Feature Description
This needs some discovery for detecting ways to improve the page rendering speed.
From the initial render investigation:
Using React.Profiler it seemed like rendering the DisplayLayer took approximately the same time (or sometimes even less) to render as the FramesLayer. E.g. in one run, the display took 360ms and the frames layer took 480ms.

FramesLayer, however, is not really used until the user interacts with the editor. Perhaps there's a way to optimise this so that we wouldn't need to render the frames all the time. E.g. maybe it would only make sense displaying for the active elements and when the user is hovering/focused on the page?

Additionally, in case of a background image, it seems to always use the fullsize image in the editor, no matter the screen size. Is that purposefully done so?

Related : #8254 -- perhaps we can also use a placeholder for the page when initially rendering to reduce the jumpiness / offer a better user experience.

It would be good to spend some time to investigate what else can be done to reduce the render time of a Page.

Alternatives Considered

Additional Context

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria

Implementation Brief

Discovery
For this discovery, I wanted to focus more on the story-editor in isolation and ignore any other bottlenecks that might be unrelated or more relevant to Wordpress  as can be seen in this Lighthouse audit report.

Lighthouse Report - Nov 11 2021.zip
Test Lab Environment

Network Throttling - Fast 3G
CPU Throttling - None
Disable caching
Incognito session
Development build - ( would be better to use the prod build but some tools for profiling have been stripped to optimize the bundle 🥲)

Test Lab Report
Saving the chrome dev tools performance profile report here to benchmark any future improvements. Profile is in json format and is easily portable and shareable.
perf profile Nov 11 2021.json.zip
To optimize the test lab for the editor, I added a button that when clicked loads the editor instead of starting profiling with page reload to ignore any non-editor related bottlenecks.
The most trouble looks like it's coming from javascript and main thread work as seen in this screenshot.

The  CPU activity bar color codes the different operations running while the editor is starting up:

Grey -  Loading: Making network requests and parsing HTML
Yellow -  Scripting: Parsing, compiling, and running JavaScript code, also includes Garbage Collection (GC)
Purple - Rendering: Style and layout calculations
Green -  Painting: Painting, compositing, resizing and decoding images

One particular cuplrint here is the getImageMetaData function from the color thief library. It runs a lot of times before the page renders and takes a lot of time to execute.

It also causes the browser to repaint everytime it runs as seen in the trace below This is an expensive operation that we should definitely avoid.

Hopefully,  #9550 which is in progress can help here otherwise we might need to look into more strategies to help with this.
We should also find other ways of reducing the time the browser takes for paint and rendering operations.

The screencast below flashes green whenever the browser needs to repaint.  It seems like it does this quite a number of times before the page is fully loaded.

Found this great guide to simplifying and optimizing paint complexity  https://developers.google.com/web/fundamentals/performance/rendering/simplify-paint-complexity-and-reduce-paint-areas and I think some of the strategies here might help with this.
Wasteful rerenders also seem to be slowing the page down. Components seem to be rendering way too frequently. From the profiler screenshot below, there are 21 commits to the DOM even before any user interaction.

This is probably related to the general architecture of the editor where some parents cause some child nodes to rerender unnecessarily. Restructuring the components could help or like Morten suggested bringing in a state management toolset like [Redux toolkit].(https://redux-toolkit.js.org/) to make the react components re render as less frequently as possible.
The profiler also highlights some components which take far more time to render. Optimizing these sluggish components could help reduce the page load time.

Another strategy we can use to improve the page rendering is optimizing loading of assets mostly media. As shown on the screenshot below, even though the assets are loading in parallel , they take some time to request. Maybe caching helps here but I only tested with caching disabled , if not we can load them after the page assets have been loaded and the page has finished rendering.

@Trapsta Thanks for looking into this. (Ping @barklund as well -- requesting for review)
Some additional questions:

Prioritize rendering the DisplayLayer over the FramesLayer in initial load.

Was the check you did for the full FramesLayer? The FramesLayer also includes the Page navigation arrows and the Page Menu. We'd still need to render those all the time but I'm wondering about the Frames of the elements -- these are not needed / visible until the user interacts with the editor, so not displaying the element frames initially might be something we could perhaps benefit from, e.g. displaying the Frame of the element only when actually needed (hovering/when selected/drop-targeting, etc.) -- would that make a difference, or is it only relevant with full FramesLayer?

Optimize the Button , TextDisplay and AnimationContainer components which seem to be slow in the initial render.

Were these specifically the buttons of the Page Menu or the quick-action menu or something else? Were some specific buttons rendering slow, or all?

Did you also have a chance to look into re-rendering a page (more than just the initial load)?

@miina I initially tested without the entire FramesLayer but even after testing with only the page's FrameElements not rendered, I can see a performance gain for both initial rendering and navigating between pages.
Without the FrameElements, page starts rendering at 3200ms and completes rendering earlier.

With the pages FrameElements , page starts rendering at around 4200ms and takes more time to completely render

In regards to the button component, the button that was taking a lot. of time to render was the help center (tips) button.
I have tested navigating between pages apart from the initial rendering but I only tested the impact of the FrameLayer as laid out above.

@Trapsta Thanks for the additional details. Mentioned it in Slack as well but it would be great to have the specific comparison times for rendering a Page with FrameElements vs without (e.g. 500ms vs 300ms). The starting time is great to know as well but would be good to compare the specific times as well.
Could you also write the time in ms that the Help Center button took for rendering as a reference?
Once you add these details create the follow-up issues for this discovery (please assign those to me), we should be able to close this issue.

Sure thing @miina. These are the timings with the network throttled to fast 3G and no cpu throttling. The page is fully  rendered at the 8500ms mark when rendered without the FrameElement and when rendered along with the FrameElement , completes rendering at 9000ms. The Help Center button took 71.3ms although on subsequent runs it seems to take way less so could be a false positive

Follow-up issues:
#9727
#9728
#9729
Note: this discovery was mainly focusing on rendering the Page as part of the initial load of the Page. Additional performance wins can be investigated when looking into the Grid performance issues.

Closing to be followed up in the issues mentioned above and @Trapsta will follow-up the additional questions under those issues.


Size Ratio for exported canvas.

how to set auto height or width to maintain the ratio of the image size instead of fixed width and height?
scanner.extractPaper(image, paperWidth, paperHeight)

This is how I did it.
In jscanify.js...
Change this:
extractPaper(image, resultWidth, resultHeight, cornerPoints) {
To this:
extractPaper(image, maxSize, cornerPoints) {
Then after this:
    let warpedDst = new cv.Mat();
Insert this:
// Calculate "width" and "height" of the quadrilateral
 const widthTop = Math.sqrt(Math.pow(topRightCorner.x - topLeftCorner.x, 2) + Math.pow(topRightCorner.y - topLeftCorner.y, 2));
 const widthBottom = Math.sqrt(Math.pow(bottomRightCorner.x - bottomLeftCorner.x, 2) + Math.pow(bottomRightCorner.y - bottomLeftCorner.y, 2));
 const heightLeft = Math.sqrt(Math.pow(topLeftCorner.x - bottomLeftCorner.x, 2) + Math.pow(topLeftCorner.y - bottomLeftCorner.y, 2));
 const heightRight = Math.sqrt(Math.pow(topRightCorner.x - bottomRightCorner.x, 2) + Math.pow(topRightCorner.y - bottomRightCorner.y, 2));

 // Average the widths and heights to account for potential skew
 const avgWidth = (widthTop + widthBottom) / 2;
 const avgHeight = (heightLeft + heightRight) / 2;

 // Determine aspect ratio
 const aspectRatio = avgWidth / avgHeight;

 // Calculate output dimensions based on aspect ratio and max size
 let resultWidth, resultHeight;
 if (aspectRatio > 1) { // Landscape
   resultWidth = maxSize;
   resultHeight = Math.round(maxSize / aspectRatio);
 } else { // Portrait or square
   resultWidth = Math.round(maxSize * aspectRatio);
   resultHeight = maxSize;
 }

Before this:
    let dsize = new cv.Size(resultWidth, resultHeight);
You would then use scanner.extractPaper(image, maxSize), where maxSize is the largest side of your desired scanned image.

Yep, this solution looks like it might work too. If you want to avoid unnecessary complexity though, you could simply show your users a dialog, asking them "what paper size would you like the scan to be?"

This would be very useful when scanning a variety of papers with unknown size - such as notes a customer gives you as a stack of random paper

Really it would be most useful to me if the image was extracted and returned at its real dimensions. It can be scaled to a different size later as long as the result could be queried for true dimensions.

Adding how you can achieve it since I ended up here in my initial search.
Here is how you determine capture the width & height to use for your ratio:
const img = cv.imread(imageEl);

const contour = scanner.findPaperContour(img);
console.log(contour);

const cornerPoints = scanner.getCornerPoints(contour);
console.log(cornerPoints);

const topWidth = cornerPoints.topRightCorner.x - cornerPoints.topLeftCorner.x;
const bottomWidth = cornerPoints.bottomRightCorner.x - cornerPoints.bottomLeftCorner.x;
const leftHeight = cornerPoints.bottomLeftCorner.y - cornerPoints.topLeftCorner.y;
const rightHeight = cornerPoints.bottomRightCorner.y - cornerPoints.topRightCorner.y;

console.log(topWidth);
console.log(bottomWidth);
console.log(leftHeight);
console.log(rightHeight);

const width = Math.max(topWidth, bottomWidth);
const height = Math.max(leftHeight, rightHeight);

console.log(width);
console.log(height);

const resultCanvas = scanner.extractPaper(imageEl, width, height);

The final width and height is at the ratio to scale

This feature is not easy to implement, and IMO is out of the scope of this library. If you'd like, here's an answer on StackOverflow with a solution using Python. You can get the corner points with the getCornerPoints method and go from there.


Bug fixes

Bugs Fixes:

Fix issue where if internship role is removed from internship task from .JSON file , app will not start
Fix dates like 2023-02-31 being accepted
Added ellipsis if more than 2 tasks need to be displayed on each calendar cell, so no ambiguity for PE
Fix issue where disabled calendar cell will still be highlighted as purple, if it matches today's date
Prevent navigation of calendar before year 0

Shoudl this be a different error message telling them to input a valid date?

If i delete fields within the role in internship task it doesn't add the role in as well, do you mind fixing this too in this PR


[Feature]:adding review/feedback section in add to cart below product detail.

Describe the feature
We can add the review section for each product when the user click on the add to cart button to see and purchase the product he can see the ratings of other

Here I can add review section
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@trishanu-init can you please assign this issue to me?

Dear Contributor @Maheshwari-Love ,
You have been assigned this issue. As you begin working on the assigned issue, please ensure that you follow the contributing guidelines closely. This will help maintain the quality and consistency of the project. If a Pull Request (PR) is not created within 5 days from the issue assignment, the issue will be reassigned. We appreciate your understanding and look forward to your valuable contribution.

@trishanu-init can you please assign this issue to me


Field level group auth returns null when subscribptions are activated

Describe the bug
If having a schema like following:
type MyModel
  @model
  @auth(
    rules: [
      { allow: groups, groups: ["MyGroup"], operations: [read, update] }
      { allow: private, provider: iam, operations: [create, delete, read, update] }
    ]
  ) {
  id: ID!
  file: S3Object! @auth(rules: [{ allow: groups, groups: ["MyGroup"], operations: [read] }])
  createdAt: AWSDateTime
  updatedAt: AWSDateTime
  status: Status!
}

enum ProtectionLevel {
  private
  protected
  public
}

type S3Object {
  protection: ProtectionLevel!
  bucket: String!
  path: String!
  region: String
}

and the generated mutation is as following:
export const updateMyModel = /* GraphQL */ `
  mutation UpdateMyModel(
    $input: UpdateMyModelInput!
    $condition: ModelMyModelConditionInput
  ) {
    updateMyModel(input: $input, condition: $condition) {
      id
      file {
        protection
        bucket
        path
        region
      }
      createdAt
      updatedAt
      status
    }
  }
`;

and as a user who is in group "MyGroup" update for example the status field, the updateModel mutation will return null for the filefield even though it has data in it. A normal get or list will return this field in its output though.
Amplify CLI Version
4.13.4
Expected behavior
I expect it to include the S3Object object in the updated output
Desktop (please complete the following information):

OS: Ubuntu
Node: v13.7.0

Additional notes:
Setting subscriptions: null on the model will fix the issue.

@azatoth this is done to prevent data from reaching to a subscriber who is not authorized to see it. AppSync services does not have capabilities to change the selection set of the subscription and sends the all the fields in the mutation selection set to all the subscribers. To prevent unauthorized users accessing the data through subscription, any field that has field level auth set, is set to null before sending to clients.

Closing this issue should you still have any questions related to this please feel free to comment below.


Mergeback from main

This should fix the current testing dependency problem

This is the wrong way !
Because we'll eventually want to squash-merge #14
So, I'll rebase instead + push that to the PR branch


Providing a 'Kivy Tinkerers' section of documentation.

One way of getting more contributors is to break up the hump of people making the first contribution.   In Kivy, most documentation, except for the wiki, in the code.  I'ld like to add a couple of sections to the main (non-wiki) documentation.  The idea is to let anyone willing to set up a kivy development environment can be 'listed' in the project.   It costs the Kivy team little, and my encourage more contributions.
The idea is to add an 'authors.py' Easter Egg or Vanity Roll.   Authors can be whatever the Kivy core team designates, and Tinkerers can be anyone who bothers to add themselves correctly.  A new person on the EasterEgg would:

Fork the repo.
Download the Kivy Source
Edit kivy/authors.py, adding their name and GitHub handle to authors.py.
Do a 'make html' which may require installing Cython and other tools.
Snap a screenshot of the new html file showing it was built.
Create a pull request with the new kivy/authors.py and using the screenshot in the description.

This gives a reasonable, but not too hard, introduction to working on Kivy.   I would be able to put together a short video walking people through setting up the environment and going through the steps.   Eventually, someone could make an Easter Egg, like a --authors flag, that did something colorful with the names of authors and tinkerers.
How much discussion is appropriate a change of this level on this project?  Should I just make the framework and submit a pull request?

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

This seems like an interesting idea, but I'm not sure I feel strongly about it. The file could just be 'tinkerers' though, rather than authors, I think that would be clearer.
Is this something other projects do?

So projects do this as part of an outreach for more contributors.   Once
people get the development environment set-up, which is usually far more
work than people remember after doing it, then making small changes becomes
much more possible.
Passing around credit rarely costs credit from the main contributors.  The
only downside is that new contributors will put in merge requests for
misspellings, edge cases, and error messages before new functionality.
While these all improve quality, they do place a bit of load in keeping up
with the requests.  The change in quality is gradual, but continuous.
On Fri, Jan 23, 2015 at 2:50 PM, Alexander Taylor<EMAIL_ADDRESS>wrote:

This seems like an interesting idea, but I'm not sure I feel strongly
about it. The file could just be 'tinkerers' though, rather than authors, I
think that would be clearer.
Is this something other projects do?
—
Reply to this email directly or view it on GitHub
https://github.com/kivy/kivy/issues/2875#issuecomment-71280118.

Hm... Having played with the project a bit more, I don't think it would be a good idea to encourage more contributors.   It seems to overwhelm the core and encroach on the 'Imadethis' of the project.

@merriam
You made 20 pr in the last 6 days out of which 16 were merged, as seen on this page https://github.com/merriam.
Looking at the stats here https://github.com/kivy/kivy/pulse

I guess 18 merged pull requests out of 24 in last week could somehow mean we don't care about contributors.


[Pyright] Cannot access member 'X' for type 'None'

Pyright raises 89 errors on master about Cannot access member 'X' for type 'None'. Here is an example in evaluation_loop.py:
                # track outputs for collation
                dl_outputs.append(output)

                # batch done
                if test:
                    self.test_progress_bar.update(1)  # PYRIGHT ERROR
                else:
                    self.val_progress_bar.update(1)  # PYRIGHT ERROR
                    self.main_progress_bar.update(1)  # PYRIGHT ERROR
            outputs.append(dl_outputs)

        eval_results = {}

One way to fix this is to indicate the type of those variables:
self.test_progress_bar: Any = None

Unless you see a more elegant way?

This shall be fixed, may you consider sed a PR?

Not sure I would have time on the short term but I'll keep it on my TODO list.

Hi there, I am interested in solving this bug, can i work on this ?

Hi @Dev-Akash sure, that would be great!

Hi @Dev-Akash how is it going?

Hi @Dev-Akash how is it going? any progress here... :rabbit:

@hadim maybe we can also add this check to CI, does it run on Linux?

You can install it with npm (see website). Sorry I don't have time to do that at the moment.

I'd be happy to take a look at this if no one else is working on it. Let me know.
CC: @Borda

@Dev-Akash still interested in finishing the type check after #2121?

@Dev-Akash still interested in finishing the type check after #2121?

Hi @Borda, sorry for the delayed reply, I was unavailable these days..
And yes i am interested in contributing to it, so let me once again go with the code and surely i will add some pull requests to fix these issues.
I also need help in knowing how can I reproduce the above error ?

@Dev-Akash still interested in finishing the type check after #2121?

Currently not able to contribute in this issue, you can unassign me from this issue.
Thank you !

@uditarora still interested in taking this over? :]

@uditarora still interested in taking this over? :]

Sure, I have some free time over the next week. Let me try and fix more Pyright errors :)
Let me know if you have something specific in mind that I should look at. Else I can pick up some module randomly.

@uditarora how is it going here?

****

@uditarora how is it going here?

I made a little progress earlier but not enough to send a PR, before sadly getting caught up with school-related deadlines. I'm not sure how much I'll be able to contribute for the next month, so please feel free to assign it to someone else in the meanwhile if they're interested :)

As discussed with @Borda, I would suggest improving the typing of all the code base to make static type checking more robust! :)

I think we can close this issue as we have a tracking issue for typing: #5023.


mu: 1.6.11 -> 1.8.0

https://github.com/djcb/mu/blob/release/1.8/NEWS.org
Also includes some cleanup of the dependencies. Guile support was deprecated, so
that is removed as well.
Description of changes

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Applied this patch to the nixpkgs I use for my machines. mu4e still runs as expected (after a re-init because the database schema changed).


Need more Test Scripts

Currently, the overall test coverage for the library is 85%. Here are the files where we have test coverage is less than 100%.

neuralpy\callbacks\train_logger.py: 97%
neuralpy\layers\bilinear.py: 89%
neuralpy\layers\dense.py:76%
neuralpy\layers\flatten.py: 94%
neuralpy\models\model.py: 5%
neuralpy\models\model_helper.py: 97%

We need more test scrips to achieve more test coverage

started working on writing test scripts for model.py

Submitted #76. With this the overall test coverage score is 96%

For this release, we'll not work on any more test scripts


chore(category-geo): lint fixes

Description of changes
Various lint error fixes and formatting fixes

Description of how you validated changes
yarn test passes
Checklist

[x] PR description included
[x] yarn test passes
[x] Tests are changed or added

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #10936 (e11b1fe) into dev (f0eb844) will increase coverage by 0.00%.
The diff coverage is 65.15%.

@@           Coverage Diff           @@
##              dev   #10936   +/-   ##
=======================================
  Coverage   47.32%   47.32%
=======================================
  Files         674      674
  Lines       33212    33208    -4
  Branches     6698     6699    +1
=======================================
  Hits        15716    15716
+ Misses      15812    15808    -4
  Partials     1684     1684

Impacted Files
Coverage Δ

...plify-category-geo/src/provider-controllers/map.ts
50.90% <30.76%> (ø)

...ify-category-geo/src/provider-controllers/index.ts
25.00% <61.90%> (+0.67%)
:arrow_up:

...ategory-geo/src/provider-controllers/placeIndex.ts
56.75% <71.42%> (-1.14%)
:arrow_down:

...geo/src/provider-controllers/geofenceCollection.ts
57.89% <80.00%> (ø)

...-geo/src/service-walkthroughs/removeWalkthrough.ts
100.00% <100.00%> (ø)

...li/src/domain/amplify-usageData/getUsageDataUrl.ts
100.00% <0.00%> (+12.50%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Use internal AWS credential loading as fallback

@balonik this change should enable AWS to fallback to its internal credentials load logic when no static credentials nor web identity is used.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

5 of 6 (83.33%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.05%) to 89.663%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/helper/aws.go
0
1
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.05%

Covered Lines:
5317

Relevant Lines:
5930

💛  - Coveralls

@fjogeleit thanks! I will try it out.


python3Packages.xdis: backport new python magics from upstream

Description of changes
Python 3.11 (the current default for Python 3) has been updated to 3.11.9, breaking the xdis package as it lacks the current file magics at the latest tag/release. This PR backports the file-magics list from upstream, fixing the xdis package on the current python version.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Also probably needs a 24.05 backport


Fix typo in phrase 'an client'

Issue #, if available: N/A
Description of changes: Fix grammatical error in the phrase 'an client'
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you for finding the grammatical error.


Bitcoin Bears Club Collection

Bitcoin Bears Club Collection Added

@MillHaus33 @gamingcx Could you let us know if our collection is good to go?

is already in /btcbearsclub, (but there the numbering is different.) please wait, your collection will be updated soon.

@chrisconfirm Thanks for the reply. I see Bitcoin Bears Club is live on OrdinalsWallet.com. May we merge this commit?
How may we set our golden avatar bear as the cover image? https://ordinalswallet.com/inscription/f74138a2bbd7c3fe517754245c210a0d5962c6ef38d1f6e66a6d1302aeb2ff95i0

@BTCAlchemist sorry i have to check, how do i know if this is your collection?

@chrisconfirm You'll see that @thepantherplus and I are contributors to the original branch at https://github.com/thepantherplus/bitcoin-bears-club

@chrisconfirm The new owner of this collection is @slavkart. They are permitted to make changes to the Bitcoin Bears Club collection details.


fix: webpack config is using undefined variable.

User Story
Given that the repository is checked in the `master` branch,
And there is no changes,
And the dependencies are installed,
When I run `npm run build`,
It should build the project into the `./dist` folder.

Actual output of npm run build
[armando:~/Projects/node-sped-client]$ npm run build                                                                                (master✱)

><EMAIL_ADDRESS>build /Users/armando/Projects/node-sped-client
> webpack --env.production --config config/webpack

/Users/armando/Projects/node-sped-client/config/webpack.js:20
			path: out,
			      ^

ReferenceError: out is not defined
    at module.exports.env (/Users/armando/Projects/node-sped-client/config/webpack.js:20:10)
    at requireConfig (/Users/armando/Projects/node-sped-client/node_modules/webpack/bin/convert-argv.js:102:15)
    at /Users/armando/Projects/node-sped-client/node_modules/webpack/bin/convert-argv.js:109:17
    at Array.forEach (native)
    at module.exports (/Users/armando/Projects/node-sped-client/node_modules/webpack/bin/convert-argv.js:107:15)
    at Object.<anonymous> (/Users/armando/Projects/node-sped-client/node_modules/webpack/bin/webpack.js:153:40)
    at Module._compile (module.js:573:32)
    at Object.Module._extensions..js (module.js:582:10)
    at Module.load (module.js:490:32)
    at tryModuleLoad (module.js:449:12)
    at Function.Module._load (module.js:441:3)
    at Module.runMain (module.js:607:10)
    at run (bootstrap_node.js:382:7)
    at startup (bootstrap_node.js:137:9)
    at bootstrap_node.js:497:3

npm ERR! Darwin 16.4.0
npm ERR! argv "/Users/armando/.nvm/versions/node/v7.0.0/bin/node" "/Users/armando/.nvm/versions/node/v7.0.0/bin/npm" "run" "build"
npm ERR! node v7.0.0
npm ERR! npm  v4.1.2
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>build: `webpack --env.production --config config/webpack`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script 'webpack --env.production --config config/webpack'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the preact-starter package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     webpack --env.production --config config/webpack
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs preact-starter
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls preact-starter
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/armando/Projects/node-sped-client/npm-debug.log

Solution
Since a const dist is defined in https://github.com/lukeed/preact-starter/blob/master/config/webpack.js#L5, we can either change https://github.com/lukeed/preact-starter/blob/master/config/webpack.js#L20 from:
  path: out,

to
  path: dist

or simply rename the const to out.

Thanks! Silly mistake 😄


Not enough free GPus found, aborting.

Hi there, after install ubuntu 18.04 - nvidia, python etc. I'm trying to run python script with cuthon, there's shows up a message that:
Not enough free GPUs found. Aborting. Any solution what I forget to install else to show up cuda devices ?

I'd guess the problem is it's not detecting that your GPUs are free. You can try passing '-l' as an argument for "least used" or increase this threshold to be 0.1 or maybe even higher.
https://github.com/awni/cuthon/blob/master/cuthon.py#L12


Implement support for responseMimeType in Structured Worker

https://ai.google.dev/api/rest/v1beta/GenerationConfig

Optional. Output response mimetype of the generated candidate text. Supported mimetype: text/plain: (default) Text output. application/json: JSON response in the candidates.

This is pretty neat!

🚢  Victory


i have intended the source code to improve readability

🛠 Fixes Issue (Number)

👨💻 Changes proposed

✅ Check List (Check all the applicable boxes)

[ ] My code doesn't break any part of the project (Zero Octave-Javascript-Projects).
[ ] This PR does not contain plagiarized content.
[ ] My Addition/Changes works properly and matches the overall repo pattern.
[ ] The title of my pull request is a short description of the requested changes.

📄 Note to reviewers

📷 Screenshots

Due to the above mentioned reason, I am closing the PR.


Overflow by exponentiating Mu

some elements of Mu in softmax normalization estimation algorithm goes over thousands, which causes overflow after going through exponentiation operation. Need a way to get around this.

Simplest solution is to change dtype of ndarray to handle bigger numbers.
But it would be nice if there's a way to "skip" exponentiation to avoid getting large numbers

Closing this for now(as normalization seems to have solved the issue), but there's a potential for this issue being raised again, if each element in Mu vector gets too large.


scale in failed in community version

Please check the FAQ documentation before raising an issue
The operator give the following error message:
E1016 07:54:50.505234       1 nebula_cluster_controller.go:181] NebulaCluster [e2e-nc-0-133ae97fd4f0d0ca44770b8/e2e-nc-0-cfca5c00e440791c9fe2243] reconcile failed: metad client response code -2016 name <UNSET>

And I find that the metad keeps printing the following error every 5 seconds:
I20231016 09:21:51.784233   117 ListHostsProcessor.cpp:354] List Hosts Failed, error E_LEADER_CHANGED
I20231016 09:21:51.824179   117 ListSpacesProcessor.cpp:17] List spaces failed, error E_LEADER_CHANGED

It may need to be optimized. If the leader changes, try other metad in the future instead of trying the problematic one every time?
After locating, I found that the community version does not support it by default. refs
The cluster scaling function has not been officially released in the community edition. The operations involving SUBMIT JOB BALANCE DATA REMOVE and SUBMIT JOB BALANCE DATA are experimental features in the community edition and the functionality is not stable. Before using it in the community edition, make sure to back up your data first and set enable_experimental_feature and enable_data_balance to true in the Graph configuration file.
So, should the operator prohibit the relevant operations of the community version if the corresponding features are not enabled?

Describe the bug (required)

Your Environments (required)

OS: uname -a
Commit id (e.g. a3ffc7d8)

How To Reproduce(required)
Steps to reproduce the behavior:

Step 1
Step 2
Step 3

Expected behavior

Additional context

Maybe make a judgment on whether balance is enabled via configuration before deciding whether to balance.


fix: Use daemon threads for SolverManager

Before, if a SolverManager creates a Solver, it creates
a non-daemon thread, which can prevent the Python process from
EVER exiting unless forced.
Now, the SolverManager spawns only daemon threads, which allows the
Python process to exit. This also allows us to remove some test
configuration code that was used to force the JVM to exit.
Additionally, SolverManager can take SolverConfig directly and may
take a SolutionManagerConfig too.
Tests were flaky before, since the problem fact change may affect
the input problem if the change was applied before solving was
started.

More importantly - what does the Java solver do? Does it also create deamon threads? If not, then for consistency, neither should the Python solver.

I understand the Python SolverManager::create now configures the thread factory class with DaemonThreadFactory. The new thread factory only creates daemon threads, and this would apply to the Java side.
        java_solver_manager_config = solver_manager_config._to_java_solver_manager_config()  # noqa
        java_solver_manager_config.setThreadFactoryClass(DaemonThreadFactory.class_)

Yes, but I'm asking something else. Forget Python Solver. What's the default behavior of the Java solver, without any fancy configuration? My argument is that the Python solver's default behavior should be exactly the same.

I'm not entirely sure about the daemon threads.
Why should the process terminate if the solver jobs haven't? The jobs are important payload. To me, this doesn't sound like the least surprising behavior.
More importantly - what does the Java solver do? Does it also create deamon threads? If not, then for consistency, neither should the Python solver.

If you control-C the Java solver and don't configure a signal handler, Java terminates without daemon threads.
If you control-C the Python solver, even AFTER solving has finished, and deamon threads are not used, it hangs forever, since Python is waiting for Java to shutdown, but Python holds a reference to SolverManager (and thus its threadpool, which keep threads alive until it is garbage collected, never shutdown).

If you control-C the Python solver, even AFTER solving has finished, and deamon threads are not used, it hangs forever, since Python is waiting for Java to shutdown, but Python holds a reference to SolverManager (and thus its threadpool, which keep threads alive until it is garbage collected, never shutdown).

Which is a problem that should be solved by properly shutting down the executor when no longer needed, no?

If you control-C the Python solver, even AFTER solving has finished, and deamon threads are not used, it hangs forever, since Python is waiting for Java to shutdown, but Python holds a reference to SolverManager (and thus its threadpool, which keep threads alive until it is garbage collected, never shutdown).

Which is a problem that should be solved by properly shutting down the executor when no longer needed, no?

Nope; that was done in tests, and tests also hang and needed specially handling code

In my opinion, the key here is to figure out why does Java terminate in one case, and not in the other. Solving that through daemon threads is IMOM a hack, and not a solution - there will be a root cause there somewhere.

In my opinion, the key here is to figure out why does Java terminate in one case, and not in the other. Solving that through daemon threads is IMOM a hack, and not a solution - there will be a root cause there somewhere.

Because Python hold a reference and a ThreadPoolExecutor keeps it threads alive once spawn, creating a catch-22:

In order for Python to terminate, it needs JVM to shutdown, after which it free globals/locals.
In order for the JVM to shutdown, it needs to have no more references to the Executor, which requires Python to terminate.

And Python cannot shut down the executor and drop the reference? In Java, you'd set the field to null and problem solved.

And Python cannot shut down the executor and drop the reference? In Java, you'd set the field to null and problem solved.

Nope; consider user experience; "Why isn't my program terminating? Why is my test hanging?" That is terrible UX.
This is the code users WANT to write
solver_manger = SolverManager.create(solver_config)

@app.get("/root/solve")
async def solve(timetable: Timetable) :
    solver_manager.solve('ID', timetable, ...)

And users do not want that code to hang on Control-C

I fully agree with that. It just seems logical that a framework that does this (see @app.get) also has some kind of a destructor method that we can hook up into to properly free resources.
Daemon threads are a solution to the problem which we may need to accept, but the real solution would be to somehow free the resources we've taken and allow a clean shutdown on its own.


Connection can be connected, but not able to connect the Internet

Hi! I use your script open an AP on my raspberrypi 3B and my phone can connected it.
But when I use my phone on the website. It cannot use .
I tried to  SSH connection to my raspberrypi using my phone.It succeed .
Also,when I use your script to open AP,It returned to an error code "95" but AP can be connected
Is where I do wrong? please tell me.

You might want to try the new service configuration file (if you use the service) along with the "no-virt" option. then it should work.

Thank you for your busy schedule to see me this is not very good English.
Yes, I modified the file you provided called "create_ap.conf"and used it as a configuration file,and I open no-virt option.But when I came home today and tried to reproduce my mistake again,I failed.
I think yesterday's error may be the interference of the wireless channel.Because when I open AP. Sometimes my computer's wifi will broken.( I used my computer connect wirelessly and share it over a network to my raspiberry)
Thanks for your support . I would also like to ask whether your script can output more detailed error log, so I have this problem again I will tell you in more detail.

Try create_ap --help and check the hostapd verbose output.
Please close this issue, as it has been resolved.


all: Mark Cancun fork as deployed

🗒 Description

Updates:

ethereum_test_forks
ethereum_test_tools, including a yul compiler code cleanup
ethereum_test_tools tests
github workflows
tox update to use Prague as development
vscode recommended files
minor changes to the docs

🔗 Related Issues
None
✅ Checklist

[x] All: Set appropriate labels for the changes.
[x] All: Considered squashing commits to improve commit history.
[x] All: Added an entry to CHANGELOG.md.
[x] All: Considered updating the online docs in the ./docs/ directory.
[x] Tests: All converted JSON/YML tests from ethereum/tests have been added to converted-ethereum-tests.txt.
[x] Tests: Included the type and version of evm t8n tool used to locally execute test cases:  e.g., ref with commit hash or geth 1.13.1-stable-3f40e65.
[ ] Tests: Ran mkdocs serve locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.

LGTM!
Also like the Yul refactor you snuck in 🙂 Just one minor nit.

Yeah, it was necessary I swear 😅
The problem was that the tests were failing without this due to solc not supporting cancun as fork.


Not able to connect to ms-sql container listening on port 1433 on Mac

Issue Type: Bug
I am running a ms-sql container on port 1433 on Mac but not able to connect to it. I use 'localhost' as a server name and SQL Login authentication.
VS Code version: sqlops 0.28.6 (3abbc8fd9713cdf847dcde703402d10a09eaa4ec, 2018-04-24T21:07:51.383Z)
OS version: Darwin x64 15.6.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-4980HQ CPU @ 2.80GHz (8 x 2800)

Load (avg)
3, 3, 2

Memory (System)
16.00GB (0.05GB free)

Process Argv
/Users/asd8a7/Downloads/SQL Operations Studio.app/Contents/MacOS/Electron -psn_0_4076515

Screen Reader
no

VM
0%

Extensions (2)

Extension
Author (truncated)
Version

agent
Mic
0.28.1

server-report
Mic
0.1.1

Reproduces only with extensions

@Awdesh I tried to reproduce this but it connects successfully for me. Could you provide the error message you get when trying to connect? Also, can you confirm whether you can connect from within the container using sqlcmd (https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-docker?view=sql-server-linux-2017#connect-to-sql-server) and from tools that aren't SQL Operations Studio (such as mssql-cli running on your Mac?
Note that if you set up your container by following the exact directions at https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-docker then your instance of SQL Server will be running on port 1401, not port 1433.
You also indicated that it reproduces only with extensions, is that correct?

I use DBeaver and also have a python app that connects to mssql successfully.
I also tried connecting to the hosted SQL server instance but get the same issue.
SQL operation studio doesn't give me any error.Where should I see the error? progress circle keeps spinning endlessly.

I have the same issue. The progress circle keeps spinning endlessly when trying to connect. I have verified connection to the server with mssql-cli from the same machine. How can i help you to reproduce this?
macOS 10.13.5
sqlops 0.30.6
MSSQL 2008 R2 on Windows 2008 R2


Ensure Node.js >= 10 support

Breaking: Increase minimum Node.js version to 10

Remove compatibility patch #29
Test: Update expected source-maps to be Node.js v10+ compatible

~Check in package-lock.json~

~ci: Enable npm cache of node modules~

Related

This is broken out from and mostly similar to #24 except:

Maintain compatibility with node v10 (in interest of debian-buster and ubuntu 20.04 lts distro users)
package-lock.json instead of yarn.lock
Unrelated changes omitted

Depends on

[ ] #34

[x] #33

[x] #27
[x] #26
[x] #25

Hey looks good, but please don't check in a package.lock for the following reasons:

don't want to limit peeps to use npm when installing and get different results when using yarn
package lock makes sense for apps not libraries as in a lib we actually do want to get patch updates of the libs we depend on

People can then lock everything on their app level.

don't want to limit peeps to use npm when installing and get different results when using yarn

It actually doesn't - lockfiles are disregarded when installing from registry/bundle/git and basically only/mostly used for dev/local build/ci.
I think there is a lot of value in reproducibility and auditability in checking in the lockfile.
But in any case: Lifting it out of scope from this PR. So this PR doesn't include the lockfile addition/ci cache anymore. Also just rebased on master.