SensorX2Car  calib yaw  with Segmentation fault

Environment:  xiaokyan/opencalib:v1  and      scllovewkf/opencalib:v1
Following the readMe to operate ,  and  the program  calculates  roll and pitch  successfully  with  the example lidar data.   The program  break  down  at the line  BSpline bspline_x = BSpline::Builder(sample_x).degree(bspine_degree_).smoothing(BSpline::Smoothing::PSPLINE).alpha(0.03).build(); of  function GetYawSegs.  The debug information  as  followings. Any  reply  is appreciated.
` BSpline bspline_x = BSpline::Builder(sample_x).degree(bspine_degree_).smoothing(BSpline::Smoothing::PSPLINE).alpha(0.03).build();
(gdb) n
Thread 1 "run_lidar2car" received signal SIGSEGV, Segmentation fault.
0x0000000001c298b9 in Eigen::SparseCompressedBase<Eigen::SparseMatrix<double, 0, int> >::InnerIterator::InnerIterator (this=0x7fff49359340, mat=..., outer=0)
at /usr/include/eigen3/Eigen/src/SparseCore/SparseCompressedBase.h:120
120	        m_id = mat.outerIndexPtr()[outer];
`

It may be because the integrated SLAM algorithm(FAST-LOAM) doesn't run well. Could you see the trajectory image in the output folder to check if the x-y trajectory is right ?

It may be because the integrated SLAM algorithm(FAST-LOAM) doesn't run well. Could you see the trajectory image in the output folder to check if the x-y trajectory is right ?

The program break down with the example data  offered in readme.  I  have checked the  x-y trajectory is  right.  It's  same as  trajectory  in demo picture.

Sorry but we haven't met this error before. It looks to be related to the SPLINTER library.
Here is an example provided by the library: https://github.com/bgrimstad/splinter/blob/master/docs/cpp_interface.md
Maybe you can test it first to see if the library works well.

Before  compiling run_lidar2car,  SPLINTER   should be compiled and set .so file to  lib  directory.

Before  compiling run_lidar2car,  SPLINTER   should be compiled and set .so file to  lib  directory.

Yes, splinter is used as a static library and .a file is put in the lib directory. I suggest checking the library because the example data has been tested successfully in the same docker enviroment. Since your trajectory output is right, I suppose nothing wrong with sample_x(build with lidar pose x)  in the error line: BSpline::Builder(sample_x).degree(bspine_degree_).smoothing(BSpline::Smoothing::PSPLINE).alpha(0.03).build();
Then maybe there is problem with the library. To test it, you can just replace the main function in app/run_lidar2car.cpp by the example usage of splinter.

Before compiling run_lidar2car, SPLINTER should be compiled and set .so file to lib directory.

I also encountered the same problem, how did you solve it at that time?

Before compiling run_lidar2car, SPLINTER should be compiled and set .so file to lib directory.

I also encountered the same problem, how did you solve it at that time?

The lib file libsplinter-static-3-0.a was now uploaded. See here. Putting it under lib directory should solve this problem.


⚠ AGEG website (redirect) has degraded performance

In 89fe8df, AGEG website (redirect) (https://ageg.ca/) experienced degraded performance:

HTTP code: 200
Response time: 5237 ms

Resolved: AGEG website (redirect) performance has improved in fe9f6d5.


fix manager the lifecycle of connection context

Proposed changes
In FrontendService, we may create some connection context and set it as a thread local varaible.
These context should be removed from thread local after call.
Otherwise, it may be reused by other thread incorrectly.
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...

run buildall

run buildall

run buildall


count open tasks

i really like the task list addon, it gives a good overview.
It would be very nice if there was a counter which counts the open tasks.

@Dayflare
Thank you for liking this plugin. Task counter is a great idea. I will implement this feature as soon as possible.

@Dayflare
This new feature has been implemented in v0.1.3, welcome to update and experience it. If you encounter any problems during use, please provide feedback.


HiDPI support

I'm using a hidpi screen and lavfi-preview is not hidpi aware (I'm using Windows 10). That means everything is super small. In my own imgui+glfw c++ program, I handle this as follows, feel free to copy and adapt in case you'd like to fix this:
// 1. before opening the glfw window
float highDPIscaleFactor = 1.0;
float xscale, yscale;
glfwGetMonitorContentScale(glfwGetPrimaryMonitor(), &xscale, &yscale);
if (xscale > 1 || yscale > 1) {
    highDPIscaleFactor = xscale;
    glfwWindowHint(GLFW_SCALE_TO_MONITOR, GLFW_TRUE);
}

// 2. after creating imgui context (and before setup Platform/Renderer bindings, but i'm not sure if that's important)
if (highDPIscaleFactor > 1.f) {
    ImGuiStyle& style = ImGui::GetStyle();
    style.ScaleAllSizes(highDPIscaleFactor);
}

This of course does not handle the case of dragging the gui between screens with different dpi, but its something at least.

See https://github.com/pthom/imgui_bundle/issues/7#issuecomment-1296977345 for python code for handling dragging between differen monitors. Same logic would apply in C++ (but be simpler to implement)

And last note: I'm happy to test anything you implement (I have a setup with two screens with different DPI), using the Windows build artefacts.

Added some code to handle this. What about case if window is partially in one monitor and in another monitor?

There is no right solution to that case as far as i am aware. My example
code (that i posted at the link above) determines with which monitor the
window has most overlap and sets the window's scaling to that monitor's.
This seems to be similar to what Microsoft programs here on Windows do.
Will test your new code today or tomorrow.
On Tue, Nov 1, 2022 at 12:25 PM Paul B Mahol @.***>
wrote:

Added some code to handle this. What about case if window is partially in
one monitor and in another monitor?
—
Reply to this email directly, view it on GitHub
https://github.com/richardpl/lavfi-preview/issues/5#issuecomment-1298380820,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AANUOGMDY7BSN6YMBSTK5CTWGD437ANCNFSM6AAAAAARS7CKWQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

Works, stuff is nicely scaled now :)
On Tue, Nov 1, 2022 at 1:21 PM Diederick C. Niehorster @.***>
wrote:

There is no right solution to that case as far as i am aware. My example
code (that i posted at the link above) determines with which monitor the
window has most overlap and sets the window's scaling to that monitor's.
This seems to be similar to what Microsoft programs here on Windows do.
Will test your new code today or tomorrow.
On Tue, Nov 1, 2022 at 12:25 PM Paul B Mahol @.***>
wrote:

Added some code to handle this. What about case if window is partially in
one monitor and in another monitor?
—
Reply to this email directly, view it on GitHub
https://github.com/richardpl/lavfi-preview/issues/5#issuecomment-1298380820,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AANUOGMDY7BSN6YMBSTK5CTWGD437ANCNFSM6AAAAAARS7CKWQ
.
You are receiving this because you authored the thread.Message ID:
@.***>


Added support for range

Thanks for the PR, but I'm looking into leveraging the sirv package to handle these advanced usecases.


H264 video codec is not available in SDP

Have figure out that SDP dont contain the H264 video codec when I am building with latest source code,Google forums are saying that we have to rebuild with use_objc_h264=1, Please let me know how can i rebuild the libraries with H264 support.

I was able to download the webrtc source code and build the lib with H264 enabled.
Hence closing the issue.


Pub crashes on install

This issue was originally filed by<EMAIL_ADDRESS>
What steps will reproduce the problem?

Use attached pubspec.yaml file
Run pub install command.
It crashes.

What is the expected output? What do you see instead?
It should install required packages. But it crash.
What version of the product are you using? On what operating system?
Dart SDK version <IP_ADDRESS>_r22416 on Windows 8
Please provide any additional information below.
Please find attached bug_log.txt

Attachments:
pubspec.yaml (167 Bytes)
bug_log.txt (40.75 KB)

This issue has been moved to dart-lang/pub#544.


change OCW redirect response to 301 instead of 302

Description
In https://github.com/mitodl/ol-infrastructure/pull/867, reroute_redirects.vcl was added to configure redirects for OCW.  The status code of the redirects was set to 302, which is a temporary redirect.  This PR sets them to 301, making the redirects permanent.
Motivation and Context
Since the launch of the new OCW site, the Google search rankings have gone down significantly and we are making efforts to correct that.  Some of those include defining a proper sitemap index and making sure meta descriptions are set for every page.  One of the biggest remaining categories of errors / unindexed pages are redirect issues.  According to this page, Google interprets 302 redirects as a "weak" signal that the target page should be canonical.  In order for the Google indexer to get a "strong" signal that the target of the redirect is canonical, the redirect needs to be 301; permanent.
How Has This Been Tested?
There isn't really a way to test this, we need to set it up in Fastly and configure the redirects to be 301 and watch Google over time and see if starts considering the redirect targets as canonical.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Enhancement (improves on existing behavior)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project. (Did you install and run the pre-commit hooks?)
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

Let me know when this is deployed to QA. I'd like to help with testing.

This is deployed on QA now


Key Vault and Storage account subscriptions

Hi,
There are two statements in different sections for customer-managed keys:
" The storage account and the key vault must be in the same region, but they can be in different subscriptions."
"The key vault must be located in the same subscription as the storage account. "
Aren't those conflicting or are we talking about different key vaults?
Thanks,
Canan

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

ID: e7e05a67-3121-bbc2-7a46-637199104ea3
Version Independent ID: 2802344c-0571-bdac-4755-580f75f404b0
Content: Azure Storage encryption for data at rest
Content Source: articles/storage/common/storage-service-encryption.md
Service: storage
Sub-service: common
GitHub Login: @tamram
Microsoft Alias: tamram

@cananac Thanks for the comment. We are actively investigating on the issue and will get back to you shortly with an update.

@cananac - Thanks for pointing out this discrepancy. The key vault and storage account must be in the same region and the same Azure AD tenant. They can be in different subscriptions.
I've updated the doc to clarify this, and the changes should go live within the next day.
#please-close


Dragging a list that is currently handling an animateTo animation throws exception

Steps to Reproduce
The end goal is to create a scrolling list that automatically "snaps" to a given location based on the actual scroll position at which the user stops scrolling. This may not be the best solution (I'm new to Flutter), but here's the process by which I get the crash:
Wrap a ListView within a NotificationListener. Upon receiving a UserScrollNotification with ScrollDirection.idle, call the ScrollController's animateTo() method to scroll to another location (in the example here, I arbitrarily scroll to 10000.0 pixels).
Sample code
import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      title: 'Scroller issue',
      home: new MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  final _controller = new ScrollController();

  bool _didGetNotification(ScrollNotification notification) {
    if (notification is UserScrollNotification) {
      if (notification.direction.toString() == "ScrollDirection.idle") {
        // We've stopped scrolling... now animate automatically to the 10000-pixel spot
        _controller.animateTo(10000.0, duration: const Duration(seconds: 2), curve: Curves.elasticOut);

        /* Above works great... unless the user tries to interact with the list WHILE it's
        // animating. In this case, you end up with:
        **********************************************************************************
        Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart':
          Failed assertion: line 472 pos 12: '_hold == null || _drag == null': is not true.
        ********************************************************************************** */
      }
    }
    return true;
  }

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      body: new NotificationListener(
        onNotification: _didGetNotification,
        child: new ListView.builder(
          padding: new EdgeInsets.all(8.0),
          controller: _controller,
          itemExtent: 60.0,
          itemBuilder: (BuildContext context, int index) {
            return new Text('Item No. $index');
          },
        ),
      ),
    );
  }
}

It works great as long as the user only interacts with the ListView when it is idle, but if the user attempts to scroll/drag/touch the list during the animateTo() process, the following exception is raised within the Flutter Scrollable package:
'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 472 pos 12: '_hold == null || _drag == null': is not true.

After this, the ListView becomes unresponsive.
I'm sure there's a better way to achieve what I'm trying to do, but the platform itself doesn't seem to recover from this. Figured I'd make a note of it.
Thanks!
Logs
Run your application with flutter run and attach all the log output.
    CADisplay.name = LCD;
    CADisplay.deviceName = PurpleMain;
    CADisplay.seed = 1;
    tags = 0;
    currentMode = <FBSDisplayMode: 0x604000097430; 375x667@2x (750x1334/2) 60Hz sRGB SDR>;
    safeOverscanRatio = {0.89999997615814209, 0.89999997615814209};
    nativeCenter = {375, 667};
    pixelSize = {750, 1334};
    bounds = {{0, 0}, {375, 667}};
    CADisplay = <CADisplay:LCD PurpleMain>;
}
Syncing files to device iPhone 6s...                  1.9s

🔥  To hot reload your app on the fly, press "r". To restart the app entirely, press "R".
An Observatory debugger and profiler on iPhone 6s is available at: http://<IP_ADDRESS>:8100/
For a more detailed help message, press "h". To quit, press "q".
══╡ EXCEPTION CAUGHT BY GESTURE ╞═══════════════════════════════════════════════════════════════════
The following assertion was thrown while handling a gesture:
'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 467 pos 12: '_hold == null':
is not true.

Either the assertion indicates an error in the framework itself, or we should provide substantially
more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new

When the exception was thrown, this was the stack:
#2      ScrollableState._handleDragStart (package:flutter/src/widgets/scrollable.dart:467:12)
#3      DragGestureRecognizer.acceptGesture.<anonymous closure> (package:flutter/src/gestures/monodrag.dart:169:54)
#4      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:102:24)
#5      DragGestureRecognizer.acceptGesture (package:flutter/src/gestures/monodrag.dart:169:9)
#6      GestureArenaManager._resolveByDefault (package:flutter/src/gestures/arena.dart:250:25)
#7      GestureArenaManager._tryToResolveArena.<anonymous closure> (package:flutter/src/gestures/arena.dart:231:31)
(elided 4 frames from class _AssertionError and package dart:async)

Handler: onStart
Recognizer:
VerticalDragGestureRecognizer#6eafd
════════════════════════════════════════════════════════════════════════════════════════════════════
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 472 pos 12: '_hold == null || _drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 472 pos 12: '_hold == null || _drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 472 pos 12: '_hold == null || _drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 472 pos 12: '_hold == null || _drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 472 pos 12: '_hold == null || _drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 472 pos 12: '_hold == null || _drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 478 pos 12: '_hold == null || _drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 455 pos 12: '_drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 464 pos 12: '_drag == null': is not true.
Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 478 pos 12: '_hold == null || _drag == null': is not true.

Run flutter analyze and attach any output of that command also.
Analyzing /Users/mfahy/Apps/list_view_attempts...
No issues found!
Ran in 6.5s

Flutter Doctor
[  +21 ms] [/Users/mfahy/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +36 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/alpha
[        ] [/Users/mfahy/flutter/] git rev-parse --abbrev-ref HEAD
[   +7 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] alpha
[        ] [/Users/mfahy/flutter/] git ls-remote --get-url origin
[   +9 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[        ] [/Users/mfahy/flutter/] git log -n 1 --pretty=format:%H
[  +28 ms] Exit code 0 from: git log -n 1 --pretty=format:%H
[        ] 2e449f06f0a3be076e336ad6b30b0e9ec99dbdfe
[        ] [/Users/mfahy/flutter/] git log -n 1 --pretty=format:%ar
[  +10 ms] Exit code 0 from: git log -n 1 --pretty=format:%ar
[        ] 5 days ago
[        ] [/Users/mfahy/flutter/] git describe --match v*.*.* --first-parent --long --tags
[  +44 ms] Exit code 0 from: git describe --match v*.*.* --first-parent --long --tags
[        ] v0.0.21-0-g2e449f06f
[ +473 ms] /usr/bin/defaults read /Applications/Android Studio.app/Contents/Info CFBundleShortVersionString
[+1263 ms] Exit code 0 from: /usr/bin/defaults read /Applications/Android Studio.app/Contents/Info CFBundleShortVersionString
[        ] 3.0
[ +452 ms] [✓] Flutter (on Mac OS X 10.13.3 17D47, locale en-US, channel alpha)
[   +1 ms]     • Flutter version 0.0.21 at /Users/mfahy/flutter
[        ]     • Framework revision 2e449f06f0 (5 days ago), 2018-01-29 14:26:51 -0800
[        ]     • Engine revision 6921873c71
[        ]     • Tools Dart version 2.0.0-dev.16.0
[        ]     • Engine Dart version 2.0.0-edge.da1f52592ef73fe3afa485385cb995b9aec0181a
[ +130 ms] /usr/bin/defaults read /Applications/Android Studio.app/Contents/Info CFBundleShortVersionString
[ +218 ms] Exit code 0 from: /usr/bin/defaults read /Applications/Android Studio.app/Contents/Info CFBundleShortVersionString
[        ] 3.0
[  +98 ms] java -version
[  +87 ms] [✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[        ]     • Android SDK at /Users/mfahy/Library/Android/sdk
[        ]     • Android NDK location not configured (optional; useful for native profiling support)
[        ]     • Platform android-27, build-tools 27.0.3
[        ]     • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
[        ]     • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)
[+1189 ms] DevToolsSecurity -status
[  +49 ms] Developer mode is currently enabled.
[        ] python -c import six
[ +126 ms] idevice_id -h
[  +10 ms] idevice_id -h
[   +9 ms] idevice_id -l
[  +28 ms] 5a62f0e8de345b9794b9a61c9bfcd02026c68a86
[   +1 ms] idevicename
[  +44 ms] ios-deploy --version
[  +54 ms] ios-deploy --version
[  +16 ms] 1.9.2
[   +1 ms] ios-deploy --version
[  +33 ms] ios-deploy --version
[  +21 ms] 1.9.2
[   +2 ms] pod --version
[ +905 ms] pod --version
[ +605 ms] 1.3.1
[   +2 ms] pod --version
[ +533 ms] 1.3.1
[   +1 ms] [-] iOS toolchain - develop for iOS devices (Xcode 9.2)
[        ]     • Xcode at /Applications/Xcode.app/Contents/Developer
[        ]     • Xcode 9.2, Build version 9C40b
[        ]     ✗ Verify that all connected devices have been paired with this computer in Xcode.
                 If all devices have been paired, libimobiledevice and ideviceinstaller may require updating.
                 To update, run:
                   brew uninstall --ignore-dependencies libimobiledevice
                   brew install --HEAD libimobiledevice
                   brew install ideviceinstaller
[        ]     • ios-deploy 1.9.2
[        ]     • CocoaPods version 1.3.1
[   +2 ms] [✓] Android Studio (version 3.0)
[        ]     • Android Studio at /Applications/Android Studio.app/Contents
[        ]     • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)
[   +6 ms] /usr/bin/defaults read /Applications/IntelliJ IDEA.app/Contents/Info CFBundleShortVersionString
[ +249 ms] Exit code 0 from: /usr/bin/defaults read /Applications/IntelliJ IDEA.app/Contents/Info CFBundleShortVersionString
[        ] 2017.3.4
[  +79 ms] [✓] IntelliJ IDEA Ultimate Edition (version 2017.3.4)
[        ]     • Flutter plugin version 21.2.3
[        ]     • Dart plugin version 173.4548.30
[   +4 ms] /Users/mfahy/Library/Android/sdk/platform-tools/adb devices -l
[  +17 ms] Exit code 0 from: /Users/mfahy/Library/Android/sdk/platform-tools/adb devices -l
[        ] List of devices attached
[   +8 ms] idevice_id -h
[  +82 ms] which ideviceinstaller
[   +5 ms] Exit code 0 from: which ideviceinstaller
[        ] /usr/local/bin/ideviceinstaller
[        ] which iproxy
[   +4 ms] Exit code 0 from: which iproxy
[        ] /usr/local/bin/iproxy
[   +4 ms] /usr/bin/xcrun simctl list --json devices
[ +218 ms] [✓] Connected devices
[        ]     • ViPhone 6S • 5a62f0e8de345b9794b9a61c9bfcd02026c68a86 • ios • iOS 11.3
[        ]     • iPhone 6s  • 6F36E8FD-E570-453E-B943-8243E4FAEDD6     • ios • iOS 11.2 (simulator)
[  +21 ms] "flutter doctor" took 6,972ms.
[  +42 ms] ensureAnalyticsSent: 38ms
[   +2 ms] exiting with code 0

Hope this helps! Thanks!

That's definitely a bug.
That said, the usual way to do this kind of thing is to create custom ScrollPhysics. If you look for examples of classes that extend ScrollPhysics in the framework, you may find some cases that do roughly what you want that you can crib from.

Thanks, @Hixie. I figured ScrollPhysics would be the "right" way to do it. I just haven't wrapped my head around the idea yet, and stumbled across this in the mean time. Glad to see it's not just me.

@VeryVito I'm facing the same issue, did you manage to build something using the ScrollPhysics?

For discussion:
When the user interrupts the animation, does anyone have an expected behavior?
Should the user be able to interrupt/cancel the animation? Or should the user gesture be ignored until the animation is over?
Or would it be beneficial to have both options and be able to specify which of these behaviors you would like to have?

We should ask the designers.

From the documentation for ScrollController.animateTo :

An animation will be interrupted whenever the user attempts to scroll manually, or whenever another activity is started, or whenever the animation reaches the edge of the viewport and attempts to overscroll.

I'm going to proceed with fulfilling this contract, as I understand it to mean user interaction would interrupt/cancel the animation.
I'll then see if we can expand from there on other opportunities to improve this experience after checking in with designers. :)

After exploring different solutions in #37267, scroll notifiers do not seem to be the most robust solution for initiating scroll activities. There are several scroll notifications that are dispatched during the course of an activity, leaving open the opportunity to throw an assert like this when incomplete/new activities clash. I'm working on finding a different approach to initiating this animation, and will document it. :)
Altering the milestone and primary goal to reflect this shift.

I'm not currently working on this so I'm removing my assignment in case someone else would like to take a look. :)

Still persists. Flutter master v1.16.3-pre.56

removing crash label because this is more of improper use of the API, Instead we should provide document example it

any update on this?

Having to use an ugly hack for this that interrupts the animation and requires the user to release the touch and grab the scrollable list again to continue scrolling.

Hack
https://github.com/flutter/flutter/issues/12712#issuecomment-663618605

I see @chunhtai talked about documentation, was there any documentation made for this? I'm sure an example snippet of how to do this would also suffice for many people here.

We have not updated the documentation yet. I do not have any update. maybe @Piinks can provide more insight?

I am currently experiencing this problem.
I assume there is no recommended solution yet?

Any updates on this?

My solution is wrap with a gesture intercept widget just like  IgnorePointer. when the scroll animation is in progress, i will intercept user's gesture.
Code:
 NotificationListener<ScrollNotification>(       onNotification: _handlerScrollNotification,       child: ScrollConfiguration(         behavior: NullBehavior(),         child: IgnorePointer(           ignoring: !isScrollEnd,           child: widget.child,         ),       ),     )
isScrollEnd is use to determine whether  the animation ends or not
bool _handlerScrollNotification(ScrollNotification scrollNotification) {     if (scrollNotification is ScrollStartNotification) {       isScrollEnd = false;     }     if (scrollNotification is ScrollEndNotification) {       isScrollEnd = true;     }     if (scrollNotification is UserScrollNotification) {       if (isScrollEnd) {       //TODO       }     }     setState(() {});     return true;   }

I think this problem has been fixed by https://github.com/flutter/flutter/pull/69732

This just happened to me, so I don't know if that fix is applied yet, but I am using Flutter 2.8.1.
I was trying to do something very similar to this from #91166

removing crash label because this is more of improper use of the API, Instead we should provide document example it

Why is it an improper use of the API? Isn't it normal to animate something and expect user input at any time?

June 2022 and this is still an issue, any workaround?

I think I got this behavior, but I am not trying to animate the list in any fancy way.
 I am using a Ticker to animate its scroll, so it appears as an infinite scrolling list, like the breaking news on TV do.
When I use animateTo to make the list move at each tick, the cards don't accept any click or show any pointer animations for the InkWell. If I use jumpTo the clicks work and I can see the material animations on the card.

I need this is not the best solution guys, but what I tried to do is ignore user interaction when scrolling is not done. In my scroll controller it looked like:
_doneScrolling = true;
_scrollController.position.isScrollingNotifier.addListener(() {
// immediately before the animation
setState((){
_doneScrolling = false;
});
              _scrollController
                  .animateTo(
                      _animateWidth,
                      duration: kThemeAnimationDuration * 2,
                      curve: Curves.easeInOutCubicEmphasized)
                  .then((value) =>
                        setState(() => _doneScrolling  = true));
});

// then I wrapped with Scroll view widget with AbsorbPointer
AbsorbPointer(
absorbing: !_doneScrolling,
child: SinggleChildScrollView(
...)
):

This issue is replicable on Master (3.10.0-7.0.pre.46). Updating labels to reflect the same
flutter doctor -v (Master)
[!] Flutter (Channel master, 3.10.0-7.0.pre.46, on macOS 13.3.1 22E261 darwin-arm64, locale en-US)
    • Flutter version 3.10.0-7.0.pre.46 on channel master at /Users/nabeelparkar/fvm/versions/master
    ! Warning: `dart` on your path resolves to /opt/homebrew/Cellar/dart/2.19.5/libexec/bin/dart, which is not inside your current Flutter SDK checkout at /Users/nabeelparkar/fvm/versions/master. Consider adding /Users/nabeelparkar/fvm/versions/master/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 59230759be (22 minutes ago), 2023-04-19 02:39:50 -0400
    • Engine revision 609f9d5364
    • Dart version 3.1.0 (build 3.1.0-15.0.dev)
    • DevTools version 2.23.1
    • 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 33.0.2)
    • Android SDK at /Users/nabeelparkar/Library/Android/sdk/
    • Platform android-33, build-tools 33.0.2
    • ANDROID_SDK_ROOT = /Users/nabeelparkar/Library/Android/sdk/
    • Java binary at: /Users/nabeelparkar/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/222.4459.24.2221.9862592/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

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

[✓] Chrome - develop for the web
    • CHROME_EXECUTABLE = /Applications/Brave Browser.app/Contents/MacOS/Brave Browser

[✓] Android Studio (version 2022.1)
    • Android Studio at /Users/nabeelparkar/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9619390/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.15+0-b2043.56-8887301)

[✓] Android Studio (version 2022.2)
    • Android Studio at /Users/nabeelparkar/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/222.4459.24.2221.9862592/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

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

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 13.3.1 22E261 darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Brave Browser <IP_ADDRESS>

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

! Doctor found issues in 1 category.

any better solution?

Any updates?

Any updates on this?No one is paying attention to this issue?

Per our wiki on issue hygiene:
Do not add "me too" or "same" or "is there an update" comments to issues or PRs
Continued posts like this are not constructive and will result in restrictions to make further comments in this repository.

Two possible solutions for this. The problem is originated because animateTo triggers the listener again, so you can use the future it provides to avoid this behavior:
     if (!_isAnimatingScroll) {         _isAnimatingScroll = true;         sController             .animateTo(position, duration: const Duration(milliseconds: 100), curve: Curves.linear)             .then((_) => {_isAnimatingScroll = false});       }
Another solution is to wrap the scroll widget with a GestureDetector and use the onPanEnd callback instead. Note thought that this behaves differently, the scroll notifier will trigger when the scrolling physics stop, while the GestureDetector will fire the event when the finger is released.

We encounter this problem today
I/flutter ( 3524): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter ( 3524): │ 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 831 pos 12: '_hold == null': is not true.
I/flutter ( 3524): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter ( 3524): │ #0   _AssertionError._doThrowNew (dart:core-patch/errors_patch.dart:50:61)
I/flutter ( 3524): │ #1   _AssertionError._throwNew (dart:core-patch/errors_patch.dart:40:5)
I/flutter ( 3524): │ #2   ScrollableState._handleDragDown (package:flutter/src/widgets/scrollable.dart:831:12)
I/flutter ( 3524): │ #3   _VerticalOuterDimensionState._handleDragDown (package:flutter/src/widgets/scrollable.dart:2141:30)
I/flutter ( 3524): │ #4   DragGestureRecognizer._checkDown.<anonymous closure> (package:flutter/src/gestures/monodrag.dart:734:51)
I/flutter ( 3524): │ #5   GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:351:24)
I/flutter ( 3524): │ #6   DragGestureRecognizer._checkDown (package:flutter/src/gestures/monodrag.dart:734:7)
I/flutter ( 3524): │ #7   DragGestureRecognizer._addPointer (package:flutter/src/gestures/monodrag.dart:388:9)
I/flutter ( 3524): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter ( 3524): │ ⛔ FlutterError.onError
I/flutter ( 3524): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────


Add addition DEV warnings for mixed old and new API lifecycles

This is a proposed 2.0.1 release. It adds additional, explicit warnings about unsupported combinations of old and new API lifecycles (e.g. getSnapshotBeforeUpdate and componentWillMount).
A couple of things worth noting about this PR:

With some lifecycle combinations (e.g. getSnapshotBeforeUpdate and componentWillUpdate) this change log to console.error in addition to throwing an Error.
With React 16.3, this change will log a "duplicate" warning (since React would itself warn about this combination of lifecycles).

I think the above are acceptable, but I wanted to call them out specifically.
Relates to PR #14

Curious why we're doing console.error vs. console.warn?

To mimic what fjbs/lib/warning does.


Don't store templates in DOM

To decrease the size of the DOM and thus to increase the browser performance remove client side templates from the DOM. Instead save them to the LocalStorage and write a TemplateLoader.
Bonus Effect: Templates can be loaded with a separate requests and must be refreshed only if a new version is available.

Implemented new TemplateStorage in 1.59.0


Potential issues on macos Sequoia?

Has anyone else encountered issues after upgrading to macOS Sequoia?
I upgraded my daily driver to macOS Sequoia 15.0.1 (24A348) yesterday, and localias seems to silently fail now. I've uninstalled and reinstalled, all still all connections to my configured aliases just return ERR_SSL_PROTOCOL_ERROR.
I do see one error in the start logs, looks like a missing caddy lock file. Is it possible I need to reset something in caddy's config as well?
% localias start
2024/10/17 13:25:58.735 INFO    admin   admin endpoint started  {"address": "localhost:2019", "enforce_origin": false, "origins": ["//localhost:2019", "//[::1]:2019", "//<IP_ADDRESS>:2019"]}
2024/10/17 13:25:58.735 INFO    tls.cache.maintenance   started background certificate maintenance      {"cache": "0x1400011b180"}
2024/10/17 13:25:58.739 INFO    http.auto_https server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS     {"server_name": "srv1", "https_port": 443}
2024/10/17 13:25:58.739 INFO    http.auto_https enabling automatic HTTP->HTTPS redirects        {"server_name": "srv1"}
2024/10/17 13:25:58.739 WARN    tls     unable to get instance ID; storage clean stamps will be incomplete      {"error": "open /Users/tristam/Library/Application Support/Caddy/instance.uuid: no such file or directory"}
2024/10/17 13:25:58.739 INFO    http.log        server running  {"name": "srv0", "protocols": ["h1", "h2", "h3"]}
2024/10/17 13:25:58.739 INFO    http    enabling HTTP/3 listener        {"addr": ":443"}
2024/10/17 13:25:58.739 INFO    http.log        server running  {"name": "srv1", "protocols": ["h1", "h2", "h3"]}
2024/10/17 13:25:58.739 INFO    http.log        server running  {"name": "remaining_auto_https_redirects", "protocols": ["h1", "h2", "h3"]}
2024/10/17 13:25:58.739 INFO    http    enabling automatic TLS certificate management   {"domains": ["front.local", "back.local"]}
2024/10/17 13:25:58.743 INFO    pki.ca.local    root certificate is already trusted by system   {"path": "storage:pki/authorities/local/root.crt"}
mDNS: serving front.local (<IP_ADDRESS>,<IP_ADDRESS>,::1,<IP_ADDRESS>)
mDNS: serving back.local (<IP_ADDRESS>,<IP_ADDRESS>,::1,<IP_ADDRESS>)

Any attempt to connect to the alias just results in a TLS error. For example, using curl:
% curl -v https://front.local
* Host front.local:443 was resolved.
* IPv6: ::1
* IPv4: <IP_ADDRESS>
*   Trying [::1]:443...
* Connected to front.local (::1) port 443
* ALPN: curl offers h2,http/1.1
* (304) (OUT), TLS handshake, Client hello (1):
*  CAfile: /etc/ssl/cert.pem
*  CApath: none
* LibreSSL/3.3.6: error:1404B438:SSL routines:ST_CONNECT:tlsv1 alert internal error
* Closing connection
curl: (35) LibreSSL/3.3.6: error:1404B438:SSL routines:ST_CONNECT:tlsv1 alert internal error

Hey, I haven't heard of anything like this yet but I'll leave this issue open until I can help you resolve it. I'm unfortunately not on macOS 15 and I don't plan on upgrading for a while (it's usually disruptive to my life so I avoid updates until they're unavoidable.)
I have heard that macOS 15 shipped with a variety of networking problems, although no one is very clear exactly what they are or what to do about it:

https://old.reddit.com/r/MacOS/comments/1fihlge/macos_15_sequoia_bugs_and_issues_megathread/lnngp9n/?context=3
https://mjtsai.com/blog/2024/09/18/macos-firewall-regressions-in-sequoia/

For future reference/completeness, could you share the results of running the following commands?

 Some ideas for things to try:

I will try updating the code to add a debug mode with better logging, and I'll follow up here once that's available for you to try. Maybe that will help us get better logs.
Does using Localias as a non-ssl proxy work? Try setting up an alias for http://mysite.local and accessing it.
Does using a non-.local tld work? Try setting up an alias for mysite.test and accessing it.
Does using Caddy (not localias) as a reverse proxy work for you at all? Might be a little more annoying for you to test, but if it works, then maybe I need to upgrade the version being embedded in localias.

% hostname
tristam-m2-macbook.local

% sw_vers
ProductName:		macOS
ProductVersion:		15.0.1
BuildVersion:		24A348

% localias version
v2.2.0+commit.d73df9b

% which localias
/opt/homebrew/bin/localias

% localias list
https://front.local -> 4000
back.local -> 4001

% localias debug config --print
https://front.local: 4000
back.local: 4001

Using localias as a non-secure proxy seems to work fine.
Using localias for non-local TLDs also seems to work fine (I was successful with mysite.lan)

Additional data point, if I leave the /etc/hosts file as localias set it up, then caddy on it's own works fine with:
caddy reverse-proxy --from front.local --to localhost:4000

Details of the installed caddy version:
% which caddy
/opt/homebrew/bin/caddy
% caddy --version
v2.8.4 h1:q3pe0wpBj1OcHFZ3n/1nl4V4bxBrYoSoab7rL9BMYNk=

Awesome, thank you so much for the diagnostics. I'm going to prepare a localias build that uses the latest version of Caddy — hopefully you can then try that out, and it magically fixes the bugs, and we're all good to go!
Really appreciate your help tracking this down!

Additional data point, if I leave the /etc/hosts file as localias set it up, then caddy on it's own works fine with:

Interesting. If running caddyserver + updated /etc/hosts makes https://front.local work without issue, then I would guess the problem is either:

localias using an older version of caddy that somehow is broken on macOS 15 when using .local domains

Unlikely, but possible. The Caddy release notes don't mention anything about this.

localias's mDNS implementation is somehow broken on macOS 15

Somewhat more likely, since this is code that I hacked together and which is only used by localias. Bugs in caddy are almost certainly discovered and fixed much faster than bugs in localias.

So, to help figure this out, here's a darwin-arm64 build of localias built with caddyserver v2.8.4. The code changes are on this branch, if you'd rather build the binary yourself than download one that I've built:

release (with binary to download): https://github.com/peterldowns/localias/releases/tag/wip-release-testing
branch: https://github.com/peterldowns/localias/pull/41

Could you please try starting the proxy server with this custom build of localias, and seeing if your https://front.local alias works? Here's the commands and output I see:
~/code/localias/bin 🪵  pd/caddy-update # 5692b42 ❄  nix:localias
• ./localias-darwin-arm64 version
v2.2.0+commit.5692b42

~/code/localias/bin 🪵  pd/caddy-update # 5692b42 ❄  nix:localias
• ./localias-darwin-arm64 stop
daemon is not running

~/code/localias/bin 🪵  pd/caddy-update # 5692b42 ❄  nix:localias
• ./localias-darwin-arm64 start
2024/10/21 20:43:42.911	INFO	admin	admin endpoint started	{"address": "localhost:2019", "enforce_origin": false, "origins": ["//localhost:2019", "//[::1]:2019", "//<IP_ADDRESS>:2019"]}
2024/10/21 20:43:42.911	WARN	tls	DEPRECATED: on_demand.rate_limit will be removed in a future release; use permission modules or external certificate managers instead
2024/10/21 20:43:42.911	INFO	tls.cache.maintenance	started background certificate maintenance	{"cache": "0x140000e5700"}
2024/10/21 20:43:42.911	INFO	http.auto_https	server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS	{"server_name": "srv1", "https_port": 443}
2024/10/21 20:43:42.911	INFO	http.auto_https	enabling automatic HTTP->HTTPS redirects	{"server_name": "srv1"}
2024/10/21 20:43:42.917	INFO	pki.ca.local	root certificate is already trusted by system	{"path": "storage:pki/authorities/local/root.crt"}
2024/10/21 20:43:42.917	INFO	http.log	server running	{"name": "srv0", "protocols": ["h1", "h2", "h3"]}
2024/10/21 20:43:42.917	INFO	http	enabling HTTP/3 listener	{"addr": ":443"}
2024/10/21 20:43:42.917	INFO	[INFO][FileStorage:/Users/pd/Library/Application Support/localias/caddy] Lock for 'storage_clean' is stale (created: 2024-10-21 16:43:28.447751 -0400 EDT, last update: 2024-10-21 16:43:28.447751 -0400 EDT); removing then retrying: /Users/pd/Library/Application Support/localias/caddy/locks/storage_clean.lock
2024/10/21 20:43:42.917	INFO	http.log	server running	{"name": "srv1", "protocols": ["h1", "h2", "h3"]}
2024/10/21 20:43:42.917	INFO	http.log	server running	{"name": "remaining_auto_https_redirects", "protocols": ["h1", "h2", "h3"]}
2024/10/21 20:43:42.917	INFO	http	enabling automatic TLS certificate management	{"domains": ["back.local", "front.local"]}
mDNS: serving front.local (<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,::1,<IP_ADDRESS>)
mDNS: serving back.local (<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,::1,<IP_ADDRESS>)

~/code/localias/bin 🪵  pd/caddy-update # 5692b42 ❄  nix:localias
• ./localias-darwin-arm64 status
daemon running with pid 65368

~/code/localias/bin 🪵  pd/caddy-update # 5692b42 ❄  nix:localias
• pgrep localias
65368

~/code/localias/bin 🪵  pd/caddy-update # 5692b42 ❄  nix:localias
• curl -vvv 'https://front.local'
*   Trying [::1]:443...
* Connected to front.local (::1) port 443
* ALPN: curl offers h2,http/1.1
* (304) (OUT), TLS handshake, Client hello (1):
*  CAfile: /etc/ssl/cert.pem
*  CApath: none
* (304) (IN), TLS handshake, Server hello (2):
* (304) (IN), TLS handshake, Unknown (8):
* (304) (IN), TLS handshake, Certificate (11):
* (304) (IN), TLS handshake, CERT verify (15):
* (304) (IN), TLS handshake, Finished (20):
* (304) (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / AEAD-CHACHA20-POLY1305-SHA256
* ALPN: server accepted h2
* Server certificate:
*  subject: [NONE]
*  start date: Oct 21 20:44:07 2024 GMT
*  expire date: Oct 22 08:44:07 2024 GMT
*  subjectAltName: host "front.local" matched cert's "front.local"
*  issuer: CN=Localias Intermediate
*  SSL certificate verify ok.
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://front.local/
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: front.local]
* [HTTP/2] [1] [:path: /]
* [HTTP/2] [1] [user-agent: curl/8.4.0]
* [HTTP/2] [1] [accept: */*]
> GET / HTTP/2
> Host: front.local
> User-Agent: curl/8.4.0
> Accept: */*
>
< HTTP/2 200
< alt-svc: h3=":443"; ma=2592000
< content-type: text/html; charset=utf-8
< date: Mon, 21 Oct 2024 20:44:07 GMT
< server: Caddy
< server: SimpleHTTP/0.6 Python/3.12.3
< content-length: 1216
<
<!DOCTYPE HTML>

<meta charset="utf-8">
<title>Directory listing for /</title>

Directory listing for /

.direnv/

.DS_Store

.envrc

.git/

.github/

.gitignore

.golangci.yaml

.localias.yaml

.toolchain/

.vscode/

bin/

cmd/

default.nix

flake.lock

flake.nix

go.mod

go.sum

Justfile

LICENSE

pkg/

README.md

result@

scripts/

shell.nix

VERSION

* Connection #0 to host front.local left intact

~/code/localias/bin 🪵  pd/caddy-update # 5692b42 ❄  nix:localias
• curl -vvv 'https://back.local'
*   Trying [::1]:443...
* Connected to back.local (::1) port 443
* ALPN: curl offers h2,http/1.1
* (304) (OUT), TLS handshake, Client hello (1):
*  CAfile: /etc/ssl/cert.pem
*  CApath: none
* (304) (IN), TLS handshake, Server hello (2):
* (304) (IN), TLS handshake, Unknown (8):
* (304) (IN), TLS handshake, Certificate (11):
* (304) (IN), TLS handshake, CERT verify (15):
* (304) (IN), TLS handshake, Finished (20):
* (304) (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / AEAD-CHACHA20-POLY1305-SHA256
* ALPN: server accepted h2
* Server certificate:
*  subject: [NONE]
*  start date: Oct 21 20:44:17 2024 GMT
*  expire date: Oct 22 08:44:17 2024 GMT
*  subjectAltName: host "back.local" matched cert's "back.local"
*  issuer: CN=Localias Intermediate
*  SSL certificate verify ok.
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://back.local/
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: back.local]
* [HTTP/2] [1] [:path: /]
* [HTTP/2] [1] [user-agent: curl/8.4.0]
* [HTTP/2] [1] [accept: */*]
> GET / HTTP/2
> Host: back.local
> User-Agent: curl/8.4.0
> Accept: */*
>
< HTTP/2 200
< alt-svc: h3=":443"; ma=2592000
< content-type: text/html; charset=utf-8
< date: Mon, 21 Oct 2024 20:44:17 GMT
< server: Caddy
< server: SimpleHTTP/0.6 Python/3.12.3
< content-length: 1216
<
<!DOCTYPE HTML>

<meta charset="utf-8">
<title>Directory listing for /</title>

Directory listing for /

.direnv/

.DS_Store

.envrc

.git/

.github/

.gitignore

.golangci.yaml

.localias.yaml

.toolchain/

.vscode/

bin/

cmd/

default.nix

flake.lock

flake.nix

go.mod

go.sum

Justfile

LICENSE

pkg/

README.md

result@

scripts/

shell.nix

VERSION

* Connection #0 to host back.local left intact

That it works when running as root implies that the issue is one of the new permissions checks added to macOS Sequoia - my money would be on the addition of "Local Network Privacy", although whatever localias does is not triggering the permission UI prompt.
Looking through the various resources, it seems likely localias needs the multicast entitlement that has arrived from iOS. See also the somewhat-informal Local Network Privacy FAQ

🧠 OK, now we're onto something! Is there a new System Settings -> Privacy & Security -> Local Network (or similar name) permission that you can try granting to the localias binary? And if so, does that solve the problem?
I took a look at the links you posted, and did some other researching, and it frankly seems like a non-starter to me to have to start doing codesigning with an apple developer cert in order to ship mdns support. I'll keep looking into it, but I'd really prefer to find some other way, even if it's something like "you have to explicitly grant the binary permission by going into system preferences." I wonder what other apps are going to do?
Thank you again for your report and research. I am all ears if you have any ideas for how best to work around this.

Huh, that's weird. I'm super frustrated by not being able to help you better, but I can't pay the cost of upgrading right now for a variety of reasons. Is there any chance there's still a small "+" button in the preferences pane, kind of hard to notice? Here's what the accessibility preferences look like for me in Sonoma:

The most relevant item from the FAQ suggests one can explicitly trigger the prompt by sending a dummy packet to the broadcast address - I guess that might be worth a try?

I'm not sure exactly how to do this — as far as I understand it already, localias should be broadcasting its routes by sending udp multicast packets already, so if that's not triggering the popup I don't know what else would. If you have a chance to play with the code and can make it happen, I'm completely open to upstreaming a PR.
One other option is to go partially down the codesigning path by trying to embed an Info.plist with the relevant entitlement at build time, and seeing if that works without any further signing.
At this point I've got to tell you that I don't have a path forward for you since I'm not on macOS 15 and I don't plan to be soon. I'm going to leave this issue open and hopefully someone can help contribute a fix. I know this will be a problem for me when I upgrade, and it will be a problem for you and others, but I don't want to upgrade my computer at the moment and until I do I'm unable to do much other than suggesting ideas to you. Sorry 😞 .

One last thing would be to try using localias run instead of localias start and seeing if that makes any difference on getting the privacy popup, since it will be running as a foreground process in the terminal. It really shouldn't make any difference, but I have vague memories of that helping when I was debugging some keychain access things.

Heh. Well... You may or may not enjoy this news, but the issue has resolved itself on my machine, and I don't seem to be able to recreate it. Feel free to close this issue when you are satisfied.
I tried localias run, and it gave me error logs indication permission denial loading /Users/tristam/Library/Application Support/localias/caddy/certificates/local/front.local/front.local.key. I checked that file, and it was owned by root so my user couldn't read it.
After deleting the entire /Users/tristam/Library/Application Support/localias directory, localias is working again (both with start and run). Running localias as root again didn't recreate the problem (so I don't think my earlier diagnosis attempts made the problem worse).
I probably should have realised earlier that the home-brew uninstall process didn't clear out Application Support directory. I'm assuming the permissions in that directory got messed up in the OS upgrade process - but honestly not sure how.


Allow headers in the proxy

I'm using the OpenAI library through a proxy server that enables me to log request and do analytics on it. As I go to production I want to add some authorization to my proxy via headers.
Is there a way to send headers as part of the proxy call?

same here.
My need is to get the header from the raw response.

Interesting, so would be good to add headers to the raw request and then view the raw response with headers as well.

@roh26it  I wrote a sample to add your own header. How do you like it?
type DefaultHeaderTransport struct {
	Origin http.RoundTripper
	Header http.Header
}

func (t *DefaultHeaderTransport) RoundTrip(req *http.Request) (*http.Response, error) {
	for key, values := range t.Header {
		for _, value := range values {
			req.Header.Add(key, value)
		}
	}
	return t.Origin.RoundTrip(req)
}

func main() {

	header := http.Header{}
	header.Set("example1", "deadbeef")
	header.Set("example2", "defecated")

	httpClient := &http.Client{
		Transport: &DefaultHeaderTransport{
			Origin: http.DefaultTransport,
			Header: header,
		},
	}

	cfg := openai.DefaultConfig("openai_api_key")
	cfg.HTTPClient = httpClient

	client := openai.NewClientWithConfig(cfg)
	resp, err := client.CreateChatCompletion(
		context.Background(),
		openai.ChatCompletionRequest{
			Model: openai.GPT3Dot5Turbo,
			Messages: []openai.ChatCompletionMessage{
				{
					Role:    openai.ChatMessageRoleUser,
					Content: "Hello!",
				},
			},
		},
	)

}

Closing this due to lack of comments for an extended period. Hopefully, the proposed solution has resolved your issue.


"angularfire2": ^4.0.0-rc.0 -- Unhandled Promise rejection: No provider for AngularFireAuth

Version info

Angular:: 4.1.2
Firebase:: 3.9.0
AngularFire: : 4.0.0-rc.0
Other (e.g. Ionic/Cordova, Node, browser, operating system):
"@angular/animations": "^4.1.2",
"@angular/common": "^4.1.2",
"@angular/compiler": "^4.1.2",
"@angular/core": "^4.1.2",
"@angular/forms": "^4.1.2",
"@angular/http": "^4.1.2",
"@angular/material": "^2.0.0-beta.3",
"@angular/platform-browser": "^4.1.2",
"@angular/platform-browser-dynamic": "^4.1.2",
"@angular/platform-server": "^4.1.2",
"@angular/router": "^4.1.2",
"angularfire2": "^4.0.0-rc.0",
"core-js": "^2.4.1",
"firebase": "^3.9.0",
"geofire": "^4.1.2",
"hammerjs": "^2.0.8",
"ng2-flex-layout": "^0.1.5",
"ng2-validation": "^4.2.0",
"rxjs": "^5.4.0",
"typescript": "^2.3.2",
"zone.js": "^0.8.10"
How to reproduce these conditions
Encountered error while restarting the app.  Code compiles successfully but the app throws runtime error as seen the screenshot.
Failing test unit, Plunkr, or JSFiddle demonstrating the problem

Steps to set up and reproduce

Sample data and security rules
<-- include/attach/link to some json sample data (or provide credentials to a sanitized, test Firebase project) -->
Debug output
** Errors in the JavaScript console **
** Output from firebase.database().enableLogging(true); **
** Screenshots **

Expected behavior
App should show the login page.  The app worked perfectly all right prior to angularfire2 upgrade.  Unfortunately I am not sure where to point exactly as the error message doesn't gives a clue to point you to the right direction.
Actual behavior
Black page with runtime error in console.

Hi @ravivit9 -- general errors like this should definitely be researched first on StackOverflow. Getting a "No provider" error is associated with a missing import in your module file. Check to make sure that you've properly imported the AngularFireAuthModule and added it to the list of imports.

Thanks Mark.
I was looking for the solution past 3 days but couldn't find the right solution.  Normally I am mindful creating an issue in this forum as this platform shouldn't be polluted with lots of general question but as a last, I did created the issue but quick after that I found the solution as below: CLOSING the issue.
I got the solution from the following AF2 issue:
https://github.com/angular/angularfire2/issues/956


New test video has different contral bar symbols

Miguel, https://polimediaupv.github.io/paella-ethz/?id=belmar_16_9_hls has no "view" button and there is a "Select video quality" option under "Settings" (which doesn't really work because it always switches back to "auto"). How and why is this different from https://polimediaupv.github.io/paella-ethz/?id=belmar-multiresolution-remote?

Miguel, https://polimediaupv.github.io/paella-ethz/?id=belmar_16_9_hls has no "view" button

The button was hidden because this demo didn't have the frame list. I added it and now the button is visible.

and there is a "Select video quality" option under "Settings" (which doesn't really work because it always switches back to "auto"). How and why is this different from https://polimediaupv.github.io/paella-ethz/?id=belmar-multiresolution-remote?

The old video (belmar-multiresolution-remote) does not have multiple qualities (this is why the button is hidden). The new demo is miltiquatily and the button is visible.
There was a bug in quality selector. It is fixed now!

Fixed.


Update NOTICE.txt

[x] Have you signed the Contributor License Agreement?
[ ] Are you working against an Issue?

No idea why these changes weren't added before. I straight up deleted the previous and replaced it with the pipeline one last time too.

Microsoft Reviewers: Open in CodeFlow

/azp run


add missing NPM perf map telemetry

What does this PR do?
add missing NPM perf map telemetry
Motivation
Missing telemetry for load testing.
Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Ender Rail missing

Issue Description:
This is happening in a modpack that I am the maintainer of (https://minecraft.curseforge.com/projects/digitalseracraft). I was trying to set up cart transport and was unable to find the "ender rail". I looked through the code and noticed that the recipe is commented out at:
https://github.com/SleepyTrousers/EnderIO/blob/1.10/src/main/java/crazypants/enderio/machine/soul/SoulBinderRecipeManager.java#L35
Is this intended? Is there something elsewhere that should be making the Rail show up? I know there is a newer version available on curse, but its an alpha version, so I've stayed away. I looked through the config files, and the rails are enabled in the main "EnderIO.cfg".
Thanks for the help!
Affected Versions (Do not use "latest"):

EnderIO: 1.10.2-<IP_ADDRESS>_beta
EnderCore: 1.10.2-<IP_ADDRESS>-beta
Minecraft: 1.10.2
Forge: <IP_ADDRESS>2

Your most recent log file where the issue was present:
There is no mention of the ender rail in my log file. If you would still like one, I would be happy to upload one.

Seems someone forgot to remove those config settings...
The EnderRail got dropped in the 1.8.9 update because of game functionality changes.

Ok, thanks for the info!!!


Workflow Script updated; ::set-output changed with GITHUB_OUTPUT, use…

… newer version of docker/build-push-action@v4 and docker/login-action@v2

LGTM, to see if it actually works I'll probably have to create a release

I released 3.11.3-2, so publishImage.yml still works.
I added a manual trigger to automaticRelease.yml (in d6bb705) to be able to test it. It runs and compares version. So it looks good.
I think were done here for now. We will see if everything really works end to end only after the next helm release


Send array [] to webworker

I am trying to send an image array to a webworker from Blazor C#.
//Blazor
await service.RunAsync(s => s.ImageAquired(imageBytes));
// Web worker
 public class FrequencyFinderService {
        public void ImageAquired(byte[] image)
        {
           // do stuff with the image
        }
    }

The problem is that the transfer of the image from Blazor to Webworker takes too much time. It locks up the UI. Is there a way to do this in an efficient manner?
I had a similar problem to get the image from  JS to Blazor, but that solution was to use the "JSUnmarshalledRuntime.InvokeUnmarshalled"
 var image = JSUnmarshalledRuntime.InvokeUnmarshalled<byte[]>("WebCamFunctions.snap");

Hello. Thank you for your feedback.
Transferring a dot net array to the worker unmarshalled is not trivial. I'm pretty sure it's possible but mono-wasm marshalling is not very well documented so i haven't been able to figure it out. This library exclusively uses marshalling over a string, as it is really the only trivial data type to send over the process border unmarshalled.
That said, to keep your ui from freezing up, you could use a stream instead of transferring a large byte array all at once. Again, there currently no native support for streams, so you would have to implement the transport yourself.
Built-in support for streams in the backgroundservice layer is tracked in issue #3 .

Thanks for the reply.
It seems that the performance to send base64 to a js worker has much better performance vs going through blazer.
Just to rule out that it does not work, I am trying to send a base64 string to worker.PostMessageAsync. The issue is that I am receiving
"WASM-WORKER:
Uncaught Error: Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: d. Path '', line 0, position 0"
how should I format the text in worker.PostMessageAsync?

await worker.PostMessageAsync("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAgAElEQVR4XqSd63ojSY5kI0hKWdUzs7vv/6AzVZm87AfADgBHBKWsafWP6pTIuPjV3GAw7NePj9fr9dy27bLt+2W77q9t3/ftuu2b/dxfz+3xeGyXi/19316vx/a0z78u/rvba9fv7W+v7RFf2/bLy/+9v7bNr/+6+e+f22W7Xq9+nfjcwz/H37f97tezH74fV4wff1T92PPuF93wdYnr7He/Hx+7vfq3t227fsRzPH/5fx+vlz/Pbb9sj+cznlXPGTf83C77ZXtdXn6v5/2/xwXrn9Yel9fH9nw+tufOE8R/7W/Pp/3/m1/PWiJ+Lt6e9jt778djz/9v7";);

// Web worker
public class FrequencyFinderService {

        private readonly IWorkerMessageService messageService;
        public static FrequencyFinder _frequencyFinder = new FrequencyFinder();

        public FrequencyFinderService(IWorkerMessageService workerMessageService) {
            messageService = workerMessageService;

            this.messageService.IncomingMessage += OnMessage;
        }

        private void OnMessage(object sender, string message)
        {
            Console.WriteLine("image " + images);
        }
    }

assuming you are using the higher abstraction, The BackgroundService package, your message is expected to be a json serialization of the MethodCallParams class. Sending messages directly from js will be very fragile, and I think youll have a hard time tracking service instance ids and whatnot.
If you really want to go down this road I'd suggest you use the BlazorWorker.Core package instead. The Core package does not use any serialization other than some extremely crude csv-ish messages for service instanciation, and any type of message sent on the message bus will be accepted.
That said, I think your code looks fine. We are probably looking at a bug here: messages that does not deserialize should be ignored by the message parser rather than throwing an error. Your scenario used to work, so to me this is a regression.

I'm closing this due to lack of activity


Make ci/prow/integration ci/prow/e2e-scenarios  tests required

This is really important, especially now when Travis tests are disabled!!
/cc @amitkrout

@kadel We have already made it required immediately after we faced the travis issue.


Enable parameter capturing in no suspend mode.

Summary

Moved the InProcessFeaturesService registration before the ProfilerService registration because the IEndpointInfoSourceCallbacks need to first reach the in process service so it can set the DotnetMonitor_InProcessFeatures_ParameterCapturing_Enable environment variable which is later checked by the profiler initialization.
Reworked ParameterCapturingTests to include the new shouldSuspendTargetApp arg and added a test to verify the new scenario - CapturesParametersNoSuspend.
Updated docs.

Release Notes Entry

I noticed flakiness around the nosuspend tests caused by the DOTNET_STARTUP_HOOKS env var being set on the target app (The ParameterCapturingService might start up before the monitor is ready), so I reworked the ScenarioRunner to support starting the target app before the monitor.
I also added the AppWithStartupHookFailsInNoSuspend test so it's clearly state we don't support this scenario.


Making GalacticOptim optional

On the 1.8 beta, loading GalacticOptim amd GalacticOptimJL together makes up over half the load time of Pathfinder.
julia> @time_imports using Pathfinder
    ...
   1172.3 ms    ┌ GalacticOptim
   1237.2 ms  ┌ GalacticOptimJL
    ...
   4552.7 ms  Pathfinder

This is not ideal, since we use these to support experimentation with other optimizers, not for normal usage. Currently we build everything around GalacticOptim, but perhaps we should make this conditionally loaded and default to doing everything with Optim types.

Note that GalacticOptim is currently undergoing some refactoring to break it down into sub-packages in the same repo.

I believe that already happened with GalacticOptim v3. e.g. we now depend on GalacticOptim and GalacticOptimJL, the latter of which brings the Optim integration.

And that's still too heavy 🤔, interesting.

And that's still too heavy thinking, interesting.

 It's only used in files that depend on other DiffResults dependants. I have no idea why FillArrays is being brought in. ArrayInterface is being used for one function (ArrayInterface.zeromatrix); maybe it could also be dropped. SciMLBase of course not. So maybe it could slim down to not much more than SciMLBase.

https://github.com/SciML/GalacticOptim.jl/issues/239


Config to hide plugin in sidebar [Line Markers]

Now that Radius Markers got some love with the option to hide the icon form the sidebar, is it possible to add it to Line Markers too? Would be nice for the ones having set everything up already.

Thank you for adding this, appreciated 👍


Keywords are redundant between NWB files and the DANDIset

Just an idea: dandiarchive could extract the unique keywords from the NWB files instead of requiring the uploader to specify them. My understanding is that this is not a feature yet. Giving additional keywords for the dandiset is useful though.

Thank you for the issue report!
Indeed, while we extract other metadata from an NWB asset, we could definitely look into pulling out keywords as well.


additional explanation on the order of operations for hello world

I've attempted to give a thorough explanation on why we use this specific order of operations, I hope it's clear enough and not too wordy. I've also corrected the stack order in one of the example comments since it stated "0x40" although "0x2d" was pushed to the stack.

Awesome work man!!! Great first contribution! You've explained the concept really well.
I've added a few wording suggestions - let me know what you think! @0xTutturu

Thanks man! I think all of your wording suggestions are an improvement, thank you for taking the time to review the PR.


Refactor ViewController lifecycle event calls

The ViewController has methods which get called by NavController during specific times between transitions, such as:
https://github.com/driftyco/ionic/blob/2.0/src/components/nav/view-controller.ts#L510
https://github.com/driftyco/ionic/blob/2.0/src/components/nav/nav-controller.ts#L1226
However, firing off one method isn't very scalable, and that lifecycle info could be valuable to other components that want to listen in. Instead ViewController's didEnter and others should become an observable, and NavController would call emit and the correct times in the transition.
Externally this isn't really a breaking change, everything would function the same, however, ViewController would have a good API to listen in on certain lifecycle events. Once this is completed, we can then better complete the modal refactor: https://github.com/driftyco/ionic/pull/6658

donzo


Nebular theme Autocomplete with options containing object (not working)  vs string (working)

@aitboudad
Question
I am trying to send an array of objects in options using Nebular theme AutoComplete component and for some reason it does not seem to work.
It works fine when I send an array of strings.
Any thoughts on what I could be doing wrong?
My custom Autocomplete component is

    template: `
    <input
        nbInput
        type="text"
        [formControl]="formControl"
        [formlyAttributes]="field"
        [required]="to.required"
        [placeholder]="to.placeholder"
        [disabled]="to.disabled"
        [status]="showError ? 'danger' : 'info'"
        [nbAutocomplete]="autoControl"/>

<!--  the below commented code works fine for array of strings  -->
        <!-- <nb-autocomplete #autoControl >
          <nb-option
          *ngFor="let value of filter | async"
          [value]="value">
          {{ value }}
          </nb-option>
        </nb-autocomplete>  -->

<!-- When I send array of objects, the options are populate properly, but autocomplete does not work -->
         <nb-autocomplete #autoControl  >
        <nb-option
        *ngFor="let option of filter | async"
        [value]="option">
        {{ option.label }}
        </nb-option>
    </nb-autocomplete>
`,
    styles: [],
    changeDetection: ChangeDetectionStrategy.OnPush,
})

export class FormlyNbAutoCompleteComponent extends FieldType implements OnInit/*, AfterViewInit*/ {

    public filter: Observable<any>;

    public ngOnInit(): void {
        this.filter = this.formControl.valueChanges.pipe(
            startWith(''),
            /** works for array of strings*/
            // switchMap((term) => this.to.filter(term)),

           /** works for array of objects*/
            switchMap((term) => this.to.filter(term.label)),
        );
    }

FormlyFieldConfig where I use Autocomplete contains

// const modelNames = ['Alabama', 'Alaska', 'American Samoa', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut',]

   const modelNames = [
     { value: 'Alabama', label: 'Alabama'},
     { value: 'Alaska', label: 'Alaska'},
     { value: 'Arizona', label: 'Arizona'},
     { value: 'Arkansas', label: 'Arkansas'},
     { value: 'California', label: 'California'},
     ]

          fieldGroupClassName: "row",
          fieldGroup: [
            {
              type: "nbautocomplete",
              key: "deviceTypeUuid",
              className: "col-12 col-md-6 col-lg-3",
              templateOptions: {
                multiple: false,
                filter:  (term) => of(term ? this.filterModelName(term) : modelNames.slice()),
                filerKeys: ['value'],
                label: "Device Model",
                placeholder: "Select Device Template",
              },

  filterModelName(name: string) {
    if (typeof name !== 'string' && typeof name !== 'number') {
      return null;
  }
    return modelNames.filter(modelName =>
      /** Array of Strings*/
      // modelName.toLowerCase().indexOf(name.toLowerCase()) === 0);

     /** Array of Objects*/
      modelName.label.toLowerCase().indexOf(name.toLowerCase()) === 0);
  }

@aitboudad
I created a stackblitz around the issue
https://stackblitz.com/edit/github-owd65f-mv5bnb

I created a stackblitz around the issue
stackblitz.com/edit/github-owd65f-mv5bnb

The provided stackblitz link is not working, could you please check it on your side.

@aitboudad
The stackblitz link seems to be working from my side. I have noticed that it takes longer to load.

@aitboudad
I figured out the mistake I was making.
Thanks for taking the time to look into the issue.

can you send me please the code that you maintain to solve this probleme,
i face the same probleme and i struggled for find a solution but i can't find a solution please send me the correct code for resolving this problem

@aitboudad I figured out the mistake I was making. Thanks for taking the time to look into the issue.
can you send me please the code that you maintain to solve this probleme,
i face the same probleme and i struggled for find a solution but i can't find a solution please send me the correct code for resolving this problem

can you send me please the code that you maintain to solve this probleme, i face the same probleme and i struggled for find a solution but i can't find a solution please send me the correct code for resolving this problem

@nouramine878
I have moved away from nebular, looking back into my old code, this is what I had. Hope this helps you.
The custom type for nebular autocomplete  would look something like this....
import { Component, ViewChild, ChangeDetectionStrategy, AfterViewInit, OnInit } from '@angular/core';
import { FieldType } from '@ngx-formly/core';
import { Observable } from 'rxjs';
import { map, startWith, switchMap } from 'rxjs/operators';

@Component({
    selector: 'ngx-nbautocompletetype',
    template: `
    <span
    *ngIf="to.tooltip"
    class="help-text-icon"
    placement="right"
    nbTooltip={{to.tooltip}} >?
    </span>
    <input
        nbInput
        fullWidth
        type="text"
        [formControl]="formControl"
        [formlyAttributes]="field"
        [required]="to.required"
        [placeholder]="to.placeholder"
        [disabled]="to.disabled"
        [status]="showError ? 'danger' : 'info'"
        [nbAutocomplete]="autoControl"/>
        <nb-autocomplete #autoControl  >

        <nb-option
        *ngFor="let option of filter | async"
        [value]="option.value">
        <nb-icon [icon]=option.icon pack="font-awesome"></nb-icon>
        {{ option.label }}
        </nb-option>
    </nb-autocomplete>
`,
    styles: [],
    changeDetection: ChangeDetectionStrategy.OnPush,
})

// Array of Strings
// <!--        <nb-autocomplete #autoControl >
// <nb-option
// *ngFor="let value of filter | async"
// [value]="value">
// {{ value }}
// </nb-option>
// </nb-autocomplete>  -->

// Array of Objects
// <nb-autocomplete #autoControl  >
// <nb-option
// *ngFor="let option of filter | async"
// [value]="option.value">
// {{ option.label }}
// </nb-option>
// </nb-autocomplete>

export class FormlyNbAutoCompleteComponent extends FieldType implements OnInit {

    public filter: Observable<any>;

    public ngOnInit(): void {
        this.filter = this.formControl.valueChanges.pipe(
            startWith(''),
            switchMap((term) => this.to.filter(term)),
            // switchMap((term) => this.to.filter(term.label)),
        );
        console.log(this.filter)
    }

}

@argupta23  thanx u for your help it's really helpful

can you send me please the code that you maintain to solve this probleme, i face the same probleme and i struggled for find a solution but i can't find a solution please send me the correct code for resolving this problem

@nouramine878
I have moved away from nebular, looking back into my old code, this is what I had. Hope this helps you.
The custom type for nebular autocomplete would look something like this....
import { Component, ViewChild, ChangeDetectionStrategy, AfterViewInit, OnInit } from '@angular/core';
import { FieldType } from '@ngx-formly/core';
import { Observable } from 'rxjs';
import { map, startWith, switchMap } from 'rxjs/operators';

@Component({
    selector: 'ngx-nbautocompletetype',
    template: `
    <span
    *ngIf="to.tooltip"
    class="help-text-icon"
    placement="right"
    nbTooltip={{to.tooltip}} >?
    </span>
    <input
        nbInput
        fullWidth
        type="text"
        [formControl]="formControl"
        [formlyAttributes]="field"
        [required]="to.required"
        [placeholder]="to.placeholder"
        [disabled]="to.disabled"
        [status]="showError ? 'danger' : 'info'"
        [nbAutocomplete]="autoControl"/>
        <nb-autocomplete #autoControl  >

        <nb-option
        *ngFor="let option of filter | async"
        [value]="option.value">
        <nb-icon [icon]=option.icon pack="font-awesome"></nb-icon>
        {{ option.label }}
        </nb-option>
    </nb-autocomplete>
`,
    styles: [],
    changeDetection: ChangeDetectionStrategy.OnPush,
})

// Array of Strings
// <!--        <nb-autocomplete #autoControl >
// <nb-option
// *ngFor="let value of filter | async"
// [value]="value">
// {{ value }}
// </nb-option>
// </nb-autocomplete>  -->

// Array of Objects
// <nb-autocomplete #autoControl  >
// <nb-option
// *ngFor="let option of filter | async"
// [value]="option.value">
// {{ option.label }}
// </nb-option>
// </nb-autocomplete>

export class FormlyNbAutoCompleteComponent extends FieldType implements OnInit {

    public filter: Observable<any>;

    public ngOnInit(): void {
        this.filter = this.formControl.valueChanges.pipe(
            startWith(''),
            switchMap((term) => this.to.filter(term)),
            // switchMap((term) => this.to.filter(term.label)),
        );
        console.log(this.filter)
    }

}

thanx for your support @argupta23  it's really helpful to me


Can't use statful-client-ruby-aop

When trying to use statful-client-ruby-aop an LoadError: cannot load such file -- statful-client-aop is raised.

It's fixed by renaming lib/statful-aspects.rb to lib/statful-client-aop.rb.


Feature Suggestion: Unit Tests

Unfortunately, https://github.com/lrills/helm-unittest is not being actively maintained anymore but this is something I think would be a good fit for the core project.

Thanks for the suggestion.
Helm currently has chart test capability. What therefore would be the benefits of integrating helm-unittest into core as well?

@hickeyma, the chart test capability will "validate that your chart works as expected when it is installed" whereas helm-unittest will validate that a chart is rendered locally correctly using unit tests. Chart repository maintainers can use unit tests to verify specified values result in the correct behavior or contributor changes do not result in incorrect behavior. For example, you could verify that the ingress is disabled when the value ingress.enabled is set to false.

Thanks for the feedback.
@mattfarina what do you think?

@walkafwalka @hickeyma I like this idea. @michelleN has been working on the testing for Helm v3. It might be good to talk with her about it.

How is this proposal coming along? We are working on a Helmchart with ever-increasing complexity and the helmunit project (or the fork mentioned by @walkafwalka ) seem a promising approach to run unit tests that do not require an actual cluster to be up and running. IMO, having it as part of the helm core would really strengthen helm's appeal for use in enterprise-grade deployment scenarios.

@walkafwalka Just wondering if you got a chance to work anymore on the proposal?

Hi @hickeyma,
I will be happy to help with integrating the helm-unittest which we actively using, into the helm core.
It requires some PR and issues fixes, that I can make sure to be done.
What would be the steps in order to bring it into helm?

@shaikatz Can you draft a proposal in an issue detailing what you are thinking of integrating? This would help maintainers understand better.

@shaikatz Can you draft a proposal in an issue detailing what you are thinking of integrating? This would help maintainers understand better.

If it will help, my fork van be used as a base. The code base is a bit more aligned to the current helm code base. Also numerous bugfixes and requested features are implemented, included with unittests and documentation.
The documentation can even help to cherrypick features, if not all features are preferred.
Greetings @quintush.

Hello,
In the Apache Airflow project, we made the decision to use Python tests supported by a small function that is used to generate templates. Alternatively, you can use the terratest if you prefer Go.
Best regards,
Kamil Breguła

IMO this should be a core feature. I am with @walkafwalka that one of the forks of lrills/helm-unittest should be included.

IMO this should be a core feature. I am with @walkafwalka that one of the forks of lrills/helm-unittest should be included.

I still think is a very relevant topic for any degree of "enterprise readiness".


Support for AWS S3

Currently, there are a team of people looking into this. The prototype implementation will be available for public testing in a few weeks.
We can use this venue for discussion.


Library's non-TypeScript files' changing will not reflect on UI even if ng serve recompiled

🐞 Bug report
Command (mark with an x)

[ ] new
[ ] build
[x] serve
[ ] test
[ ] e2e
[ ] generate
[ ] add
[ ] update
[ ] lint
[ ] xi18n
[ ] run
[ ] config
[ ] help
[ ] version
[ ] doc

Is this a regression?
It will occurs in several angular-cli's version, from v6 to v9.
Description
I use Angular CLI: 9.0.7 in developing my project excellent-proj, and it has a dependency, let's call it @hello.
When I want to modify codes in @hello and debug it inside excellent-proj, a cooling workflow should be that I only need to write codes in @hello and webpack-dev-server should detects the changing, then rebuild the @hello and refresh it also in excellent-proj.
I tried following way to make it works:

use yalc to organize library's publish and updates' pushing (from library project to excellent-proj project);
start @hello with something like nodemon -x 'ng build hello && yalc push';
start excellent-proj with yalc add @hello and ng serve;

I can confirmed updates triggered library's rebuilding and the new codes can be found in excellent-proj, but something wired is only changes in library's TypeScript files can be seen in pages, changes in html and styles files remains the old ones.
🔬 Minimal Reproduction
Just init a Angular project and an Angular library with angular-cli, and then add the library to project's dependency.
In order to confirm this is not a problem of third-library like yalc, I also tried following steps, and you can do too:

ng build --watch in @hello project;
ng serve in excellent-proj project;
Everytime I modified the codes in @hello, it will triggered @hello's rebuild, and then I moved dist/hello to excellent-proj's node_modules/@hello folder;

🔥 Exception or Error
The above steps will definitely triggered Angular ng serve's recompiling work, since I got following info when I copy it into project's folder (I also tried npm link way too):
Date: 2020-05-15T15:56:47.533Z - Hash: 188263e7942a9f784fcb
5 unchanged chunks

Time: 547ms

WARNING in Emitted no files.

: Compiled successfully.

But the disappointed thing is that only changes in TypeScript file reflects in UI, not the html files and style files.
It shouldn't be the problem of my wrong usage of ng build or ng serve or somethiing like cp -r folderA/ folderB/, since I can see the new content inside project and TypeScript's changing logic, but just without html and style's changing...
:-(
🌍 Your Environment
Angular CLI: 9.0.7
Node: 10.18.0
OS: darwin x64

Angular: 9.0.7
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: No

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.900.7
@angular-devkit/build-angular     0.900.7
@angular-devkit/build-optimizer   0.900.7
@angular-devkit/build-webpack     0.900.7
@angular-devkit/core              9.0.7
@angular-devkit/schematics        9.0.7
@ngtools/webpack                  9.0.7
@schematics/angular               9.0.7
@schematics/update                0.900.7
rxjs                              6.5.5
typescript                        3.7.5
webpack                           4.41.2

Anything else relevant?
I searched many issues, like  with angular-cli v6, v7, v8 and also v9, such as https://github.com/angular/angular-cli/issues/2389, https://github.com/angular/angular-cli/issues/8168, https://github.com/angular/angular-cli/issues/2356, I think https://github.com/angular/angular-cli/issues/13588 issue is mostly the same as mine, however, it still remains open after more than one year.
It seems like an existing issues that not been resolved yet, is it a problem that is still under considered by your team? Or is it a bug basically of angular-cli?
Thanks in advance.

Indeed this is a duplicate of https://github.com/angular/angular-cli/issues/13588, I believe that it is fixed by Ivy.

@alan-agius4 I should set Ivy to false, for two reasons, the first one is that Angular official still do not recommend library to be bundle with Ivy way (mentioned in docs), and another is our project is still under the migrating from Angular v8.
However, I think the second one can be ignored though in the near future.
But as you mentioned in that issue, is there any other way to solve it with non-Ivy development?
Thx!

@hijiangtao, If you are not using Ivy, you can disable AOT during development and you shouldn’t hit this issue.
While we do recommend not to ship Ivy libraries to NPM, we do recommend using Ivy for library builds during development.
In your case however, it will not be possible since you are still using VE in your application.

@alan-agius4 I tried two approaches, but still got the problem.

I didn't use Ivy in both library codes and host project codes

In this case, I have such configurations both in my library's tsconfig.json and host project's tsconfig.json:
"angularCompilerOptions": {
    "fullTemplateTypeCheck": true,
    "strictInjectionParameters": true,
    "enableIvy": false
  }

and I run build and serve with ng serve and ng build, as mentioned in docs, so it's definitely not an Ivy compilation process:

JIT compilation is the default when you run the ng build (build only) or ng serve (build and serve locally) CLI commands...

I change the enableIvy flag to true in both two folders

I got warnings like It is not recommended to publish Ivy libraries to NPM repositories. etc, but the library is built succeed in the end. When I copied the dist folder to host project's node_module folder, ng serve recompiled the codes, but no changes in HTML can be found in pages, besides, I got an error like :

Duplicate identifier 'ɵfac'.
10     static ɵfac: ɵngcc0.ɵɵFactoryDef;

I am not sure if I did something wrong with the configurations that you recommend? I think I could put my codes out, with library codes in https://github.com/hijiangtao/fudao-hello and host project codes in https://github.com/hijiangtao/ngrx-store-example.
The above tsconfig.json shows in:

host project https://github.com/hijiangtao/ngrx-store-example/blob/master/tsconfig.json#L17-L21
library https://github.com/hijiangtao/fudao-hello/blob/master/tsconfig.json#L28-L32

And one more thing, changes in library's TypeScript files are normal all the same.

And I found a pull request that may be relevant to this problem, and I see it's status is still open, could it be the problem? https://github.com/angular/angular-cli/pull/15146
I found an issue https://github.com/angular/angular-cli/issues/16272 discussed about the style files's no change problem, but it also said it's been fixed in 9.0.0-rc.4, I tried to switch angular-cli to that version, but it didn't work for me either.

One more thing is that, even if I can see the changes in TypeScript files shows in pages, the ng serve outputs log with

WARNING in Emitted no files.
: Compiled successfully.

It's another wired thing.

Hi @hijiangtao,
It seems that the Chinese version of documentation is not up to date. in the English version https://angular.io/guide/aot-compiler#choosing-a-compiler, the documentation states that since version 9, AOT is the default for new applications.
So in your case, while you are not using Ivy, you are still building in AOT  https://github.com/hijiangtao/ngrx-store-example/blob/acb7dc452f7a52a51286ded52508f2de5b36fc3e/angular.json#L25
When not using Ivy, AOT compilation are not recommended to be used during development as incremental builds are much slower, thus you should set the AOT option to false, which would also solve the issue that you are experiencing with HTML and styles changes not being reflected during incremental builds.
Regarding to the open PR to solve this library consumption incremental builds #15146, indeed that does solves the problem, but that was a workaround to a larger issue. And since the old VE rendering engine is deprecated and AOT compilations during development are mainly recommended to be used with Ivy. That fix will not longer be landed.
On a separate note, my recommendation for a better development experience, is to have multiple projects in the same repo (aka: monorepo), which the Angular CLI supports out of the box and is the official supported development workflow.
ng new --no-create-application my-workspace
cd my-workspace
ng generate application my-app
ng generate library my-lib

Thanks for replying, @alan-agius4 , I look through docs and found it, I solved the problem by change AOT option to false indeed.
And on the other hand, I think my project will migrate to Angular v9+ finally, so I tried the Ivy build way again. I simply change the property in "angularCompilerOptions" of tsconfig.json "enableIvy": true (both in library project folder and host project folder) and get everything works fine! 🎉 But I am not sure whether that's all the things I should do to enable the goal as you said before:

While we do recommend not to ship Ivy libraries to NPM, we do recommend using Ivy for library builds during development.

And could I simply regard the words "development" here as something that works the same as npm link or "copy build /dist folder to specific /node_modules/ folder"?
Last, for the development experience, we truly considered organizing libraries and projects in one repo before, but we prefer separate them into different repos after Googleing some solutions:
How to cooperate between teams?

My team maintains mutilple background system management platforms in one repo at first, and the BIG repo bothers us day by day (but we didn't use workspace/application/library like you recommend above, we use some mechanism like modules and shared-modules to organize them).
However, all codes inside one repo (multiple libraries, as well as couple of projects) would not only largely increase the .git size (easily reached several GB+), but also increase the complexity of developers' work (I think it mainly focuses on reading/searching codes all inside my workspace, imagine that I need to find a repo1/component-specific-utility.ts inside multiple similarly named repo-*/component-*.ts files).

In order to separate them to a more maintainable state, and don't lose the good workflow of developing and debugging, we use single-spa (just purely regard it as a framework for bringing together multiple frontends in one frontend application) to routing our multiple projects (into different microservices).
We are looking for a better development experience all the time, but as far as we know, something like micro frontend mechanism would be one of the best solution right now. We would love to try something new (we are in the beginning of the repo-separating works) if you have any good advice on it.
Thanks again for your detailed and good explanation, again!

Hi again,

And could I simply regard the words "development" here as something that works the same as npm link or "copy build /dist folder to specific /node_modules/ folder"?
Yes, when you as a development want to link one project to another during development so that you can consume changes which are not necessary committed.

Note: I don't recommend using npm link for development, as also this is not a supported feature by the Angular Compiler https://github.com/angular/angular/issues/33469

My team maintains multiple background system management platforms in one repo at first, and the BIG repo bothers us day by day (but we didn't use workspace/application/library like you recommend above, we use some mechanism like modules and shared-modules to organize them).

IMHO, when having a monorepo it's very important that you split and structure it well, as otherwise you indeed will find it hard to work with. I worked in various environments, ie: using a single mono repo, multiple mono repos, and single projects repo. For me, a single mono repo always wins over all the other setups and I know live by the mantra of mono-repo everything, because for me the benefits are way too big compared to the cons. Especially when want to test changes or do changes across the board like for example updating TypeScript or Angular.
Having a monorepo, doesn't constrain you from having micro-frontends, that said, currently the Angular CLI doesn't have a micro-frontend story and you are venturing in unsupported territory.

However, all codes inside one repo (multiple libraries, as well as couple of projects) would not only largely increase the .git size (easily reached several GB+), but also increase the complexity of developers' work (I think it mainly focuses on reading/searching codes all inside my workspace, imagine that I need to find a repo1/component-specific-utility.ts inside multiple similarly named repo-/component-.ts files).

While indeed the .git folder can grow large in a mono repo, I don't think that it can reach several GB+ so easily. For example, my current .git folder for the Angular mono repo is 260Mb. Regarding search, I think that if you search for a "feature", you will get better results, but I do see that you will have more results.


better way skip load config when cached

Thank you for merge my pull request. But I found the better way,  of course same result.
#371

I'll get this sorted out, thanks~


Error on bin/opensfm_run_all data/berlin

I am trying to execute the bin/opensfm_run_all data/berlin command after successfully doing the python setup.py build
I am getting this error saying there are more than one flagfile. I have tried removing gflags using brew uninstall gflags and only have the python-gflags but that did not work. This is what it shows in my Terminal (I am using the latest MacOS) :
bin/opensfm_run_all data/berlin
Running using Python command: python
objc[21200]: Class CaptureDelegate is implemented in both /Users/admin/anaconda/lib/python2.7/site-packages/cv2/cv2.so (0x10a06e2d0) and /usr/local/opt/opencv/lib/libopencv_videoio.3.4.dylib (0x114838288). One of the two will be used. Which one is undefined.
ERROR: flag 'flagfile' was defined more than once (in files '/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_devel_gflags/gflags/work/gflags-2.2.1/src/gflags.cc' and '/tmp/gflags-20170916-46768-ftgkio/gflags-2.2.1/src/gflags.cc').

@SpeedyProgrammerX , do you solve your problem? I met the same problem.

@paulinus , @peterneubauer
Hope you can help.

From what can be read in the error, the problem seems to be that there are two versions of opencv and gflags installed. Likely one is being used during the build of opensfm while the other is being used when importing modules from python.
Make sure you either only have one opengv and one gflags libraries installed or that you use the same one when building and when running


Symbol spacing after number in math

Description
Consider the following snippet:
$
10degree \
10 degree \
10.1degree \
10.1 degree
$

There is a space between the number and the degree symbol in the last line.

Operating system
Linux
Typst version

[X] I am using the latest version of Typst

Note this reproduces not just for the degree symbol.

Great, I was wondering if it was something like this. I had noticed some other inconsistencies between numbers with and without decimal points.


[analyzer] unused field which is set in the iniatializer

class C {
  C({required int f}) : _f = f;

  final int _f;
}

shows that the field _f is unused, although it is being set in the initializer.

It's private field, and there are no other members that can use it. Фssignment doesn't count.

I see, thanks.