Uninstall-Module fails while reporting success

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
When using AWS.Tools.Common Powershell notifies me that too many versions of AWS tools are installed.
But AWSPowerShell.NetCore is SO uninstalled. I've uninstalled it dozens of times, and each time "Successfully".
❯ uninstall-module -name AWSPowerShell.NetCore -AllVersions -Force -Verbose
VERBOSE: Performing the operation "Uninstall-Module" on target "Version '<IP_ADDRESS>' of module 'AWSPowerShell.NetCore'".
VERBOSE: Successfully uninstalled the module 'AWSPowerShell.NetCore' from module base 'D:\Documents\PowerShell\Modules\AWSPowerShell.NetCore\<IP_ADDRESS>'.
xgenx@DESKTOP-NU23FHO  ~                                                                                 [11:41]
❯ uninstall-module -name AWSPowerShell.NetCore -AllVersions -Force -Verbose
VERBOSE: Performing the operation "Uninstall-Module" on target "Version '<IP_ADDRESS>' of module 'AWSPowerShell.NetCore'".
VERBOSE: Successfully uninstalled the module 'AWSPowerShell.NetCore' from module base 'D:\Documents\PowerShell\Modules\AWSPowerShell.NetCore\<IP_ADDRESS>'.
xgenx@DESKTOP-NU23FHO  ~                                                                                 [11:41]
❯ Get-Module -Name AWSPowerShell,AWSPowerShell.NetCore,AWS.Tools.Common -ListAvailable

    Directory: C:\Users\xgenx\OneDrive\Documents2\PowerShell\Modules

ModuleType Version    PreRelease Name                                PSEdition ExportedCommands
---------- -------    ---------- ----                                --------- ----------------
Binary     <IP_ADDRESS>              AWS.Tools.Common                    Core,Desk {Clear-AWSHistory, Set-AWSHistoryConfig…
Binary     <IP_ADDRESS>               AWS.Tools.Common                    Core,Desk {Clear-AWSHistory, Set-AWSHistoryConfig…
Binary     <IP_ADDRESS>               AWSPowerShell.NetCore               Desk

Expected behavior
The Powershell notification tells me to run `Get-Module -Name AWSPowerShell,AWSPowerShell.NetCore,AWS.Tools.Common -ListAvailable` to find the multiple installation problem, so I think that means I should only have one item in the result.

❯ Get-AWSCmdletName -Service s3
WARNING: Multiple variants of AWS Tools for PowerShell (AWSPowerShell, AWSPowerShell.NetCore or AWS.Tools) are currently installed. Please run 'Get-Module -Name AWSPowerShell,AWSPowerShell.NetCore,AWS.Tools.Common -ListAvailable' for details. To avoid problems with cmdlet auto-importing, it is suggested to only install one variant.

I would like to not get that notification, by fixing the problem it's notifying about

### Actual behavior

```console
❯ Get-AWSCmdletName -Service s3
WARNING: Multiple variants of AWS Tools for PowerShell (AWSPowerShell, AWSPowerShell.NetCore or AWS.Tools) are currently installed. Please run 'Get-Module -Name AWSPowerShell,AWSPowerShell.NetCore,AWS.Tools.Common -ListAvailable' for details. To avoid problems with cmdlet auto-importing, it is suggested to only install one variant.
❯ Get-Module -Name AWSPowerShell,AWSPowerShell.NetCore,AWS.Tools.Common -ListAvailable

    Directory: C:\Users\xgenx\OneDrive\Documents2\PowerShell\Modules

ModuleType Version    PreRelease Name                                PSEdition ExportedCommands
---------- -------    ---------- ----                                --------- ----------------
Binary     <IP_ADDRESS>              AWS.Tools.Common                    Core,Desk {Clear-AWSHistory, Set-AWSHistoryConfig…
Binary     <IP_ADDRESS>               AWS.Tools.Common                    Core,Desk {Clear-AWSHistory, Set-AWSHistoryConfig…
Binary     <IP_ADDRESS>               AWSPowerShell.NetCore               Desk
❯ uninstall-module -name AWSPowerShell.NetCore -AllVersions -Force -Verbose
VERBOSE: Performing the operation "Uninstall-Module" on target "Version '<IP_ADDRESS>' of module 'AWSPowerShell.NetCore'".
VERBOSE: Successfully uninstalled the module 'AWSPowerShell.NetCore' from module base 'D:\Documents\PowerShell\Modules\AWSPowerShell.NetCore\<IP_ADDRESS>'.
xgenx@DESKTOP-NU23FHO  ~                                                                                 [11:41]
❯ Get-Module -Name AWSPowerShell,AWSPowerShell.NetCore,AWS.Tools.Common -ListAvailable

    Directory: C:\Users\xgenx\OneDrive\Documents2\PowerShell\Modules

ModuleType Version    PreRelease Name                                PSEdition ExportedCommands
---------- -------    ---------- ----                                --------- ----------------
Binary     <IP_ADDRESS>              AWS.Tools.Common                    Core,Desk {Clear-AWSHistory, Set-AWSHistoryConfig…
Binary     <IP_ADDRESS>               AWS.Tools.Common                    Core,Desk {Clear-AWSHistory, Set-AWSHistoryConfig…
Binary     <IP_ADDRESS>               AWSPowerShell.NetCore               Desk
❯ Get-AWSCmdletName -Service s3
WARNING: Multiple variants of AWS Tools for PowerShell (AWSPowerShell, AWSPowerShell.NetCore or AWS.Tools) are currently installed. Please run 'Get-Module -Name AWSPowerShell,AWSPowerShell.NetCore,AWS.Tools.Common -ListAvailable' for details. To avoid problems with cmdlet auto-importing, it is suggested to only install one variant.

Error details
No response
Environment data
❯ $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.1.4
PSEdition                      Core
GitCommitId                    7.1.4
OS                             Microsoft Windows 10.0.19042
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals
No response

So it's not clear to me from the last entry in this issue if it is resolved? Could someone please verify and if so then point me in the direction of the fix please?


scipy.optimize.linprog sometimes ignores restrictions

Here is a weird bug. For some matrices it works just fine, but for some it always does not.
[c = np.array([-1.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.])
A_ub = np.array([[   1., -724.,  911., -551., -555., -896.,  478.,  -80., -293.],
       [   1.,  566.,   42.,  937.,  233.,  883.,  392., -909.,   57.],
       [   1., -208., -894.,  539.,  321.,  532., -924.,  942.,   55.],
       [   1.,  857., -859.,   83.,  462., -265., -971.,  826.,  482.],
       [   1.,  314., -424.,  245., -424.,  194., -443., -104., -429.],
       [   1.,  540.,  679.,  361.,  149., -827.,  876.,  633.,  302.],
       [   0.,   -1.,   -0.,   -0.,   -0.,   -0.,   -0.,   -0.,   -0.],
       [   0.,   -0.,   -1.,   -0.,   -0.,   -0.,   -0.,   -0.,   -0.],
       [   0.,   -0.,   -0.,   -1.,   -0.,   -0.,   -0.,   -0.,   -0.],
       [   0.,   -0.,   -0.,   -0.,   -1.,   -0.,   -0.,   -0.,   -0.],
       [   0.,   -0.,   -0.,   -0.,   -0.,   -1.,   -0.,   -0.,   -0.],
       [   0.,   -0.,   -0.,   -0.,   -0.,   -0.,   -1.,   -0.,   -0.],
       [   0.,   -0.,   -0.,   -0.,   -0.,   -0.,   -0.,   -1.,   -0.],
       [   0.,   -0.,   -0.,   -0.,   -0.,   -0.,   -0.,   -0.,   -1.],
       [   0.,    1.,    0.,    0.,    0.,    0.,    0.,    0.,    0.],
       [   0.,    0.,    1.,    0.,    0.,    0.,    0.,    0.,    0.],
       [   0.,    0.,    0.,    1.,    0.,    0.,    0.,    0.,    0.],
       [   0.,    0.,    0.,    0.,    1.,    0.,    0.,    0.,    0.],
       [   0.,    0.,    0.,    0.,    0.,    1.,    0.,    0.,    0.],
       [   0.,    0.,    0.,    0.,    0.,    0.,    1.,    0.,    0.],
       [   0.,    0.,    0.,    0.,    0.,    0.,    0.,    1.,    0.],
       [   0.,    0.,    0.,    0.,    0.,    0.,    0.,    0.,    1.]])
b_ub = np.array([ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,
                 0., 0.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.])
A_eq = np.array([[ 0.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.]])
b_eq = np.array([[ 1.]])
bounds = [(None, None), (None, None), (None, None), (None, None), (None, None),
         (None, None), (None, None), (None, None), (None, None)]

soln = scipy.optimize.linprog(c, A_ub, b_ub, A_eq, b_eq, bounds)
print(soln)
print(A_ub.dot(soln['x']) <= b_ub)
print(A_ub.dot(soln['x']) - b_ub)
print(abs(A_eq.dot(soln['x']) - b_eq))](url)

outputs
     fun: 39.866871820032244
 message: 'Optimization terminated successfully.'
     nit: 19
   slack: array([   0.   ,    0.   ,    0.   ,    0.   ,  365.161,    0.   ,
          0.   ,    0.   ,    0.   ,    0.   ,    0.167,    0.61 ,
          0.115,    0.518,    1.   ,    1.   ,    1.   ,    1.   ,
          0.833,    0.39 ,    0.885,    0.482])
  status: 0
 success: True
       x: array([-39.812,  -0.281,  -0.625,   0.   ,  -0.031,  -0.125,   0.625,
         0.312,   0.406])
[ True  True False False  True False False False  True False False  True
  True  True  True  True  True  True  True  True  True  True]
[-121.5   -358.812  240.125  121.781 -357.781  350.656    0.281    0.625
    0.       0.031    0.125   -0.625   -0.312   -0.406   -1.281   -1.625
   -1.      -1.031   -1.125   -0.375   -0.688   -0.594]
[[ 0.719]]

From middle part of A_ub that must be clear that solution must satisfy soln['x'][1:] > 0
Am I doing something wrong?
Python 3.6
scipy==0.18.1

This could be related to #5400 or #6690 or something related from those.
Several problems with linprog have been reported. I wrote an interior-point method for linprog which will hopefully be part of scipy soon. In the meantime, check for two things:

Redundancy in your problem. I see your equality constraint matrix has just one row, but sometimes non-full row rank A_eq matrices cause problems. Are some inequality constraints the same as bounds, or the same but tighter/looser? It looks like they are - try expressing your inequality constraints with row singletons as bounds.
Whether Bland's rule fixes your problem. Try:
soln = scipy.optimize.linprog(c, A_ub, b_ub, A_eq, b_eq, bounds,options={"blands":True})python

Using Bland's Rule appears to be a workaround.

Is this a relaxation of a binary integer LP? I see that all your variables are binary except the first.
linprog failing on those is what prompted me to write the interior-point code : )

I used the presolve routine from the interior-point code to simplify the inequality constraints as bounds. linprog solves this version of the problem correctly without Bland's rule.
The similarity with #5400 is that Bland's rule fixes the problem. The difference is that rewriting the constraints as bounds fixes this issue, but not #5400.
Hopefully that will help somebody debug simplex sometime!

@mdhaber thank you for such a detailed response! I tried using bounds to replace trivial constraints, but it failed with Optimization failed. Unable to find a feasible starting point, though I might have messed up something.
As far as I understand, this is not a relaxation of a binary integer LP. This is an LP formulation of Nash equilibrium as a solution of a minmax problem
p, q = argmin_p argmax_q p^T A q

where p and q are from simplexes, equivalently
p = argmin_p argmax_j p^T A [delta(j=k)]_k=0^n
p = argmin_{V, p} V , s.t. V >= p^T A [delta(j=k)]_k=0^n \forall j

where [delta(j=k)]_k=0^n is a binary vector with j'th component equal to one, but p is real valued.
I must have messed up boundary conditions when I tried doing that! Thank you!

@MInner Interesting!
Hmm if you you will still try expressing those inequalities as simple bounds, too, I'd appreciate it. it would be really strange if that fixes the problem on my machine but creates a new problem on yours - but it would be really good to know if that is really the case.
I think it's as simple as eliminating all but the first 6 rows from the A_ub, corresponding elements of b_ub, and setting bounds on all but the first variable to [0, 1], right?

Hm, seems to work now, weird :) Thank you!
import scipy
import scipy.optimize
import numpy as np

c = np.array([-1.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.])
A_ub = np.array([[   1., -724.,  911., -551., -555., -896.,  478.,  -80., -293.],
       [   1.,  566.,   42.,  937.,  233.,  883.,  392., -909.,   57.],
       [   1., -208., -894.,  539.,  321.,  532., -924.,  942.,   55.],
       [   1.,  857., -859.,   83.,  462., -265., -971.,  826.,  482.],
       [   1.,  314., -424.,  245., -424.,  194., -443., -104., -429.],
       [   1.,  540.,  679.,  361.,  149., -827.,  876.,  633.,  302.]])
b_ub = np.array([ 0.,  0.,  0.,  0.,  0.,  0.])
A_eq = np.array([[ 0.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.]])
b_eq = np.array([[ 1.]])
bounds = [(None, None)] + [(0, 1)]*8

soln = scipy.optimize.linprog(c, A_ub, b_ub, A_eq, b_eq, bounds)
print(soln)
print(A_ub.dot(soln['x']) <= b_ub)
print(A_ub.dot(soln['x']) - b_ub)
print(abs(A_eq.dot(soln['x']) - b_eq))

Similar thoughts as in #5400. Maybe we should close these issues and open a new one, as the original issues are no longer present.

I will soon.


Fix the build

uhhh

r? @alexcrichton
(rust_highfive has picked a reviewer for you, use r? to override)

That’s the wrong fix for the issue I believe. Or did we actually land the #[derive(Unkown)] to #[derive_Unknown] sugar already?

@nagisa I'm not sure what derive_Unknown even is, can you elaborate?

Consider it a variable. This week IRC had a heated discussion of desugaring all #[derive(*)] attributes, where * part is unknown to rustc, to #[derive_*].
rand_macros module is supposed to provide derive_Rand attribute, which the test, you modified, tests. Therefore, your PR is only valid given a desugaring scheme like one described above was implemented in rustc while I wasn’t looking.

OK, so apparently we indeed did land such sugar, but currently #[derive(Rand)] would fall back to rustc’s libstd Rand trait, I believe.

Yes I agree with @nagisa in that this may be accidentally deriving the wrong trait, I've committed https://github.com/rust-lang/rand/commit/bfa9558c90268634502b0b50acb93466dfc4d1a8 for now which should fix the build. Thanks though!


Makes creating anonymous servers part of the public API

Almost all of these changes are documentation related aside from changing the access levels from internal to public

@amomchilov In terms of reviewing, let me know if you think there's anything remaining that needs to happen before making anonymous servers public. Your feedback on the documentation is also welcome, but completely fine if you don't review that.


WSL2 not being detected as virtual

Describe the bug
While running this library in a WSL2 environment system.virtual is false.
To Reproduce
Steps to reproduce the behavior:

Install WSL2
Use si.system() and notice the virtual: false

Current Output
system = {"manufacturer":"","model":"","version":"","serial":"","uuid":"","sku":"-","virtual":false}
os = {"platform":"linux","distro":"Ubuntu","release":"20.04.2 LTS","codename":"Focal Fossa","kernel":"<IP_ADDRESS>-microsoft-standard-WSL2","arch":"x64","hostname":"ALEXIS-TOWER","fqdn":"ALEXIS-TOWER.localdomain","codepage":"UTF-8","logofile":"ubuntu","serial":"REDACTED","build":"","servicepack":"","uefi":false}

Checking if kernel ends in WSL2 should be a good enough check for this.

#1 SMP Wed Jun 16 23:47:55 UTC 2021

@OmgImAlexis I improved WSL version detection (better detection of WSL1 and WSL2 based on kernel version). In version, you should now find 2 (as WSL here is redundant). And WSL1 installations will now find 1 here ... just for information


Hebrew translation fix

Q
A

Is bugfix?
yes

New feature?
no

Breaks BC?
no

Tests pass?
?

Fixed issues
?

Thank you!


ros-foxy-librealsense2 build crash

Hi,
I install librealsense2 for ROS2 Foxy by the following command input.
$ sudo apt install ros-foxy-librealsense2
The problem is that it needs realsense2 as a dependency but realsense2 does not support Ubuntu 20.04 focal yet.
Any tips?
Ryan

@JaehyunShim  Did you installed it?


[web-html] Flutter 3.3.9 overflow.ellipsis work error [ListView + gradient + overflow: TextOverflow.ellipsis]

Expected results:

Actual results:

Code sample
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: _MyHomePageState(),
    );
  }
}

class _MyHomePageState extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('widget.title'),
      ),
      body: ListView.separated(
          itemBuilder: (_, i) {
            return Container(
              height: 100,
              alignment: Alignment.center,
              decoration: const BoxDecoration(
                gradient: LinearGradient(
                  colors: <Color>[Colors.white, Color(0xFFcce2ff)],
                  begin: Alignment.topCenter,
                  end: Alignment.bottomCenter,
                ),
                borderRadius: BorderRadius.only(
                    topLeft: Radius.circular(8),
                    topRight: Radius.circular(8),
                    bottomLeft: Radius.circular(16),
                    bottomRight: Radius.circular(16)),
              ),
              child: _cardNameWidget(
                  '手机发链接大家理解打扫了房间了解了第三方打裂缝建立大使级安抚就爱上了对方家里阿三地方了进阿里房间里'),
            );
          },
          separatorBuilder: (_, i) {
            return SizedBox(height: 10);
          },
          itemCount: 30),
    );
  }

  Widget _cardNameWidget(String? nftName) {
    return Text(
      nftName ?? '',
      maxLines: 1,
      overflow: TextOverflow.ellipsis,
      style: TextStyle(
          fontSize: 17, color: Colors.black, fontWeight: FontWeight.w500),
    );
  }
}

Description
I found this the bug by [ ListView  +  gradient + overflow.ellipsis ],
Interestingly，warp up [AnimatedOpacity] work fine!!
exmple:

 Widget _cardNameWidget(String? nftName) {
    return AnimatedOpacity(
      opacity: 1,
      duration: Duration.zero,
      child: Text(
        nftName ?? '',
        maxLines: 1,
        overflow: TextOverflow.ellipsis,
        style: TextStyle(
            fontSize: 17, color: Colors.black, fontWeight: FontWeight.w500),
      ),
    );
  }

Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel unknown, 3.3.9, on Microsoft Windows [版本 10.0.22621.819], locale zh-CN)
    ! Flutter version 3.3.9 on channel unknown at C:\Users\admin\Downloads\flutter_windows_2.10.3-stable\flutter
    ! Upstream repository unknown
[√] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
[√] Chrome - develop for the web
[X] Visual Studio - develop for Windows
    X Visual Studio not installed; this is necessary for Windows development.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components
[√] Android Studio (version 2021.3)
[√] Connected device (4 available)
[!] HTTP Host Availability
    X HTTP host "https://pub.flutter-io.cn" is not reachable. Reason: An error occurred while checking the HTTP host: Failed host lookup: 'pub.flutter-io.cn'

! Doctor found issues in 3 categories.

Hi @anypwx, thanks for filing the issue.
I can reproduce this issue on the latest master 3.6.0 channel with below minimal sample code. There is a difference between canvaskit and html renderer.

html
canvaskit

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

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Scaffold(
        appBar: AppBar(
          title: const Text('widget.title'),
        ),
        body: ListView.separated(
            itemBuilder: (_, i) {
              return const Text(
                  'It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.');
            },
            separatorBuilder: (_, i) {
              return const SizedBox(height: 10);
            },
            itemCount: 30),
      ),
    );
  }
}

You may notice that it's not only the Text item in the list but the Text in AppBar also. And this is a known issue being tracked at #89919. Also, there is also another issue you might wanna follow up: #80103.
Closing this issue as a duplicate, so please follow up on these issues for further updates.

nonono, My meaning is Text overFlow is wrong, please up watch  both tow image

Hi @anypwx, thanks for filing the issue. I can reproduce this issue on the latest master 3.6.0 channel with below minimal sample code. There is a difference between canvaskit and html renderer.
html	canvaskit

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

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Scaffold(
        appBar: AppBar(
          title: const Text('widget.title'),
        ),
        body: ListView.separated(
            itemBuilder: (_, i) {
              return const Text(
                  'It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.');
            },
            separatorBuilder: (_, i) {
              return const SizedBox(height: 10);
            },
            itemCount: 30),
      ),
    );
  }
}

You may notice that it's not only the Text item in the list but the Text in AppBar also. And this is a known issue being tracked at #89919. Also, there is also another issue you might wanna follow up: #80103.
Closing this issue as a duplicate, so please follow up on these issues for further updates.

nonono, My meaning is Text overFlow is wrong, please up watch both tow image

@anypwx Sorry about this, I just noticed your description. I re-open this issue for further discussion.
This issue is reproducible on the stable channel. But it seems to have been fixed on the latest master channel. Please see the demo. (I added more text to verify this)

Demo (stable vs master)

stable
master

Sample code (updated with more text)
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: _MyHomePageState(),
    );
  }
}

class _MyHomePageState extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('widget.title'),
      ),
      body: ListView.separated(
          itemBuilder: (_, i) {
            return Container(
              height: 100,
              alignment: Alignment.center,
              decoration: const BoxDecoration(
                gradient: LinearGradient(
                  colors: <Color>[Colors.white, Color(0xFFcce2ff)],
                  begin: Alignment.topCenter,
                  end: Alignment.bottomCenter,
                ),
                borderRadius: BorderRadius.only(
                    topLeft: Radius.circular(8),
                    topRight: Radius.circular(8),
                    bottomLeft: Radius.circular(16),
                    bottomRight: Radius.circular(16)),
              ),
              child: _cardNameWidget(
                  '手机发链接大家理解打扫了房间了解了第三方打裂缝建立大使级安抚就爱上了对方家里阿三地方了进阿里房间里方家里阿三地方了进阿里房间里'),
            );
          },
          separatorBuilder: (_, i) {
            return SizedBox(height: 10);
          },
          itemCount: 30),
    );
  }

  Widget _cardNameWidget(String? nftName) {
    return Text(
      nftName ?? '',
      maxLines: 1,
      overflow: TextOverflow.ellipsis,
      style: TextStyle(
          fontSize: 17, color: Colors.black, fontWeight: FontWeight.w500),
    );
  }
}

flutter doctor -v (stable and master)
[✓] Flutter (Channel stable, 3.3.9, on macOS 13.0 22A380 darwin-x64, locale en-VN)
    • Flutter version 3.3.9 on channel stable at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision b8f7f1f986 (31 hours ago), 2022-11-23 06:43:51 +0900
    • Engine revision 8f2221fbef
    • Dart version 2.18.5
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

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

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

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

[✓] IntelliJ IDEA Community Edition (version 2022.2.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 70.0.5
    • Dart plugin version 222.4167.21

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.app
    • 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

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

[✓] Connected device (3 available)
    • SM T225 (mobile) • R9JT3004VRJ • android-arm64  • Android 12 (API 31)
    • macOS (desktop)  • macos       • darwin-x64     • macOS 13.0 22A380 darwin-x64
    • Chrome (web)     • chrome      • web-javascript • Google Chrome 107.0.5304.110

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

[!] Flutter (Channel master, 3.6.0-11.0.pre.25, on macOS 13.0.1 22A400 darwin-x64, locale en-VN)
    • Flutter version 3.6.0-11.0.pre.25 on channel master at /Users/huynq/Documents/GitHub/flutter_master
    ! Warning: `flutter` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 31ea315c3c (24 minutes ago), 2022-11-29 18:29:02 -0800
    • Engine revision 25a2ac85f6
    • Dart version 2.19.0 (build 2.19.0-430.0.dev)
    • DevTools version 2.19.0
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

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

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

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

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.app
    • 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

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

[✓] Connected device (3 available)
    • SM T225 (mobile) • R9JT3004VRJ • android-arm64  • Android 12 (API 31)
    • macOS (desktop)  • macos       • darwin-x64     • macOS 13.0.1 22A400 darwin-x64
    • Chrome (web)     • chrome      • web-javascript • Google Chrome 107.0.5304.121

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

Please try running app again on the latest master channel (3.6.0) and confirm if this issue is fixed. Thank you!

@anypwx Sorry about this, I just noticed your description. I re-open this issue for further discussion.
This issue is reproducible on the stable channel. But it seems to have been fixed on the latest master channel. Please see the demo. (I added more text to verify this)
Demo (stable vs master)
Sample code (updated with more text)
flutter doctor -v (stable and master)
Please try running app again on the latest master channel (3.6.0) and confirm if this issue is fixed. Thank you!

yes！！ Thank you!

Can you confirm whether the issue is fixed or not? If it's fixed on the master channel, the issue is safe to close from here. Thanks!

Can you confirm whether the issue is fixed or not? If it's fixed on the master channel, the issue is safe to close from here. Thanks!

Yes!! been confirm


Update Method Name

Fixes the build error

Out of curiosity, where did you see/find in what update the method was updated? I was trying to find that information but I don't play ONI so I didn't really know where to look  🥲

Out of curiosity, where did you see/find in what update the method was updated? I was trying to find that information but I don't play ONI so I didn't really know where to look 🥲

I checked it myself with ILSpy by reverting the game version in steam. First reverted to the last version of Update 50 (U50-587362) by selecting the beta branch in steam. This version uses the old method name. After that I updated to the first release version of Update 51 (U51-596100) by using the download_depot command in the steam console and this version uses the new method name.


FXUI sizing varies on different resolutions/monitors

Depending on monitor, FX controls can become oversized and cramped on UI. E.g.: on an Acer Aspire E15, with a 1920x1080 display, controls become cramped.
Chances are this can be fixed by resizing the FX stage depending on the resolution.

Update: the suggested fix does not work well. Time for more research.


Job failed: 'dict' object is not callable

Initial, manual run of 7.1.3.
It was churning along and then,
2024-06-28 14:26:56.334 Eastern Daylight Time: Job failed after 2:09:01.502360.
Traceback (most recent call last):
  File "REDACTED\find_posts.py", line 1585, in <module>
    add_user_posts(arguments.server, token, filter_known_users(mentioned_users, all_known_users), recently_checked_users, all_known_users, seen_urls, seen_hosts)
  File "REDACTED\find_posts.py", line 281, in filter_known_users
    return list(filter(
TypeError: 'dict' object is not callable

config
"home-timeline-length": 20,
 "max-followings": 20,
 "max-bookmarks": 150,
 "http-timeout": 10,
 "from-notifications": 1,
 "max-favourites": 40,
 "remember-users-for-hours": 24,
 "from-lists": 1,
 "max-list-length": 50,
 "max-list-accounts": 10,
 "max-followers": 80

(redacted file path)
Also, I have a large list. It would be nice to blacklist a particular from running. I know you have a lot on your plate and doing a great job.

huh. how strange is that! I'm pretty sure I haven't touched this in ages 🤔

I have literally no idea what's happening here. The same code is running just fine for me.
Are you sure you are on the latest commit, and haven't modified anything locally?

Oh, I think I got it now. I think this is another symptom of the bug that caused #134
Can you update your clone to the latest commit, and hopefully that’ll fix it.
Let me know please

Ok, done and running. As soon as it completes or fails, I will let you know.

It seems to have fixed that issue. I ran with list options and can confirm that https://github.com/nanos/FediFetcher/commit/e85384a5a64c3f02720112eb576ce9d740767e58  ran without an error and completed.

Great. Thanks for confirming.


Unit modulus constraint of RIS

hi, i debugg the code and have a problem. i observed variable values in the environment.py, and found that diagonal elements of Phi ("Phi" denotes RIS matrix) dissatisfy with unit modulus constraint, i.e., |Phi(n,n)|^2 is not equal to 1.
This seems to mean that the "Normalize the phase matrix" part in DDPG.py doesn't guarantee that  |Phi(n,n)|^2 = 1.
If you have any suggestions, please do not hesitate to advise, thank you!

hello. what values do you get typically?

The values of Psi are presented as follows

For example, the values of Psi are represented as follows :
Psi = diag[ 0.2381 - 0.0633j, -0.0620 + 0.4077j, -0.1322-0.1541j, -0.2746-0.0817j ].

I created a tensor from this array: Phi = torch.tensor([0.2381 - 0.0633j, -0.0620 + 0.4077j, -0.1322-0.1541j, -0.2746-0.0817j])
Then, run the code to compute the phase: torch.sum(torch.abs(Phi_imag)).reshape(-1, 1) * np.sqrt(2)
I've got: tensor([[1.]], device='cuda:0', grad_fn=<MulBackward0>)
Everything works fine. I multiply the norm with np.sqrt(2)because I separately normalize the real and imaginary parts. So, it would be best if you multiplied it with  np.sqrt(2).

I created a tensor from this array: Phi = torch.tensor([0.2381 - 0.0633j, -0.0620 + 0.4077j, -0.1322-0.1541j, -0.2746-0.0817j])
Then, run the code to compute the phase: torch.sum(torch.abs(Phi_imag)).reshape(-1, 1) * np.sqrt(2)
I've got: tensor([[1.]], device='cuda:0', grad_fn=<MulBackward0>)
Everything works fine. I multiply the norm with np.sqrt(2)because I separately normalize the real and imaginary parts. So, it would be best if you multiplied it with np.sqrt(2).

I'm sorry, you didn't say that the sum of the squares of the real and imaginary parts of each original reflector is equal to 1


plan: moving regex engines to regex-automata

In discussions in #524, it became clearer to me that it might be good to say more about what my short/long term plans are for the regex crate.
TL;DR - Push all regex engines down into the regex-automata crate, and bring that in as an internal-but-published dependency of regex as an official part of this repository. It will become a second required dependency (with the first being regex-syntax).
The main motivation for doing this is to clean up the regex internals, specifically with the intent to make it easier to add more optimizations. Currently, the infrastructure is a bit of a hodge podge and it can be quite difficult to know where and when a particular regex engine is being used. On top of that, since every regex engine is strictly internal, testing each engine independently is quite annoying, as it requires exporting undocumented APIs. As a result, bugs have cropped up where certain engines are inconsistent with other engines. Similarly, benchmarking each engine independent of the other is made difficult, which in turn makes it difficult to focus on optimizing certain scenarios that come up in the course of regex execution.
On top of all of this, putting the regex engines into their own crate with a proper API means that folks can use those engines directly. It also provides an outlet of sorts to provide lower level APIs that would I otherwise wouldn't want cluttering up the main regex crate too much. The main thing on my mind here are streaming APIs (see #425), but there may be other things of use.
I've actually been working towards this goal for a long time now. Arguably, i started around 3 years ago when I began rewriting the regex-syntax crate. I then moved to rewriting memchr and aho-corasick as well. In the process, I pushed complexity down as much as I could. For example, the HIR in regex-syntax no longer exposes any regex flags (such as case insensitivity), which makes regex compilers simpler. As another example, aho-corasick now supports leftmost-first matching, which matches the regex crate's match semantics precisely, and now makes it easier to defer to aho-corasick for an alternation of literals. Yet another example is the Teddy algorithm that uses SIMD for finding matches of multiple literals very quickly. That has been pushed down into aho-corasick as well, which means more people get to benefit from it and it no longer needs to be maintained inside of regex proper.
A little over a year ago, I started work on regex-automata. The main use case for regex-automata was to generate fully compiled DFAs that could be cheaply embedded into a program and deserialized cheaply for easy matching. (For example, they power the grapheme, word and sentence iterators in the bstr crate.)
In the course of building regex-automata, I had to write another HIR -> NFA compiler, with the intent that this would one day become the compiler inside the regex crate. It has many improvements over the existing one. Firstly, it is much simpler by doing away with the "instruction hole" mechanism used in the current compiler. Secondly, it is also simpler in that it does away with dichotomy between a Unicode NFA and a byte-based NFA, which has been the cause of many bugs and increases the complexity of the matching engines. Thirdly, by getting rid of the Unicode/bytes dichotomy in favor of just using bytes, we will be able to compile one fewer NFAs than what the regex crate currently does (one Unicode NFA for the Pike VM and the backtracker, 1 forwards byte NFA and 1 backwards byte NFA for the lazy DFA). Fourthly, it is more aggressive about epsilon removal and does away with the binary "alt" instructions in favor of flattening the byte code, which should decrease overhead substantially when matching. Finally, it use's Daciuk's algorithm (the same one used in the fst crate) to compiler nearly minimal UTF-8 automata in linear time, which substantially reduces the size of the corresponding NFAs and DFAs, while also making them faster to execute by virtue of having fewer epsilon transitions.
regex-automata also contains new test infrastructure, and most of the tests in the regex crate have already been ported to it. This test infrastructure should make it much easier to add new tests and also much faster to run while testing more engines. Today's infrastructure is a terrible macro soup, and just building it takes forever because every test is compiled for every regex engine that we test. The new test infrastructure instead loads tests from TOML files and runs them using its own harness. The downside is that this pushes more things outside of Rust's standard unit test harness, but it's well worth it.
As of a couple months ago, I've begun preparing regex-automata to absorb the matching engines from regex proper. This will include the lazy DFA, the Pike VM and the backtracker. regex-automata also provides its own ahead-of-time-compiled DFAs, which I hope to use as yet another engine for cases where the regex is small and full DFA compilation is cheap. This organization should drastically decrease the complexity of adding new regex engines. I hope this will allow me to finally bring in things like one-pass DFA (see #467), as well as some other ideas I've had for years, such as a bit-parallel NFA and even a JIT powered by Cranelift, basically with the goal of fixing one of the weakest parts of the regex crate right now: the performance of matching with capturing groups. (N.B. If a JIT were added, it would be an optional opt-in feature.)
Once regex-automata has absorbed the regex engines inside of regex, my plan at that point is to move regex-automata into this repository and start integrating it into regex proper. At that point, the main responsibility of regex will be to glue everything together, plan the appropriate optimizations, including literal oriented optimizations and provide the higher level API that it does today. At this point in time, I do not plan on making any breaking changes to regex during all of this.
As a stretch goal, one of the things I'd like to do is to bring the cheap deserialization of regex-automata's DFAs to the regex crate proper. This would permit users to generate pre-compiled Regex objects that can be embedded into any program. This would allow one to completely avoid paying for compilation time. This does require a lot of work though, so I don't know if this will happen initially. (Doing this basically implies that every single representation of a finite state machine, including all of the literal prefilters, need to be able to work directly from a more primitive representation such as a &[u8].)
Once this Great Regex Engine Refactor is complete, the result will have been a complete rewrite of the regex crate.

You probably already plan to do something like this, but just in case you have not already planned on it, I think it would be useful for the regex-automata crate to have a set of features that people can use to pull in just a single engine. I'm thinking in particular about situations where people might care more about code size than performance and are happy with just pulling in the PikeVM. It might even be useful to have a separate regex-engine-lite crate that just has the PikeVM so that people who don't know the difference between the different matchers can pull it in.

@ethanpailes Yeah I may consider that. Each engine on its own doesn't usually take up too much code and usually doesn't require any extra dependencies. But sure, chopping it up with features like I did for regex is definitely on the table. I'll probably avoid adding new *-lite crates though.

Still amazed to witness someone as clever and dedicated as you. The programming community would be a sadder place without you. Thank you for you wonderful hard work.

TL;DR - Push all regex engines down into the regex-automata crate, and bring that in as an internal-but-published dependency of regex as an official part of this repository. It will become a second required dependency (with the first being regex-syntax).
[...]
Once this Great Regex Engine Refactor is complete, the result will have been a complete rewrite of the regex crate.

Given that you are pushing regex engines out of the regex crate, shouldn't it be called the Great Regex Engine Pushout Refactor, or GREP-R for short? :wink:
Btw, love your work and the dedication you put into maintaining one of the most important crates in the rust ecosystem! :muscle:

Once regex-automata has absorbed the regex engines inside of regex, my plan at that point is to move regex-automata into this repository

At this point in time, I do not plan on making any breaking changes to regex during all of this.

While this sounds like a great effort for regex and the unification of the two different crates, I'd be curious what this means for users of regex-automata. I'm not particularly concerned about breaking changes itself, but is there any plan to remove functionality in favor of unification?
It seems like the basics of regex-automata are fundamentally required for both regex and regex-automata, with a DFA and transition between states, but I'd like to make sure that usecases like streaming regex parsers are still captured in that new ecosystem. Especially since even regex-automata has that as a secondary usecase since it's rarely desired of course.
Fundamentally it sounds to me like regex-automata users will just benefit from more regex engine choices without any drawbacks, which would obviously be great.

Fundamentally it sounds to me like regex-automata users will just benefit from more regex engine choices without any drawbacks, which would obviously be great.

That's the intent yes. I have no plans to remove functionality from regex-automata. :-)

I have a PR up for phase 1 of 2 of this transition: https://github.com/rust-lang/regex/pull/977
Basically, this PR is preparing for the regex crate to cut over to regex-automata for its internals. That will include bringing regex-automata into this repository. I don't have a specific timeline for when that will happen, but I do want to let this first phase bake for a little bit.


Metapackage: which things to deliver...

Proposal:

Metapackage containing: nb_conda, nb_conda_kernels, nb_anacondacloud, nb_anaconda_theme (nb_config_manager and nbsetuptools are dependencies)

Install private packages with tokens: nb_locker and nb_revisioncontrol

nbpresent/nbbrowserpdf... do we include it the metapackage? If we decide to do that (I would like to), we need to have win32, win64 and linux32 available...

@bollwyvl @stephenakearns @malev @mmarchetti @ijstokes

We decide to ship the first bullet as the metapackage and add nbpresent later when all the win stuff with nbpresent is ready...

This needs the missing packages (linux32 and win64) as a pre-requisite, this is why I added another story point...

PR merged, let's close this one.


Cannot open the Demo page from the README.md

Describe the bug
The demo page specified in the README.md opens GitPages 404 page.
To Reproduce
Steps to reproduce the behavior:

click the link to the Demo page from the README.md

Expected behavior
The Demo page is opened.
Additional context
GitPages 404 page is shown.

Thank you.


fix redirect

Description
Do not automatically handle redirect, pass it to the application.
Issue reference

Please reference the issue this PR will close: #6028
Checklist
Please make sure you've  completed the relevant tasks for this PR, out of the following list:

[ ] Code compiles correctly
[ ] Created/updated tests
[ ] Unit tests passing
[ ] End-to-end tests passing
[ ] Extended the documentation / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Specification has been updated / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Provided sample for the feature / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]

Sure, I'll rebase this commit to 1.10 later.

Branch rebased and release notes added.


[experimental] mage/magnet build

Description

Initial implementation of using magnet to speed up our build process. As discussed at the last team meeting, this is experimental, but probably in a state where the team can try and use it and fix problems as we go.
Type of change

Internal change (not necessarily a bug fix or a new feature)
This change has a user-facing impact

OSS users trying to build gravity themselves.

Linked tickets and other PRs

Requires #

https://github.com/gravitational/gravity.e/pull/4319

TODOs

[ ] Self-review the change
[x] Perform manual testing
[x] Write documentation
[ ] Address review feedback

Implementation

See mage/README.md for most of the notes about trying/using.
Testing done

Tried to run various build scenarios, but obviously not able to cover everything and what other team members are doing. So expect plenty of glitches and issues.
Additional information

Hmmm... think we probably need to update docker on the build server.

I would not worry about this working on CI - like discussed, we'd focus on using this internally for development.

I would not worry about this working on CI - like discussed, we'd focus on using this internally for development.

@a-palchikov The problem is I changed the container image builds to be buildkit based, even for the Makefiles, which is why CI/CD failed. While I suppose I could rollback that one small thing, it's also one small thing that helps out the existing build process.

Ah, I see. And I suppose it would be difficult (if not impossible) to move the changes to environment (or other configuration) in this case. Maybe we can live with some duplicates (eg dockerfiles) and move dockerfile references in the makefile to configuration (environment) so they can be swapped where necessary.

Yea, I think there are sort of 3 options here:

Upgrade docker on the build server. Downside is the additional caching may make our disk space issues worse.
Don't buildkit the images in the short term, the main benefit is being able to use a shared apt-cache and isn't used in too many places, and overall the changes are small.
Use alternative dockerfiles for Magnet that use buildkit, and use the originals for make, requiring devs to keep them in sync.

I don't believe we change dockerfiles ofter in gravity project. Maybe until next time, one needs to change something we already migrate to another build system.

Yea, I think there are sort of 3 options here:
1. Upgrade docker on the build server. Downside is the additional caching may make our disk space issues worse.

/var/lib/docker is on its own 1TB device that we've never filled during my tenure -- at least that I'm aware of.  All the space issues I'm tracking of come from / or /var/lib/jenkins/workspace.  The main thing here is scheduling downtime and figuring out if we want to cowboy an unmanaged docker upgrade or get ansible ship shape first.

2. Don't buildkit the images in the short term, the main benefit is being able to use a shared apt-cache and isn't used in too many places, and overall the changes are small.

:+1: until we can get to #1

3. Use alternative dockerfiles for Magnet that use buildkit, and use the originals for make, requiring devs to keep them in sync.

This seems like a maintenance headache.

Superseded by https://github.com/gravitational/gravity/pull/2485


Proposal: Video Blogs Platform for Content Monetization on Kaia Chain

Description

At present, creators of video blogs and music are not getting paid for their content proportionate to their popularity. Most often, content is given away for free. Youtube, Tiktok, Instagram and Facebook depend on advertisement revenue which is paltry. Netflix and its competitors use a monthly subscription which is not directly proportional to the usage. Many others use pay-per-view models where the consumer goes through a number of steps to make the payment.

We propose tokenization of video blogs, music and other content into NFTs and the usage of smart contracts wherein payments for listening/watching are transferred from the user's wallet to the creator by the execution of the smart contract without any intermediary.
Bounty track

Onchain blogging platform / Payment

nice. Love it. There are some good inspiration on this already. Give me some more details on how you want to approach this

i think audio would be easier rather than video

Thanks for the approval. We have already submitted our Buidl as KaiaMusic and it is available at, https://dorahacks.io/buidl/20222
You can watch youtu.be/NE8qHcJgeRg and short videos are working fine.


itty bitty typo

The sole test failure (UnsupportedOperation: fileno for Python 2.7 on Windows couldn't possibly be related, so I merged this. Thanks for the contribution!


nixos/tests/nix-ssh-serve.nix: Use stable nix

Motivation for this change
Stable Nix supports ssh-ng since 2.x.
Should be backported to 18.09
Things done

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

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

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

@GrahamcOfBorg test nix-ssh-serve

Success on aarch64-linux (full log)
Attempted: tests.nix-ssh-serve
Partial log (click to expand)
server# [   36.466496] systemd[1]: Stopped User Manager for UID 104.
server# [   36.467764] systemd[1]<EMAIL_ADDRESS>Unit not needed anymore. Stopping.
client: exit status 0
test script finished in 37.85s
cleaning up
killing server (pid 631)
killing client (pid 643)
vde_switch: EOF on stdin, cleaning up and exiting
vde_switch: Could not remove ctl dir '/build/vde1.ctl': Directory not empty
/nix/store/vc3qyvd2hlgx8nrc7qx9hngsa5wb5w2k-vm-test-run-nix-ssh-serve

Success on x86_64-linux (full log)
Attempted: tests.nix-ssh-serve
Partial log (click to expand)
server# [   27.140823] systemd[1]<EMAIL_ADDRESS>Unit not needed anymore. Stopping.
server# [   27.160597] systemd[1]: Stopped User Manager for UID 104.
client: exit status 0
test script finished in 29.37s
cleaning up
killing server (pid 597)
killing client (pid 609)
vde_switch: EOF on stdin, cleaning up and exiting
vde_switch: Could not remove ctl dir '/build/vde1.ctl': Directory not empty
/nix/store/z1id9d94rjxdrx4h1ww6i20pv82whmns-vm-test-run-nix-ssh-serve

backported: a54dadb9509


Polymer onAdd without template dom-repeat

Seems that onAdd is only supporting template dom-repeat.  I would like to use it for imperatively adding other custom polymer elements I have created, which as far as I know can't use template dom-repeat.  So instead I have been trying to do like so in onAdd (or adding event listener):
Polymer.dom(e.from).removeChild(e.item);
Polymer.dom(e.to).appendChild(e.item);

This adds to end, but i think could fix that too with:
Polymer.dom(parent).insertBefore(node, beforeNode);

so was thinking could we get this as part of else if not template?  Or maybe someone clue me in on something I am missing?  Thanks.
P.S. Adding on-add listener gets both the event from sortable.js and the sortable.html wrapped event.  Maybe sortable.html should stop the bubbling of sortable.js?

Try dev-branch, perhaps the problem has been solved;
Create example on jsbin.com (draft) and describe the problem.

jsbin does not seem to render custom polymer elements: http://jsbin.com/kabede/5/edit?html,output
For 2.  I have described the problem above and I am proposing a rough idea of the solution as well.  Would need to preserve order is the problem, since append is going to just add to end.  Nothing is changing in Polymer.html in dev branch.
To try and clarify here is my temporary onAdd if this helps.  But i understand seeing a jsbin would clarify this.
Polymer.html snippet:
...
onAdd: function(e) {
if (template) {
var froms = e.from.querySelectorAll("template[is='dom-repeat']")
var from = froms[froms.length-1]
var item = from.items[e.oldIndex]
template.splice("items", e.newIndex, 0, item)
} else {
Polymer.dom(e.from).removeChild(e.item);
Polymer.dom(e.to).appendChild(e.item);
}
this.fire("add", e)
},
...
Also with the this.fire taking the original event and doing a e.stopPropagation() should stop the second firing i think?

I can help you, just in case you make a working example that show the problem.


Proposed LPDM object and workflow

Instead of replicating acrg.footprints_data_merge, could we simplify the workflow?
Proposed workflow
import LPDM # Need a better class name?

mod = LPDM(species="CH4", domain="EUROPE", flux=["ch4_source1", "ch4_source2", "ch4_source3"],
                       bc="CAMS")

for site in sites:
    mod.obs_get(site, average="1H") # Need to be careful about averaging here and/or in fp/data merge step
    mod.obs_footprints_merge(site, model="NAME-UKV", average="1D") # 1D average of combined fp/data dataset

    # Optional
    mod.get_site_met(site, met="ECMWF")

# output some obs
ds = mod.obs_out(site)
mod.obs_plot(site)

# plot some model output
mod.footprint_plot(site)

# predicted mole fraction
mf_mod = mod.model_mf(site, source="ch4_source1")

Proposed LPDM class
class LPDM:

    def __init__(species, domain, flux, bc):
        self.species=species
        self.domain=domain
        etc...

        self.flux=get_flux(species, domain, flux)
        self.bc=get_bc(species, domain, bc)

        # dictionary of obs datasets + footprints?
        self.obs = {}
        self.footprints = {}

    def obs_get(self, site, average=None):
        self.obs["site"]=get_observations(self.species, site)

    def obs_footprints_merge(self.obs, site, etc.):
        obs_resampled, fp_resampled = footprints_data_merge(self.obs, site, kwargs_see_above)
        self.obs["site"] = obs_resampled
        self.footprints["site"] = fp_resampled

    def model_mf(self, site):
        # this is obviously not to be taken literally:
        return self.footprints["site"] * self.flux + self.bc

Rachel will continute to work on this, see merge_scenarion branch.


driver: nrf: uarte: new dirver breaks our implementation for uart.

Describe the bug
We have updated to a newer NCS version. During this process also the zephyr version has changed. This caused our UART implementation to fail.
Relevant implementation snippet:
K_MSGQ_DEFINE(s_rcvd_msgq,
				sizeof(size_t),
				2,
				alignof(size_t));

K_MSGQ_DEFINE(s_snt_msgq,
				sizeof(size_t),
				2,
				alignof(size_t));

static void uart_callback(const struct device *dev,
							struct uart_event *evt,
							void *user_data)
{
	const bool workaround = true;
	switch (evt->type)
	{
		case UART_TX_DONE:
			k_msgq_put(&s_snt_msgq, &(evt->data.tx.len), K_NO_WAIT);
			break;
		case UART_TX_ABORTED: break;
		case UART_RX_RDY:
			k_msgq_put(&s_rcvd_msgq, &(evt->data.rx.len), K_NO_WAIT);
			break;
		case UART_RX_BUF_REQUEST:
		{
				if(workaround)
				{
					static uint8_t dummy = 0;
					uart_rx_buf_rsp(dev, &dummy, sizeof(dummy));
				}
				break;
		}
		case UART_RX_BUF_RELEASED: break;
		case UART_RX_DISABLED: break;
		case UART_RX_STOPPED: break;
	}
}

int impl_rx(const struct device *dev, uint8_t* buf, size_t size, int32_t timeout_ms)
{
	int ret = -1;
	size_t rcvd = 0;

	// make sure queue is empty
	while (0 == k_msgq_get(&s_rcvd_msgq, (void*)&rcvd, K_NO_WAIT)){};

	(void)pm_device_action_run(dev, PM_DEVICE_ACTION_RESUME);
	if (0 == uart_rx_enable(dev, buf, size, SYS_FOREVER_US))
	{
		if (0 == k_msgq_get(&s_rcvd_msgq, (void*)&rcvd, K_MSEC(timeout_ms)))
		{
			ret = rcvd;
		}
		else
		{
			ret = CAP_ERR_TIMEOUT;
		}

		// disable rx so that the device can be put back to PM_DEVICE_ACTION_SUSPEND
		(void)uart_rx_disable(dev);

		(void)pm_device_action_run(dev, PM_DEVICE_ACTION_SUSPEND);
		return ret;
	}
	return -1;
}

The relevant UART KConfig values:
CONFIG_UART_ASYNC_API=y
CONFIG_UART_1_ASYNC=y
CONFIG_UART_1_INTERRUPT_DRIVEN=n

So we try to use the async UART API to implement a synchronous UART API. The problem is now that after we have received the data and have called uart_rx_disable this function actually fails (https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/serial/uart_nrfx_uarte.c#L1006) because the https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/serial/uart_nrfx_uarte.c#L1201 was called and made the buffer NULL. This then prevents the uart_rx_disable function to set https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/serial/uart_nrfx_uarte.c#L1015 and because of that pm_device_action_run runs into the assert https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/serial/uart_nrfx_uarte.c#L1961.
This was not the case for the earlier version of the driver implementation. I'm not sure if it is really appropriate to make the buffer just NULL or rather that it is not possible to put the driver now in the suspend mode unless you give it another buffer. In my snipped I also added our current workaround in the callback.
Expected behavior
A clear and concise description of what you expected to happen.
Impact
An assert is trigged which causes the device to reboot.
Environment (please complete the following information):

OS: MacOS
Toolchain nRF Connect SDK
Commit SHA ba6d9139bbbda3211e0c1f65f4ccca0719f17fa5

@nordic-krch Do you think you can get this fixed for v3.2? If not, please mark it as future in milestone. Thanks.


[Bug]: Providers from aspect_bazel_lib does not work with Bazel 7

What happened?
Bazel 7 added new type of prefix: double-at @@. Now provider should be imported as:
load("@@aspect_bazel_lib//lib:directory_path.bzl", "DirectoryPathInfo")

This causes error when trying to create js_binary target from directory_path
Error in fail: entry_point must be a single file or a target that provides a DirectoryPathInfo
Version
Development (host) and target OS/architectures:
ProductName: macOS
ProductVersion: 14.0
Architecture: Apple Silicon (M2 Max)
Output of bazel --version:
bazel 7.0.0
Version of the Aspect rules, or other relevant rules from your
WORKSPACE or MODULE.bazel file:
bazel_dep(name = "aspect_rules_js", version = "1.34.1")
bazel_dep(name = "aspect_rules_ts", version = "2.1.0")
bazel_dep(name = "aspect_rules_swc", version = "1.1.0")

####### Node.js version #########
bazel_dep(name = "rules_nodejs", version = "5.8.2")
node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node")
node.toolchain(node_version = "16.14.2")

npm = use_extension("@aspect_rules_js//npm:extensions.bzl", "npm", dev_dependency = True)
npm.npm_translate_lock(
    name = "npm",
    pnpm_lock = "//:pnpm-lock.yaml",
    verify_node_modules_ignored = "//:.bazelignore",
)

use_repo(npm, "npm")

Language(s) and/or frameworks involved:
TypeScript
How to reproduce
load("@aspect_rules_js//js:defs.bzl", "js_binary")
load("@aspect_bazel_lib//lib:directory_path.bzl", "directory_path")

directory_path(
    name = "tsc_entrypoint",
    directory = "//:node_modules/typescript/dir",
    path = "bin/tsc",
)

js_binary(
    name = "tsc",
    data = ["//:node_modules/typescript"],
    entry_point = ":tsc_entrypoint",
    node_options = ["--max-old-space-size=4096"],
    visibility = [":__subpackages__"],
)

Any other information?
Real provider of directory_path target from cquery is @@aspect_bazel_lib//lib/private:directory_path.bzl%DirectoryPathInfo:
bazel cquery --output starlark --starlark:expr='providers(target)' //:tsc_entrypoint

INFO: Analyzed target //:tsc_entrypoint (0 packages loaded, 0 targets configured).
INFO: Found 1 target...
{"LicenseInfo": <instance of provider LicenseInfo>, "@@aspect_bazel_lib//lib/private:directory_path.bzl%DirectoryPathInfo": struct(directory = <generated file<EMAIL_ADDRESS>path = "bin/tsc"), "FileProvider": <unknown object com.google.devtools.build.lib.analysis.FileProvider>, "FilesToRunProvider": <unknown object com.google.devtools.build.lib.analysis.FilesToRunProvider>, "OutputGroupInfo": struct(_hidden_top_level_INTERNAL_ = depset([]))}

I don't think this is a rules_js bug. We generate directory_path e.g. https://github.com/aspect-build/rules_js/blob/6aa86cf0aa0e3878b41238056e9ba013781c82c1/npm/private/test/package_json_with_dashes_checked.bzl#L8 and the CI is still green.
I suspect the problem is one of:

you need a newer version of aspect_bazel_lib that had some bzlmod fixes
you don't actually want to put a double @@ in your load statement.

Please comment if that doesn't help and you still think rules_js has a bug!


Change hardcoded CSS link to assembly name in _Host.cshtml

When someone wants to rename a project, linked CSS still has the old name, so it will not work.
To Reproduce
Steps to reproduce the behavior:

Rename (any selected) project using Visual Studio
Open Pages/_Host.cshtml
See old CSS link
(optional) Launch the website and see that the main CSS isn`t work

Expected behavior
CSS link will change on project renaming.
Screenshots

Proposed solution
I propose changing a hardcoded project name to:
<link href="@(typeof(App).Assembly.GetName().Name).styles.css" rel="stylesheet" />

.NET Version
Any.

Issue Details
⚠ Do not edit this section. It is required for issue processing.

Content Source: dotnet/blazor-samples
GitHub Login: @guardrex

Hello @iiKuzmychov ... We won't be able to take this type of change on because these are linked into documents and use a stable set of by-design namespace names that match the app. Devs are supposed to just download, run, and take code bits out of these samples, not really base their own apps directly on these particular apps.

Yes, but person who will copy _Host.cshtml file and change CSS link to mach him own project, also may want to rename his own project in future, so, on my opinion, it's good to show example how to do it properly without problems, aren't it?


Errors are cleared when using v-calendar

Versions

vee-validate: 2.1.0-beta.3+
vue: 2.5.16

Describe the bug
When using v-calendar (https://github.com/nathanreyes/v-calendar) interactions with the calendar (probably the blur event) are cause the errors to be cleared.
To Reproduce
Steps to reproduce the behavior:

Create a form with a vee-validated input and a v-calendar
Make the validated input invalid
See errors in {{ errors.items }}
Open and close v-calendar
See that {{ errors.items }} is an empty array

Expected behavior
errors.items should not be changed in any way when interacting with an unrelated component.
Demo Link
https://jsfiddle.net/zt6av0h9/4/
Desktop (please complete the following information):

OS: Windows 10
Browser: Chrome: 68.0.3440.75
Version: This is reproducible with vee-validate versions 2.1.0-beta.3 and above. 2.0.9, 2.1.0-beta.2 works as exprcted.

Additional context
Attaching a gif, that shows a visual example.

我认为是因为该组件调用了 vue 的 $destroy 方法，然后vee-validate 错误的清楚了相关错误列表

我认为是因为该组件调用了 vue 的 $destroy 方法，然后vee-validate 错误的清除了相关错误列表

大兄弟，我的是因为安装的2.1.0-beta.7版本，替换回2.0.x可解决这个问题，希望可以帮到你

The issue is related to errors.clear incorrectly clearing all fields. should be up in the next release.


How to attach header to request

I apologize in advance if my question is stupid since I am new to Rust coming from a mostly Go background.
I am trying to attach a basic auth header like the following curl command curl -u "api_key:api_token" https://api.voiceit.io/users
extern crate base64;
extern crate hyper;
extern crate hyper_tls;
use base64::encode as base64encode;
use hyper::header::AUTHORIZATION;
use hyper::rt::{self, Future, Stream};
use hyper::{Client, HeaderMap};
use hyper_tls::HttpsConnector;
use std::io::{self, Write};

fn run() {
        rt::run(rt::lazy(|| {
            let mut headers = HeaderMap::new(),
            headers.insert(
                AUTHORIZATION,
                    base64encode(&format!("{}:{}", api_key, api_token))
                        .parse()
                        .unwrap(),
           );

            let https = HttpsConnector::new(4).unwrap();
            let client = Client::builder().build::<_, hyper::Body>(https);

            client
                .get((base_url.to_string() + "users").parse().unwrap())
                .and_then(|res| {
                    println!("Response: {}", res.status());
                    res.into_body()
                        // Body is a stream, so as each chunk arrives...
                        .for_each(|chunk| {
                            io::stdout()
                                .write_all(&chunk)
                                .map_err(|e| panic!("example expects stdout is open, error={}", e))
                        })
                })
                .map_err(|err| {
                    println!("Error: {}", err);
                })

        }))
}

My question is how can I attach the headers HeaderMap object to my client/HTTP GET request. I went over your docs at https://docs.rs/hyper/0.12.25/hyper/struct.HeaderMap.html and I can't find the documentation of how to attach this to an actual request.
Thank you

You can create a Request::default(), and then attach the header via req.headers_mut().insert(name, val), and call client.request(req), instead of using client.get().

If you want, the reqwest library has convenience methods for basic auth, among plenty of other client utilities you may normally expect.

Thanks a bunch (and the plug for reqwest. Unfortunately, the OpenSSL dependency will not work in my situation as I am trying to find a minimal dependency solution).
On that note, another question I have is does hyper-tls also depend on OpenSSL libraries?

@gilgameshskytrooper hyper-tls does, but rustls via hyper-rustls would allow you to side-step the OpenSSL dependency.

O ok. Thanks a bunch.

reqwest uses native-tls by default (which uses openssl on Linux), but it's possible to build reqwest without TLS by setting default-features = false, or also by adding rustls support.

If i need to access a TLS encrypted endpoint, will default-features = false still work in reqwest?
Like i am talking about something like Go's stdlibs http package will handle TLS handshakes and whatnot with native Go code (crypto/x509) without relying on OpenSSL?

Without enabling the rustls-tls feature, but disabling the default, then no TLS code will be built. You could do:
reqwest = { version = "0.9", default-features = false, features = ["rustls-tls"] }

To get something like Go. rustls is a library built on ring, a gradual translation of Google's BoringSSL into Rust.

I see. Thank you


[Feature Request] Improve Log Message Formatting

ConfigurationManager is printing verbose assembly information which can create a log of noise. JwtSecurityTokenHandler does the same.
It creates a lot of noise, not sure if that’s necessary, but maybe it’s there for historical reasons, and do we need this information or a reduced version of it?

Should we display an empty string when correlationId is null?
Microsoft.IdentityModel.S2S.Extensions.AspNetCore.S2SAuthenticationHandler: Debug: e2236faf-227e-4b6f-afcc-a8cd3b5c1540;S2S10002: Entering - Microsoft.IdentityModel.S2S.S2SAuthenticationManager.Task ValidateRequestAsync(string, HttpRequestData, S2SContext) ActivityId: e2236faf-227e-4b6f-afcc-a8cd3b5c1540
Microsoft.IdentityModel.S2S.Extensions.AspNetCore.S2SAuthenticationHandler: Debug: e2236faf-227e-4b6f-afcc-a8cd3b5c1540;S2S10002: Entering - Microsoft.IdentityModel.S2S.JwtAuthenticationHandler.CanValidate(string, HttpRequestData, S2SContext) ActivityId: e2236faf-227e-4b6f-afcc-a8cd3b5c1540
Microsoft.IdentityModel.S2S.Extensions.AspNetCore.S2SAuthenticationHandler: Information: AuthenticationScheme: S2SAuthentication was challenged.
Microsoft.IdentityModel.S2S.Extensions.AspNetCore.S2SAuthenticationHandler: Information: ;IDX14106: Decoding token:
Intent behind adding the semi-colon was to introduce structure to logging. But a line starting with a semi-colon might confuse user who might wonder if some information is missing.


Update Composer dependencies (2024-03-09-00-18)

Visual regression test passed!
View the visual regression test report


Support for arbitrary SQL Statement / idea for streamlined generalized "fast" load support

Since this is supposed to be the Successor of https://github.com/Azure/azure-sqldb-spark, the old connector had the option to use sqlContext.sqlDBQuery(config) to execute arbitrary SQL code. There should be a possibility to migrate from the old to the new connector - and to have this option you need to support aribitaray SQL.
This will also help many other scenarios in migration and speed up in loads - more generic loading scenarios at least. It could cover issues #68 and #46. I posted this idea there already once, but thought it would be worth its own topic.
I think you have this option in your code already because you need to run truncate table or create table, its just not exposed externally - or am I missing something?
I myself have been coding it manually on the old connector with this functionality to bulk load in STAGING tables and was running sqlContext.sqlDBQuery(config) before and after for table creation / partition switching / table removal.
I could envision something like azure data factory has on the COPY Activity - an aribitaray "PRE-COPY-SCRIPT" (https://docs.microsoft.com/en-us/azure/data-factory/tutorial-bulk-copy-portal#create-pipelines) if you do not want to expose something like sqlContext.sqlDBQuery(config).
Adding a PRE/POST COPYSCRIPT would allow for a streamlined "dataframe" interface. And for example using the PRE-COPY-SCRIPT on and empty dataframe could allow arbitrary SQL to be run.
Options like "overwrite" or "truncate: true" would then just be special simple cases of an aribitary pre-copy script.
Whatever options you intend to provided, you cannot cover every usecase, so better give the uses to option to do what they want if they know what the do.
Curious to hear other options.

having the very same issues here.
While TRUNCATE is useful in a lot of scenarios, PRE- or POST- copy scripts would definitely increase the usability of this connector, especially when dealing with more complex scenarios that involve partitioning etc. in the destination table
having the option to execute any arbitrary SQL command via this connector would also solve this issue and allow even more flexible use of the connector - e.g. to start a stored procedure

having the very same issues here.
While TRUNCATE is useful in a lot of scenarios, PRE- or POST- copy scripts would definitely increase the usability of this connector, especially when dealing with more complex scenarios that involve partitioning etc. in the destination table
having the option to execute any arbitrary SQL command via this connector would also solve this issue and allow even more flexible use of the connector - e.g. to start a stored procedure

Arbitrary SQL is out of scope of this connector.  #77 has more information as does #21

Arbitrary SQL is out of scope of this connector.  #77 has more information as does #21


Support dynamic method metric diagnose

Hi everyone, this is a complex feature proposal, based on our performance improvement experience.
Requirement
People want to diagnose and improve performance based on performance test, but the current test reports( JMeter/LoadRunner ) provided are too abstract, and only open service metrics only. People want to more to know what is going on inside application.
And Distributed Tracing, like zipkin, skywalking did, can help you. By using that you need to change codes again and again, some times, you just want to pinpoint the most important method which need to be improved.
Solution
SkyWalking has a very complex agent-collector-UI ecosystem, which provides us a chance to downstream the command to agent, in order to collect certain methods metrics, aggregation at colllector and visualization in UI.
This solution is much eaiser than performance profile, than @ascrutae profile proposal (didn't find the issue, mentioned in other place, maybe? ) , and can really help the end user.

As we already did, I suggest after 5.0.0-RC, we can work on this based on following processes.

Design UI (prototype draft)
Design downstream protocol
Agent: Support dynamic enhance/unenhance, and metrics collect and report
Collector: Aggregation
Visualization in real UI implementation.

This is a very useful feature.  I tried it to improve collector performance,  you can take a look about this issue #1032 for more detail.


unsafe: confusing docs about unsafe.String

Go version
1.22.5 (this is from pkg.go.dev)
Output of go env in your module/workspace:
N/A as I discovered this problem viewing the online docs.

What did you do?
Looked at the documentation for unsafe.String
What did you see happen?
The documentation for unsafe.String states (correctly):

Since Go strings are immutable, the bytes passed to String must not be modified afterwards.

However, it does not state for how long this holds.  Is it sufficient for the bytes to remain valid until there are no more source-level references to the String, or is the actual requirement stricter?
To use a concrete example: Suppose I get a pointer from C’s malloc and use unsafe.String to obtain a string pointing to its contents.  Once I am done with the string I free the pointer with C’s free.  Is this safe?
What did you expect to see?
An answer to this question.

Is it sufficient for the bytes to remain valid until there are no more source-level references to the String

Yes, that is enough.
The tricky part documentation-wise is how to write that. "source-level references" isn't defined anywhere. "until the string goes dead"? Also not defined anywhere.
Suggestions welcome, but I don't see an easy way to specify this without going down a rathole.

Is it sufficient for the bytes to remain valid until there are no more source-level references to the String

Yes, that is enough.

Good to know.  Is it sufficient for the bytes to remain valid until the string is no longer used, or could a this cause a crash?

The tricky part documentation-wise is how to write that. "source-level references" isn't defined anywhere. "until the string goes dead"? Also not defined anywhere. Suggestions welcome, but I don't see an easy way to specify this without going down a rathole.

I think some examples would be best.


[6.0.0+1] location_options.dart 'accuracy' property

🐛 Bug Report
The LocationOptions model defines an 'accuracy' property, which is the property name originally. The equivalent property in the methods in geolocator.dart is expected as 'desiredAccuracy'. This mismatch is causing problems when calling these methods with a predefined LocationOption instance.
LocationOptions model should define 'desiredAccuracy'.
Reproduction steps

@GrahamDi thank you for taking the time to write. However it is not really clear to me why this is a problem (except from not being very consistent)?
The geolocator methods don't allow you to build a LocationOptions instance and theoretically this class can even be made private since it is only used internally. You mention you are calling the geolocation methods with a predefined instance of the LocationOptions class, but the methods really don't accept a LocationOptions class, hence that I don't really understand why this should be a problem. Could you elaborate?

Hi Maurits,
Thanks for the rapid response.
Rightly or wrongly, my code for version 5.3.2+2 looked like the following (code snippet but you can see the definition of the LocationOptions instance and its use in the getPositionStream method. No syntax errors and all working fine.
When upgrading to 6.0.0+1 the new getPositionStream method complained of 0 positional arguments expected but 1 found.
     _locationOptions = LocationOptions(
        accuracy: globals.configFromDatabase.locationAccuracy,
        distanceFilter: globals.configFromDatabase.locationDistance,
        // Checks every 'locationTime' milliseconds.
        timeInterval: globals.configFromDatabase.locationTime,
      );
      var _deviceHasLocationAccess = await checkLocnAccess(
        context,
        calledFrom: CalledFrom.sailorsPage,
      );
      if (_deviceHasLocationAccess) {
        _positionStream = _geolocator
            .getPositionStream(_locationOptions)
            .listen((position) async {

I got around the error by moving the contents of the LocationOptions definition into the getPositionStream method parameters and renaming 'accuracy' to 'desiredAccuracy'.

Hi @GrahamDi,
That is correct indeed, this is one of the breaking changes in the new 6.0.0 API. Instead of passing around the LocationOptions (and initializing it everytime) you can now simply assign the parameters directly to the getPositionStream method. So the method signature changes from:
Stream<Position> getPositionStream([
  LocationOptions locationOptions = const LocationOptions(),
  GeolocationPermission locationPermissionLevel = GeolocationPermission.location,
])

to:
Stream<Position> getPositionStream({
  LocationAccuracy desiredAccuracy = LocationAccuracy.best,
  int distanceFilter = 0,
  bool forceAndroidLocationManager = false,
  int timeInterval = 0,
  Duration timeLimit,
})

So there is also no need to specify a permission level anymore since the plugin will now be able to figure it out by looking at the specified permission in de AndroidManifest.xml (Android) or Info.plist (iOS). Meaning I had to update the signature anyway and decided to do it this way making it more inline with how Flutter in general treats parameters.
Does this answer/ solve your issue?

Thanks Maurits. That makes sense.


correction in Deprecation messages

Deprecation messages #439
deprecation message about agglomerateByRank and mergeFeaturesByRank  corrected
Wrong deprecation message with mergeFeatures is fixed #416
subset functions and trees #443

https://github.com/microbiome/mia/pull/404

Still something ongoing or is this ready?

it's ready!


Enable the new model serialization for resourcemover

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
API changes are not detected in this pull request.


FoundryVTT version 11 support

Would be nice to get this system to run under v11.  Not currently a high priority as most modules don't work in v11 either.

The 3rd attribute bar is broken in v11, looks like the underlying PIXI framework is quite different.

Likely defer serious work on v11 support until Drag Ruler and other modules are v11 compatible.


Call for contributions required for CITS 3DPM

CITS 3DPM is now ready for review and located in the repository CITS-3DPM branch rel/v1.0.0. A call for contributions is required with review period and planned publication dates.
The suggestion is:
Publication of the CfC on the 15th  of July which will be open until the 15th of October. Publication end of October.
Board members acknowledgment of the issue:
Tick the box in front of you name to indicate that you have looked at the suggestion.

[x] Karin Bredenberg (Kommunalförbundet Sydarkivera, chair)
[x] Anders Bo Nielsen (National Archives of Denmark)
[ ] Anja Paulič (National Archives of Slovenia)
[ ] Arne-Kristian Groven (National Archives of Norway)
[x] Gregor Zavrsnik (Geoarh)
[x] Janet Anderson (Highbury Research & Development Ltd.)
[x] Maya Bangerter (Swiss Federal Archives)
[ ] Miguel Ferreira (KEEP Solutions)
[x] Stephen Mackey (Penwern Limited)
[ ] Sven Schlarb (Austrian Institute of Technology)

Voting
(Decision making will be carried out on the basis of majority voting by all eligible members of the Board. In the case of a tied vote, decisions will be made at the discretion of the Chair)
Tick the box in front of you name to say yes to the suggestion.

[x] Karin Bredenberg (Kommunalförbundet Sydarkivera, chair)
[ ] Anders Bo Nielsen (National Archives of Denmark)
[ ] Anja Paulič (National Archives of Slovenia)
[ ] Arne-Kristian Groven (National Archives of Norway)
[x] Gregor Zavrsnik (Geoarh)
[x] Janet Anderson (Highbury Research & Development Ltd.)
[x] Maya Bangerter (Swiss Federal Archives)
[ ] Miguel Ferreira (KEEP Solutions)
[x] Stephen Mackey (Penwern Limited)
[ ] Sven Schlarb (Austrian Institute of Technology)

6 DILCIS Board members have acknowledge the issue
5 DILCIS Board members agree with the solution
The call for comments will be released

Review closed with 2 responses, issues to be raised agaimst comments.


[Bug]: Lyrics not working.

🔍 Have you checked that you are using an auto updating method or latest version of the extension?

[X] I have checked that I am on the latest version.

🔍 Is there already an issue for your problem?

[X] I have checked older issues, open and closed

Choose the extension for bug report.
Save Playlists
ℹ Environment / Computer Info
Spotify para Windows (64 bits)
<IP_ADDRESS>4.g39a25e2c
Spicetify v2.36.14
Theme: marketplace
Extensions: hidePodcasts.js, tracksToEdges.js, playlist-icons.js, imaged-folders.js, playOnYouTube.js, autoSkipVideo.js, bookmark.js, popupLyrics.js, spotifyGenres.js, volumePercentageWrapper.js, fullScreenWrapper.js, adblock.js
Custom apps: marketplace, lyrics-plus, new-releases

📝 Description
Simply lyrics won't show, they show for like 0.5 seconds and then dissapear. Neither fullscreen or TV mode
📸 Screenshots
No response

@Neekodesu check this
https://github.com/daksh2k/Spicetify-stuff/issues/167#issuecomment-2199480598


Testing

written test cases for add command

Make sure you are creating a PR to merge into your repo's main branch.
We will also take these changes into consideration shortly.
Thank you for your contributions :)


Improve publishing workflow

see https://github.com/ministryofjustice/cloud-platform-user-guide/pull/444

fixed

fixed


Head file compilation may not work in production mode

manifest md5ing is skipped if isProduction is set, so long as the .cache file exists.  This is fine for applications with a single head, but doesn't that result in different head fingerprints remaining uncompiled?

static-fingerprint file needs to be renamed to static-fingerprint-{HASH} where HASH is an md5 of the file names only (not the contents).
The FileOrganiser will then know whether the current head is compiled already or not.

This will be changed completely in v3 build system.


Ligo plugin: Change how default-storage is inferred

🌮 Taqueria PR
🪁 Description
We used to consider the first declaration in *.storageList.ext file to be the default storage. This led to users finding themselves unable to do anything useful in the first declaration. See
https://github.com/pinnacle-labs/taqueria/issues/1872 for more context
This PR addresses this issue.
Closes #1872
🪂 Pre-Merge Checklist (Definition of Done)
🚦 Required to merge:

[x] ⛱ I have completed this PR template in full and updated the title appropriately
[x] ⛵ My code builds cleanly, and I have manually tested the changes
[ ] 🏄♂ Another team member has built this branch and done manual testing on the change
[ ] 🏖 New and existing unit tests pass locally and in CI
[ ] 🔱 The test plan has been implemented and verified by an SDET
[ ] 🦀 Automated tests have been written and added to this PR
[ ] 🐬 I have commented my code, particularly in hard-to-understand areas
[ ] 🤿 Corresponding changes have been made to all documentation
[ ] 🐚 Required changes to the VScE have been made
[ ] 🪸 Required updates to scaffolds have been made
[ ] 🚢 The release checklist has been completed

🛩 Summary of Changes
This PR changes how default_storage is inferred. Users have to declare a variable named default_storage to make it a default value during deployments
🎢 Test Plan
Please describe the testing strategy and plan for this PR. Keep this lightweight and anticipate any testing challenges
🛸 Type of Change

[ ] 🧽 Chore ➾
[x] 🛠 Fix ➾
[ ] ✨ Feature ➾
[ ] 👷 Refactor ➾
[ ] 🧪 Pre-Release ➾
[ ] 🚀 Release ➾

@mweichert  when this one will be merged ?


Missing documentation/ How to use

Hi
I am using Snakemake for some months now, previously on a Slurm cluster where I used the slurm executer plugin.
Now I am workin on a LSF cluster and I wanted to adapt my workflow to the new cluster using this plugin. Unfourtunately I find it quite hard to use it, since there is little to no documentation how to use it.
How and where can I define the needed ressources?
Do I have to define the status, commit and cancel commands in the command line or can I also to that in a config file?
Is there anything else I need to specify?

You can use a profile to specify those: https://snakemake.readthedocs.io/en/stable/executing/cli.html#profiles

The documentation of this plugin can be found here: https://snakemake.github.io/snakemake-plugin-catalog/plugins/executor/cluster-generic.html
However, I agree that it is still sparse. Sorry, the transition to Snakemake 8 is quite big and still needs to mature a bit.

Not sure if you resolved your issue @JessicaTiebel, but in case it helps anybody else, here's a simple example for LSF.
We can define resource requirements in the resource directive of a snakemake rule,
rule do_something:
    input:
        "my_input.txt"
    output:
        "my_output.txt",
    resources:
        mem_gb=96,
        walltime="12:00"
    shell:
        "touch {output}"

Then we can reference those resource specifications in the profile,
executor: cluster-generic
cluster-generic-submit-cmd: 'bsub -R "rusage[mem={resources.mem_gb}GB/host] span[hosts=1]" -W {resources.walltime}
jobs: 10

The syntax is somewhat similar to --cluster in snakemake<8.0 (see docs).
The plugin docs say you don't need to specify status, commit, and cancel commands, but you can specify them in the profile if needed.

Hi,
Thank you very much for your answers. I also found the links that @johanneskoester  supplied, but I couldn't really make sense of them. The example @keviny2 provided really helped a lot. It works now. I think I overcomplicated it in my first try.

Could I maybe hijack this issue to try and get help migrating my profile from v7 to v8. I have posted a question on stackoverflow https://stackoverflow.com/questions/78426554/migrating-sge-profile-to-snakemake-8
Previously I was able to specify output and error logs in the cluster.yaml file as follows:
__default__:
    time: "05:00:00"
    mem: 20g
    cpus: 1
    nodes: 1
    output: "{out_dir}logs/cluster/{rule}.{wildcards.sample}.out"
    error: "{out_dir}logs/cluster/{rule}.{wildcards.sample}.err"

Since the cluster.yaml file is no longer supported my solution was:
executor: cluster-generic
cluster-generic-submit-cmd: qsub -V -cwd -l highp,h_data={resources.mem},h_rt={resources.time},nodes={resources.nodes} -pe shared {resources.cpus} -o {resources.output} -e {resources.error}

default-resources:
    mem: 20g
    time: "'05:00:00'"
    cpus: 1
    nodes: 1
    output: "'{out_dir}logs/cluster/{rule}.{wildcards.sample}.out'"
    error: "'{out_dir}logs/cluster/{rule}.{wildcards.sample}.err'"

But the out_dir, rule, and wildcards are not interpolated. Any suggestions how this could be achieved with the plugin?

Would a solution be to redirect stdout and stderr in the shell directive in the Snakefile? For example,
rule my_rule:
    input:
        "some_input.txt"
    output:
        "some_output.txt",
    log:
        stdout="log_file.out",
        stderr="log_file.err",
    shell:
        """
        echo "Hello World" > {output} 1> {log.stdout} 2> {log.stderr}
        """

This is what I usually do and it's working for me so far.

@keviny2 I haven't considered redirecting within each rule. Will require some rewrite, but is a good solution. Thank you!


Removing atscfg as a dependency in traffic_ops_golang

What does this PR (Pull Request) do?

[x] This PR fixes #5301
necessary consts moved into traffic_ops_golang/server/servers_assignment.go
GetConfigFile added to traffic_ops_golang/server/servers_assignment.go and renamed to getConfigFile (isn't used elsewhere in package)

Does not seem to require updating any tests, nor does there seem to be any specific documentation related to this that needs updated.
Will update CHANGELOG if required, there should also be some corresponding documentation surrounding updating the consts that were moved over.
Which Traffic Control components are affected by this PR?

Traffic Ops

What is the best way to verify this PR?
Intentionally break go-atscfg and ensure traffic_ops_golang still builds and performs expected duties
The following criteria are ALL met by this PR

[x] This PR includes tests OR I have explained why tests are unnecessary
[x] This PR includes documentation OR I have explained why documentation is unnecessary
[x] This PR includes an update to CHANGELOG.md OR such an update is not necessary
[x] This PR includes any and all required license headers
[x] This PR DOES NOT FIX A SERIOUS SECURITY VULNERABILITY

atscfg.GetConfigFile() can just be removed now that it's unused.

Done, also marked a few other unused functions and a constant in that file if a breakout issue is desired

atscfg.GetConfigFile() can just be removed now that it's unused.

Done, also marked a few other unused functions and a constant in that file if a breakout issue is desired

If those other functions are not related to this PR, we should leave them untouched.

atscfg.GetConfigFile() can just be removed now that it's unused.

Done, also marked a few other unused functions and a constant in that file if a breakout issue is desired

If those other functions are not related to the issue that this PR fixes, we should leave them untouched.

They have remained unaltered until an issue is created calling for their removal

:+1:  thanks for having me!


ACCUMULO-4591 replication latency metrics added

@noedetore is this metric showing the current maximum time for all active replication across all tables with replication enabled?
Does anyone know of a place where individual metrics are documented? I looked in the user manual and did not see anything.

@keith-turner yes showing the current maximum for given time(10sec, configurable) when snapshot is called to collect metrics

Does anyone know of a place where individual metrics are documented? I looked in the user manual and did not see anything.

I don't think we have this broken out into the user manual. It's very ad-hoc. We could experiment with lifting all of the metrics keys into an interface, creating a description for each, and then automate the addition of these into the user manual like the configuration properties work presently.

This PR can be closed with #305 being merged.

Closing this, as it was superseded by #305


Features and Story graph || input to keras policy

Could you please let me know how are you identifying the features you're passing to keras policy.
I could see story graphs are being created during agent.load_data.
Could you please share live example so that I can tune the parameters and hyperparameters to get the best out of keras lstm model.
Rasa Core version: 0.11.12
Python version: 3.5
Operating system (windows, osx, ...):windows 10

Please ask these kind of questions in our forum


fix fix npe when __internal_schema not created

Proposed changes
Issue Number: close #xxx
Problem summary
Describe your changes.
Checklist(Required)

Does it affect the original behavior:

[ ] Yes
[ ] No
[ ] I don't know

Has unit tests been added:

[ ] Yes
[ ] No
[ ] No Need

Has document been added or modified:

[ ] Yes
[ ] No
[ ] No Need

Does it need to update dependencies:

[ ] Yes
[ ] No

Are there any changes that cannot be rolled back:

[ ] Yes (If Yes, please explain WHY)
[ ] No

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 36.05 seconds
load time: 649 seconds
storage size:<PHONE_NUMBER>6 Bytes
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20221229061841_clickbench_pr_70701.html


Minimize Reboot Test Pod Warnings of PSA

The reboot test pod needs privilage permissions for fetching the node's boot time, and these permissions can be minimized.

/test 4.13-openshift-e2e

/test 4.14-openshift-e2e

/test ?

/lgtm
/hold
giving others chance to review

/lgtm
Giving a chance to get more feedbacks, feel free to unhold
/hold

#68 is going to use the test pod and for stooping Kubelet HostPID:     true should be defined in the spec of the testing pod. Thus I am revering this change.

/lgtm

\unhold

/unhold