What's the benefit of the CloseOnDrop newtype?

First of all, apologies in advanced, my journey with rust is still young, and I might be missing some knowledge.
I'm currently upgrading from 0.32 to 0.39, and I'm facing the addition of CloseOnDrop. I'm wondering what value it adds, considering the drawback in ergonomic of the public API. Why not just implement Drop for Connection and Channel?

Which drawback are you speaking of?
Calling .into_inner() will restore the previous behaviour while keeping the CloseOnDrop will automatically close the channel or connection when dropped. It’s an easy way of making that optional, with an easy way to opt out of it, and since it implements Deref it’s basically transparent.
Which issue are you facing?

Also, Connection and Channel are used internally by lapin and are clonable, so it felt safer to split this

Not a big issue, just a bit more cumbersome API. I was just curious. Thanks for answering!

What is the use case in the public API for a Connection or Channel that does not close on drop? In the very unlikely case a user of this library wants to leak a connection or channel (i.e. drop it without closing the connection/channel), they could do that with mem::forget anyway. This seems like extra API noise, and worse ergonomics when needing to name the types to store a Connection/Channel, without any tangible benefit.

In my personal use case, I never use the automatic close on drop. I really don't see what's the problem here, tbh, am I really missing some crucial ergonomic point?
Having the connection and the channels close on drop doesn't guarantee that the channels will be closed before the connection, for example. It's not a really big deal, but it produces noise for noting.
I might want to create one channel, then no to be bothered with the connection anymore and only carry my channel around, why would it be closed as soon as I don't use the connection anymore?

The general pattern in every similar Rust library is that objects own their resources, and the resources are dropped when the object is dropped. Any different behaviour is surprising, and makes the library less ergonomic. Like OP, I took a double-take the first time I saw CloseOnDrop. As well as being unidiomatic Rust, it also makes use of the library more prone to pitfalls like memory/fd leaks. This is somewhat ameliorated by the fact that you have to do extra work to unwrap the type from the CloseOnDrop, but the methods that do that unwrapping are not marked unsafe despite returning resources that will leak unless the programmer remembers to clean them up.
Keeping the Connection open as long as any Channel is using it would typically be solved by having the Channels share ownership of the Connection, for example with an Rc/Arc, so that the Connection was not dropped until the last Channel created from it was. This is a pretty common pattern in similar Rust libraries. If there are other types that need to keep a Channel open, you could follow a similar pattern for those.

The problem being that the Connection already owns the Channels, as it needs to use a channel for e.g. .... closing itself. So you end up with a cicle and never release anything.
There definitely is room for improvement here, and I'm still trying stuff in this area and am totally open to things here (#276 being one step closer to dropping this behaviour shows that I'm wiling to do that, I think).
There has been lots of discussion lately around "leaks" and memory management, especially around rio and such, and afaik the consensus was that it's easy to "leak" data in safe rust thanks to mem::forget or ManuallyDrop for example, which tends to confirm that into_inner shouldn't be unsafe imo, but I'd be happy to make it unsafe if it makes things clearer wrt the current state of this

After some more tinking and tinkering, CloseOnDrop is now gone.
Channels are closed when dropped, unless it has already been closed.
Connection is closed when dropped and when all the Channels have been dropped, unless it has already been closed.


do not re-raise every exception from main()

Expected Behavior
When an error occurs, the stacktrace should show the right code section where it happened.
Actual Behavior
Whatever unexpected error occurs, the stacktrace shows the main() function as the erroneous code location.
Traceback (most recent call last):
  File "pokecli.py", line 502, in <module>
    main()
  File "pokecli.py", line 133, in main
    raise e
WhateverError: any unexpected error occured, I don't know where it happened

Steps to Reproduce
Run the bot until an error occurs.
Other Information
OS: Linux 4.6.4 (ArchLinux)
Git Commit: ae0ae815089bf1e3b17497b476d524a0468949e2
Python Version: 2.7.12

I believe it's already fixed in PR #2944

you're right, I didn't test the dev branch before posting, my bad.


Update e2e.yml

Installing bazelisk@latest now seems to require Go 1.22
https://github.com/launchableinc/cli/actions/runs/11133632530/job/30940136056

Summary by CodeRabbit

Chores

Updated the Go version used in the end-to-end testing workflow from 1.17 to 1.22.

Test run: https://github.com/launchableinc/cli/actions/runs/11135106308

#911 solved this


Add force option to the gsub_file action

This allows for running gsub_file regardless of whether running in invoke or revoke mode

Force pushed to add doc comment

Force pushed to add doc comment


Display the return of the circuit

If circuit returns some value, the only way to find the result is to find it manually in the assignment table. Need more user-friendly approach

Moved to #77


Product names have duplicates or very similar names

Describe the bug
The product name list contains a lot of duplicates (coming from the upstream NVD)
To Reproduce
Steps to reproduce the behavior:

Search for apache
Find http_server (by apache) and apache_http_server (by apache)

Expected behavior
Normalized list of products
Additional context
The product names are coming from NVD and currently read only.
@felixwilhelm

@bluec0re  something like https://salsa.debian.org/security-tracker-team/security-tracker/-/blob/master/data/CPE/aliases would help to fix this to certain extent.

Thanks :) Not sure when I'll have the time to address this issue, but this alias list will definitively help!

Thanks :) Not sure when I'll have the time to address this issue, but this alias list will definitively help!


trouble real requests

What problem does this feature solve?
Please, I have a question, I realized that the requests are a mock, how could I disable this mock and be able to test triggering the real requests?
What does the proposed solution look like?
how could i disable mock and test on real requests?

Hello @WayUltimaMilha ,
Please don't create duplicate issues. Your issue has already been answered at : https://github.com/themeselection/materio-vuetify-vuejs-laravel-admin-template-free/issues/5
~Regards


zh-translation: docs/root/intro/arch_overview/security/external_deps.rst

ref: https://github.com/cloudnativeto/envoy/issues/37

For an explanation of how to fill out the fields, please see the relevant section
in PULL_REQUESTS.md
Commit Message:
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated:]

@helight 修改已经提交，请查阅

/LGTM

/LGTM


Fix CST nodes pointing to stale AST nodes when parsed from actions

This fixes CST node element pointing to stale AST nodes when parsed from an action. This is important for CST based services such as a formatter which can fail because keywords or properties are incorrectly assumed to be owned by another AST node. Removing the element assignment fails the test.

Hey @daumantas-kavolis-sensmetry, thanks for contributing. Any specific reason why you closed this PR?

Found some issues, the element should only be updated for action CSTs. As it is now, it breaks the rest of formatting.


Fix compilation error for types named "Option" with a repeated field

This fixes a compilation error I ran into with this protobuf.

Thanks for the PR!  This has been merged to master.


'active_state' parameter - misbehaving

I get an unexpected error when using the 'active_state' parameter in the InputDevice class.
Please go here: https://www.raspberrypi.org/forums/viewtopic.php?f=32&t=241064
for full details.
Many thanks.

As @DougieLawson says, it sounds like you've got an old version of GpioZero - see https://gpiozero.readthedocs.io/en/stable/faq.html#how-can-i-tell-what-version-of-gpiozero-i-have-installed for more info about that.
And the error Dougie gets is because .wait_for_active() is only available on DigitalInputDevice or descendants, not on the base InputDevice class.

Hi Andrew,
Many thanks for your prompt response – much appreciated.
I can confirm that I’m using V1.5.0 which I believe is the latest version. I think my problem is not down to the version, but rather the fact that I was using .wait_for_active() with the base InputDevice class, whereas (as you’ve kindly clarified) that is only available with the DigitalInputDevice class (or descendants). When I use is_active  or value everything works fine.
Many thanks for clearing this up for me.
Kind regards,
Tony.
From: Andrew Scheller<EMAIL_ADDRESS>Sent: 23 May 2019 00:46
To: RPi-Distro/python-gpiozero
Cc: TonyHSmith; Author
Subject: Re: [RPi-Distro/python-gpiozero] 'active_state' parameter - misbehaving (#768)
As @DougieLawson https://github.com/DougieLawson  says, it sounds like you've got an old version of GpioZero - see https://gpiozero.readthedocs.io/en/stable/faq.html#how-can-i-tell-what-version-of-gpiozero-i-have-installed for more info about that.
And the error Dougie gets is because .wait_for_active() is only available on DigitalInputDevice https://gpiozero.readthedocs.io/en/stable/api_input.html#digitalinputdevice  or descendants, not on the base InputDevice class.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/RPi-Distro/python-gpiozero/issues/768?email_source=notifications&email_token=AL6YW6UKY25LM3V5IC4PPY3PWXLLFA5CNFSM4HOUZF4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWAVHXY#issuecomment-495014879 , or mute the thread https://github.com/notifications/unsubscribe-auth/AL6YW6SHKNEOGQERB4UFJ2TPWXLLFANCNFSM4HOUZF4A .Image removed by sender.

This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


chore: Update CODEOWNERS for @googleapis/cloud-storage-dpe

This was fixed in https://github.com/googleapis/conformance-tests/pull/59


Make sure all resource files are deleted for REST tests in CI

REST tests on develop should delete all resource files, even resources for tests that fail.

@mjstealey I am reassigning this to you and I can help with this if needed.

self cleaning jobs implemented, even on failure


madVR Support

As it stands, if you use madVR, other people can play and skip just fine, but they can't pause. I'm pretty sure this is a known issue, but formal reports are always good.

Yes, it is a known issue and is noted on the troubleshooting page available at http://syncplay.pl/guide/trouble/ ("If you are using MPC-HC and have set the video filter to madVR then you will need to revert to the default filter. madVR is currently incompatible with Syncplay.")
As the issue has yet to be resolved there's nothing wrong with prompting me to give it some further consideration. User reports are a valuable tool to help prioritise the use of limited development resources.
I seem to recall that it was madVR either not listening properly to the MPC-HC API or giving it incorrect information and that we can't make madVR work with Syncplay from our side. However, I will look into:

The precise cause of the issue, and whether it can be overcome via a workaround within Syncplay;
Whether this issue has been reported to the relevant MPC-HC/madVR developers, and whether a fix has already been issued;
Whether MPC-HC can be told not to use madVR with Syncplay (e.g. through a command-line argument), and whether this would cause more problems than it solves; and
If it is not fixed from Syncplay's side, making it clearer on the Syncplay website that madVR is not supported (or is only supported in newer version of the related software if it gets fixed), and if possible detecting madVR messing things up so Syncplay can give an appropriate warning message.

You can pause the video with through your own Syncplay client though; does that use a different function from when someone else wants to pause?

madVR has a network interface, from which you can control the clients playback, described in "net-protocol.txt". If the bug is not fixed you could look at this.

Ooglogput: I'll look into the relevant behaviour to see if I can obtain a better understanding of what is happening. It was a long time ago that it was last investigated.
schoerg: Thanks for the heads up. It could potentially be very useful, although hopefully it won't be necessary to support yet another API (which could result in its own compatibility issues and would need maintaining).

Might also be worth mentioning that MPC-HC's own web interface does work with madVR; at least for everything I've tested.

I just tried and wasn't able to replicate. Could you please let me know if the problem occurs with the latest version of madVR and MPC-HC. If so, do you have any other changes from the default, e.g. a different subtitle renderer, and if that is disabled does that make a difference?

Latest version of both; I do use xy-VSFilter, but it seems to have no effect. I tried uninstalling madVR, which made it work, with or without xy-VSFilter. With madVR it doesn't work, even without xy-VSFilter. I did make some progress, though, by resetting madVR's settings, and so far it seems to work. I will try fiddling with it and report back.

Thanks for the detective work Ooglogput, I'll look into whether there is an easy workaround, and if I can't get it to work then I'll update the website to let users know of the issue.

See https://github.com/Syncplay/syncplay/issues/73


Unable to start the package

After installing packages I ran yarn start to run this project, I got the following error:
).server(dirRoot, () => { ^ SyntaxError: Unexpected token )
Please help

see https://github.com/wellyshen/react-cool-starter/issues/108 for fix :)

@AbhayShiro Fixed this issue by the latest master branch, please try it.


Swoole Factory

I recommend to implement a swoole factory instead of a raw instance invocation naturally based on a protocol-level syntax which is comparable to DSNs:
swoole:
  webserver:
    dsn: 'http://<IP_ADDRESS>'
  session:
    dsn: 'tcp://<IP_ADDRESS>'
    encryption: libsodium
    private: some128bitprivatekeyhexrepresentation
    public: [
      - host: "somewhere.php.earth"
         key: some128bitpublickeyhexrepresentation
      - host: "elsewhere.php.earth"
         key: another128bitpublickeyhexrepresentation
    ]
  websocket:
    dsn: 'websocket://path/to/socketfile.socket'

This config syntax will create:

an instance of a swoole HTTP server listening on any network level named webserver
an instance of a swoole TCP server listening on localhost, used to manage sessions cross domain
an instance of a swoole web socket server listening on a web socket.

Maybe this would provide a more generic swoole engine implementation that could be widely used.
What do you think about this recommendation?

Makes sense. Good for expanding in the future if need be, too.

Thanks for suggestion. Might be added one day, but so far this project hit the dead end and won't be moving forward in this form anymore. Maybe something better will be done in the future elsewhere. Cheers.


The page title and breadcrumb trail are not set consistently.

Describe the bug
Not all pages set a page title or breadcrumb trail, which causes them to retain the title and trail of the previous page. The names are also inconsistent e.g. for the home page it's "DSpace Angular :: Home" for the Community list it's "DSpace - Community List" etc.
To Reproduce
Steps to reproduce the behavior:

Go to the community list page. Note there is no breadcrumb trail, but the page title says "DSpace - Community List"
Click a community. Note that there is a trail now, but the page title still says "DSpace - Community List" instead of the name of the Community.

This is just one example, there are plenty more
Expected behavior
Every page should have a distinct page title and breadcrumb trail, and the values, delimiters, etc. should be consistent across the repository
Related work
This can likely be fixed in the context of https://github.com/DSpace/dspace-angular/issues/728. But I created this as a separate issue to ensure we don't lose track of it.

As discussed today, this should be fixed in the context of #728 (i.e. assigned to the same person).  Adding an extra 4 hours to this ticket to ensure it can be addressed at the same time.

As discussed today, this should be fixed in the context of #728 (i.e. assigned to the same person).  Adding an extra 4 hours to this ticket to ensure it can be addressed at the same time.


混淆报警告

Warning:AutoContentFrameLayout: can't find referenced method 'android.content.Context getContext()' in program class AutoContentFrameLayout
Warning:AutoContentFrameLayout: can't find referenced method 'boolean isInEditMode()' in program class AutoContentFrameLayout
Warning:there were 2 unresolved references to program class members.
Warning:Exception while processing task java.io.IOException: Please correct the above warnings first.

你处理好了吗

加了上面那两句混淆还是报错啊


Logging

Adding additional logging to help debug when components are down.

:+1:

Hi @josh-devops-center thanks for the great contribution. I will release this in 1.1.0, but I'm currently waiting for @KristianOellegaard to give me permission to do so.


Sampler punchup

Addresses #26
Partially addressed #33

I will remove compatibility23 and replace it with six in a future pull request

Coverage decreased (-3.6%) to 90.843% when pulling eb09031c27639a998bac1a0230a3556f26f0c1f9 on arcondello:sampler_punchup into 47ac1f4470d35c2adebc61c0cc2bf183203f5c61 on dwavesystems:master.


[tool_crash] UnsupportedError: Unsupported operation: Illegal character in path: C:

Command
flutter --no-color test --machine --platform chrome test

Steps to Reproduce

Run a Flutter Test on Windows with the --platform chrome flag in IntelliJ IDEA

Logs
UnsupportedError: Unsupported operation: Illegal character in path: C:
#0      _Uri._checkWindowsPathReservedCharacters (dart:core/uri.dart:1841:11)
#1      _Uri._toWindowsFilePath (dart:core/uri.dart:2879:7)
#2      _Uri.toFilePath (dart:core/uri.dart:2854:38)
#3      JsonReporter._frameInfo.<anonymous closure> (package:test_core/src/runner/reporter/json.dart:314:19)
#4      IterableExtension.firstWhereOrNull (package:collection/src/iterable_extensions.dart:246:15)
#5      JsonReporter._frameInfo (package:test_core/src/runner/reporter/json.dart:312:35)
#6      JsonReporter._onTestStarted (package:test_core/src/runner/reporter/json.dart:145:12)
#7      _rootRunUnary (dart:async/zone.dart:1407:13)
#8      _CustomZone.runUnary (dart:async/zone.dart:1300:19)
#9      _CustomZone.runUnaryGuarded (dart:async/zone.dart:1209:7)
#10     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
#11     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#12     _SyncBroadcastStreamController._sendData (dart:async/broadcast_stream_controller.dart:377:25)
#13     _BroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:244:5)
#14     _rootRunUnary (dart:async/zone.dart:1399:47)
#15     _CustomZone.runUnary (dart:async/zone.dart:1300:19)
#16     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1209:7)
#17     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
#18     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#19     _SyncBroadcastStreamController._sendData (dart:async/broadcast_stream_controller.dart:377:25)
#20     _BroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:244:5)
#21     LiveSuiteController.reportLiveTest (package:test_core/src/runner/live_suite_controller.dart:133:30)
#22     Engine._runLiveTest (package:test_core/src/runner/engine.dart:364:21)
<asynchronous suspension>
#23     Engine._runGroup (package:test_core/src/runner/engine.dart:325:13)

[✓] Flutter (Channel stable, 3.3.8, on Microsoft Windows [Version 10.0.22622.575], locale en-US)
    • Flutter version 3.3.8 on channel stable at C:\Users\jared\dev\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 52b3dc25f6 (2 months ago), 2022-11-09 12:09:26 +0800
    • Engine revision 857bd6b74c
    • Dart version 2.18.4
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
    • Android SDK at C:\Users\jared\AppData\Local\Android\sdk
    • Platform android-33, build-tools 32.1.0-rc1
    • Java binary at: C:\Users\jared\.jdks\corretto-11.0.14\bin\java.exe
    • Java version OpenJDK Runtime Environment Corretto-<IP_ADDRESS>.1 (build 11.0.14+9-LTS)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[✗] Visual Studio - develop for Windows
    ✗ Visual Studio not installed; this is necessary for Windows development.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions).

[✓] IntelliJ IDEA Ultimate Edition (version 2022.2)
    • IntelliJ at C:\Users\jared\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\222.4345.14
    • Flutter plugin version 71.2.6
    • Dart plugin version 223.7571.203

[✓] IntelliJ IDEA Ultimate Edition (version 2022.3)
    • IntelliJ at C:\Users\jared\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\223.7571.182
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin version 222.4345.14

[✓] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22622.575]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 109.0.5414.75
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 108.0.1462.46

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

! Doctor found issues in 2 categories.

Flutter Application Metadata
Type: app
Version: 1.2.1+1
Material: true
Android X: false
Module: false
Plugin: false
Android package: null
iOS bundle identifier: null
Creation channel: unknown
Creation framework version: ffb2ecea5223acdd139a5039be2f9c796962833d
Plugins
cloud_firestore_web-2.8.10
cloud_functions-3.3.9
cloud_functions_web-4.3.7
connectivity_plus-3.0.2
device_info_plus-7.0.1
firebase_core-1.24.0
firebase_core_web-1.7.3
firebase_performance-0.8.3+3
firebase_performance_web-0.1.1+8
firebase_remote_config-1.0.4
firebase_remote_config_web-1.1.8
flutter_inappwebview-5.7.2+3
network_info_plus-3.0.1
package_info_plus-3.0.2
path_provider-2.0.11
path_provider_android-2.0.22
path_provider_ios-2.0.11
path_provider_linux-2.1.7
path_provider_macos-2.0.7
path_provider_windows-2.1.3
printing-5.9.3
shared_preferences-2.0.16
shared_preferences_android-2.0.14
shared_preferences_foundation-2.1.1
shared_preferences_linux-2.1.2
shared_preferences_web-2.0.4
shared_preferences_windows-2.1.2
url_launcher-6.1.7
url_launcher_android-6.0.22
url_launcher_ios-6.0.17
url_launcher_linux-3.0.1
url_launcher_macos-3.0.1
url_launcher_web-2.0.13
url_launcher_windows-3.0.1

I'll also attach my pubspec since it seems that may be related
description: Analyze your posture. Compare your surface. Mitigate your risk.

# The following line prevents the package from being accidentally published to
# pub.dev using `flutter pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev

# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.2.1+1

environment:
  sdk: ">=2.17.0 <3.0.0"

# Dependencies specify other packages that your package needs in order to work.
# To automatically upgrade your package dependencies to the latest versions
# consider running `flutter pub upgrade --major-versions`. Alternatively,
# dependencies can be manually updated by changing the version numbers below to
# the latest version available on pub.dev. To see which dependencies have newer
# versions available, run `flutter pub outdated`.
dependencies:
  flutter:
    sdk: flutter
  cloud_functions: #3.0.3
  csv: ^5.0.0
  firebase_core: ^1.13.1
  validators: #3.0.0
  chart_sparkline: ^1.0.7
  flutter_radar_chart:
    git:
      url: https://github.com/JaredEzz/flutter_radar_chart
  google_fonts: 2.1.1
  firebase_remote_config: ^1.0.4
  firebase_remote_config_web: ^1.0.4
  lottie: ^1.2.2
  carousel_slider: ^4.0.0
  youtube_player_iframe: ^2.2.2
  idb_shim: ^2.0.1
  intl: ^0.17.0
  pie_chart: ^5.3.0
  raygun4flutter: ^1.1.5
  pdf: ^3.8.1
  printing: ^5.9.1
  firebase_performance: ^0.8.2
  fl_chart:
  json_serializable: ^6.5.1
  json_annotation: ^4.7.0
dev_dependencies:
  flutter_test:
    sdk: flutter
  build_runner: #2.0.4
  mocktail: ^0.3.0
dependency_overrides:
  # overridden to avoid error on 4.5.2 with FirebaseAppPlatform.verifyExtends(_delegate); - see https://stackoverflow.com/questions/74228526/firebaseappplatform-verifyextends-error-while-running-flutter-test
  # can potentially be removed in a few versions after this is fixed
  firebase_core_platform_interface: 4.5.1
  # The "flutter_lints" package below contains a set of recommended lints to
  # encourage good coding practices. The lint set provided by the package is
  # activated in the `analysis_options.yaml` file located at the root of your
  # package. See that file for information about deactivating specific lint
  # rules and activating additional ones.
  flutter_lints: ^1.0.0
  test: ^1.17.10

# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

# The following section is specific to Flutter.
flutter:

  # The following line ensures that the Material Icons font is
  # included with your application, so that you can use the icons in
  # the material Icons class.
  uses-material-design: true

  # To add assets to your application, add an assets section, like this:
  assets:
    - resources/
    - resources/logos/
    - resources/icons/

  # An image asset can refer to one or more resolution-specific "variants", see
  # https://flutter.dev/assets-and-images/#resolution-aware.

  # For details regarding adding assets from package dependencies, see
  # https://flutter.dev/assets-and-images/#from-packages

  # To add custom fonts to your application, add a fonts section here,
  # in this "flutter" section. Each entry in this list should have a
  # "family" key with the font family name, and a "fonts" key with a
  # list giving the asset and other descriptors for the font. For
  # example:
  # fonts:
  #   - family: Schyler
  #     fonts:
  #       - asset: fonts/Schyler-Regular.ttf
  #       - asset: fonts/Schyler-Italic.ttf
  #         style: italic
  #   - family: Trajan Pro
  #     fonts:
  #       - asset: fonts/TrajanPro.ttf
  #       - asset: fonts/TrajanPro_Bold.ttf
  #         weight: 700
  #
  # For details regarding fonts from package dependencies,
  # see https://flutter.dev/custom-fonts/#from-packages

I am unable to replicate this tool crash, but I think looking at the command being run:
flutter --no-color test --machine --platform chrome test
Can you try by removing --machine argument ?, it seems the combination of --machine and --platform may be a factor here that could be leading to the crash.

The machine argument cannot be removed from the IntelliJ configuration

I see, thanks for the update.

/cc @christopherfujino

My suspicion is that this is due to Windows paths appearing in the source maps. We recently switched to platform-independent web SDK build, which should fix this, if it was caused by source maps.
Can you please try again on the latest main branch?

I upgraded to 3.7.1 from 3.3.10 and ran flutter --no-color test --machine --platform chrome test again (which is the default command when using the default run configuration in IntelliJ IDEA), with the following results. I'm on the stable branch.
C:\Users\jared\dev\flutter\bin\flutter.bat --no-color test --machine --platform chrome test
Testing started at 11:26 AM ...

Oops; flutter has exited unexpectedly: "Unsupported operation: Illegal character in path: C:".
A crash report has been written to C:\Users\jared\IdeaProjects\isurrf_ui\flutter_17.log.

log contents:
Flutter crash report.
Please report a bug at https://github.com/flutter/flutter/issues.

## command

flutter --no-color test --machine --platform chrome test

## exception

UnsupportedError: Unsupported operation: Illegal character in path: C:

#0      _Uri._checkWindowsPathReservedCharacters (dart:core/uri.dart:1844:11)
#1      _Uri._toWindowsFilePath (dart:core/uri.dart:2882:7)
#2      _Uri.toFilePath (dart:core/uri.dart:2857:38)
#3      JsonReporter._frameInfo.<anonymous closure> (package:test_core/src/runner/reporter/json.dart:314:19)
#4      IterableExtension.firstWhereOrNull (package:collection/src/iterable_extensions.dart:247:15)
#5      JsonReporter._frameInfo (package:test_core/src/runner/reporter/json.dart:312:35)
#6      JsonReporter._onTestStarted (package:test_core/src/runner/reporter/json.dart:145:12)
#7      _rootRunUnary (dart:async/zone.dart:1414:13)
#8      _CustomZone.runUnary (dart:async/zone.dart:1307:19)
#9      _CustomZone.runUnaryGuarded (dart:async/zone.dart:1216:7)
#10     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
#11     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#12     _SyncBroadcastStreamController._sendData (dart:async/broadcast_stream_controller.dart:377:25)
#13     _BroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:244:5)
#14     _rootRunUnary (dart:async/zone.dart:1406:47)
#15     _CustomZone.runUnary (dart:async/zone.dart:1307:19)
#16     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1216:7)
#17     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
#18     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#19     _SyncBroadcastStreamController._sendData (dart:async/broadcast_stream_controller.dart:377:25)
#20     _BroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:244:5)
#21     LiveSuiteController.reportLiveTest (package:test_core/src/runner/live_suite_controller.dart:133:30)
#22     Engine._runLiveTest (package:test_core/src/runner/engine.dart:364:21)
<asynchronous suspension>
#23     Engine._runGroup (package:test_core/src/runner/engine.dart:325:13)
<asynchronous suspension>
#24     Engine.run.<anonymous closure>.<anonymous closure> (package:test_core/src/runner/engine.dart:268:13)
<asynchronous suspension>

flutter doctor
[✓] Flutter (Channel stable, 3.7.1, on Microsoft Windows [Version 10.0.22622.575], locale en-US)
    • Flutter version 3.7.1 on channel stable at C:\Users\jared\dev\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 7048ed95a5 (2 days ago), 2023-02-01 09:07:31 -0800
    • Engine revision 800594f1f4
    • Dart version 2.19.1
    • DevTools version 2.20.1

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

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
    • Android SDK at C:\Users\jared\AppData\Local\Android\sdk
    • Platform android-33-ext4, build-tools 33.0.1
    • Java binary at: C:\Users\jared\.jdks\corretto-11.0.14\bin\java.exe
    • Java version OpenJDK Runtime Environment Corretto-<IP_ADDRESS>.1 (build 11.0.14+9-LTS)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[✗] Visual Studio - develop for Windows
    ✗ Visual Studio not installed; this is necessary for Windows development.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions).

[✓] IntelliJ IDEA Ultimate Edition (version 2022.3)
    • IntelliJ at C:\Users\jared\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\223.8617.56
    • Flutter plugin version 71.3.6
    • Dart plugin version 223.8617.8

[✓] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22622.575]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 109.0.5414.120
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 109.0.1518.70

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

! Doctor found issues in 2 categories.

I've also included my flutter doctor output to make sure I'm on the branch you're suggesting.

Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 3.7.1, on Microsoft Windows [Version 10.0.22622.575], locale en-US)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
[√] Chrome - develop for the web
[X] Visual Studio - develop for Windows
X Visual Studio not installed; this is necessary for Windows development.
Download at https://visualstudio.microsoft.com/downloads/.
Please install the "Desktop development with C++" workload, including all of its default components
[!] Android Studio (not installed)
[√] IntelliJ IDEA Ultimate Edition (version 2022.3)
[√] Connected device (3 available)
[√] HTTP Host Availability
! Doctor found issues in 2 categories.

Flutter crash report.
Please report a bug at https://github.com/flutter/flutter/issues.

## command

flutter --no-color test --machine --platform chrome test

## exception

UnsupportedError: Unsupported operation: Illegal character in path: C:

#0      _Uri._checkWindowsPathReservedCharacters (dart:core/uri.dart:1844:11)
#1      _Uri._toWindowsFilePath (dart:core/uri.dart:2882:7)
#2      _Uri.toFilePath (dart:core/uri.dart:2857:38)
#3      JsonReporter._frameInfo. (package:test_core/src/runner/reporter/json.dart:314:19)
#4      IterableExtension.firstWhereOrNull (package:collection/src/iterable_extensions.dart:247:15)
#5      JsonReporter._frameInfo (package:test_core/src/runner/reporter/json.dart:312:35)
#6      JsonReporter._onTestStarted (package:test_core/src/runner/reporter/json.dart:145:12)
#7      _rootRunUnary (dart:async/zone.dart:1414:13)
#8      _CustomZone.runUnary (dart:async/zone.dart:1307:19)
#9      _CustomZone.runUnaryGuarded (dart:async/zone.dart:1216:7)
#10     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
#11     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#12     _SyncBroadcastStreamController._sendData (dart:async/broadcast_stream_controller.dart:377:25)
#13     _BroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:244:5)
#14     _rootRunUnary (dart:async/zone.dart:1406:47)
#15     _CustomZone.runUnary (dart:async/zone.dart:1307:19)
#16     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1216:7)
#17     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
#18     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#19     _SyncBroadcastStreamController._sendData (dart:async/broadcast_stream_controller.dart:377:25)
#20     _BroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:244:5)
#21     LiveSuiteController.reportLiveTest (package:test_core/src/runner/live_suite_controller.dart:133:30)
#22     Engine._runLiveTest (package:test_core/src/runner/engine.dart:364:21)

#23     Engine._runGroup (package:test_core/src/runner/engine.dart:325:13)

#24     Engine.run.. (package:test_core/src/runner/engine.dart:268:13)

## flutter doctor

[✓] Flutter (Channel stable, 3.7.1, on Microsoft Windows [Version 10.0.22622.575], locale en-US)
• Flutter version 3.7.1 on channel stable at C:\Users\jared\dev\flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 7048ed95a5 (2 days ago), 2023-02-01 09:07:31 -0800
• Engine revision 800594f1f4
• Dart version 2.19.1
• DevTools version 2.20.1
[✓] Windows Version (Installed version of Windows is version 10 or higher)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
• Android SDK at C:\Users\jared\AppData\Local\Android\sdk
• Platform android-33-ext4, build-tools 33.0.1
• Java binary at: C:\Users\jared.jdks\corretto-11.0.14\bin\java.exe
• Java version OpenJDK Runtime Environment Corretto-<IP_ADDRESS>.1 (build 11.0.14+9-LTS)
• All Android licenses accepted.
[✓] Chrome - develop for the web
• Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe
[✗] Visual Studio - develop for Windows
✗ Visual Studio not installed; this is necessary for Windows development.
Download at https://visualstudio.microsoft.com/downloads/.
Please install the "Desktop development with C++" workload, including all of its default components
[!] Android Studio (not installed)
• Android Studio not found; download from https://developer.android.com/studio/index.html
(or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions).
[✓] IntelliJ IDEA Ultimate Edition (version 2022.3)
• IntelliJ at C:\Users\jared\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\223.8617.56
• Flutter plugin version 71.3.6
• Dart plugin version 223.8617.8
[✓] Connected device (3 available)
• Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22622.575]
• Chrome (web)      • chrome  • web-javascript • Google Chrome 109.0.5414.120
• Edge (web)        • edge    • web-javascript • Microsoft Edge 109.0.1518.70
[✓] HTTP Host Availability
• All required HTTP hosts are available
! Doctor found issues in 2 categories.

@JaredEzz can you try again from the master branch? The fix yjbanov referenced is not yet in stable.

I'm okay to wait until it makes it into stable. For various reasons I'd like to stay on stable for work and such

I'm okay to wait until it makes it into stable. For various reasons I'd like to stay on stable for work and such

So, if you don't want to try to repro on master, that is fine. However I will close this issue as not reproducible (as no maintainers have been able to reproduce), and it is not verified that the issue has actually been fixed.
You don't need to do development from master, but attempting to reproduce this on the master channel will verify that the root cause is known and has already been fixed.


Update README.md

Added missing npm install instruction, necessary to install all required packages

Thanks Kaan!


Add a datasource which will list all Artifactory repositories of one kind (local, remote)

Is your feature request related to a problem? Please describe.
We are managing several virtual repositories which includes many local a remote repositories. Artifactory users are creating new repos from time to time and we need to keep our virtual repositories up to date including those newly created local/remote repos. We need to get a list of all repos of one kind to include them regularly to our virtual repos. At this time we have to call Artifactory API to get this list.
Describe the solution you'd like
Add a terraform datasource, maybe one for local a one for remote repositories, which will list all repos of given type.
Describe alternatives you've considered
We have to use Artifactory API to get this list at this time.
Additional context
Add any other context or screenshots about the feature request here.

Is there any improvement?

Do you have some sample syntax?

`#Maven
data "http" "maven_locals" {
url = "${var.artifactory_url}artifactory/api/repositories?type=local&packageType=maven"
request_headers = {
Accept        = "application/json"

Content-Type  = "application/json;charset=UTF-8"

Authorization = "Bearer ${var.token}"

}
}`

@Jan-Pleva FYI I'm working on add this datasource(s) now.

@Jan-Pleva Do you have a preference for either a single data source (e.g. artifactory_respositories that let you specify package_type and repository_type or four more fine grained data sources, one for each repository type (e.g. artifactory_local_repositories, artifactory_remote_repositories, etc.)?
And are you looking for particular attribute(s) or wish to have all of them?

Both are needed, but the package typ can be taken from virtual type, it has to be same type.


Always apply fpi

Problem
See https://neondb.slack.com/archives/C04DGM6SMTM/p1700560921471619
Summary of changes
Update relation size cache for FSM fork in WAL records filter
Checklist before requesting a review

[ ] I have performed a self-review of my code.
[ ] If it is a core feature, I have added thorough tests.
[ ] Do we need to implement analytics? if so did you add the relevant metrics to the dashboard?
[ ] If this PR requires public announcement, mark it with /release-notes label and add several sentences in this section.

Checklist before merging

[ ] Do not forget to reformat commit message to not include the above checklist

@knizhnik can you please squash commit into one and write few sentences in the commit message summarizing the issue and the solution. Updated version of https://neondb.slack.com/archives/C04DGM6SMTM/p1700572929520219?thread_ts=1700560921.471619&cid=C04DGM6SMTM should be good.
@MMeent @hlinnaka that was causing issues with replicas in prod. Any reasons to not merge this right now?

For posterity, here's the discussion that led to this change:

Probably unrelated, but during 16:04 start this compute also had this interesting error:
2023-11-20 16:05:31.836 GMT ttid=8db3040cec26477a79c165c69686204b/d6167bf6f87d164e7e75a403307dca77 [2377] FATAL:  unexpected data beyond EOF in block 27 of relation base/16389/16441_fsm
2023-11-20 16:05:31.836 GMT ttid=8db3040cec26477a79c165c69686204b/d6167bf6f87d164e7e75a403307dca77 [2377] HINT:  This has been seen to occur with buggy kernels; consider updating your system.
2023-11-20 16:05:31.836 GMT ttid=8db3040cec26477a79c165c69686204b/d6167bf6f87d164e7e75a403307dca77 [2377] CONTEXT:  WAL redo at 7/D4838678 for Heap2/PRUNE: snapshotConflictHorizon: 823667, nredirected: 0, ndead: 1; blkref #0: rel 166…

FSM updates are usually not WAL logged...
It can be caused by race condition caused by our algorithm of applying changes at replica (only pages present in shared buffers are updated).
I trying to understand now how it can happen...

We are using cache for relation size at compute to speedup smgrnblocks calls. It is safe at master but may cause problems at replica where updates of some pages are not handled (because target pages are not present in shared buffers).
Assume the following scenario:
Master extend relation
Replica receives correspondent HEAP_INSERT records but to not apply them because target pages are not present in shared buffers. It means that cached relation size is not changed.
Replica is accessing some page beyond current relation size. It is normally received from page server and stored in shared buffers. But relation size is not updated (because read is not expected to extend relation).
We get some HEAP_INSERT record which touches pages present in shared buffer and as a result this WAL record is applied. It tries to extend FSM relation but found out valid buffer beyond end of the relation and produce this error.
I am not sure now what can be the best fix of the problem.
Always apply WAL records which extends relation (doesn't matter whether correspondent page is present in shared buffers or not)?
Disable relation cache at replica?  It may significantly slowdown replica.
Always apply WAL records containing FPI (in this case there is not need to request page from PS).
Last option seems to be the most relevant. As far as I know relation is extended by zeros  FPI. We do not loose something in performance because no need to download record from PS. And page image is already there.

Please notice that we update relation size cache in neon_redo_read_buffer_filter
So even if we are skipping update for a page which is not present in shared buffer, we still update relation size cache.
But it works only for the main fork. FSM for is not updated directly. It is updated when some page of main fork is updated. And XLogReadBufferForRedo is not called in this case. We use normal buffer read which is not skipping pages not present in shared buffers and is not calling neon_redo_read_buffer_filter which can update relation cache size.
So in few words the reason of the problem is that skipping direct updates of main fork relation pages we also skipping indirect updates of FSM fork.
Concerning my proposal, looks like HEAP_INSERT is in any case write page if XLOG_HEAP_INIT_PAGE is set. But XLOG_FPI is calling XLogReadBufferForRedo which returns BLK_DONE is page is not present in shared buffers.
And XLOG_FPI is used by log_newpage which is in turn used for wal-logging relation extension. I think we should replace with XLogReadBufferForRedo with XLogInitBufferForRedo here.

@postgres please look at this PR: https://github.com/neondatabase/postgres/pull/326

Shouldn't this be fixed inside the filter function instead?

Yes, it is better to handle it in filter function.
Will create another PR

This is that "Another PR" mentioned at the end of the chat.


Support for Xcode 11 Swift package manager?

Is there any support coming for Xcode 11's new "Swift Package Manager"?
Thanks

Thanks!

You're welcome. However, even though I've been using it successfully for a bit now, the PR has not been merged yet..

Hello, and sorry for my lack of response to the Swift Package Manager issues and pull requests. I just want to learn a bit more about SPM before merging it in, but I intend to do it soon. Thanks for your patience.

I'm also trying to move all the dependencies to SPM

@tradingstratagem if you don’t like waiting, you van use my fork (the one from the PR mentioned above) it works.
@vtourraine there’s really not much to it, but feel free to do more research 👌

I can wait a couple of days/weeks, but thanks for the suggestion

Good news: I’ve merged the pull request and tagged the changes, so you can now install this library with SPM directly from Xcode.
That being said, we still have a couple of issues with the current implementation (resources, folder structure, unit tests), as summarised here: https://github.com/vtourraine/AcknowList/pull/58#issuecomment-538933567
Please use the dedicated GitHub issues for further discussion. And thank you everybody for contributing!


Android support?

Should this work for Android? I was having an issue with a view in iOS and Android and I put this component in place. It seemed to fix the iOS version, but the Android version still behaves the same (the keyboard covers the content in the ScrollView).

Hello @cmmouritsen!
Yes, it should work for Android as long as the keyboard events are registered but I think that those events are not yet supported: https://github.com/facebook/react-native/issues/3468
Have you tried to use KeyboardDidShow and KeyboardDidHide?

Just changing the events to keyboardDidShow and keyboardDidHide didn't seem
to fix it. I'll have to dig into it a little more when I have some more
time to spend on it.
On Thu, Nov 12, 2015 at 6:28 AM Álvaro Medina Ballester <
<EMAIL_ADDRESS>wrote:

Hello @cmmouritsen https://github.com/cmmouritsen!
Yes, it should work for Android as long as the keyboard events are
registered but I think that those events are not yet supported:
facebook/react-native#3468
https://github.com/facebook/react-native/issues/3468
Have you tried to use KeyboardDidShow and KeyboardDidHide?
—
Reply to this email directly or view it on GitHub
https://github.com/APSL/react-native-keyboard-aware-scroll-view/issues/2#issuecomment-156102157
.

Ok, I would really like to have a PR for Android support.
Let me know if I can help you :)

I've started trying to add Android support: https://github.com/jblack10101/react-native-keyboard-aware-scroll-view.  Android doesn't have handy events like keyboardDidShow and keyboardDidHide, so I'm extending the native ReactScrollView and checking if the keyboard is displayed in the onMeasure event.
I'm running into an issue where it says that "ScrollView can host only one direct child", but in my test project, I have only one direct child View of KeyboardAwareScrollView, e.g.:
<KeyboardAwareScrollView
  style={ styles.container }
  contentContainerStyle={ styles.contentContainer }
  keyboardShouldPersistTaps={ true }
  keyboardDismissMode={ "on-drag" }>
  <View ref="wrapper" style={{ padding: 5 }}>
    <Text>Test</Text>
    <TextInput />
  </View>
</KeyboardAwareScrollView>

I'm using React Native 0.19.1 and here's the stack trace:
E/unknown:React﹕ Exception in native call from JS
    java.lang.IllegalStateException: ScrollView can host only one direct child
            at android.widget.ScrollView.addView(ScrollView.java:257)
            at com.facebook.react.uimanager.ViewGroupManager.addView(ViewGroupManager.java:36)
            at com.facebook.react.uimanager.NativeViewHierarchyManager.manageChildren(NativeViewHierarchyManager.java:366)
            at com.facebook.react.uimanager.UIViewOperationQueue$ManageChildrenOperation.execute(UIViewOperationQueue.java:174)
            at com.facebook.react.uimanager.UIViewOperationQueue$2.run(UIViewOperationQueue.java:673)
            at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.doFrameGuarded(UIViewOperationQueue.java:723)
            at com.facebook.react.uimanager.GuardedChoreographerFrameCallback.doFrame(GuardedChoreographerFrameCallback.java:32)
            at com.facebook.react.uimanager.ReactChoreographer$ReactChoreographerDispatcher.doFrame(ReactChoreographer.java:120)
            at android.view.Choreographer$CallbackRecord.run(Choreographer.java:790)
            at android.view.Choreographer.doCallbacks(Choreographer.java:596)
            at android.view.Choreographer.doFrame(Choreographer.java:556)
            at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:778)
            at android.os.Handler.handleCallback(Handler.java:739)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:155)
            at android.app.ActivityThread.main(ActivityThread.java:5696)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)

I'm posting this here in hopes that someone may have an idea, but I will continue to look into it.

Hi @jblack10101! Which React Native version are you testing on? Under 0.19 I do get a resized scroll view in Android.

Hey @alvaromb, I'm getting this exception with react-native node version 0.19.0 and in Java, com.facebook.react:react-native:0.19.0.  Which versions are you using?

I'm using 0.19, it's strange! Are you sure you're using only one child? ScrollView can host only one direct child

Yea, I pulled the latest react-native from master last night and built using it.  I added some log statements, and even though I have a View as the only child of the KeyboardAwareScrollView, it looks like it is adding the Text and TextInput elements as direct children of the ScrollView and ignoring the View.  I'll continue investigating.

That could be RN making some optimisations for you, IDK. Here https://github.com/APSL/react-native-keyboard-aware-scroll-view/blob/master/lib/KeyboardAwareScrollView.js#L25 you can see that this component just uses what you provide as children. Try to set some style into your container View, or set backgroundColor's to each of your views, it's useful to debug UI issues.

@jblack10101 How to register the react-native-keyboard-aware-scroll-view  module in MainActivity.java for React Native 0.21

@karthickvkumar, sorry I've been on vacation and unable to respond, but the readme should have all of the information that you need to register the module.  Please let me know if you have further questions.

For Android, it is a good idea to read up on android:windowSoftInputMode when dealing with the keyboard.
Docs are here - http://developer.android.com/guide/topics/manifest/activity-element.html
I struggled with getting a chat-style keyboard bar along with the react-native-keyboard-aware-scroll-view module (version 0.0.6).
As soon as I changed windowSoftInputMode in my main AndroidManifest.xml, it worked .

Note:  Also make sure you are subscribing to keyboardDidShow and keyboardDidHide on Android, for now (React Native 0.23.0).

I'm using RN 0.24 and it seems like NativeModules.ScrollViewManager is not available on Android.
Getting ReactNativeJS: undefined is not an object (evaluating 'ScrollViewManager.getContentSize')

It appears there is a pull request for android functionality (https://github.com/APSL/react-native-keyboard-aware-scroll-view/pull/4) but I have not heard if it actually works or not?  I assume if it worked it would have been merged by now as android support seems like a nice addition.

:+1: up

It's on the list @iSimonWeb, sorry for the delay :(

+1

Just curious, why is it needed? Plain ScrollView works fine for me on android out of the box with android:configChanges="keyboard|keyboardHidden|orientation|screenSize" in my AndroidManifest.

I think there are some older Android versions that do not automatically scroll to the input fields @abhishiv. I've been very busy and I didn't had time yet to bring full Android support.

I have react-native 0.37.0 and react-native-keyboard-aware-scroll-view 0.2.6, basic scrolling functionality works for me, but neither extraScrollHeight nor extraHeight works for me.
Work on iOS version, though.

I have the same issue as @lesniakania +1. Should that be in another ticket?

ping @alvaromb ;]

@lesniakania How did you get the basic scrolling functionality to work? Mine just wont.

I just used README code, it just worked for me. What phone/android version you test on?

Hi all!
I can't figure out what's the issue. Can you describe? :)

For me the issue is that I want to use extraScrollHeight and it does not work for me on Android.
I'm using it because I have buttons below input and I want to make them visible when the keyboard is present. I set extraScrollHeight to the buttons' height and it works for me on iOS but not on Android.

Ok @lesniakania!
Let me check, we have several projects where we're using it in Android.

Awesome, thanks :)

I just reproduced the issue @lesniakania.
Can you create a separate issue and we'll track it there? Thanks!

Sure: https://github.com/APSL/react-native-keyboard-aware-scroll-view/issues/107
Thanks for quick feedback!

Has anyone been able to get this to work with Exponent?

@alexprice91 Take a look at KeyboardAvoidingView, it might work for you. I was also trying to make it work with Expo but I had no luck with it. KeyboardAvoidingView did the trick in both iOS and Android.

This does the trick. Thanks!!

Has android support been added? It's working fine on ios, but on android nothing happens when the keyboard is opened. 😕

@OwenFlood  I'll start the work after https://github.com/facebook/react-native/pull/13129 is been merged.

@Swordsman-Inaction 🎉

+1

Folks, keep in mind that in Android you can use softInputMode to handle the keyboard. Thanks to @Swordsman-Inaction, we'll have the resizing support with Android too, but for most cases softInputMode will be the best option.

softInputMode is good enough for most cases, you guys can just use it.
For Android support, my PR is merged, but somehow it's not in 0.45, it's in master branch right now. I'll start working on it after 0.46(hopefully it will have my change) comes out.

@Swordsman-Inaction did you get a chance to work on it? 46 is out now.

@chirag04 I'm already working on it. 😀

Hello, I'm new to react-native and exponent (but know pretty well android and ios native dev)
I can get it to work on Android, though it works perfect on iOS.
Am I missing something special to do for Android when using this lib with Expo?

@graphee-gabriel With Expo, windowSoftInputMode is set to adjustResize and you cannot change that unless you detach from Expo. In order to use swordsman's android support changes (once merged), instead of setting windowSoftInputMode to adjustPan, you can scroll to inputs manually using measureLayout and scrollTo (by accessing the ref in the keyboard-aware components (KeyboardAwareListView also has a ref). It's a bit hacky, but I haven't found another way to do it without detaching.

@graphee-gabriel Check out https://github.com/Palisand/kasv-expo. It's far from perfect, but it should help out.

@Palisand Thanks for that workaround! Is there a general feeling that this kind of thing is better getting fixed long-term in this project or in Expo?

@Palisand I don't know anything about expo, but do you want to stick a link to your lib in the docs? What's the difference between using this library with expo and yours?

Hmmmm @alvaromb I tried your code, but it did not change anything, still no scrolling on android.

Ping @Swordsman-Inaction, who made the Android implementation.

@graphee-gabriel Could you share more information? Which version? Code snippet? It's better to open an issue.

For anyone looking for this scrolling behavior on Expo, you have to set the status bar to any solid color in App.json
"androidStatusBar": {
    "backgroundColor": "#eeeeee",
},

Not sure why, but it works.

@rxb I work too , but Now I can use KeyboardAvoidingView and ScrollView together when I set
"androidStatusBar": {     "backgroundColor": "#eeeeee", },
Thank

@rxb  Damn, thx you so much, i almost had a heart attack...

the status bar thing did not work for me but i found a workaround making a component for it.
I use the Facebook KeyboardAvoidingView on android with behavior padding and a weird keyboardVerticalOffset at -1000, it was the only way to make it work on my android phone.
Just use this component and replace  by
import React from 'react'
import { Platform, KeyboardAvoidingView, ScrollView } from 'react-native'
import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'

export default class KeyboardAwareScrollViewCompat extends React.Component {

  render() {
    if (Platform.OS === 'ios') {
      return (
        <KeyboardAwareScrollView {...this.props}>
          {this.props.children}
        </KeyboardAwareScrollView>
      )
    }

     return (
       <KeyboardAvoidingView {...this.props} behavior="padding" keyboardVerticalOffset={-1000}>
         <ScrollView>
           {this.props.children}
         </ScrollView>
       </KeyboardAvoidingView>
     )
  }
}

@graphee-gabriel that worked and solved my 3 months long keyboard toggle problem (where I have tried lots of hacks previously). Thanks.

adding enableOnAndroid worked for me without having to use the statusbar trick
<KeyboardAwareScrollView style={{flexGrow: 1}} enableOnAndroid>


Patch to make reading the controller buttons work

To workaround https://github.com/cmbruns/pyopenvr/issues/27 on my Ubuntu 16.04 64bits.
I admit it's ugly but it makes it work on my system.
Also, find a minimal example that prints all the controller events on the terminal:
https://gist.github.com/awesomebytes/75daab3adb62b331f21ecf3a03b3ab46
Even if it's not mergeable, I hope it helps someone to get this to work.

Hi, I agree this might not be the most clean solution but I also think there is no other choice.
Please bear in mind this __init__.py file is generated with the translate/translate.pl script. But quoting cmbruns:

Ideally we should add a rule to translate.pl to catch this situation. But because I don't have much time to look at this now, it would be OK to manually patch init.py, with a big "TODO" comment, like I did in several other places where I manually carry forward edits into subsequent releases.

So if you add a TODO like that I would be +1 for merging, for whatever that's worth :)
Since you are on Linux, please also keep in mind there are more situations where struct packing requires some 'hacking': You can search on "Terrible Hack" in openvr's C# bindings to find where they applied the hack.

@daniel5gh I added a commit with the big TODO as you requested. Thank you for following up.

Any chance to merge this? :) Thank you.

@cmbruns thank you! and thank you for re-releasing :) This is powering my ROS wrapper for the HTC Vive.

You are welcome.


Add a machine-readable output format

In addition to the existing output formats (for visualization), could we also get a machine-readable format e.g. in JSON or YAML?

sounds like fertile ground for a pull request :-)

Indeed it does. However, I don't know Scala and I don't intend to learn it 😉 I'm just someone who inspects dependencies of software projects (using the OSS Review Toolkit).


feat(input): add emoji

Change

Add emoji to BaseInput
Add tests and stories for it

Note: I added the emoji icon next to the 'speech to text' icon for now. Will update styling in a follow-up.
Screenshots
Before

After

Video

The emoji pop up uses my system settings theme at the moment (dark mode) no matter which theme is set on storybook. Not sure if that's something you want to address in this pr or the styling follow up.

However the search popup remains consistent with the storybook theme.

Would be nice if the predictive popover was accessible through keyboard. Could maybe do in a follow up

Would be nice if the predictive popover was accessible through keyboard. Could maybe do in a follow up

Maybe we could handle this in a follow up? I will fix the theme issue


LAB_02a_Manage_Subscriptions_and_RBAC.md

Current Translation:
Salin ke papan klip
Suggested Translation:
Salin ke clipboard

Hello contributor,
Thank you for your contribution! We are processing your suggestions and we will update you shortly.
Kind regards,
Microsoft Worldwide Learning Team

The Locfile state is PreHandoff.

This lang is not listed now for id-id in CAICritical - out of scope
Can be closed

Run bugfix tool, waiting for result. ICMS QUERY
https://github.com/MicrosoftLearning/AZ-104-MicrosoftAzureAdministrator.id-id/blob/OLPRODLOC/Instructions/Labs/LAB_02a_Manage_Subscriptions_and_RBAC.md


Prevent Unintended Updates for RHEL on existing systems

The original problem is tracked and fixed for any new installs in this PR.
https://github.com/chef/chef-server/pull/374
The problem is though that this PR doesn't fix existing systems because the fix isn't applied by chef-server-ctl reconfigure. It's only applied when chef-server-ctl install is run.
So we need a separate fix that disables the chef-stable yum repository on any existing system.

@mmzyk , @stevendanna, can you take a look?

I'm closing this as a duplicate of https://github.com/chef/chef-server/issues/154


Alter session for version discovery

Alter session used for discovery, pinpoint ONLY to processed artifact to update ALWAYS. This would fix all the problems reported here https://github.com/mojohaus/versions/issues/959 and here https://issues.apache.org/jira/browse/MRESOLVER-363 just like -U does (and people do it by reflex). But this is more correct way, as -U is global and refreshes too much.

@slachiewicz @ajarmoniuk ping

I wish I were a maintainer, but for the time being I can't approve the workflow 😉

Am not a maintainer either here, so I will just leave this here for @slawekjaranowski or anyone else to handle. Comment may be removed, I just added it like "head up", but it may happen in near or far future (I cannot tell).

I'm not sure if it is good way, after it every execute plugin will cause download every metadata again.
For projects with many dependencies  it can be an issue.

@slawekjaranowski every metadata? only targeted, only artifact that is in call. Maybe vrsions plugin could control, and have "own" -U instead?
Point with mvn -U is that it is global, so will download "every metadata maven touches" (so literally EVERY in build), while this change downloads ONLY the metadata for artifact

@slawekjaranowski or if I misunderstood you, and you mean "will refresh metadata for maven-clean-plugin in EVERY module of the possibly 100 module build? so perform 100 refreshes?" That is not the case, as resolver refreshes once per session, so yes, it will refresh once in first module clean plugin is found, and from then on (in remaining 99 modules) cached results are used.
See https://github.com/apache/maven-resolver/blob/maven-resolver-1.9.10/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultUpdateCheckManager.java#L267

As I see issue from #959 is that we don't have or is wrong property for last modified in properties file.
According to https://github.com/apache/maven-resolver/pull/292/files#diff-51ca9aed78d3713d9818b753db3b9e9629743a7e773292e686f93950fca4c2b0R103 in such case default policy for repository is used.
Because default central plugin repository has policy never - https://github.com/apache/maven/blob/6f136ef4d2b4938e939189e9d2e3e0faa11a20e9/maven-model-builder/src/main/resources/org/apache/maven/model/pom-4.0.0.xml#L53
we try to override policy for whole session for all repositories.
Last I did improvement for repository with never policy to use daily #957 - maybe it will be good enough is such case.

Cool then, was unaware that this plugin overrides configured policy.
I am still convinced, that is PR (conditionally, like some -Dforce flag) would be useful for plugin (as aside of daily, user has no other means to say "update  now!" than mvn -U which is too much).
But am fine, so if it works as you tested, am fine with it.


Demo stops working

@pmoscicki Thanks for issue, it works now.

the demo still not works.
It freeze on google chrome 87 (ubuntu 20.04)

@bci24  Fixed (v0.1.2)

Demo still not working, https://iendeavor.github.io/vue-next-select/examples.html shows Error fetching sandbox.
for chrome.


New version: Git.Git version 2.43.0

[Y] Have you signed the Contributor License Agreement?
[Y] Have you checked that there aren't other open pull requests for the same manifest update/change?
[Y] This PR only modifies one (1) manifest
[Y] Have you validated your manifest locally with winget validate --manifest <path>?
[Y] Have you tested your manifest locally with winget install --manifest <path>?
[Y] Does your manifest conform to the 1.5 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

D:>winget validate --manifest D:\repos\winget-pkgs\manifests\g\Git\Git\2.43.0
Manifest validation succeeded.
D:>winget install --manifest D:\repos\winget-pkgs\manifests\g\Git\Git\2.43.0
Found Git [Git.Git] Version 2.43.0
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://github.com/git-for-windows/git/releases/download/v2.43.0.windows.1/Git-2.43.0-64-bit.exe
██████████████████████████████  58.0 MB / 58.0 MB
Successfully verified installer hash
Starting package install...
Successfully installed
I have test locally


compio::driver::DriverType is not always available

I am on OSX and DriverType is not available

You are right. Currently DriverType is only available for fuse driver to identity which underlying driver is being used. Maybe we can generalize it and also add IOCP to the enum.

I see, it wasn't clear from docs.
I just need a way to identify type of driver current runtime uses

There's only need to identify the driver type on Linux.


Corrected invalid entry for author

Docs Build status updates of commit 8d4c7a1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Display text node of editionStmt element in the metadata pane and tweak another row

Please add a row to the metadata pane as follows:

label in LH column should be Edition; variable content in RH column should be drawn from the text node of <p> inside <editionStmt>

RELATED: We have a label for "Type of Text" but the RH column isn't being populated. Unless we can pull in the text node of the <term> element in TAXO  from tax:emdDocumentTypes, I suggest we suppress this row.

@JanelleJenstad I've implemented the editionStmt as of rev 11446. Re the "Type of text": it's trying to pull that info from titleStmt/title[@type='alt']. I can set it up so that it pulls from the taxonomy based on the first instance of <catRef scheme="tax:emdDocumentTypes".../>.

Incidentally, the labels used here in the left hand column are all hard-coded into the XSLT, which is a bad way to do things. I think we need a distinct XSLT module for captions, where they can be more easily maintained. I'll raise a ticket for that.

Thank you! And thanks for noticing that we need to handle captions better.

OK, the Type of text value is now taken from the emdDocumentTypes taxonomy as of rev 11447. Closing this.


Remove sleep from test scripts

Should allow each component to start independently; Client should not panic if no TSO is successfully started but should consider retry.

As in #331, not fully covered since test are still using raw RPC calls without retry strategies. Nodepool takes time to start. Should work after refactor the test to be using CPOClient to send the requests.


Jaqqard Distance

Add the jaqqard distance.
Proposed Solution
Add a function jaqqard :: DistanceFunction to Metrics
The jaqqard-function is the intersection of words in two sentences.
The function "toVectors" should be usable.

https://www.statisticshowto.datasciencecentral.com/jaccard-index/


fix some strong mode errors and warnings

fix https://github.com/dart-lang/vm_service_drivers/issues/130
add more types
remove some unneeded casts
add a few casts
update the spec where some subclasses where re-declaring fields that had already been declared by parent classes. This was only occurring when adding more documentation to the fields; moved the docs into the class docs for the subclasses. Will upstream this change.

@danrubel

@johnmccutchan, some minor change to the service protocol doc. I'll upstream these if they look good. The code generator was generating field overrides for subclasses as the fields were being declared on both the parent and the child classes.

This was causing errors for strong mode code.

LGTM

@devoncarew Please send a CL for the upstream changes to service.md


cached and uncached IOPS - rephrasing

Re Except this time, we'll enable host caching on the disks. Also, now the VM's IOPS limit is 16,000 IOPS.
To me the new IOPS limit is a consequence of enabling host caching, and not a separate fact that word Also suggests.
Consider rephrasing.

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

ID: 8d99436a-dbb2-a88a-9881-2472e4c5ca80
Version Independent ID: 2a2b5781-fbd1-a8ee-0aac-5aed7540d57a
Content: Virtual machine and disk performance - Azure Virtual Machines
Content Source: articles/virtual-machines/disks-performance.md
Service: storage
Sub-service: disks
GitHub Login: @roygara
Microsoft Alias: rogarana

@ciufudean Thanks for reaching out, we appreciate it!
I've tweaked the language, the updated language will go live later today. Accordingly, I'll close this out.
#please-close


Checkbox component doesn't respect the formControl value

Reported by: Matt Tycholaz
Acceptance criteria:

If the checkbox component is using a formControl with an already set value to something other than "", it should be respected and should be shown as checked.

testFormCtrl = new FormControl('checked');

Binding: {{ testFormCtrl.value }}

<goa-checkbox
  goaValue
  name="desserts"
  text="Ice Cream"
  [formControl]="testFormCtrl"
></goa-checkbox>

An attached issue, but might not be relevant once the above is figured out. If we use the [checked] property and set that to the value of the attached formControl, it works, but it then requires two clicks to uncheck the component.

testFormCtrl = new FormControl('true');

Binding: {{ testFormCtrl.value }}

<goa-checkbox
  goaValue
  name="desserts"
  text="Ice Cream"
  [formControl]="testFormCtrl"
  [checked]="testFormCtrl.value"
></goa-checkbox>

Closed as complete


Problem after update

Describe the bug
After update package, i get this error when get the countries:
Nnjeim\World\Models\Country::getConnectionName(): Return value must be of type string, null returned

To Reproduce
use Nnjeim\World\World;

dd(World::countries());

Expected behavior
To get all countries

Yea... i found the problem, you updated config/world.php ... i deleted and re execute command: php artisan vendor:publish --tag=world and now it's working


avocode: 3.9.0 -> 3.9.2

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/avocode/versions.
meta.description for avocode is: '"The bridge between designers and developers"'.
meta.homepage for avocode is: '"https://avocode.com/"

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
/bin/sh passed the binary check.
1 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 3.9.2 with grep in /nix/store/mzcnrx9ydlq8dhbjh397hmvqfs6h5rdw-avocode-3.9.2
directory tree listing: https://gist.github.com/671b09077590db79f79b728c29088803
du listing: https://gist.github.com/6e6095893c163cc0419bf7222dae5f32

Rebuild report (if merged into master) (click to expand)

3 total rebuild path(s)
1 package rebuild(s)
1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
avocode

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/mzcnrx9ydlq8dhbjh397hmvqfs6h5rdw-avocode-3.9.2 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A avocode https://github.com/r-ryantm/nixpkgs/archive/41f72597df341584486891735dcc845550894830.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/mzcnrx9ydlq8dhbjh397hmvqfs6h5rdw-avocode-3.9.2
ls -la /nix/store/mzcnrx9ydlq8dhbjh397hmvqfs6h5rdw-avocode-3.9.2/bin

cc @megheaiulian for testing.

./bin/avocode: error while loading shared libraries: libatspi.so.0: cannot open shared object file: No such file or directory


Unable to capture Azure Maps

When taking a screen shot of an Azure Maps map container element, only html element in the map container shows, but not the map itself. The map in the screen shot is empty.
Code:
 // Get download url
  const mapElem = $("#myMap");
  const canvas = await html2canvas(mapElem);
  return canvas?.toDataURL("image/png").replace("image/png", "image/octet-stream");

Just include below script to forces preserveDrawingBuffer: true
https://github.com/greggman/webgl-helpers#webgl-force-preservedrawingbufferjs

@kevicai were you able to find a solution to screenshotting an Azure Map? @donamkhanh response does not work for me.


Navigation Rail with MDTabs Clicking Off-Positioned

Description of the Bug
When MDTabs is added to a screen with Navigation Rail. The clicking of mouse will be offsetted by the width of the Navigation Rail. It seems that the widgets "appear" to be at the position displayed but the "clicking" position is the display position minus the Navigation Rail width.
This issue should be easily reproducible, run the snippet below, click and hold "btn1" , you will find the ripple appears in btn2.
Code and Logs
from kivy.lang import Builder

from kivymd.app import MDApp
from kivymd.uix.boxlayout import MDBoxLayout
from kivymd.uix.tab import MDTabsBase
KV = '''

MDBoxLayout:

    MDNavigationRail:

        MDNavigationRailItem:
            text: "Python"
            icon: "language-python"

        MDNavigationRailItem:
            text: "JavaScript"
            icon: "language-javascript"

        MDNavigationRailItem:
            text: "CPP"
            icon: "language-cpp"

        MDNavigationRailItem:
            text: "Git"
            icon: "git"

    MDScreen:
        MDTabs:
            AppTab:
                name : 'test'
                text : 'text'
                MDBoxLayout:
                    MDRaisedButton:
                        text : 'btn1'
                    MDRaisedButton:
                        text : 'btn2'
'''

class AppTab(MDBoxLayout, MDTabsBase):
    def __init__(self,**kwargs):
        super().__init__(**kwargs)
        self.orientation = 'vertical'

class Example(MDApp):
    def build(self):
        return Builder.load_string(KV)

Example().run()

Versions

OS: Windows 10
Python:  3.9.7
Kivy: 2.0.0
KivyMD: Version: 1.0.0.dev0

@kxpang-ae MDNavigationRail works the same way as MDBottomNavigation - https://kivymd.readthedocs.io/en/latest/components/bottomnavigation/#usage

@kxpang-ae MDNavigationRail works the same way as MDBottomNavigation - https://kivymd.readthedocs.io/en/latest/components/bottomnavigation/#usage

Thanks but I don't find any solution in the link you provided

Do you mean that the Navigation Rail should be placed under MDScreen?

@kxpang-ae I don't understand what result you want to get...

Have you tried running the code? Mouse clicks are off positioned. See my test run below
https://user-images.githubusercontent.com/82387839/181399224-d4eef28c-fb38-4aba-9b88-9e994763b584.mp4

I have encountered similar problems with MDSliders inside MDTabs with MDNavigationRail.
Here is the code:
from kivy.lang import Builder

from kivymd.app import MDApp
from kivymd.uix.screen import MDScreen
from kivymd.uix.floatlayout import MDFloatLayout
from kivymd.uix.tab import MDTabsBase

KV = '''
MDBoxLayout:
    orientation: 'vertical'

    MDToolbar:
        id: bar
        title: "Control"

    MDBoxLayout:
        orientation: 'horizontal'
        id: main_screen

        MDNavigationRail:
            id: rail"

            MDNavigationRailItem:
                icon: 'car-cruise-control'
                text: ''
                on_release:
                    app.root.ids.bar.title = 'Control'
                    app.root.ids.screen_manager.current = 'controlScreen'

        ScreenManager:
            id: screen_manager

            ControlScreen:

<ControlScreen>:
    name: 'controlScreen'

    MDTabs:
        id: tabs
        size_hint: (0.4, 1)
        lock_swiping: True

        Tab:
            title: 'tab 1'

            MDSlider:
                size_hint: (0.8, None)
                min: 1
                max: 10
                value: 5

        Tab:
            title: 'tab 2'

            MDSlider:
                size_hint: (0.8, None)
                min: 1
                max: 10
                value: 5

        Tab:
            title: 'tab 3'

            MDSlider:
                size_hint: (0.8, None)
                min: 1
                max: 10
                value: 5

<Tab>:

'''

class ControlScreen(MDScreen):
    pass

class Tab(MDFloatLayout, MDTabsBase):
    '''Class implementing content for a tab.'''

class Example(MDApp):
    def build(self):
        return Builder.load_string(KV)

Example().run()

https://user-images.githubusercontent.com/21139232/182950946-dd178837-d078-41a3-b32d-8e1ade5f95b3.mp4
Versions
OS: Debian GNU/Linux 11 (bullseye) (Raspberry pi)
Python: 3.9.2
Kivy: 2.1.0
KivyMD: Version: 1.0.0.dev0

@HeaTTheatR Should I open a new Issue or leave this as a comment?

@kubapilch No need to open a new issue.

@HeaTTheatR I am trying to fix the bug. I narrowed it down to the fact that on_touch_up is called twice for MDSlider inside MDTabs, the first time with correct position and the second time offset by the width of the MDNavigationRail.

@kubapilch Interesting...

For anyone having this issue. I have found a workaround that can 'fix' the issue until it's properly fixed, or I have more spare time to look more into it.
Here is a working example from above:
from kivy.lang import Builder

from kivymd.app import MDApp
from kivymd.uix.boxlayout import MDBoxLayout
from kivymd.uix.tab import MDTabsBase

import time

KV = '''

MDBoxLayout:

    MDNavigationRail:
        id: rail

        MDNavigationRailItem:
            text: "Python"
            icon: "language-python"

        MDNavigationRailItem:
            text: "JavaScript"
            icon: "language-javascript"

        MDNavigationRailItem:
            text: "CPP"
            icon: "language-cpp"

        MDNavigationRailItem:
            text: "Git"
            icon: "git"

    MDScreen:
        MDBoxLayout:
            MDTabs:
                AppTab:
                    name : 'test'
                    title : 'text'

                    MDSlider:
                        size_hint: (0.8, None)
                        name: 'Inside'
                        min: 1
                        max: 10
                        value: 5

            MDSlider:
                size_hint: (0.3, None)
                name: 'Outside'
                min: 1
                max: 10
                value: 5
'''

class AppTab(MDBoxLayout, MDTabsBase):
    def __init__(self,**kwargs):
        super().__init__(**kwargs)
        self.orientation = 'vertical'

        self.last_touch_down = {'pos': (0, 0), 'time': time. time()}

    def on_touch_down(self, touch):
        self.last_touch_down['pos'] = touch.pos
        self.last_touch_down['time'] = time.time()

        return super().on_touch_down(touch)

    def on_touch_up(self, touch):
        if self.last_touch_down['pos'][0] != touch.pos[0] and time.time() - self.last_touch_down['time'] < 0.5:
            return

        return super().on_touch_up(touch)

class Example(MDApp):
    def build(self):
        return Builder.load_string(KV)

    def on_start(self):
        super().on_start()

        print(f'Rail width: {self.root.ids.rail.width}')

Example().run()

Exactly what was changed:
class AppTab(MDBoxLayout, MDTabsBase):
    def __init__(self,**kwargs):
        super().__init__(**kwargs)
        self.orientation = 'vertical'

        self.last_touch_down = {'pos': (0, 0), 'time': time. time()}

    def on_touch_down(self, touch):
        self.last_touch_down['pos'] = touch.pos
        self.last_touch_down['time'] = time.time()

        return super().on_touch_down(touch)

    def on_touch_up(self, touch):
        if self.last_touch_down['pos'][0] != touch.pos[0] and time.time() - self.last_touch_down['time'] < 0.5:
            return

        return super().on_touch_up(touch)

All you have to do is overwrite on_touch_down and on_touch_up functions of your Tab. The downside of this solution is that widgets that specifically use on_touch_up event might not work properly. For example, I had to change all my buttons to use on_press instead of on_release inside Tab.

@kxpang-ae This is a Kivy bug, not KivyMD.
from kivy.lang import Builder
from kivy.app import App
from kivy.uix.behaviors import TouchRippleBehavior
from kivy.uix.button import Button
from kivy.utils import get_color_from_hex

KV = '''
<RectangleFlatButton>:
    ripple_color: 0, 0, 0, .2
    background_color: 0, 0, 0, 0
    color: root.primary_color

    canvas.before:
        Color:
            rgba: root.primary_color
        Line:
            width: 1
            rectangle: (self.x, self.y, self.width, self.height)

BoxLayout:

    BoxLayout:
        size_hint_x:  None
        width: 80

        canvas:
            Color:
                rgba: .2, .2, .2, 1
            Rectangle:
                pos: self.pos
                size: self.size

    Screen:

        Carousel:

            BoxLayout:
                spacing: 24

                RectangleFlatButton:
                    pos_hint: {"center_x": 0.5, "center_y": 0.5}
                    size_hint: (None, None)
                    size: (dp(110), dp(35))
                    ripple_color: (0.8, 0.8, 0.8, 0.5)

                RectangleFlatButton:
                    pos_hint: {"center_x": 0.5, "center_y": 0.5}
                    size_hint: (None, None)
                    size: (dp(110), dp(35))
                    ripple_color: (0.8, 0.8, 0.8, 0.5)
'''

class RectangleFlatButton(TouchRippleBehavior, Button):
    primary_color = get_color_from_hex("#EB8933")

    def on_touch_down(self, touch):
        collide_point = self.collide_point(touch.x, touch.y)
        if collide_point:
            touch.grab(self)
            self.ripple_show(touch)
            return True
        return False

    def on_touch_up(self, touch):
        if touch.grab_current is self:
            touch.ungrab(self)
            self.ripple_fade()
            return True
        return False

class Example(App):
    def build(self):
        return Builder.load_string(KV)

Example().run()

https://user-images.githubusercontent.com/16930280/187024140-16f7d7d3-b420-421d-8add-b10cf1f4bb98.mov

@kxpang-ae A bug in the Carousel class.

@kxpang-ae If you remove the left panel, everything will work correctly. Therefore, this bug is not related to the KivyMD library.

Thanks!


fix: set FilePath when creating BspViewModel

Closes #20.
This also fixes the save button opening the file picker instead of saving the currently opened file.

thanks for the PR .. I'll get this in after the #29 PR because we can't save to the same file right now

Tweaked title naming a bit to improve window name and handle null cases


We should update the "Who's coming" when you RSVP on the homepage

Because, Javascript.

React actually, but whatever :)
Closing.


:page_facing_up: docs(docker): minutes from todays meeting

Minutes from the discussion about docker design/usage..
Hope I captured everything in the notes.

Nice, the ability to retrigger new builds if a base image is changed is indeed important.
What can we do about the CI testing strategy? Shoûd we run tests within the containers?

What can we do about the CI testing strategy? Shoûd we run tests within the containers?

The consensus during the meeting was that testing happens on feature branches, so everything merged to develop should work. In addition only developers would use :edge builds. The :latest builds will be based on master commits so they should be stable enough.
I've never done testing within a built container. I usually try to keep images as small as possible i.e. dropping test code etc.