tests: fs: Add missing return check

Checking the return of fs_stat to ensure that there is not hidden error.
Problem spotted by coverity.
CID 190949
Signed-off-by: Flavio Ceolin<EMAIL_ADDRESS>

Codecov Report

Merging #13976 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #13976      +/-   ##
==========================================
- Coverage   52.25%   52.24%   -0.01%
==========================================
  Files         307      307
  Lines       45437    45437
  Branches    10508    10508
==========================================
- Hits        23741    23740       -1
  Misses      16904    16904
- Partials     4792     4793       +1

Impacted Files
Coverage Δ

arch/posix/core/posix_core.c
90.9% <0%> (-1.02%)
:arrow_down:

Continue to review full report at Codecov.

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


Flutter app with Sentry calling a swift package with sentry leads to two sets of classes and causes undefined behaviour and crashes

Platform
Dart
Obfuscation
Enabled
Debug Info
Enabled
Doctor
% flutter doctor -v
[✓] Flutter (Channel stable, 3.13.1, on macOS 13.4.1 22F82 darwin-arm64, locale en-GB)
    • Flutter version 3.13.1 on channel stable at /opt/homebrew/Caskroom/flutter/3.13.1/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e1e47221e8 (7 days ago), 2023-08-22 21:43:18 -0700
    • Engine revision b20183e040
    • Dart version 3.1.0
    • DevTools version 2.25.0

[!] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/julianharty/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

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

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

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

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

[✓] Connected device (3 available)
    • Julian's iPhone (mobile) • 00008110-000165D43A08401E • ios            • iOS 16.6 20G75
    • macOS (desktop)          • macos                     • darwin-arm64   • macOS 13.4.1 22F82 darwin-arm64
    • Chrome (web)             • chrome                    • web-javascript • Google Chrome 116.0.5845.110

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

! Doctor found issues in 1 category.

Note: the Android licenses have been accepted; I doubt their status is relevant to the issue I'm reporting. flutter doctor --android-licenses fails to run in this terminal window because it doesn't like the java version (19.0.1)
Version
8.9.6 in Swift; 7.6.3 in Flutter
Steps to Reproduce
Context

We have an SDK written in Swift that uses Sentry via Swift Package Manager.
A client have an app written in Flutter and they want to use our Swift package. They also use Sentry for error reporting.
When their app incorporates our SDK they get lots of warning messages at built time (an example is in the Actual Result). We reckon it has something to do with the flutter app importing Sentry as well.
If they call our SDK which initialises Sentry the app crashes. The app and the SDK have unrelated Sentry DSNs.

We've created two much simpler github repos to help illustrate and reproduce the problems:

https://github.com/Captur/FlutterAppForSentryTesting  which uses the following swift package
https://github.com/Captur/SwiftPackageForSentry which incorporates Sentry for swift.

The flutter repo includes:
  sentry_dio: 7.6.3
  sentry_flutter: 7.6.3

in pubspec.yaml (note: we tried using 7.9.0 but encountered build errors related to Podfile.lock).
The flutter doesn't initialise Sentry directly but could/should do so.
Steps to reproduce:

Configure both Sentry DSNs to ones you have access to.
Update the iOS project in the flutter codebase to use an Apple Development Team you have access to.
Try to build and run the flutter app e.g. using flutter run from the command line.

Optionally add the import statement to AppDelegate.swift to import the Swift package from the second repo and then add a call to the EntryPoint. These changes will lead the app to crash at startup.
Here's a diff as an example of this optional extra step:
diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift
index 70693e4..8516fa0 100644
--- a/ios/Runner/AppDelegate.swift
+++ b/ios/Runner/AppDelegate.swift
@@ -1,8 +1,12 @@
 import UIKit
 import Flutter
+import SwiftPackageForSentry

 @UIApplicationMain
 @objc class AppDelegate: FlutterAppDelegate {
+
+    // var entrypoint = EntryPoint.shared
+
   override func application(
     _ application: UIApplication,
     didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?

Expected Result
The app should be able to run correctly and report errors (etc) to Sentry using the DSN configured by the app developers. Similarly the SDK should be able to run correctly and report errors/events/etc. from the SDK to its Sentry DSN.
Ideally, a single coherent set of Sentry's classes would be bound into the app's binary (to stop code bloat); as an alternative the app would have an independent set of Sentry classes that it would use and the SDK would have an independent set of Sentry classes that it uses.
Actual Result
% flutter run
Launching lib/main.dart on Julian's iPhone in debug mode...
Automatically signing iOS for device deployment using specified development team in Xcode project: <removed>
Running Xcode build...
 └─Compiling, linking and signing...                         4.8s
Xcode build done.                                           17.3s
(lldb) objc[831]: Class PrivateSentrySDKOnly is implemented in both /private/var/containers/Bundle/Application/AC0FB31B-FD56-46C5-B5B0-FC268054165E/Runner.app/Frameworks/Sentry.framework/Sentry (0x105045e20) and /private/var/containers/Bundle/Application/AC0FB31B-FD56-46C5-B5B0-FC268054165E/Runner.app/Runner (0x1046e41b0). One of the two will be used. Which one is undefined.
... lots of lines removed from here. The full set is in the attached file.
[flutter-and-swift-both-using-sentry.log](https://github.com/getsentry/sentry-dart/files/12469461/flutter-and-swift-both-using-sentry.log)

objc[831]: Class _TtC13SentryPrivate15SwiftDescriptor is implemented in both /private/var/containers/Bundle/Application/AC0FB31B-FD56-46C5-B5B0-FC268054165E/Runner.app/Frameworks/SentryPrivate.framework/SentryPrivate (0x104a39b78) and /private/var/containers/Bundle/Application/AC0FB31B-FD56-46C5-B5B0-FC268054165E/Runner.app/Runner (0x1046e8468). One of the two will be used. Which one is undefined.
[VERBOSE-2:FlutterDarwinContextMetalImpeller.mm(37)] Using the Impeller rendering backend.
Installing and launching...                                        23.3s

The crash that occurs when the SDK's entrypoint is called is:
-[SentryOptions enableTimeToFullDisplay]: unrecognized selector sent to instance 0x143f0bcb0
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[SentryOptions enableTimeToFullDisplay]: unrecognized selector sent to instance 0x143f0bcb0'
*** First throw call stack:
(0x1bfe60cb4 0x1b8f003d0 0x1bffd5ab8 0x1bfe770e8 0x1bfedd900 0x103807dac 0x102dbd850 0x102dbbe18 0x102dbbf1c 0x102d42938 0x102d4289c 0x102d427f0 0x102d427b0 0x1c7327eac 0x1c73296ec 0x102d4284c 0x102d42058 0x102d420e4 0x1c2c16330 0x1c2262ba8 0x102d421ac 0x1df408dec)
libc++abi: terminating due to uncaught exception of type NSException
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
    frame #0: 0x00000001fee1d578 libsystem_kernel.dylib`__pthread_kill + 8
libsystem_kernel.dylib`:
->  0x1fee1d578 <+8>:  b.lo   0x1fee1d598               ; <+40>
    0x1fee1d57c <+12>: pacibsp
    0x1fee1d580 <+16>: stp    x29, x30, [sp, #-0x10]!
    0x1fee1d584 <+20>: mov    x29, sp
Target 0: (Runner) stopped.
Installing and launching...                                        24.5s
Error launching application on Julian's iPhone.

Are you willing to submit a PR?
None

BTW I'm willing to submit a PR (that info seems to have disappeared on submission) and I've no idea what Obfuscation and Debug Info are set to. If you can explain what to check I'd be happy to add the info to this ticket.

The attachment with all the duplicate classes info also seems to have gone astray on submission, here it is.
flutter-and-swift-both-using-sentry.log

I'm curious whether using a specific/custom namespace for your iOS/Swift classes here would be enough to disambiguate the conflict - what do you think? it'd still mean there'd be 2 instances of each class presumably but could enable both the app and the SDK to use Sentry successfully and unambiguously.

AFAIK the use case you're describing is currently not officially supported - Sentry SDK shouldn't be used in a library that will be included in other libraries/apps which in turn may want to use Sentry themselves. Besides the symbol conflicts you're getting, there would be issues with signal handlers and deciding which error belongs to which instance (your library vs the app) - it's not a simple case of checking the stack trace.
See the note at the top here: https://docs.sentry.io/platforms/ and possibly this issue: https://github.com/getsentry/sentry-docs/issues/3611

@vaind Thank you so much for your speedy, clear, and helpful comment. FYI we started using Sentry in our SDKs about 9 months ago - predating these tickets and decisions and I hadn't spotted the recent clarifications in https://docs.sentry.io/platforms/ , https://github.com/getsentry/sentry-docs/issues/3611 and the related tickets. I've enjoyed reading about the design of your SDKs and message transport, etc.
We're doing some experiments in a couple of directions - a) to see if we can disambiguate the Sentry instances (this may not go very far if we end up swimming against the tide of how the codebase is designed and implemented, and b) to use another SDK provider and service where any of our customers already use Sentry. Director b) is more expedient and the outcome more predictable so we're following that for this particular case I explained in this ticket.
FWIW I've worked with various mobile analytics SDKs and related services and am continuing to learn on an ongoing basis of various complexities that need to be addressed to use mobile analytics well. Thank you again.
I'm happy to close this ticket - let me know if there's any purpose in keeping it open for longer.

Closing this as it's not officially supported.


ImageDisposeTest.ImageReleasedAfterFrame can flake

See https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket.appspot.com/8848663128413209760/+/steps/Host_Tests_for_host_debug_unopt/0/stdout
This test creates a 6000x6000 image and decodes it. It just takes too long sometimes on CI, violating the 90s timeout. I'mgoing to see if I can just make it smaller and still get a good result.
Blocking https://github.com/flutter/engine/pull/25827

I was wrong, my change is just breaking this test. Closing this for now.


fix: events in bridgeless mode

PR concerning New Architecture support in the library :tada:
We at Software Mansion have been working on improving support for the new architecture for quite a while now. If you need help with anything related to New Architecture, like:

migrating your library
migrating your app
investigating issues
improving performance

or you just want to ask any questions, hit us up on<EMAIL_ADDRESS>

What

PR fixing events in bridgeless mode on Android, due to their stricter convention of naming there.
Changes

Tested on

Related issues

@hannojg are you sure it works? I remember having some problems with such renaming, I think it is due to JS callbacks not having camera in their name. Maybe wait with merging it and let me double-check ok?

I committed the changes to fix the wrong names - @hannojg if you already have the test setup running could you maybe test if everything still works? Especially onPreviewStarted and onPreviewStopped

Sure, let me test, one second

yes, everything is still working on android!

Awesome - LGTM then - thanks @WoLewicki & @hannojg !!! ❤

Hey guys, did you test it in bridgeless mode? It's where the issue exists, as mentioned in the PR title. It's much stricter than bridge mode. cc @hannojg

Will do those tests in a moment, yes! We'll handle everything in a separate PR for new arch 😊 !


Issues on mac.

This is my first time trying to do this, so please forgive me for my stupidity.
Since it was my first time setting up something like this and I had no idea what to do (I could not understand the instructions under the setup part, I looked through the closed issues and read through those issues that was on the mac.
I managed to follow what was in mentioned in those and my config.json together with secret.py. I also noticed that my mac would not accept py -3 commands so I changed the py -3 in run.bat to python3.
I've also done cd /Users/gthuskerluke/Downloads/PokeBall-SelfBot-master and ran python3 -m pip install -r requirements.txt.
But when I used run.bat, I don't understand whats here but it seems like there was an error. I'm not sure what is causing the error so if anyone could help me I would gladly appreciate it.

run.bat is a batch file which runs only on Windows. Instead, directly launch the launcher.py.

After dragging the launcher.py into the selfbot folder terminal, I get this message.
/Users/gthuskerluke/Downloads/PokeBall-SelfBot-master/launcher.py: line 1: import: command not found
from: can't read /var/mail/pokeball
/Users/gthuskerluke/Downloads/PokeBall-SelfBot-master/launcher.py: line 18: syntax error near unexpected token (' /Users/gthuskerluke/Downloads/PokeBall-SelfBot-master/launcher.py: line 18:     bot = PokeBall(config_path, guild_path, pokelist_path, pokenames_path)'
What do I do here?

After dragging the launcher.py into the selfbot folder terminal, I get this message.

I have no clue how that works out in Mac but just CD your teminal to the folder and do python3 launcher.py.
Before that, check python --version to see if you are on Py3.6.4+.

then simply do python3 launcher.py and you're good to go. 👍

Doing that I get this invalid syntax error.
Traceback (most recent call last):
File "launcher.py", line 2, in
from pokeball import PokeBall
File "/Users/gthuskerluke/Downloads/PokeBall-SelfBot-master/pokeball.py", line 8, in
from paginator import Paginator
File "/Users/gthuskerluke/Downloads/PokeBall-SelfBot-master/paginator.py", line 1
9import asyncio
^
SyntaxError: invalid syntax

Looks like your paginator.py somehow got edited. Redownload it from the repo.

After redownloading, I do python3 launcher.py and get this now.
`Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 710, in _create_direct_connection
local_addr=self._local_addr)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/asyncio/base_events.py", line 804, in create_connection
sock, protocol_factory, ssl, server_hostname)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/asyncio/base_events.py", line 830, in _create_connection_transport
yield from waiter
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/asyncio/sslproto.py", line 505, in data_received
ssldata, appdata = self._sslpipe.feed_ssldata(data)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/asyncio/sslproto.py", line 201, in feed_ssldata
self._sslobj.do_handshake()
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 689, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:833)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 378, in connect
proto = yield from self._create_connection(req)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 687, in _create_connection
_, proto = yield from self._create_direct_connection(req)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 737, in _create_direct_connection
(req.host, req.port, exc.strerror)) from exc
aiohttp.client_exceptions.ClientConnectorError: [Errno 1] Can not connect to discordapp.com:443 [[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:833)]
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/gthuskerluke/Downloads/PokeBall-SelfBot-master /launcher.py", line 19, in
bot.run()
File "/Users/gthuskerluke/Downloads/PokeBall-SelfBot-master /pokeball.py", line 51, in run
super().run(self.configs['token'], bot=False)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/client.py", line 580, in run
return task.result()
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/client.py", line 487, in start
yield from self.login(*args, bot=bot)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/client.py", line 353, in login
yield from self.http.static_login(token, bot=bot)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/http.py", line 257, in static_login
data = yield from self.request(Route('GET', '/users/@me'))
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/http.py", line 156, in request
r = yield from self._session.request(method, url, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/helpers.py", line 97, in iter
ret = yield from self._coro
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/client.py", line 231, in _request
conn = yield from self._connector.connect(req)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 383, in connect
.format(key, exc.strerror)) from exc
aiohttp.client_exceptions.ClientConnectorError: [Errno 1] Cannot connect to host discordapp.com:443 ssl:True [Can not connect to discordapp.com:443 [[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:833)]]
Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x10bc80550>
`
Is it because I'm using the wrong apps? Do I have to download whats in requirements.txt?

Do I have to download whats in requirements.txt?
yes of course.

Alright after downloading them by doing pip [whatever its in here[ and downloading the file, I try again and get this.
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 710, in _create_direct_connection
   local_addr=self._local_addr)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/asyncio/base_events.py", line 804, in create_connection
   sock, protocol_factory, ssl, server_hostname)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/asyncio/base_events.py", line 830, in _create_connection_transport
   yield from waiter
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/asyncio/sslproto.py", line 505, in data_received
   ssldata, appdata = self._sslpipe.feed_ssldata(data)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/asyncio/sslproto.py", line 201, in feed_ssldata
   self._sslobj.do_handshake()
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 689, in do_handshake
   self._sslobj.do_handshake()
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:833)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 378, in connect
   proto = yield from self._create_connection(req)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 687, in _create_connection
   _, proto = yield from self._create_direct_connection(req)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 737, in _create_direct_connection
   (req.host, req.port, exc.strerror)) from exc
aiohttp.client_exceptions.ClientConnectorError: [Errno 1] Can not connect to discordapp.com:443 [[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:833)]

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
 File "/Users/gthuskerluke/Downloads/PokeBall-SelfBot-master /launcher.py", line 19, in <module>
   bot.run()
 File "/Users/gthuskerluke/Downloads/PokeBall-SelfBot-master /pokeball.py", line 51, in run
   super().run(self.configs['token'], bot=False)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/client.py", line 580, in run
   return task.result()
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/client.py", line 487, in start
   yield from self.login(*args, bot=bot)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/client.py", line 353, in login
   yield from self.http.static_login(token, bot=bot)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/http.py", line 257, in static_login
   data = yield from self.request(Route('GET', '/users/@me'))
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/http.py", line 156, in request
   r = yield from self._session.request(method, url, **kwargs)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/helpers.py", line 97, in __iter__
   ret = yield from self._coro
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/client.py", line 231, in _request
   conn = yield from self._connector.connect(req)
 File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/aiohttp/connector.py", line 383, in connect
   .format(key, exc.strerror)) from exc
aiohttp.client_exceptions.ClientConnectorError: [Errno 1] Cannot connect to host discordapp.com:443 ssl:True [Can not connect to discordapp.com:443 [[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:833)]]
Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x110e5e240>

Looks like you have local issues of connecting to Discord. Please check Stack Overflow for further support as this is beyond the scope of the support for the bot.

Stack Overflow?


Google Play Store URL

@pnemonic78 Is this really correct? On Google Play the ID returned in the search is org.gnucash.pocket.pnemonic without .pnemonic not found app.

So this is already online? 😲 I thought this PR is a preparation to publish the app under the name GnuCash Pocket. (Was there any information about publication?)

It is already published in the Store by our main contributor @.***). The issue is that the ID is incorrect.
https://play.google.com/store/apps/details?id=org.gnucash.pocket.pnemonic
Em 13 de abril de 2024 05:34:47 BRT, Kaligula @.***> escreveu:

So this is already online? 😲 I thought this PR is a preparation to publish the app under the name GnuCash Pocket. (Was there any information about publication?)
--
Reply to this email directly or view it on GitHub:
https://github.com/GnuCash-Pocket/gnucash-android/pull/82#issuecomment-2053573820
You are receiving this because you commented.
Message ID: @.***>

att,,,
Gutierri Barboza


ethd config error

./ethd config
./ethd: line 2577: syntax error near unexpected token &' ./ethd: line 2577:             ;;&'

macOS? Please be sure to install prerequisites first, namely, bash 5. https://eth-docker.net/Usage/Prerequisites#macos-prerequisites


release preparation

In this PR, some required tasks are done for the coming release (Rust SDK 0.9.0):

Updated docs and rustdocs
Updated release CI workflows
Bumped versions

Hello, I am a code review bot on flows.network.
It could take a few minutes for me to analyze this PR. Relax, grab a cup of coffee and check back later. Thanks!

@L-jasmine Thanks for the review!


Implement jobs task detail

Use the route definition (Route.prototype.children) instead of configuring a set of tabs that must match the corresponding route configurations. This prevents configuration errors and enables us to
reuse the task detail in more places (e.g. jobs)

Reviewer: @pierlo-upitup

Let me note that I'm thinking about moving the "dynamic" tab configuration into the tabs mixing. What do you think? Is it worth it, or should we just move forward with this one for now?

Ah ok, imo it's worth to do it. :)

@orlandohohmeier in principle it's a good idea, but I vote for postponing the mixin change for now.

Ok, I'll create an issue and add a todo so that we don't lose track.

All tests passing locally, minus some unrelated test already fixed in another PR.


Participate

Hi @ShweataNHegde, I've finally have a prototype for the documentation ready. I crafted the TOC by hand because I did not have the time for an automated version. You can find the TOC in en/docs.njk. There is also a new navigation entry "Participate!".
This morning I saw that there is a new repository where you collect material for the hackathon. Seeing this I hesitated to build all the documents for the links in the TOC in this repo as I do not know your plans for the learning material. Let's talk about this.
The link "Introduction" link point to the yet only document in this repo showing how this variant would look like.

👷 Deploy Preview for semanticclimate processing.

Name
Link

🔨 Latest commit
9497a07ee4ffeeeab1fa4d26b67840521426e800

🔍 Latest deploy log
https://app.netlify.com/sites/semanticclimate/deploys/64574c87e6bf1d0008f61c86

Thanks! We are still going back and forth on how to present our material. I set up the new Repo since it became harder to draft everything in a single document.


Implement grid search

The optimiser's interface has been implemented with grid search in mind, although random search is implemented. Grid search should also be implemented as an option.

Closed by 97095cfb7ec911c45f1929ee2fb6c86234c1d33d.


Load JSON file's content on Heroku?

Hi
it seems to me that the credentials_loader.rb insists on a file but on Heroku there are those nice config vars. Can the credentials_loader.rb somehow be tricked to accept a config var instead of
ENV["GOOGLE_APPLICATION_CREDENTIALS"] = "api-test-key.json"

I managed to put the JSON's contents in a heroku config var nicely and can get it by calling
puts ENV["GOOGLE_APPLICATION_CREDENTIALS"]

Thanks!

After adding your JSON authorization file to Heroku (walkthrough here), you can create credentials like this:
Google::Auth::ServiceAccountCredentials.make_creds(
  scope: 'https://www.googleapis.com/auth/drive',
  json_key_io: StringIO.new(ENV['GOOGLE_APPLICATION_CREDENTIALS'])
)

Note that StringIO does just what it sounds like: provides IO-like access to a String object, which is what you want in order to let Google::Auth do its thing under the hood without requiring a disk-backed file object.

Good solution, but the need for either a path to a file or an IO object is bad design. Maybe people don't want to check their credential files in or host them

@beldaGR Agreed, but try telling that to Google.

how do I do this for Python please...am going nutts with it -;)

@mgnaresh The internet is a great, big, wonderful place. Your contribution is a vague question on a Ruby-library asking about how to do something in Python. Kinda sad, right?

yup...u surely are sad...I have deleted my comment sire !

@coreyward i tried your solution, it starts setting the variable then it outputs "name is too long (maximum is 255 characters) name is invalid! is there any way to change the limit ?

@wapnen I suspect you're missing the double quotes surrounding the command. Don't do this: FOO=$(< ./your/file), do this: FOO="$(< ./your/file)" (note the quotes).

@coreyward It works like a charm

Has your question been answered?

When passing a googleauth credentials object, in this case service account credentials, to Google::Cloud::Language it complains. Still manages to authenticate and get the desired response from the API but it throws this:
Invalid value #<Google::Auth::ServiceAccountCredentials:0x000055... @project_id=......> for key :credentials. Setting anyway.
CREDS env contains my json key content
auth = Google::Auth::ServiceAccountCredentials.make_creds(
scope: 'https://www.googleapis.com/auth/cloud-language',
json_key_io: StringIO.new(ENV['CREDS'])
)
Google::Cloud::Language.configure do |config|
config.credentials = auth
end
@google_language_service ||= Google::Cloud::Language.language_service

Thoughts?
Thanks!


can't add a layout if it has a sub component

Versions

nuxt: 2.14.6
node: 12.18.3

Reproduction
Add in nuxt.config.js a module to add a layout with the method addLayout. The target layout vue file is in a different directory from the standard one "layouts".
  modules: [
    function () {
      this.addLayout(require('path').resolve(__dirname,'node_modules/[...]/src/layouts/blank.vue'), 'blank')
    }
  ]

The layout file blank.vue has a sub component imported from the same directory
<template>
  <Container class="blank-layout">
    <transition name="fade" mode="out-in">
      <Nuxt />
    </transition>
  </Container>
</template>

<script lang="ts">
import Vue from 'vue'
import Container from './containers/container.vue'

export default Vue.extend({
  name: 'BlankLayout',
  components: { Container  },
})
</script>

What is actually happening?
I got this error:
ERROR in ./.nuxt/layouts.blank.8b0063ec.vue?vue&type=script&lang=ts& (./node_modules/babel-loader/lib??ref--12-0!./node_modules/ts-loader??ref--12-1!./node_modules/vue-loader/lib??vue-loader-options!./.nuxt/layouts.blank.8b0063ec.vue?vue&type=script&lang=ts&)
Module not found: Error: Can't resolve './containers/container.vue' in '[the root project directory]\.nuxt'

Any hint?
Thank you

@AleeeKoi Would you be able to create a reproduction at https://template.nuxtjs.org ?

Here it is https://codesandbox.io/s/nostalgic-sanne-qig5c

@AleeeKoi Would you be able to create a reproduction at https://template.nuxtjs.org ?

Here it is https://codesandbox.io/s/nostalgic-sanne-qig5c


GCP Node.js How-To Guide contains conflicting information regarding app.yaml handlers

In the Security section of the Using app.yaml page (https://cloud.google.com/appengine/docs/flexible/nodejs/configuring-your-app-with-app-yaml#security), the documentation mentions that the handler script property is ignored and the handler login property is only used by Go, Python, and Java.  In the Securing URLs for cron section of the Scheduling Jobs with cron.yaml page (https://cloud.google.com/appengine/docs/flexible/nodejs/scheduling-jobs-with-cron-yaml#Node.js_app_yaml_Securing_URLs_for_cron), the documentation instructs the user to use the handler login property to require admin access.  This would seem to be at odds with the prior page.  Is this property allowed?  If not, how do you secure URLs?

@jmdobry @jonparrott @JustinBeckwith any ideas?

@JustinBeckwith can give an authoritative answer.

@JustinBeckwith Friendly ping!

  The login and script properties won't do anything with node.js.  Some of the features you're looking at only really make sense in the context of a runtime that's trying to be compatible with App Engine standard (like python, java, and go).
If you're trying to lock down an individual endpoint so only logged in users or admins can access a page, I'd suggest just using passportjs.

Thanks @JustinBeckwith. I'm going to close since this is a tracker for issues with our client library for the Google Cloud APIs. Feel free to continue discussing if you have any more questions @bamapookie.


[full_control-13] [ERROR]  [fleet_adapter]: Robot named [] belonging to fleet [] is very far [2.288004m] from where it is supposed to be, but its remaining path is empty. This means the robot believes it is finished, but it is not where it's supposed to be.

Discussed in https://github.com/open-rmf/rmf/discussions/232

Originally posted by royito55 September 20, 2022
Hi,
I've been setting up the RMF schedule for two robots, and although I can launch the basics, I keep getting the error shown in the title after I send a task to the schedule that includes two waypoints that are 2m or more apart.

It seems like the fleet adapter does not update correctly to where the robot actually is (the purple circle is where the robot is), and as soon as the error appears, I can't send any more tasks and I have to restart the schedule to start again.

The system definitely knows where the robot is, otherwise the goals sent to nav2 would not even work, and the robot does start moving.

I've noticed that the threshold for this error to appear is 2 meters. If the waypoints are closer than that, then the fleet adapter sends a message saying that even though the robot is not where  expected, it will continue.

Is this an issue with the fleet adapter, the free fleet client/server, or the rmf schedule? Can this be a network issue? I'm running everything with cycloneDDS; the robots have their own nav2 setup and the free fleet clients and server, while I launch the schedule in a central computer. Attached is a video of what happens.
https://user-images.githubusercontent.com/26725409/191313677-a9a9db68-2a24-41e7-9c84-a264060b2104.mp4

Also, as a general question, what does the purple circle AND the yellow circle represent? Is it a bad sign if the yellow circle disappears from time to time? Once the schedule plans the path, I can see that the purple circle takes longer than the yellow one to move, and it feels like they should be synced.

Just an update, this error happens when the path in the topic /fleet_states for the robot doing the task is empty.
Why would it be empty if the robot has not finished the path? I've set the fleet adapter parameters to match the average nominal speed of the robot but there is still a large mismatch that occurs randomly between the robot state (purple circle) and its planned path (yellow circle)
In the video below you can see that the error appears for the robot barista_1, exactly when the schedule starts planning the robot trajectory. Why would it say the path is empty when I can visualize it and the robot hasn't even started moving? It's as if the system expects for the robot to be in the second location immediately.
Peek 2022-09-27 09-56.webm


i', a' and i", a" text objects broken when string terminator is under the cursor

This may be two separate bugs, but perhaps not.  For a quick demonstration, paste the following text into Atom:
'foo' + 'bar'

Place the cursor on the second ' and press va' to see that 'bar' is selected instead of 'foo'.  Press da' to see that ' + ' is deleted instead of 'foo'.

As stated in the README, this package is no longer maintained and is deprecated. We recommend that people use the vim-mode-plus package instead. Because of this, we are archiving this repository and closing all issues and pull requests. Thanks very much for your support and contributions!


Speed up refresh

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 29.275%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

background/refreshcollection.go
0
1
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
791

Relevant Lines:
2702

💛  - Coveralls


install: replace --native-routing-cidr by --ipv4-native-routing-cidr

Cilium v1.11 has deprecated --native-routing-cidr in favor of a new --ipv4-native-routing-cidr flag. This patch bring the same change in the Cilium CLI.

Multicluster test failure looks like #600. All other tests passed, merging.


Ignore deleted locators for confirmation

If deleted locators are selected and user confirms it and other locators, deleted locators should not be added to page object

3.1.135

JDN v 3.1.135
Back-end v 2022-02-12-11.36.19
Chrome
done


Nat Rev Neuro '00 | Information processing with population codes.

Pouget A, Dayan P, Zemel R. Information processing with population codes.

Population Decoding

Neural Implementation of Population Decoding

Nonlinear Mapping

Is population coding the whole story?

Extensions


"This file is potentially unsafe" warning on opening a plain-text .csv file

Storage Explorer Version: 1.1.0
Platform: Windows
Architecture: ia32
Build Number: 20180507.1
Commit: bcc8990d
Regression From: N/A
Steps to Reproduce:

Open a file with the .csv extension from blob storage (e.g. created using Azure App Service application logging)

Expected Experience:
Depending on the file type, a warning dialog is shown before opening the file. For safe files, I should not get this warning. Otherwise, I should be able to suppress this dialog to prevent it from being shown next time I open a file of the same type.
Actual Experience:
Every time I open a .csv blob, I get the following warning dialog:

[Window Title]
Microsoft Azure Storage Explorer
[Content]
Security warning: This file is potentially unsafe.
Are you sure you want to open it?
[Yes] [No]

I am unable to suppress this warning, so every blob I want to open, I get the same warning. I'm not sure why I get this warning in the first place:

A CSV blob with Content Type application/octet-stream (generated by Azure App Service application logging) triggers the warning, even though it is plain text;
An XML blob with Content Type application/xml triggers the warning as well;
An extensionless blob with Content Type image/jpeg also triggers the warning;
Both PDF and LOG blobs with Content Type application/octet-stream do not trigger the warning.

It is possible for .csv files to contain potentially malicious code, so we purposely don't include it in our list of safe-to-open files.
In a future update, we could provide a way to customize the list of files a user would consider safe to open.

Duplicate of #690

Actually, #690 is the duplicate.

Latest version 1.11.1 is causing this for every text file in my system (suffix *.log). Even if I click "yes" it will download an empty file.
Previous versions worked perfectly fine.
Accessing via the Azure portal and the file downloads fine and checks out - no viruses.

@grahambunce This issue is a duplicate. Please continue the discussion with issue #690.

#690 is closed
Sent from my iPhone
On 17 Dec 2019, at 18:33, Craig Alvord <notifications<EMAIL_ADDRESS>wrote:
@grahambuncehttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgrahambunce&data=02|01||db7758cb269f426fa93108d7831f9076|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637122043894588830&sdata=OSWJoHMzbNDUyUtw1YqjCAGL6nBj3mp8JWleFiNDw2g%3D&reserved=0 This issue is a duplicate. Please continue the discussion with issue #690https://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FAzureStorageExplorer%2Fissues%2F690&data=02|01||db7758cb269f426fa93108d7831f9076|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637122043894598859&sdata=ZJaXA7ZnkgRJvEFPc8AkwGrb%2Bo%2FEYUubwz6j2FB1%2Fms%3D&reserved=0.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FAzureStorageExplorer%2Fissues%2F164%3Femail_source%3Dnotifications%26email_token%3DAESW6CO5R4S3QQQDJQW67U3QZELOJA5CNFSM4E7MRIHKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHDQKVA%23issuecomment-566691156&data=02|01||db7758cb269f426fa93108d7831f9076|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637122043894608846&sdata=E8edSRMyxif%2B%2FYsqK3QNe5kdl%2FwXnLC4hSxsXgtIkpA%3D&reserved=0, or unsubscribehttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAESW6CJJNSDEWQEIQDFEH2DQZELOJANCNFSM4E7MRIHA&data=02|01||db7758cb269f426fa93108d7831f9076|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637122043894618851&sdata=IbGmHP002AllnJBP1ZMkoO8yrkcCx6FNVuPqKF%2B5HFw%3D&reserved=0.

@grahambunce Sorry, I totally lied. This is the right issue. 🤦♂


Find better ontology terms for the submit optional properties

Is this really priority?

Remove, chassis, purpose.  Find better terms for keywords and citations.

Removed chassis, purpose.

For pubmed IDs
http://www.ebi.ac.uk/ols/ontologies/obi/terms?iri=http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FOBI_0001617
http://purl.obolibrary.org/obo/OBI_0001617

Keyword (possibly though I haven't heard of this ontology)
http://www.ebi.ac.uk/ols/ontologies/sio/terms?iri=http%3A%2F%2Fsemanticscience.org%2Fresource%2FSIO_000147
http://semanticscience.org/resource/SIO_000147

DOI
http://www.ebi.ac.uk/ols/ontologies/cheminf/properties?iri=http%3A%2F%2Fpurl.org%2Fontology%2Fbibo%2Fdoi
http://purl.org/ontology/bibo/doi

Replaced with new issues.


Bigtable: add CRUD for instances

Depends on #3564
Another step in continuing the work in:
https://github.com/spollapally/google-cloud-java/tree/instance-admin-client/google-cloud-clients/google-cloud-bigtable

@kevinsi4508 can you take a look?

@pongad This should be ready for merging


Make sort more accurate - might fix #19

I've implemented @lfairy's suggestions from https://github.com/steveklabnik/contributors/issues/19#issuecomment-272355781.
PostgreSQL does have support for Unicode collation, but it uses the strcoll function from the system's packaged C standard library, which apparently is broken on OS X. If you're using a Linux server, you might be able to use a query like SELECT DISTINCT(author_name) FROM commits ORDER BY author_name COLLATE 'en_US'. I don't think Diesel has support for COLLATE, though, so you might have to use a raw query.
If the Rust bindings for ICU are ever finished, you'll be able to use ICU's implementation of the Unicode Collation Algorithm.
For now, I've implemented a string cmp function that

Decomposes each string into Unicode's Normalization Form Compatibility Decomposition (NFKD), which separates the diacritics from accented letters (for example, É to E´)
Filters out diacritics (so that letters like É will be considered equivalent to E)
Performs Unicode case folding on each character, which normalizes all the characters to their lower case form.
For Latin characters that are equivalent at this point (ignoring case), any differences in the case-sensitive values of the characters are due to them being in different cases, so it sorts lowercase characters before uppercase characters.
All other characters are compared using the normal cmp

It's still not terribly accurate, especially not for non-Latin characters, but at least now it orders names like the following correctly:

ashley
Anderson
elly
Émile
Eric

There's a hit on performance, especially for the all-time contributors page. Please let me know if there's anything I should do to speed it up.

Thank you for this! https://github.com/steveklabnik/contributors/pull/24 also claims to do some sorting stuff; I wonder which approach is better? Any thoughts?

#24 is using Postgres for sorting: https://github.com/steveklabnik/contributors/pull/24/files#diff-639fbc4ef05b315af92b4d836c31b023R128.
This probably works perfectly on Linux; I haven't tried it yet. On OS X the C lib's Unicode collation doesn't work, so it ends up being in "asciibetical" order again.

Ah, I wasn't sure if that was the same issue or not, makes sense though. I should have given it some more thought 😄
@Eroc33 what do you think of this? Maybe we can use this PR for the sorting, and use the rest of yours for the other stuff?

As a side note, a friend of mine just started to work on bindings for ICU's collation implementation, which would be a better alternative to my current approach once finished: https://github.com/Taneb/icu.

Yeah, I started working on that with this particular issue in mind. Aim to get it at least usable here this weekend.

This is certainly more portable than just relying on libC to do the right thing, so using the sorting from this PR rather than #24 is probably the best choice.

Great! Here's my plan. I'm going to merge this. When @Taneb 's library is ready, we can switch to that. And if you (@eroc33) can remove the sorting stuff from #24, we can merge it too.
Thanks all!

So, I merged and deployed this, because it looks good to me. but https://rust-contributors.herokuapp.com/1.13.0 doesn't seem to be affected. Hrm.

Ah, I might have just added it to the all contributors page. I'll fix when I have time.

Ahh, right. No worries! Let me open an issue so we don't forget.


Backport: nested function name canonicalization

PR Description
Backports https://github.com/JuliaLang/julia/pull/53719.
Checklist
Requirements for merging:

[X] I have opened an issue or PR upstream on JuliaLang/julia: https://github.com/JuliaLang/julia/pull/53719
[X] I have removed the port-to-* labels that don't apply.
[ ] I have opened a PR on raicode to test these changes:

Some failures:
<snip>
asyncmap                                         (15) |    17.35 |   0.38 |  2.2 |     682.96 |   579.92
SparseArrays/linalg_solvers                      (15) |        started at 2024-09-12T14:43:22.234
show                                             (31) |         failed at 2024-09-12T14:43:22.912
Test Failed at /home/ubuntu/julia.rai/test/show.jl:790
  Expression: occursin(r"var\"#foo2##[0-9]+", sprint(show, (M53719.foo2(1))(2), context = :module => M53719))
   Evaluated: occursin(r"var\"#foo2##[0-9]+", "var\"#bar2##1#bar2##2\"{Int64, Int64}(2, 1)")

Test Failed at /home/ubuntu/julia.rai/test/show.jl:801
  Expression: occursin(r"var\"#bar#foo##[0-9]+", sprint(show, typeof(M53719.foo(1)), context = :module => M53719))
   Evaluated: occursin(r"var\"#bar#foo##[0-9]+", "var\"#bar#bar##0\"{Int64}")

Test Failed at /home/ubuntu/julia.rai/test/show.jl:803
  Expression: occursin(r"var\"#baz#foo##[0-9]+", sprint(show, typeof((M53719.foo(1))(2)), context = :module => M53719))
   Evaluated: occursin(r"var\"#baz#foo##[0-9]+", "var\"#baz#bar##1\"{Int64, Int64}")

Test Failed at /home/ubuntu/julia.rai/test/show.jl:805
  Expression: occursin(r"var\"#bar2#foo2##[0-9]+", sprint(show, typeof(M53719.foo2(1)), context = :module => M53719))
   Evaluated: occursin(r"var\"#bar2#foo2##[0-9]+", "var\"#bar2#bar2##0\"{Int64}")

Test Failed at /home/ubuntu/julia.rai/test/show.jl:807
  Expression: occursin(r"var\"#foo2##[0-9]+#foo2##[0-9]+", sprint(show, typeof((M53719.foo2(1))(2)), context = :module => M53719))
   Evaluated: occursin(r"var\"#foo2##[0-9]+#foo2##[0-9]+", "var\"#bar2##1#bar2##2\"{Int64, Int64}")
<snip>


[Crash] Front Camera

The module work fine when using the Rear Camera.
But if on creation I set useFrontCamera:true, then it just crashes.

LOG
[INFO] :   CameraViewProxy: (main) [21542,30155] Front Camera Property exists!
[INFO] :   I/dalvikvm-heap: Grow heap (frag case) to 17.859MB for 2560016-byte allocation
[INFO] :   Choreographer: Skipped 31 frames!  The application may be doing too much work on its main thread.
[INFO] :   CameraViewProxy: (main) [572,30727] Opening Camera
[INFO] :   Camera: sendBroadcast intent.stop.app-in-app
[INFO] :   CameraViewProxy: (main) [95,30822] Setting Preview Display
[WARN] :   dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x41cb22a0)
[INFO] :   Process: Sending signal. PID: 10785 SIG: 9

Thanks for bringing this to my attention. The issue is due to the front camera not having support for auto focus. This seems to be particular to some devices and never came up in my testing.
0.6 of the module (in the dist folder) contains the fix for this. I've testing it on a Galaxy S2. Could you verify it yourself before I close the issue?

FIXED. Thank you


Centering window label

There doesnt seem to be a way to center the window title label.
Using v1
I'd expect TextAlignment to affect it, but it doesnt.
Is there a way to do this?

In v1 there is no option for that. But in the v2 will have.

See https://github.com/gui-cs/Terminal.Gui/issues/2505
Closing.

Ah I see, thank you very much for the response


Produce Action

tile types (mountain, forest, farm, village, tundra)
resource types (iron, wood, food, workers, oil)

use Enum for field Field and Resource


Duplicate stops

Remove duplicate calls to spinner.stop()

The spinner is stopped in the finally {} block which is guaranteed to execute.
Removing the extra calls removes duplicate outputs to the console when the command completes.

@westim Thank you for your contribution 👍


Addition of Multichannel cross-correlation processor for phase arrival time estimation

This is a new implementation of a batch version of my old dbxcor program for MsPASS.   The version I'm initially pushing is incomplete lacking two major things:

I need to complete a separate test function for align_and_stack for the long list of exceptions it handles via either an exception mechanism or an error log entry.  There are a lot that have to be handled for this complex algorithm I added from my previous experience with dbxcor.
There are additional functions that are needed in association with the align_and_stack function that is the only thing currently finished.  These are:  (1) A simple generic function that takes the output of this function and computes measured arrival times using computed cross-correlation shifts.   The issue is making it "generic".   A topic for upcoming group meetings.   (2) There is a need for related function(s) to automate what dbxcor required the user to input.   The first one I'm planning is a envelope-based method to estimate what we called the "correlation window" in dbxcor.   The second is a generic function to extract an initial seed estimator for the robust stacking algorithm - the signal used as the seed for the first stage correlation.   That is a very different problem also open for discussion in the group.  Finally, there is a need for a picker to compute a time shift to apply to ensemble outputs (a third thing the user had to pick graphically in dbxcor).

For now I'm pushing this branch to make sure pytest on github is consistent with my local test and to provide a copy for the group to discuss.

This is not yet ready to merge.   The tests are complete for the top-level function called align_and_stack.  Lacking are tests for other functions in this module not used directly by align_and_stack.  There are also handlers inside functions called by align_and_stack that aren't being fully tested for the range of things that can go wrong in this complex algorithm.   At our next group meeting we need to discuss how to proceed.

Assuming this commit passes the pytest runs as it did for me locally this is almost but not quite ready to merge.   The topic of discussion topic #562 needs to also be resolved.  There are some functions in new module this branch contains that are more generic and belong somewhere else.
Another issue before this should be merged is I want to exercise this algorithm more extensively on real data.   I need to verify its behavior is what I expect when working with small events where the algorithm needs to automatically discard low snr data.   When I get a working container for this branch I want to do those tests before we put this in the distribution.
When this feature is fully integrated and tested it justifies a new release.  If this works out well we should consider a publication on the implementation as it is would have wide use.

I think this branch is now ready to merge.   I suggest the following sequence:

@wangyinz should review this content and verify there isn't something I missed.  Also consider if the function names are rational.   One thing I did that I wasn't sure was correct is add the lines to have sphynx add the new stuff to the python api section of the user manual.
When satisfied merge the branch to master.
I'm starting work on a user manual page and tutorials linked to this new material.   That is best done on a separate branch.   The tutorial will be a full workflow I'm going to develop to apply this new algorithm to a decent sized data set on an HPC system.  Getting this merged is pretty much a prerequisite to building that more easily.    I could use the dev container from this pull request and will do that if you want to hold up merging this for any reason.

I don't see anything obvious so I merged it. It sounds all good to me. Thank you so much!


⚠ Avatar API Endpoint has degraded performance

In c29b0e9, Avatar API Endpoint (https://avatar.roblox.com/v1/avatar-rules) experienced degraded performance:

HTTP code: 200
Response time: 4631 ms

Resolved: Avatar API Endpoint performance has improved in 1d6e6db after 28 minutes.


Standard tinting fills complete bounding box

First of all, thanks for your excellent library! You really did a fantastic job with it.
However, I just tried out tinting, and somehow I can't get it to work. Here's a minimal code sample:
void main() {
  runApp(const JovialTestApp());
}

const svgString = '''
<svg version="1.1" width="50" height="50" xmlns="http://www.w3.org/2000/svg">
  <circle cx="25" cy="25" r="20" fill="green" />
</svg>
''';

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

  @override
  Widget build(BuildContext context) {
    final image = ScalableImage.fromSvgString(svgString);
    return MaterialApp(
      home: Scaffold(
        body: Row(children: [
          ScalableImageWidget(si: image),
          ScalableImageWidget(
              si: image.modifyTint(
                  newTintMode: BlendMode.srcIn, newTintColor: Colors.red)),
        ]),
      ),
    );
  }
}

As you can see, I'm displaying a simple SVG showing a circle two times; once just as it is (green), and subsequently with a red tint. I'm getting the following output:

Of course, I would expect a red circle instead of the red bounding box.
Maybe I'm just using this feature in the wrong way? Any help would be appreciated.
Additional context
I've compiled and run the sample on macOS and iOS (in their most recent versions) and built with the latest Flutter (v3.10.6).

Interesting!  You are absolutely correct.  Thanks for finding this.
jovial_svg was applying the tint to whatever was on the canvas, and not just the SVG.  So, if the canvas contained non-transparent pixels, the tint was being applied to those pixels too.  Since here the background was a white fill, every pixel was fully opaque, so the tint covered the entire extent of the SVG.
A call to Canvas.saveLayer is needed.
Tint is a feature from Android VectorDrawables, which is maybe why nobody noticed until now.  Tint is, of course, on the public API for ScalableImage, so it should be properly supported.

Thank you so much for taking care of this so quickly, Bill!
Ah, yeah, I think I understand the problem now. Since the SVG was drawn into the same layer as the background, the color was drawn over the background pixels. Makes sense! 👍
I applied your fix locally, and it works like a charm – as expected. :smile:
If there's anything I can do to help with testing, just let me know.
Again, your work on this is really appreciated! 🙏

Great!  Would you mind switching your pubspec over to 1.1.17-rc.1, just to make sure I didn't miss something dumb?
It's always nice when a bug report has the problem so well isolated, and is easy to reproduce.

I just switched to 1.1.17-rc.1, and that fixed the issue nicely! Plus, all my test SVGs are still rendering beautifully, so it doesn't seem to have any side effects. 🎉
Well, I guess we have to thank the bug for being so easy to reproduce! 😆
But I totally get what you mean, and I'm glad I could streamline the process for you. 😁
In any case: it's fixed! Awesome!!! Sending a huge THANK YOU from this side of the network. 🙏🎈

Great, thanks for checking.  I'll probably publish 1.1.17 tonight, when I get back to the computer with those login credentials :-)

Published in 1.1.17


different set and get timezone support

For global consistency, I believe it makes sense to support having the dates stored in one timezone and can be shown in any other timezone using the cast. While this is achievable via the ::set method on different cases and middleware, I think it would be more convenient to do it via the cast.
NB: I only took a glance at the codes, so I'm not 100% sure if this isn't already doable via the cast.
Ofc it can still be done by create a new cast that extends yours, but I think it would be better to have this within the package.
If you think this is feasible, I'm open to creating a PR

To be honest, I'm not entirely sure I understand what you're asking. Could you provide an example? Thanks!

So see it this way.
All timestamps are created with UTC, but when it's fetched, it should use the user's timezone.
Is this possible with the cast?

Yup, that's exactly what this package has been built for 🙂
What doesn't work for you? Did you try to implement the example from the README?


test: Expected a combining operator like '-a' at index 4

Describe the bug
Getting this error:
test: Expected a combining operator like '-a' at index 4                                  = files _fifc_source_files _fifc_comp_2 _fifc_comp_3 _fifc_comp_4 _fifc_comp_5 _fifc_comp_6 _fifc_comp_7 _fifc_comp_8[1]
         ^
~/.config/fish/functions/_fifc_action.fish (line 1):
in function '_fifc_action' with arguments 'source'
	called on line 1 of file ~/.config/fish/functions/_fifc.fish
in command substitution
	called on line 25 of file ~/.config/fish/functions/_fifc.fish

This happens right before fzf launches, by pressing ctrl-x.
The stack trace isn't exactly helpful. Any ideas? What is it trying to do? I can probably figure it out myself if you can give me a tip.

Hi @joehillen!
What was the command you were typing?
Did you add any custom completion rules?
Completion rules are stored in lists and are tested against the command you are typing.
As _fifc_action is called with source arg, the test call may come from the command evaluated here: https://github.com/gazorby/fifc/blob/adff5966739667d4c13d6388372e40f821571208/functions/_fifc_action.fish#L58
This evaluated command (defined in completion rule) should retrieve a list of completion suitable for the current context, and the error you see happens when evaluating that particular command.

This error happens for me when there's no manpage for the particular command.

Strangely, I can reproduce but only when using WSL, it works fine on Linux distros

I am not sure why it is happening, but for me this came about when using fish within tmux and not within an xterm. So, it seemed like it was a double initialisation issue. The other reason to make me think this is that when I experience the error various _fifc_comp_ variables had duplicated content. So the way I fixed it for me was to delete the _fifc_comp_ variable before setting it. I did this with the following diff:
diff --git a/functions/fifc.fish b/functions/fifc.fish
index f7c5910..3f81edb 100644
--- a/functions/fifc.fish
+++ b/functions/fifc.fish
@@ -38,6 +38,8 @@ function fifc -d "Add your own fish fzf completions"

     set _fifc_comp_count (math $_fifc_comp_count + 1)
     set -l count $_fifc_comp_count
+    set -e -U "_fifc_comp_$count"
+    set -e -g "_fifc_comp_$count"
     set -Ux "_fifc_comp_$count"
     set -a "_fifc_comp_$count" "$_flag_n"
     set -a "_fifc_comp_$count" "$_flag_r"

Without the fix I would get:
_fifc_comp_10=test "$fifc_group" = processes    ps -ax -o pid=,command=   test "$fifc_group" = processes    ps -ax -o pid=,command=

With the fix:
_fifc_comp_10=test "$fifc_group" = processes    ps -ax -o pid=,command=

Which is at least valid syntax. I am not sure this completely resolves all the issues with the _fifc_comp_* variables. Because when in tmux I still get a bunch of duplicates:
> env | sort | grep _fifc | grep "processes\s*ps -ax"
_fifc_comp_10=test "$fifc_group" = processes    ps -ax -o pid=,command=
_fifc_comp_18=test "$fifc_group" = processes    ps -ax -o pid=,command=
_fifc_comp_26=test "$fifc_group" = processes    ps -ax -o pid=,command=
_fifc_comp_2=test "$fifc_group" = processes    ps -ax -o pid=,command=
_fifc_comp_34=test "$fifc_group" = processes    ps -ax -o pid=,command=

I suspect the fifc function needs to also check whether there is already a variable with the matching "body" and only add new ones. But my above hack did enough to solve the issue for me.

Good catch @timcleaver! Should be gone on main now, that fixed for me too ;)


Enable FlexibleContexts by default?

When creating for example a small counter:
counter = register 0 ( counter + 1)

counter already requires a domain to be sampled. If you´d want to make this a counter for System.
You can´t make the type simply Signal System (Unsigned 8) because register requires HiddenClockResetEnable dom.
For System, you now have to explicitly supply HiddenClockResetEnable System, which you can't because FlexibleContexts is not enabled by default. Now the user must also figure out what LANGUAGE pragmas are and how to set FlexibleContexts.
I think all these steps introduce a lot of friction and our template projects should maybe show how to deal with more of these situations.

I'm looking into the GHC2021 extensions, there are some we don't want such as StarIsType (we already have NoStarIsType enabled so that checks out) since using StarIsType breaks type level multiplication.
Furthermore using NamedWildCards causes errors in bittide without enabling PartialTypeSignatures. Specifically in combination with the circuit-notation plugin for circuits that are ignored.
I don't think just enabling the GHC2021 blessed extensions is a great idea and we should just see what encounter and selectively enable extensions based on that.
A quick search in bittide shows that we enable the following extensions commonly on a per module basis:
RecordWildCards
NamedFieldPuns
FlexibleContexts

(I'm personally guilty of introducing most of those)
I'd prefer just adding those.

Solved by #33


coprocessor: limit concurrent requests by memory quota

What is changed and how it works?

Issue Number: Close #16653

What's Changed:
Fix an issue that a large number of concurrent coprocessor requests may
cause OOM. This issue is resolved by implementing a memory quota for
coprocessors, which rejects incoming requests when the memory quota is full.

Related changes

[x] Need to cherry-pick to the release branch

Check List
Tests

[x] Unit test
[ ] Integration test
Manual test (add detailed scripts or steps below)
See #16653

nightly 2024-03-05
This PR

OOM
No OOM

The above tests shows that with this PR TiKV memory usage is much stable, no OOM and no memory surge during tests.
Performance tests
Tests show that sysbench results are almost the same, no regression found.
sysbench oltp_random_range
http://perf.pingcap.net/d/iarAjGo7z/benchbot-overview?orgId=1&var-email=All&var-testbed=benchbot-amd64-xl-sysbench-tps-7534416-1-894&from=1711329924000

TiKV
qps
avg_latency(ms)
P99_latency(ms)
P999_latency(ms)

This PR https://github.com/tikv/tikv/commit/20949a37ca1b5b5ee49f4bf008d6ef591780e594
32909
5.37
15.3
28.7

Nightly https://github.com/tikv/tikv/commit/101b8bc50f40e04412cff74becb9028c1f629a0f
33066
5.35
15.3
28.2

sysbench oltp_read_only
http://perf.pingcap.net/d/iarAjGo7z/benchbot-overview?orgId=1&var-email=All&var-testbed=benchbot-amd64-xl-sysbench-tps-7534415-1-789&from=1711329925000

TiKV
qps
avg_latency(ms)
P99_latency(ms)
P999_latency(ms)

This PR https://github.com/tikv/tikv/commit/20949a37ca1b5b5ee49f4bf008d6ef591780e594
70580
2.12
7.91
15.7

Nightly https://github.com/tikv/tikv/commit/101b8bc50f40e04412cff74becb9028c1f629a0f
70506
2.12
7.94
15.7

Release note

Fix an issue that a large number of concurrent coprocessor requests may cause OOM.

What is changed and how it works?
Issue Number: Close #16653
What's Changed:
Fix an issue that a large number of concurrent coprocessor requests may
cause OOM. This issue is resolved by implementing a memory quota for
coprocessors, which rejects incoming requests when the memory quota is full.

Related changes

[x]  Need to cherry-pick to the release branch

Check List
Tests

[x]  Unit test
[ ]  Integration test
Manual test (add detailed scripts or steps below)
See TPCC check with -T 1000 causes TiKV OOM  #16653

nightly 2024-03-05	This PR
OOM	No OOM

The above tests shows that with this PR TiKV memory usage is much stable, no OOM and no memory surge during tests.
Performance tests
Tests show that sysbench results are almost the same, no regression found.
sysbench oltp_random_range
http://perf.pingcap.net/d/iarAjGo7z/benchbot-overview?orgId=1&var-email=All&var-testbed=benchbot-amd64-xl-sysbench-tps-7534416-1-894&from=1711329924000
TiKV	qps	avg_latency(ms)	P99_latency(ms)	P999_latency(ms)
This PR 20949a3	32909	5.37	15.3	28.7
Nightly 101b8bc	33066	5.35	15.3	28.2
sysbench oltp_read_only
http://perf.pingcap.net/d/iarAjGo7z/benchbot-overview?orgId=1&var-email=All&var-testbed=benchbot-amd64-xl-sysbench-tps-7534415-1-789&from=1711329925000
TiKV	qps	avg_latency(ms)	P99_latency(ms)	P999_latency(ms)
This PR 20949a3	70580	2.12	7.91	15.7
Nightly 101b8bc	70506	2.12	7.94	15.7
Release note
Fix an issue that a large number of concurrent coprocessor requests may cause OOM.

In the read-only test, the CPU usage is about 400%, which is not large enough to expose the issue of the atomic counter. The ideal test environment would be 32 core tikv with 2 CPUs for the read-only test, I think the atomic counter's impact can be identified.
Or we can use a micro-benchmark that read data from rocksdb concurrently (with 64 threads or more). One is updating a global atomic counter in each read, and the other does not have the counter.

Microbenchmarks show memory quota alloc/free are quite fast, only take about 30ns with 64 concurrent threads on a numa machine.
Microbenchmark: https://github.com/overvenus/benches-rust/blob/aeeb4ae921d37ce0b7a87c9504e525dd8369cfaf/benches/memory.rs
[root@10 ~]# cargo bench "Threads"
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

Gnuplot not found, using plotters backend
32 Threads/MemoryQuota/alloc free
                        time:   [5.6499 µs 5.7100 µs 5.7678 µs]
Found 5 outliers among 100 measurements (5.00%)
  1 (1.00%) low severe
  4 (4.00%) low mild
32 Threads/OwnedAllocated/alloc free
                        time:   [7.7758 µs 7.7965 µs 7.8187 µs]
Found 4 outliers among 100 measurements (4.00%)
  1 (1.00%) low mild
  2 (2.00%) high mild
  1 (1.00%) high severe

64 Threads/MemoryQuota/alloc free
                        time:   [24.906 µs 29.300 µs 33.787 µs]
Found 9 outliers among 100 measurements (9.00%)
  6 (6.00%) high mild
  3 (3.00%) high severe
64 Threads/OwnedAllocated/alloc free
                        time:   [19.682 µs 22.358 µs 25.527 µs]
Found 12 outliers among 100 measurements (12.00%)
  8 (8.00%) high mild
  4 (4.00%) high severe

[root@10 ~]# cat /proc/cpuinfo | head -10
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 85
model name	: Intel(R) Xeon(R) Gold 6240 CPU @ 2.60GHz
stepping	: 7
microcode	: 0x5003302
cpu MHz		: 2600.000
cache size	: 25344 KB
physical id	: 0
[root@10 ~]# numactl --show
policy: default
preferred node: current
physcpubind: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
cpubind: 0 1
nodebind: 0 1
membind: 0 1

@overvenus Can you provide a detailed design PR first?

/approve

/merge

/retest


[cli] improve and fix the way transaction data is formatted

Description
This PR improves the way TransactionData is formatted in the CLI. There was an issue where an input of type PureValue of bcs data was too big, and it was completely messing the table. I fixed that and also have improved the formatting output for SuiCallArg, SuiPureValue. Importantly, if there is BCS data, it gets transformed into Base64.
Finally, the Transaction Data table is wrapped around the terminal's size; it works well with terminals above 130-140 characters. Still need to fiddle a bit with it, but for now, this should work nicely.
Here's the complete output.
https://gist.github.com/stefan-mysten/19c23796c701f52320c8fb56ad50b275
Test Plan

If your changes are not user-facing and not a breaking change, you can skip the following section. Otherwise, please indicate what changed, and then add to the Release Notes section as highlighted during the release process.
Type of Change (Check all that apply)

[ ] protocol change
[x] user-visible impact
[ ] breaking change for a client SDKs
[ ] breaking change for FNs (FN binary must upgrade)
[ ] breaking change for validators or node operators (must upgrade binaries)
[ ] breaking change for on-chain data layout
[ ] necessitate either a data wipe or data migration

Release notes
Improves the way transaction data is formatted in the CLI.

Will revisit in a new PR.


Strange display of roughness in model-viewer

Description
I viewed a model in the model-viewer editor: https://modelviewer.dev/editor/
The model has a not so rough surface. The surface appeared very pixelated and somehow broken. When I removed the roughness texture in the viewer, the model appears correct. The I tried a model that worked before - and also this model is broken now.
When I select a predefined model like the water bottles model - all parts appear also broken.  See the example images below.
Live Demo

https://glitch.com/edit/#!/model-viewer

Version

model-viewer: vX.X.X

Browser Affected

Chrome
AR

[ ] WebXR
[ ] SceneViewer
[ ] QuickLook

I can't repro; can you please fill in  all the details of the device/OS/browser versions you're using  to test? This has the look of a  GPU driver bug.

I can confirm the behaviour as well
1.9.2

1.10.1

Specs
PC

Chrome
Version 97.0.4692.99 (64 bit)
Firefox
Version 97.0b7 (64 bit)

@FelipeR2U Can I assume this is a Windows machine? @mrdoob This looks like a regression somewhere in the last few versions for three.js. This noise looks very much like a driver bug to me (especially since it doesn't repro on Mac or mobile), but I guess we must have triggered it  somehow? Have you seen any similar issues  in  the three.js repo?

I suspect it is related to the RGBEEncoding/RGBEFormat removal...
https://www.facebook.com/groups/threejs/permalink/1861902697330383/

Hmm, so maybe a HalfFloat bug on some Windows GPU driver? Ugh. Any chance you could get kbr to take a look?

/ping @kenrussell

I can't reproduce on an NVIDIA Quadro K2200. about:gpu from Chrome on this system:
https://pastebin.com/PrtQanE3
Please gather about:gpu from an affected system and link to it here; we'll file a bug on the Chromium issue tracker to investigate in more detail. Please provide clear and concise reproduction steps. I went to https://modelviewer.dev/editor/ , and selected the "Water Bottles" model. If that page is likely to evolve then please provide a stable reproduction somewhere.
Thanks.

@superLeaAtWork @FelipeR2U
Can you share screenshots of these two examples?
https://modelviewer.dev/examples/lightingandenv/#renderExposure
https://modelviewer.dev/examples/scenegraph/#changeMaterial

Note: still unable to reproduce the failure after upgrading to the latest supported feature driver for this GPU, 496.49.
https://pastebin.com/e8WPsmyA
It's likely specific to the GPU family.
These kinds of twinkling artifacts look to me like undefined behavior in GLSL like calling pow() with a negative exponent. Could this be investigated with an eye toward that in the associated shaders?

Hello,
@mrdoob hiere the two examples:

I tested it on 3 different windows machines. I tested in on chrome (Version 97.0.4692.99 (Offizieller Build) (64-Bit)) and fireforx (96.0.2 (64-Bit)).
The graphic-card on my machine is NVIDIA GeForce RTX 2070 SUPER.
my machine works with Windows 10 Pro. The processor is a AMD Ryzen 9 3900XT 12-Core Processor (64Bit).
The other machines have a different setup. But always windows PC.

@elalish , yes, it's a Windows 11 machine
This gray noise is hard to notice on the screenshot but very noticeable while interacting with the model.
@mrdoob , I have the same results as superLeaAtWork. It appears to have some joints on the sphere

@kenrussell

Graphics Feature StatusCanvas: Hardware acceleratedCanvas out-of-process rasterization: DisabledCompositing: Hardware acceleratedMultiple Raster Threads: EnabledOut-of-process Rasterization: Hardware acceleratedOpenGL: EnabledRasterization: Hardware acceleratedRaw Draw: DisabledSkia Renderer: EnabledVideo Decode: Hardware acceleratedVideo Encode: Hardware acceleratedVulkan: DisabledWebGL: Hardware acceleratedWebGL2: Hardware acceleratedDriver Bug Workaroundsclear_uniforms_before_first_program_usedecode_encode_srgb_for_generatemipmapdisable_delayed_copy_nv12enable_webgl_timer_query_extensionsexit_on_context_lostdisabled_extension_GL_KHR_blend_equation_advanceddisabled_extension_GL_KHR_blend_equation_advanced_coherentProblems DetectedSome drivers are unable to reset the D3D device in the GPU process sandboxApplied Workarounds: exit_on_context_lostClear uniforms before first program use on all platforms: 124764, 349137Applied Workarounds: clear_uniforms_before_first_program_useDisable KHR_blend_equation_advanced until cc shaders are updated: 661715Applied Workarounds: disable(GL_KHR_blend_equation_advanced), disable(GL_KHR_blend_equation_advanced_coherent)Decode and Encode before generateMipmap for srgb format textures on Windows: 634519Applied Workarounds: decode_encode_srgb_for_generatemipmapDelayed copy NV12 displays incorrect colors on NVIDIA drivers.: 728670Applied Workarounds: disable_delayed_copy_nv12Expose WebGL's disjoint_timer_query extensions on platforms with site isolation: 808744, 870491Applied Workarounds: enable_webgl_timer_query_extensionsANGLE Featuresallow_compressed_formats (Frontend workarounds): Enabled: trueAllow compressed formatsdisable_anisotropic_filtering (Frontend workarounds): DisabledDisable support for anisotropic filteringdisable_program_binary (Frontend features) anglebug:5007: DisabledDisable support for GL_OES_get_program_binarydisable_program_caching_for_transform_feedback (Frontend workarounds): DisabledOn some GPUs, program binaries don't contain transform feedback varyingsenableCompressingPipelineCacheInThreadPool (Frontend workarounds) anglebug:4722: Disabled: falseEnable compressing pipeline cache in thread pool.enableProgramBinaryForCapture (Frontend features) anglebug:5658: DisabledEven if FrameCapture is enabled, enable GL_OES_get_program_binaryenable_capture_limits (Frontend features) anglebug:5750: DisabledSet the context limits like frame capturing was enabledforceInitShaderVariables (Frontend features): DisabledForce-enable shader variable initializationforceRobustResourceInit (Frontend features) anglebug:6041: DisabledForce-enable robust resource initlose_context_on_out_of_memory (Frontend workarounds): Enabled: trueSome users rely on a lost context notification if a GL_OUT_OF_MEMORY error occursscalarize_vec_and_mat_constructor_args (Frontend workarounds) 1165751: Disabled: falseAlways rewrite vec/mat constructors to be consistentadd_mock_texture_no_render_target (D3D workarounds) anglebug:2152: Disabled: isIntel && capsVersion >= IntelDriverVersion(160000) && capsVersion < IntelDriverVersion(164815)On some drivers when rendering with no render target, two bugs lead to incorrect behaviorallowES3OnFL10_0 (D3D workarounds): Disabled: falseAllow ES3 on 10.0 devicesallow_clear_for_robust_resource_init (D3D workarounds) 941620: Enabled: trueSome drivers corrupt texture data when clearing for robust resource initialization.allow_translate_uniform_block_to_structured_buffer (D3D workarounds) anglebug:3682: Enabled: IsWin10OrGreater()There is a slow fxc compile performance issue with dynamic uniform indexing if translating a uniform block with a large array member to cbuffer.call_clear_twice (D3D workarounds) 655534: Disabled: isIntel && isSkylake && capsVersion >= IntelDriverVersion(160000) && capsVersion < IntelDriverVersion(164771)Using clear() may not take effectdepth_stencil_blit_extra_copy (D3D workarounds) anglebug:1452: Disabled: (part1 <= 13u && part2 < 6881) && isNvidia && driverVersionValidBug in some drivers triggers a TDR when using CopySubresourceRegion from a staging texture to a depth/stencildisable_b5g6r5_support (D3D workarounds): Disabled: (isIntel && capsVersion >= IntelDriverVersion(150000) && capsVersion < IntelDriverVersion(154539)) || isAMDTextures with the format DXGI_FORMAT_B5G6R5_UNORM have incorrect dataemulate_isnan_float (D3D workarounds) 650547: Disabled: isIntel && isSkylake && capsVersion >= IntelDriverVersion(160000) && capsVersion < IntelDriverVersion(164542)Using isnan() on highp float will get wrong answeremulate_tiny_stencil_textures (D3D workarounds): Disabled: isAMD && !(deviceCaps.featureLevel < D3D_FEATURE_LEVEL_10_1)1x1 and 2x2 mips of depth/stencil textures aren't sampled correctlyexpand_integer_pow_expressions (D3D workarounds): Enabled: trueThe HLSL optimizer has a bug with optimizing 'pow' in certain integer-valued expressionsflush_after_ending_transform_feedback (D3D workarounds): Enabled: isNvidiaSome drivers sometimes write out-of-order results to StreamOut buffers when transform feedback is used to repeatedly write to the same buffer positionsforce_atomic_value_resolution (D3D workarounds) anglebug:3246: Enabled: isNvidiaOn some drivers the return value from RWByteAddressBuffer.InterlockedAdd does not resolve when used in the .yzw components of a RWByteAddressBuffer.Store operationget_dimensions_ignores_base_level (D3D workarounds): Enabled: isNvidiaSome drivers do not take into account the base level of the texture in the results of the HLSL GetDimensions builtinmrt_perf_workaround (D3D workarounds): Enabled: trueSome drivers have a bug where they ignore null render targetspre_add_texel_fetch_offsets (D3D workarounds): Disabled: isIntelHLSL's function texture.Load returns 0 when the parameter Location is negative, even if the sum of Offset and Location is in rangerewrite_unary_minus_operator (D3D workarounds): Disabled: isIntel && (isBroadwell || isHaswell) && capsVersion >= IntelDriverVersion(150000) && capsVersion < IntelDriverVersion(154624)Evaluating unary minus operator on integer may get wrong answer in vertex shadersselect_view_in_geometry_shader (D3D workarounds): Disabled: !deviceCaps.supportsVpRtIndexWriteFromVertexShaderThe viewport or render target slice will be selected in the geometry shader stage for the ANGLE_multiview extensionset_data_faster_than_image_upload (D3D workarounds): Enabled: !(isIvyBridge || isBroadwell || isHaswell)Set data faster than image uploadskip_vs_constant_register_zero (D3D workarounds): Enabled: isNvidiaIn specific cases the driver doesn't handle constant register zero correctlyuse_instanced_point_sprite_emulation (D3D workarounds): Disabled: isFeatureLevel9_3Some D3D11 renderers do not support geometry shaders for pointsprite emulationuse_system_memory_for_constant_buffers (D3D workarounds) 593024: Disabled: isIntelCopying from staging storage to constant buffer storage does not workzero_max_lod (D3D workarounds): Disabled: isFeatureLevel9_3Missing an option to disable mipmaps on a mipmapped textureDAWN Info<Discrete GPU> D3D12 backend - NVIDIA GeForce RTX 2070[Default Toggle Names]lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource.use_d3d12_resource_heap_tier2: https://crbug.com/dawn/27: Enable support for resource heap tier 2. Resource heap tier 2 allows mixing of texture and buffers in the same heap. This allows better heap re-use and reduces fragmentation.use_d3d12_render_pass: https://crbug.com/dawn/36: Use the D3D12 render pass API introduced in Windows build 1809 by default. On versions of Windows prior to build 1809, or when this toggle is turned off, Dawn will emulate a render pass.use_d3d12_residency_management: https://crbug.com/dawn/193: Enable residency management. This allows page-in and page-out of resource heaps in GPU memory. This component improves overcommitted performance by keeping the most recently used resources local to the GPU. Turning this component off can cause allocation failures when application memory exceeds physical device memory.disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet.[WebGPU Forced Toggles - enabled]disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules.This is useful to prevent a Chromium renderer process from successfully sendingSPIR-V code to be compiled in the GPU process.[Supported Features]texture-compression-bcpipeline-statistics-querytimestamp-querydawn-internal-usagesmultiplanar-formats<CPU> D3D12 backend - Microsoft Basic Render Driver[Default Toggle Names]lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource.use_d3d12_resource_heap_tier2: https://crbug.com/dawn/27: Enable support for resource heap tier 2. Resource heap tier 2 allows mixing of texture and buffers in the same heap. This allows better heap re-use and reduces fragmentation.use_d3d12_render_pass: https://crbug.com/dawn/36: Use the D3D12 render pass API introduced in Windows build 1809 by default. On versions of Windows prior to build 1809, or when this toggle is turned off, Dawn will emulate a render pass.use_d3d12_residency_management: https://crbug.com/dawn/193: Enable residency management. This allows page-in and page-out of resource heaps in GPU memory. This component improves overcommitted performance by keeping the most recently used resources local to the GPU. Turning this component off can cause allocation failures when application memory exceeds physical device memory.disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet.[WebGPU Forced Toggles - enabled]disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules.This is useful to prevent a Chromium renderer process from successfully sendingSPIR-V code to be compiled in the GPU process.[Supported Features]texture-compression-bcpipeline-statistics-querytimestamp-querydawn-internal-usagesmultiplanar-formats<Discrete GPU> Vulkan backend - NVIDIA GeForce RTX 2070[Default Toggle Names]lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource.use_temporary_buffer_in_texture_to_texture_copy: https://crbug.com/dawn/42: Split texture-to-texture copy into two copies: copy from source texture into a temporary buffer, and copy from the temporary buffer into the destination texture when copying between compressed textures that don't have block-aligned sizes. This workaround is enabled by default on all Vulkan drivers to solve an issue in the Vulkan SPEC about the texture-to-texture copies with compressed formats. See #1005 (https://github.com/KhronosGroup/Vulkan-Docs/issues/1005) for more details.vulkan_use_d32s8: https://crbug.com/dawn/286: Vulkan mandates support of either D32_FLOAT_S8 or D24_UNORM_S8. When available the backend will use D32S8 (toggle to on) but setting the toggle to off will make ituse the D24S8 format when possible.disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet.[WebGPU Forced Toggles - enabled]disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules.This is useful to prevent a Chromium renderer process from successfully sendingSPIR-V code to be compiled in the GPU process.[Supported Features]texture-compression-bcpipeline-statistics-querytimestamp-querydepth-clampingdawn-internal-usagesVersion Information

Data exported
2022-01-26T11:40:58.301Z

Chrome version
Chrome/97.0.4692.99

Operating system
Windows NT 10.0.22000

Software rendering list URL
https://chromium.googlesource.com/chromium/src/+/d740da257583289dbebd2eb37e8668928fac5ead/gpu/config/software_rendering_list.json

Driver bug list URL
https://chromium.googlesource.com/chromium/src/+/d740da257583289dbebd2eb37e8668928fac5ead/gpu/config/gpu_driver_bug_list.json

ANGLE commit id
907d2234409b

2D graphics backend
Skia/97 b4d28b2f35396ae4dd69338254415066629dfd25

Command Line
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --flag-switches-begin --enable-features=ParallelDownloading,UseDownloadOfflineContentProvider --flag-switches-end

Log MessagesGpuProcessHost: The info collection GPU process exited normally. Everything is okay.

@superLeaAtWork

@mrdoob hiere the two examples:

Many many thanks! That really helps to figure out where the issue may be.
Could you also share a screen recording of the changeMaterial example moving the roughness slider from 0 to 1 and back?

@mrdoob
https://user-images.githubusercontent.com/49691924/151218054-52b1be53-8a43-4f80-95ee-00d25bc1decd.mp4

@FelipeR2U Very helpful! Thanks!

@superLeaAtWork @FelipeR2U
So @elalish is wondering if this could be a bug with half-float on these GPUs.
I've prepared a couple of links to try:
https://mrdoob-sandbox.glitch.me/pmrem-float.html
https://mrdoob-sandbox.glitch.me/pmrem-halffloat.html
Do you mind sharing screenshots of both?

Sending the image once, but both links on both Chrome and Firefox gave this result:

Thanks @FelipeR2U 🙏
@elalish anything else you can think of?

@mrdoob  I have the same result as @FelipeR2U :)

@mrdoob @elalish a couple of thoughts:

Are these seams at the edges of cube maps?
If this is the WebGL 1.0 backend, is Three enabling the https://www.khronos.org/registry/webgl/extensions/OES_texture_half_float_linear/ extension? It should, if it's now using half-float textures.

@kenrussell It's actually a custom 2D texture that is acting as a cubemap (needed custom mipmap sizes). So it sort of looks like a rounding or interpolation error of some kind. The relevent shader chunk is here: https://github.com/mrdoob/three.js/blob/2768965fb58e482e80f78ac95d3d4afcc8ebd895/src/renderers/shaders/ShaderChunk/cube_uv_reflection_fragment.glsl.js

Hallo,
maybe the information helps you that the wrong appearance only happens when viewing the models in the model-viewer editor.https://modelviewer.dev/editor/
When we integrate the model-viewer into our website and load the same model there, the model appears correct.
Also when viewing it on the same PC with the same browser where the model viewer editor is corrupt...
Best regards.
Lea

@superLeaAtWork Which version of model-viewer are you integrating with? @FelipeR2U said the break occurred between v1.9 and v1.10. Is that your experience too?

Thanks for the information regarding how the cube maps are packed into the texture.
I'm still wondering whether the contents of that custom 2D texture are corrupted, or whether the shader that samples them is producing incorrect answers at what would otherwise be cube map seams.
Is there any way to get answers to these questions in conjunction with someone who can reproduce the problem?

@kenrussell

If this is the WebGL 1.0 backend, is Three enabling the https://www.khronos.org/registry/webgl/extensions/OES_texture_half_float_linear/ extension? It should, if it's now using half-float textures.

Yes we do:
https://github.com/mrdoob/three.js/blob/1bb26d7dbfb925b6499a3f4e51fd56f53d95ac9f/src/renderers/webgl/WebGLExtensions.js#L52-L75

@FelipeR2U the about:gpu information provided above is missing the "Driver Information" section, which is key. Could you please go to about:gpu, click "Copy report to clipboard", paste it on pastebin.com and post the link here? Or, paste it into a plain .txt file and attach it here. Make sure the .txt file has the correct line breaks and isn't just one huge line. Thanks.

@aleino-nv per https://twitter.com/PavelBoytchev/status/1492224108318318593 it seems this behavior is triggered when enabling "max anisotropy" in NVIDIA's control panel settings. Does that override any setting of TEXTURE_MAX_ANISOTROPY_EXT by the application (the browser in this case)?

@superLeaAtWork @FelipeR2U Have you changed these settings in your graphics card?

Hello,
changing the NVIDIA settings did not change anything:

Furthermore, I did not change anything in my graphics card settings.
How do I see which version I integrate into the code?
On the following link you can see an example of an integrated web viewer: https://www.pfister.ch/de/produkt/28756/kartell-stuhl-masters
On this page the visualization is correct.
Regards,
Lea

@superLeaAtWork Thanks for testing that 🙏
One more test, can you share a screenshot of how this test looks like in your system?
https://mrdoob-sandbox.glitch.me/pmrem-nearest-halffloat.html

@mrdoob your welcome!

This time I do not see any strange lines.

Excellent! Thanks!

I'll call this fixed, since the fix is merged upstream in three.js and we'll get it when we pull the next version.

Hello,
excellent. Can you just explain the bug in 2 sentences? I'm just curious! :)
Best regards,
LEa

Well, the short answer is it's a driver bug we don't understand (and even if we did, it would take a long time to get fixed). It has something to do with anisotropy, float textures, and linear filtering. @mrdoob got around it by setting the minFilter on this texture to Nearest from Linear (which doesn't appear to change the rendered result for working devices).


Restructure

restructured the project

configuration file
real time monitoring (using redis pubsub + event source)

using on client side is now very easy, see test.html

Looks really good and seems to be better to understand than before. I will give it a try later, because I haven't installed it on my machine here.


Feature Request: Official support for AL2023 for the alpha release

Tell us more about this new feature.
The alpha release of Mountpoint for Amazon S3 is only available by building from source, and only supports Linux. These instructions are for Amazon Linux 2, but other Linux distributions should be similar. AL2023 is in GA, so it would be nice if it would receive official support.

Thanks @r-heimann for the suggestion.
In lieu of the README being updated, the Dockerfile builds on an AL2023 image so should hopefully detail the dependencies needed.
https://github.com/awslabs/mountpoint-s3/blob/main/docker/Dockerfile#L2-L4
Still leaving the issue open as we should consider updating the README here.

Looks like the only difference for AL2023 is that we need to manually install git. #212 will fix the README.

README.md is updated in a36db96025c19d821c96ddb84b8f77d399f212ea. Closing.


[PE-D][Tester C] Leave list wording may not be grammatical

When a leave period is displayed in the output window, the header for the list reads "Leaves taken". It may be possible to enhance the wording for the way the word "leave" is being used. A header such as "On leave on:" may read in a more appealing way.

Labels: type.FunctionalityBug severity.VeryLow
original: Cloud7050/ped#8

wrong wording used in message (functionality bug)

Merely an enhancement to the wording, not a bug to fix.


Mariadb appliance enhancement: allow longer indexes than 767 bytes.

Hey!
I'm constantly colliding with this problem in flynn database appliance, even though this isn't really flynn's fault.
We are hosting some WordPress sites in flynn and want to move everything over here in the future.
Many of the WordPress plugins create tables into the mysql for storing their internal data and we have been bumping into this issue lately:
WordPress-database error: Index column size too large. The maximum column size is 767 bytes. Query CREATE INDEX typeitem ON wp_sometable (type, item)

It happens when the plugin tries to run a SQL-query like this:
CREATE TABLE wp_sometable
...
type varchar(255) NOT NULL DEFAULT 'post',
...

Why this happens:
Historically this was the maximum length that could be fitted into 767 bytes using charset=utf8.
The problem started when people wanted to have emojis in the charset and new charset utf8mb4 was created.

Default utf8 encoding is 3 byte in MySQL, whereas utf8_mb4 is 4 byte variable (utf32 is 4 byte fixed)
http://dev.mysql.com/doc/refman/5.7/en/charset-unicode.html

So charset=utf8 is 255*3 = 765 and can fit into the default index but charset=utf8mb is 255*4= 1020 so it can't fit into the allowed index length limit.
Possible fix:
Is it possible to enable: http://dev.mysql.com/doc/refman/5.5/en/innodb-parameters.html#sysvar_innodb_large_prefix

Flynn is unmaintained and our infrastructure will shut down on June 1, 2021. See the README for details.


Improve Dockerfile

What's up, @blueedgetechno? I was reviewing your Dockerfile and I think the following topics could be improved.

Use an specific node image
package.json and package-lock.json could be copied to the image using a single COPY statement.
Install only production dependencies in the image
Set NODE_ENV=production
Expose 3000 port
Replace CMD statement by ENTRYPOINT
Set up a .dockerignore

Why?

Using a specific node image, you reduce the risk of braking something if the latest image updates, I'd recommend using the LTS alpine
You can use COPY package*.json and copy both files with a single command, and reduce a layer from the image.
You don't need development dependencies in the image.
Setup NODE_ENV var provides a better optimization.
It's better making explicit exposed port
When running the image with ENTRYPOINT no arguments can be overwritten in the command line.
You should remove unused files from the image, such as README, LICENSE, git and GitHub files... by adding the .dockerignore

What do u think?

Hey. Will do it after work 💪.

Here is an example:
FROM node:14-alpine3.14

# set working directory
WORKDIR /usr/src/windows11/

# setup env vars
ENV PATH /app/node_modules/.bin:$PATH
ENV NODE_ENV=production

# install app dependencies
COPY package*.json ./
RUN npm install --production --frozen-lockfile # install only production deps with exact lockfile versions

# add app (add .dockerignore to remove useless files from the image)
COPY . .

# expose port
EXPOSE 3000

# start app
ENTRYPOINT ["npm", "start"]

@andrewstech Close this issue if this is resolved. Thank you

Ok, thanks.


Backend Docs had updated, pls follow the update

rt

rt

You're right, but it hasn't been updated until now. :(
你说的对，但是直到现在依然还是没有更新。 :(

rt

You're right, but it hasn't been updated until now. :(
你说的对，但是直到现在依然还是没有更新。 :(


Support pinning in the Honeycomb.io UI

Having many SLOs, my org likes to pin key SLOs in the UI. Since Terraforming SLOs sometimes requires re-creation, the pins are lost.
Having an attribute for honeycomb_slo for pinning could fix this for us.

Thanks for this suggestion, @bixu!
The API doesn't currently expose this functionality so we'll need to look into that as a starting point.