"The model you are attempting to pull requires a newer version of Ollama" when Ollama is built from the latest source

What is the issue?
When trying to pull models from the official Ollama registry - if you're building Ollama from source it now seems to fail with an error that your Ollama version is too old.
ollama pull llama3.1:8b-instruct-q8_0
pulling manifest
Error: pull model manifest: 412:

The model you are attempting to pull requires a newer version of Ollama.

Please download the latest version at:

	https://ollama.com/download

However I highly doubt my Ollama version is too old as I bought it from source every day.
ollama --version
ollama version is e9aa5117c409c94861af1c50b246f29a72d05147

OS
Linux, Docker
GPU
Nvidia
CPU
AMD
Ollama version
e9aa5117c409c94861af1c50b246f29a72d05147

Typically the default version for local builds shows up as 0.0.0
./ollama --version
ollama version is 0.3.0
Warning: client version is 0.0.0

Are you doing anything special to get the hash version string?  How did you build?

Ah, yes indeed - I am setting it to the commit SHA as I thought 0.0.0 was a bug actually!
FYI 0.0.0 was causing some Ollama clients (I can't remember which right now) to error stating the version was too old as I'm assuming they're doing something simple like checking =< .
Thanks for the tip Daniel :)

Check out the various ./scripts/build* scripts for how we set the version using git describe which will incorporate the nearest git tag, plus your hash, so that can be useful if you want a more "real" version string.

That's actually really useful, thank you.
Can confirm swapping back to 0.0.0 works for pulling now as well.
ollama pull llama3.1:8b-instruct-q8_0
pulling manifest
...

Hi @dhiltgen!
On a fresh install docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama and then docker exec -it ollama ollama pull llama3.1 I get:
pulling manifest
Error: pull model manifest: 412:

The model you are attempting to pull requires a newer version of Ollama.

Please download the latest version at:

        https://ollama.com/download

Am I missing something?

你好@dhiltgen！ 全新安裝docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama後docker exec -it ollama ollama pull llama3.1我得到：
pulling manifest
Error: pull model manifest: 412:

The model you are attempting to pull requires a newer version of Ollama.

Please download the latest version at:

        https://ollama.com/download

我錯過了什麼嗎？

I am also facing this problem for pulling llama3.1 and I just pull the newest ollama docker.
May I ask whether you figure it out?

Can you check which version of Ollama is in your container image?  Have you run a docker pull ollama/ollama to update the image to the latest version?    I just pulled ollama/ollama:latest which contains version 0.3.5 and was able to pull llama3.1.

Hi, I just recompose again today, and it is working now. Thank you very much.


Added git-bug entry

Added git-bug entry to distributions.yaml.
It looks like it's alphabetical, so I tried to insert in the correct location.
Also, I used aider (a chatgpt client) to build the basic entry from the template and it looks good as far as I can tell, but you're gonna want to double-check.

ha thanks for the good catch @harleypig
yes if you can send a PR on this too that would be great !  thanks !


use gauge type for Datadog metric

counter is a deprecated type, and is also treated as a rate in the Datadog UI, per https://help.datadoghq.com/hc/en-us/articles/206955236-Metric-types-in-Datadog; Papertrail counts aren't rates.
The Datadog API prefers gauge type, and gauge metrics will display counts corresponding to those seen in Papertrail when visualized with the correct settings.
Prior to production change it'll be determined whether this affects existing metrics in Datadog.

Deployed to staging and confirmed that this behavior doesn't change the metadata of existing metrics, but will establish new metrics as gauges, which can be visualized correctly with the right settings.
The change really doesn't have much effect, but moving away from deprecated things is good :)


Ventura Location Services Access

Currently getting the issue of Access to location services was denied. You may need to enable access in System Preferences. but no setting is available in settings on Ventura. Has anyone solved this?

Having the same problem on macOS 13.2.1 too.

I was able to get Whereami working.  I thought I'd post the work around here just in case you're still trying to figure this out.  Check out this link and read jtsigros comment.  Make a backup of /var/db/locationd/clients.plist.  Then, copy the file to your desktop.  Convert the file to xml using "plutil -convert xml1 ~/Desktop/clients.plist". Make the changes suggested by jtsigros.   Then, convert the file back to binary and copy it back to /var/db/locationd/.  After you check that permissions and ownership are correct, restart the device.  Following those steps worked for me on an Apple silicon Mac running macOS 13.2.1.

Sorry I don't see a link in your comment!

Oohps!  Sorry about that.  Let me look for it now.

Check this link out, https://github.com/fulldecent/corelocationcli/issues/46.  Then, look for the comments by jtsigros.

The same issue on 13.2.1

The same issue on 13.2.1

Did you follow the link above?  The linked fix was intended for a different location utility, but I can confirm that it worked for this instance of whereami on macOS 13.2.1.

Trying running whereami. After it gripes about location services not being enabled, toggle Location Services off, and then back on in System Preferences.
Then, from an account with admin privileges, you need to . . . sudo cp /var/db/locationd/clients.plist /var/db/locationd/clients.plist.backup sudo cp /var/db/locationd/clients.plist ~/Desktop/clients.plist
Then, with your preferred editor, add the following lines in the dictionary entry for whereami . . . <key>Authorized</key> <string>YES</string> <key>Whitelisted</string> <string></string>
Finally . . . sudo cp ~/Desktop/clients.plist /var/db/locationd/clients.plist
Make sure permissions and ownership of the file are correct after you copy it back to /var/db/locationd. Then, restart your device.

I read through entire issue but getting same message
Access to location services was denied. You may need to enable access in System Preferences.

Did you restart your device after editing the clients.plist?

Did you restart your device after editing the clients.plist?

I did

How many accounts are you attempting to run the whereami app in?  You'll have to run whereami in every account that you want to use it in.  After it throws its "access denied" message in each account, edit clients.plist as an admin user.  If you're attempting to run whereami in two accounts, you'll have to edit the dictionary keys for both accounts. I hope this info helps you.

I followed the same steps, still have the same error message. I am only logged into one account, and im the only user of the machine.
I am on Sonoma 14.4.1 (23E224)

Whore those who are on Sonoma. Add Authorized with boolean type = true into the plist file. those guys at apple, waaa!


tflite nightly/2.9.1 on iOS (CocoaPods) linker/build issue

Issue Type
Build/Install
Source
binary
Tensorflow Version
2.9.1 and 0.0.1-nightly.20220524
Custom Code
No
OS Platform and Distribution
MacOS 12.1, XCode 13.4, CocoaPod 1.11.3
Mobile device
iOS 15
Python version
n/a
Bazel version
n/a
GCC/Compiler version
n/a
CUDA/cuDNN version
n/a
GPU model and memory
n/a
Current Behaviour?
Compiling a simple iOS project with this podfile:
platform :ios, '15.5'

target 'my-app' do
  use_frameworks!

  # Pods for my-app
  pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly'
  pod 'TensorFlowLiteSelectTfOps', '~> 0.0.1-nightly'
end

and adding -force_load "$(PROJECT_DIR)Pods/TensorFlowLiteSelectTfOps/Frameworks/TensorFlowLiteSelectTfOps.xcframework/ios-arm64/TensorFlowLiteSelectTfOps.framework/TensorFlowLiteSelectTfOps"
results in linker error (see below).
Standalone code to reproduce the issue
n/a
Relevant log output
Ld /Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Products/Debug-iphoneos/my-app.app/my-app normal (in target 'my-app' from project 'my-app')
    cd /Users/me/dev/cmc/mobile-prototypes/my-app
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -target arm64-apple-ios15.5 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.5.sdk -L/Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Products/Debug-iphoneos -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos -L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.5.sdk/usr/lib/swift -F/Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Products/Debug-iphoneos -F/Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Products/Debug-iphoneos/TensorFlowLiteSwift -F/Users/me/dev/cmc/mobile-prototypes/my-app/Pods/TensorFlowLiteC/Frameworks -F/Users/me/dev/cmc/mobile-prototypes/my-app/Pods/TensorFlowLiteSelectTfOps/Frameworks -F/Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Products/Debug-iphoneos/XCFrameworkIntermediates/TensorFlowLiteC/Core -F/Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Products/Debug-iphoneos/XCFrameworkIntermediates/TensorFlowLiteSelectTfOps -filelist /Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Intermediates.noindex/my-app.build/Debug-iphoneos/my-app.build/Objects-normal/arm64/my-app.LinkFileList -Xlinker -rpath -Xlinker /usr/lib/swift -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -Xlinker -rpath -Xlinker @executable_path/Frameworks -dead_strip -Xlinker -object_path_lto -Xlinker /Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Intermediates.noindex/my-app.build/Debug-iphoneos/my-app.build/Objects-normal/arm64/my-app_lto.o -Xlinker -export_dynamic -Xlinker -no_deduplicate -fembed-bitcode-marker -fobjc-link-runtime -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos -L/usr/lib/swift -Xlinker -add_ast_path -Xlinker /Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Intermediates.noindex/my-app.build/Debug-iphoneos/my-app.build/Objects-normal/arm64/beaker_proto2.swiftmodule -force_load /Users/me/dev/cmc/mobile-prototypes/my-app/Pods/TensorFlowLiteSelectTfOps/Frameworks/TensorFlowLiteSelectTfOps.xcframework/ios-arm64/TensorFlowLiteSelectTfOps.framework/TensorFlowLiteSelectTfOps -framework Pods_beaker_proto2 -Xlinker -no_adhoc_codesign -Xlinker -dependency_info -Xlinker /Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Intermediates.noindex/my-app.build/Debug-iphoneos/my-app.build/Objects-normal/arm64/my-app_dependency_info.dat -o /Users/me/Library/Developer/Xcode/DerivedData/my-app-hfikcxuyugearxghudrfwmrazkdp/Build/Products/Debug-iphoneos/my-app.app/my-app

ld: warning: Could not find or use auto-linked framework 'TensorFlowLiteC'
Undefined symbols for architecture arm64:
  "_TfLiteModelCreateFromFile", referenced from:
      TensorFlowLite.Model.init(filePath: Swift.String) -> TensorFlowLite.Model? in TensorFlowLite(Model.o)
  "_TfLiteSignatureRunnerGetOutputTensor", referenced from:
      TensorFlowLite.SignatureRunner.(tensor in _FF0433A885FC97E4F565F3E81A9383E1)(named: Swift.String, withType: TensorFlowLite.TensorType) throws -> TensorFlowLite.Tensor in TensorFlowLite(SignatureRunner.o)
  "_TfLiteSignatureRunnerGetInputTensor", referenced from:
      TensorFlowLite.SignatureRunner.copy(_: Foundation.Data, toInputNamed: Swift.String) throws -> () in TensorFlowLite(SignatureRunner.o)
      TensorFlowLite.SignatureRunner.(tensor in _FF0433A885FC97E4F565F3E81A9383E1)(named: Swift.String, withType: TensorFlowLite.TensorType) throws -> TensorFlowLite.Tensor in TensorFlowLite(SignatureRunner.o)

< MANY MORE LINKER ERRORS FOLLOW >

This seems similar to: https://github.com/tensorflow/tensorflow/issues/52042#issuecomment-1098076930

Update:
I'm able to reproduce this with the sound classification example. Steps to reproduce:

git clone https://github.com/tensorflow/examples.git
cd lite/examples/sound_classification/ios
pod update
pod install
open SoundClassification.xcworkspace
fix development team
build -> error "Could not find TensorFlowLiteSelectTfOps"
fix build error by patching project file with--- a/lite/examples/sound_classification/ios/SoundClassification.xcodeproj/project.pbxproj
+++ b/lite/examples/sound_classification/ios/SoundClassification.xcodeproj/project.pbxproj
@@ -525,11 +525,11 @@
                                      "-weak_framework",
                                      "\"CoreML\"",
                                      "-force_load",
-                                       "$(SRCROOT)/Pods/TensorFlowLiteSelectTfOps/Frameworks/TensorFlowLiteSelectTfOps.framework/TensorFlowLiteSelectTfOps",
+                                       "$(SRCROOT)/Pods/TensorFlowLiteSelectTfOps/Frameworks/TensorFlowLiteSelectTfOps.xcframework/ios-arm64/TensorFlowLiteSelectTfOps.framework/TensorFlowLiteSelectTfOps",
                              );
@@ -561,11 +561,11 @@
                                      "-weak_framework",
                                      "\"CoreML\"",
                                      "-force_load",
-                                       "$(SRCROOT)/Pods/TensorFlowLiteSelectTfOps/Frameworks/TensorFlowLiteSelectTfOps.framework/TensorFlowLiteSelectTfOps",
+                                       "$(SRCROOT)/Pods/TensorFlowLiteSelectTfOps/Frameworks/TensorFlowLiteSelectTfOps.xcframework/ios-arm64/TensorFlowLiteSelectTfOps.framework/TensorFlowLiteSelectTfOps",

rebuild
error: tflite_ios_build_fail.log

If I force the pods to 0.0.1-nightly.20201122 it works fine. So some time between 20201122 and 20220524 things broke.

For what it's worth, I hit on this issue.   I also changed the force_load settings as [sschaetz] did above.
Undefined symbol: ruy::ThreadPool::ExecuteImpl(int, int, ruy::Task*)
Additionally it has undefined symbols in tflite:
Undefined symbol: tflite::CheckedLog2(float, int*)
I've tried nightly and  0.0.1-nightly.20201122 for both Pods.
Any suggestion?

Note the documentation indicates the wrong path should be used for -force_load
https://www.tensorflow.org/lite/guide/ops_select#ios
-force_load $(SRCROOT)/Pods/TensorFlowLiteSelectTfOps/Frameworks/TensorFlowLiteSelectTfOps.framework/TensorFlowLiteSelectTfOps

For what it's worth, I hit on this issue. I also changed the force_load settings as [sschaetz] did above.
Undefined symbol: ruy::ThreadPool::ExecuteImpl(int, int, ruy::Task*)
Additionally it has undefined symbols in tflite:
Undefined symbol: tflite::CheckedLog2(float, int*)
I've tried nightly and 0.0.1-nightly.20201122 for both Pods.
Any suggestion?

I just remove the force_load flag and the build is ok

@gdannyliao I also had this issue. My model need to use flexDelegate so i added "-force_load $(SRCROOT)/Pods/TensorFlowLiteSelectTfOps/Frameworks/TensorFlowLiteSelectTfOps.framework/TensorFlowLiteSelectTfOps" to "Other Linker Flags" but when i built an app there was many "Undefined symbols for architecture arm64" bug. Downgrade TensorFlowLiteSwift  and TensorFlowLiteSelectTfOps  to 2.6.0 work fine on IOS but my model need to use tf 2.9.x to be able to convert GroupConvolution to tflite.

@adamsch1 have you fixed the issue yet?.

@rthadur can you take a look ?

@sschaetz, Could you try to build with the latest version and check if you're able to build successfully. Refer the document here https://www.tensorflow.org/lite/guide/ops_select#using_bazel_xcode.
If it is failing, as suggested in above comments, could you try building by removing force_load flag. Thanks!

sorry guys I was not able to find a work around.

Hi really sorry for the late reply. I'm working on a fix, basically we should remove xnnpack_delegate target from avoid_deps, there are some duplicate symbols in TensorFlowLiteSelectTfOps and TensorFlowLiteC static frameworks, we'll need to remove them from TensorFlowLiteSelectTfOps. In the meantime, can you try tensorflow/lite/ios/build_frameworks.sh? You might need to add --config=monolithic when building TensorFlowLiteSelectTfOps_framework.

Hi, the fix should be in the latest nightly version (0.0.1-nightly.20220830), could you give it a try? Thanks!

Thanks YishuangP!  Can you share a command/build line for iOS?

Hi, you just need to update your pod file to depend on the latest nightly build version.
...
target 'my-app' do
  use_frameworks!

  # Pods for my-app
  pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly'
  pod 'TensorFlowLiteSelectTfOps', '~> 0.0.1-nightly'
end

Or your could hardcode the build version to 0.0.1-nightly.20220830
...
target 'my-app' do
  use_frameworks!

  # Pods for my-app
  pod 'TensorFlowLiteSwift', '0.0.1-nightly.20220830'
  pod 'TensorFlowLiteSelectTfOps', '0.0.1-nightly.20220830'
end

Then run pod update and pod install

Hi sorry we had an issue in our script that builds the xcframework. Submitting the fix, hopefully tonight's build will resolve the issue.

Hi, I just verified that this build issue is resolved in build 0.0.1-nightly.20220831. Unfortunately the fix won't be in 2.9.1, if you want to use 2.9.1, you can try building the framework using tensorflow/lite/ios/build_frameworks.sh. Besides, make sure you add this build flag --define=tflite_with_xnnpack=false when building the flex delegate framework.

I still have the same issue.
Is there any fix that exist ?


[FLINK-28314][runtime-web] introduce "Cluster Environment" tab under history server

What is the purpose of the change
Completed Job UI Enhancement based on FLIP-241 (https://cwiki.apache.org/confluence/display/FLINK/FLIP-241%3A+Completed+Jobs+Information+Enhancement) :

FLINK-26207
FLINK-28314

Brief change log

Refactor runtime-web modules by depending on a common injecting config object interface (pre-requisite for this UI change)
Introduce "Cluster Environment" tab under history server

Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? yes
If yes, how is the feature documented? not applicable

This PR includes UI changes regarding the FLIP. Could @simplejason help review this? Thanks!

@flinkbot run azure


[Feature Request]: Add pocketbase adapter

Package
lucia
Description
Even though Pocketbase already has an authentication solution, lucia is my go-to solution at the moment.
Pocketbase is a pretty easy to host database because it can run under HTTP and on a single executable

Currently we really only add new adapters when there's enough demand for it (e.g. Prisma, Drizzle) or they can fit into one of the existing db driver packages (e.g. SQLite, Postgres). I highly doubt there's enough demand for Pocketbase


error during connect: Post http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.40/build?

Problem encountered on https://dotnet.microsoft.com/learn/aspnet/microservice-tutorial/docker-image
Operating System: windows
Provide details about the problem you're experiencing. Include your operating system version, exact error message, code sample, and anything else that is relevant.
error during connect: Post http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.40/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&rm=1&session=duy41073vf2hudollzynkenau&shmsize=0&t=mymicroservice&target=&ulimits=null&version=1: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.

I use Docker version 19.03.13, build 4484c46d9d

Can you help here @nishanil @shirhatti?

It looks like Docker isn't running. Can you verify it by running by the following command docker run hello-world on a command prompt?  If not, try the suggestions mentioned here.

No response in 9 days. Closing.


Application build Failed error:  Could not find com.google.android.play:core:'1.8.+' ionic v3

cordova.cmd build android --device
Checking Java JDK and Android SDK versions
ANDROID_SDK_ROOT=C:\Users\ADMIN\AppData\Local\Android\Sdk (recommended setting)
ANDROID_HOME=undefined (DEPRECATED)
Using Android SDK: C:\Users\ADMIN\AppData\Local\Android\Sdk
Subproject Path: CordovaLib
Subproject Path: app
Task :app:mergeDebugResources FAILED

FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:mergeDebugResources'.

Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
Could not find com.google.android.play:core:'1.8.+'.
Searched in the following locations:
- https://dl.google.com/dl/android/maven2/com/google/android/play/core/'1.8.+'/core-'1.8.+'.pom
- https://jcenter.bintray.com/com/google/android/play/core/'1.8.+'/core-'1.8.+'.pom
- https://repo.maven.apache.org/maven2/com/google/android/play/core/'1.8.+'/core-'1.8.+'.pom
Required by:
project :app

Get more help at https://help.gradle.org

BUILD FAILED in 6s
7 actionable tasks: 1 executed, 6 up-to-date
Command failed with exit code 1: C:\user\example\example\platforms\android\gradlew cdvBuildDebug -b C:\user\example\example\platforms\android\build.gradle
[ERROR] An error occurred while running subprocess cordova.
    cordova.cmd build android --device exited with exit code 1.

    Re-running this command with the --verbose flag may provide more information.

I got the same error when using the variable "--variable ANDROID_PLAY_CORE_VERSION='1.8.+’"
Error: «Could not find com.google.android.play:core:'1.8.+'.”
I am using cordova version 10.0.0
Any idea?
When installing without the variable "cordova plugin add cordova-plugin-app-review" I nothing happends when running requestReview() but I get following log in Android Studio:
 I/PlayCore: UID: [10376]  PID: [14377] ReviewService : requestInAppReview (com.FindSecrets.FoodSecrets)
I/PlayCore: UID: [10376]  PID: [14377] ReviewService : Initiate binding to the service.
I/PlayCore: UID: [10376]  PID: [14377] ReviewService : ServiceConnectionImpl.onServiceConnected(ComponentInfo{com.android.vending/com.google.android.finsky.inappreviewservice.InAppReviewService})
I/PlayCore: UID: [10376]  PID: [14377] ReviewService : linkToDeath
I/PlayCore: UID: [10376]  PID: [14377] OnRequestInstallCallback : onGetLaunchReviewFlowInfo
I/PlayCore: UID: [10376]  PID: [14377] ReviewService : Unbind from service.
D/CordovaActivity: Paused the activity.
D/CordovaActivity: Resumed the activity.
D/NetworkManager: toLower : wifi
    Connection Type: wifi
    Networkinfo state didn't change, there is no event propagated to the JavaScript side.

Any help is highly appreciated.

I got the same error when using the variable "--variable ANDROID_PLAY_CORE_VERSION='1.8.+’"
Error: «Could not find com.google.android.play:core:'1.8.+'.”
I am using cordova version 10.0.0
Any idea?
When installing without the variable "cordova plugin add cordova-plugin-app-review" I nothing happends when running requestReview() but I get following log in Android Studio:
 I/PlayCore: UID: [10376]  PID: [14377] ReviewService : requestInAppReview (com.FindSecrets.FoodSecrets)
I/PlayCore: UID: [10376]  PID: [14377] ReviewService : Initiate binding to the service.
I/PlayCore: UID: [10376]  PID: [14377] ReviewService : ServiceConnectionImpl.onServiceConnected(ComponentInfo{com.android.vending/com.google.android.finsky.inappreviewservice.InAppReviewService})
I/PlayCore: UID: [10376]  PID: [14377] ReviewService : linkToDeath
I/PlayCore: UID: [10376]  PID: [14377] OnRequestInstallCallback : onGetLaunchReviewFlowInfo
I/PlayCore: UID: [10376]  PID: [14377] ReviewService : Unbind from service.
D/CordovaActivity: Paused the activity.
D/CordovaActivity: Resumed the activity.
D/NetworkManager: toLower : wifi
    Connection Type: wifi
    Networkinfo state didn't change, there is no event propagated to the JavaScript side.

Any help is highly appreciated.

I installed the plugin without the variable and followed following instructions:
https://stackoverflow.com/questions/63286540/play-core-in-app-review-api-not-showing-the-review-activity?answertab=active#tab-top
This way I could run the feedback dialog in release mode on the mobile phone.


AWS Tutorial: Unable to deploy stack in AWS

Hi ,
I am trying to set up the stack in AWS - I went through your tutorial and it seemed pretty straight forward. So I did click through few buttons on screen but unfortunately it kept saying ROLLBACK IN PROGRESS> Any help much appreciated

@natkrish can you please provide more details? Click throughout the tabs to see what resources failed the setup

@agoldis So i think i didnt get time to explore more about the failure in AWS so I moved on to install it locally. But I have another problem in local. When I try to do the necessary steps on \packages\director
npm install - this went through fine
npm run build - FAILED

so i am unable to start the director service
I am on windows 10 x64bit
Node V 12.16.1

@natkrish it won't take much time to re-run cloud formation template, we just need to see the error message in "Events" tab.
Also, I was able to install build "director" service - looking at the error message, it seems there's a global Mocha installed and its type definition interfere with jest package. You could just run npm run build:js - that will skip TS check.
Another alternative you docker-compose files.

@natkrish Are we good to close this?

Is there a Cloudformation template for deploying the Director service specifically? I currently am experiencing the same issues as above, I can't deploy the stack to AWS. I am only interested in the Director however.

@jeansymolanza what specific error are you seeing? The only template I have includes all 3 services. You can edit it and remove unnecessary service containers.

This is from my most first run:

I have never had the bucket sorry-cypress-test-results created in the past. So I am unsure why it failed.

@jeansymolanza what specific error are you seeing? The only template I have includes all 3 services. You can edit it and remove unnecessary service containers.

I can have a look but I’m a bit uneasy about tweaking something that I don’t understand too well. What needs to be removed from the template in order to just deploy a vanilla director configuration to AWS (as with the Heroku deployment)?
I have raised a separate issue wherein I had a CodeBuild configuration that pointed to Heroku instance but unfortunately that doesn’t work.

@jeansymolanza as for the cloudformation, you'll need to provide a unique name for the stack - it fails while creating S3 bucket sorry-cypress-test-results.

S3 requires bucket names to be unique globally, someone has already taken that name.

Thanks didn’t realise that. I thought it was scoped at account level. I’ll give it a go.

As for CF template with director only, I will have to test what exactly record have to be removed. If you're looking to reduce costs, removing the secondary services won't help because you're getting charged for resources, and all three services use the same ECS "node" and you'll still need a load balancer to use DNS names for accessing the service.

Closing the issue, please let me know if you need any help


Issues with shallow and refs

Say you have a component with a ref callback to store the DOM element, I've experienced some issues when testing in the following two scenarios:
Scenario 1
class MyComponent extends React.Component {
   componentDidMount() {
      console.log(this.element.getBoundingClientRects().height);
   }

   render() {
      return (

 this.element = element}/>
      );
   }
}

If you shallow render the component, componentDidMount will throw an exception because this.element is null.
Scenario 2
class MyComponent extends React.Component {
   render() {
      return (

 this.element = element}/>
      );
   }
}

If you shallow render the component and set the state, this.element is going to be set to null.
const myComponent = shallow(<MyComponent/>);
// myComponent.instance().element is defined
myComponent.setState({someChange: true});
// myComponent.instance().element is null

Question
Is this the expected behavior and the only way to get it to work is using mount?

refs only work with mount, yes.

We should close this issue, right?

I work around with ref when still using shallow by passing disableLifecycleMethods to shallow then trigger componentDidMount and componentDidUpdate by myself
class MyComponent extends React.Component {
   componentDidMount() {
      this.input.focus();
   }
   render() {
      return (
         <input ref={element => this.input = element}/>
      );
   }
}

const myComponent = shallow(<MyComponent/>, { disableLifecycleMethods: true });
myComponent.instance().input =  {
    focus: jest.fn(),
};
myComponent.instance().componentDidMount();

Here is another way you can try:
class MyComponent extends React.Component {    componentDidMount() {       this.input.focus();    }    render() {       return (          <input ref={element => this.input = element}/>       );    } }
MyComponent.prototype.input = { focus: jest.fn()}; const spy = jest.onSpy(MyComponent.prototype.input, 'focus'); const wrapper = shallow(<MyComponent {...props} />); wrapper.instance().componentDidMount(); expect(spy).toHaveBeenCalled();
`

Here is another way you can try:
class MyComponent extends React.Component {
componentDidMount() {
 this.input.focus();
}
render() {
return (
<input ref={element => this.input = element}/>
);
}
}
MyComponent.prototype.input = { focus: jest.fn()};
const spy = jest.onSpy(MyComponent.prototype.input, 'focus');
const wrapper = shallow(<MyComponent {...props} />);
wrapper.instance().componentDidMount();
expect(spy).toHaveBeenCalled();
I guess, the main reason shallow has something not setup for lifecycle run correctly.
it did not run the reference before the componentDidMount is tested.
so, we can mock a focus function in this.input as MyComponent.prototype.input = { focus: jest.fn()};
and really tricky here that you can spy it in this way const spy = jest.onSpy(MyComponent.prototype.input, 'focus');
then shallow that new MyComponent as you decorated it with mock functions been added

Use mount instead of shallow. Mount renders the refs
const myComponent = mount(<MyComponent/>);


Allow copying empty directories with

This issue has been inspired by dotnet/cli#2911. In short, if I specify something like this:
<ItemGroup>
    <Content Include="logs">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
</ItemGroup>

MSBuild will throw an error saying that the Copy task does not support copying directories. I can put in a glob, but if there are no files, nothing gets copied out (with a glob the why of that behavior is clear to me at least).
/cc @moozzyk

The referenced issue should address the fact that the ANCM cannot currently create the path specified in web.config for stdout logs. https://github.com/aspnet/AspNetCoreModule/issues/43
The suggestion here is still great imo: I'd like to be able to create empty folders without having to resort to ...
<Target Name="CreateLogsFolder" AfterTargets="AfterPublish">
  <MakeDir Directories="$(PublishDir)logs" Condition="!Exists('$(PublishDir)logs')" />
</Target>

We're struggling with this also, after the JSON to csproj migration. GuardRex, how does your CreateLogsFolder target work? I've tried exactly that, and the logs folder isn't created in the final default publish location of .\bin\Debug\PublishOutput. I suspect $PublishDir is that temporary publish location, before the final move?

@WildBamboo That :point_up: does work here. Are you using the Microsoft.NET.Sdk.Web SDK? Here's a test proj sample csproj showing how I have it set up:
<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp1.1</TargetFramework>
    <RuntimeFrameworkVersion>1.1.1</RuntimeFrameworkVersion>
    <WarningsAsErrors>true</WarningsAsErrors>
    <OutputType>Exe</OutputType>
    <Optimize Condition=" '$(Configuration)' != 'Debug' ">true</Optimize>
    <MvcRazorCompileOnPublish Condition=" '$(Configuration)' == 'Release' ">true</MvcRazorCompileOnPublish>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Diagnostics" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Server.Kestrel" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Server.IISIntegration" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.2" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.ViewCompilation" Version="1.1.0" PrivateAssets="All" />
  </ItemGroup>

  <Target Name="CreateLogsFolder" AfterTargets="AfterPublish">
    <MakeDir Directories="$(PublishDir)Logs" Condition="!Exists('$(PublishDir)Logs')" />
  </Target>

</Project>

If directories could be used as items, it would also be great if it were possible to use their timestamps for incremental compilation (=> usable as Inputs and Outputs for targets).

@GuardRex I've just made a new ASP.NET Core Web Application (.NET Core) project, using the ASP.NET Core 1.1 empty template, and added your target. I published to the filesystem, default location, and no logs folder is present.
`

netcoreapp1.1

`
So I dunno; works on your machine :)

@dasMulli Can you think of a reason why it might not work? Does it need an entry point to work?
@WildBamboo btw - the wwwroot folder is handled by the Web.Sdk, so you can drop that <ItemGroup> if you want. It shouldn't hurt anything tho if you leave it there.

@GuardRex, wwwroot tip noted; that was just how the template came.

Once you think you understand how things work, VS comes along and does things differently :trollface:
It really publishes the app to obj\Release\netcoreapp1.1\PubTmp\Out and then copies things around - but not the Logs folder. Doesn't appear to be target ordering either because even if I use BeforeTargets="PerpareForPublish", the web publish targets pretends it didn't happen.
If I understand it correctly, the logic for it lives somewhere in https://github.com/aspnet/websdk/tree/dev/src/Publish, maybe we can move this issue over there?

@dasMulli So the reason it works for me is that I'm using VS Code! :troll: lol ... which runs right on the CLI without so much VS magic.
@WildBamboo Yes, open an issue over on websdk ... but actually, I think there already is an issue over there about the Logs folder (I think).

However, I'm guessing the web targets would also need support for folders as items to get that out of the box - so we're back here.
In the meantime, we can of course hook into file system publish:
  <Target Name="CreateLogsFolderOnFileSystem" AfterTargets="FileSystemPublish">
    <MakeDir Directories="$(PublishUrl)Logs" Condition="!Exists('$(PublishUrl)Logs')" />
  </Target>

Thanks all. I can't see any issue related to the logs folder, so I created https://github.com/aspnet/websdk/issues/152
Currently using the workaround suggested by @dasMulli above, which works great for what we need right now.

Ok, so publishing in VS is sorted now, but I'm guessing the FileSystemPublish target doesn't run when using the cli dotnet publish src\myproj.csproj --framework net462 --output "c:\temp" --configuration Release since the log folder is not present at c:\temp\logs.
So I've now got one target for cli/VSCode, and one for VS:
  <Target Name="CreateLogsFolderDuringCliPublish" AfterTargets="AfterPublish">
    <MakeDir Directories="$(PublishDir)logs" Condition="!Exists('$(PublishDir)logs')" />
  </Target>

  <Target Name="CreateLogsFolderDuringVSPublish" AfterTargets="FileSystemPublish">
    <MakeDir Directories="$(PublishUrl)logs" Condition="!Exists('$(PublishUrl)logs')" />
  </Target>

Slightly off target but I thought it worth mentioning this here as I got to this thread trying to resolve my problem 'How can I create a folder when I publish my MVC 4 app in VS Code'.
The key to solving what you need to do is to look at the output of the publish process. I have a 'publish' process in my '.vscode/tasks.json' file that runs the publish process:
        {
            "label": "publish",
            "type": "shell",
            "command": "msbuild",
            "args": [
                // Ask msbuild to generate full paths for file names.
                "/property:GenerateFullPaths=true",
                "/t:build",
                "/p:Platform=AnyCPU",
                "/p:Configuration=Release",
                "/p:DeployOnBuild=true",
                "/p:PublishProfile=FolderProfile",
                // Do not generate summary otherwise it leads to duplicate errors in Problems panel
                "/consoleloggerparameters:NoSummary"
            ],
            "group": "build",
            "presentation": {
                // Reveal the output only if unrecognized errors occur.
                "reveal": "silent"
            },
            // Use the standard MS compiler pattern to detect errors, warnings and infos
            "problemMatcher": "$msCompile"
        }

When this runs, open the terminal window (click on the 'Building..' in the taskbar), and check the headings in the output window printed in blue. When I was building an old MVC 4 app I got heading like this:
AfterWebPublish:
PreAutoParameterizationWebConfigConnectionStrings:
To trigger my post publish task to create an output folder, I created an section like this in my .csproj file:
  <Target Name="AfterWebPublish" AfterTargets="WebFileSystemPublish">
    <MakeDir Directories="$(PublishUrl)\logs" Condition="!Exists('$(PublishUrl)\logs')" />
  </Target>

N.B. The name of the event in AfterTargets="XYZ" needs to match the name of the event observed earlier.


Render to arbitrary large size?

Forgive the noobish question, but: is there any way to output PNGs of any arbitrary (large) size? Or is the current resolution (2560x1440) a hard limit? (i.e. if i wanted to render a PNG at giant poster size for actual poster printing, is there any way to get something with 4x those dimensions)

Since this is mostly a proof of concept, the current size is hard-coded. However, you can fork & change the sizes if you want. :smile:

ah sorry, haven't actually forked/got it to work (on Windows, so it's proving tricky), but did a naive search in the repo for "2560" and couldn't find it, so wasn't sure if there was even a variable anywhere for it. will have a look once i get it to work.


About comparative experiments

Hello,
I want to do comparative experiments on my own dataset, but I didn't find the official python code of metapath2vec, so I'm sorry to ask, what is the metapath2vec code you are using for comparison experiments, can you share it?
Thank you very much!

Hi @lalw,
Sorry for the late reply. We use an internal version of metapath2vec in Alibaba Group. Maybe you can use an unofficial code of metapath2vec or implement it on your own. The most important part of metapath2vec is the heterogeneous random walk, which can be easily implemented.

Thanks  for your answer！
I still have a problem, for example, performing random walks on the two metapaths of "Academy-Discipline-Project-Discipline-Academy" and "Academy-Project-Academy" to get the embeddings of Academy.
In addition to the Academy's embedding, it is also necessary to obtain the Discipline's embedding.
The metapath with Discipline as the starting point should be "Discipline-Project-Discipline". Then, based on the random walk of the metapath starting from the Academy, is the calculated Discipline's embedding correctly?
If not, can metapaths with different starting points be executed simultaneously in one model? Or should the model be executed multiple times for metapaths with different starting points?
Looking forward to your answer, thank you very much！

The skip-gram method will train the embeddings of all the nodes in the random walks, rather than the embeddings of starting nodes in the metapaths. The Discipline's embeddings trained from random walks of scheme 1 can be directly used for downstream tasks.

Sorry, path 1 is wrong. It should be [1] "Academy-Project-Discipline-Project-Academy"
My concern is that this meta-path is not specifically set for Discipline. Can it fully capture semantic and structural information?
If there is another type of Node Researcher, which cannot be combined in the 1 or 2 path, can I set the path to [1]"Academy-Project-Discipline-Project-Academy" and [2] "Discipline-Project-Discipline" and [3]"Researcher-Project-Discipline-Project-Researcher" in one run to get all the embedding for all kinds of nodes?
I am a beginner,  have many questions, thank you for your patience!


increase stability of sockets by investigating Socket.io behaviour with/without SSL

We really did a lot of effort trying to get a SSL connection work with socket.io but we could not find a solution so we decided to focus on other important issues of milestone 4 rather than putting more effort in the SSL connection.


formatting for tensors rank 3 and greater

start here: https://github.com/propelml/propel/blob/master/src/format.ts#L64-L114
img = pr.range(4*4).reshape([1, 4, 4, 1]);
img

^-- doesn't display data
We are attempting to have exactly matching output as numpy for tensor formatting.

FYI; pytorch has a nice customizable formatting through torch.set_printoptions

I will work on this one :)
https://github.com/numpy/numpy/blob/3629e3986333ecdf394924e53265e0d1061e928d/numpy/core/arrayprint.py#L1450-L1497

Sounds good!

Test
https://github.com/numpy/numpy/blob/3629e3986333ecdf394924e53265e0d1061e928d/numpy/core/arrayprint.py#L1450-L1497

Fixed at #435


[DP-141] Adds audio to the word details panel

The word details panel now also carries an audio section:

This section has a play button which will play the sound clip for just the word, and the progress bar will update appropriately for how much of the sound clip has passed.

I love the design that you have right now, but also keep in mind that I'm making these suggestions without seeing a live deployment of the changes you made.

Looking at the size of the play icon, I would suggest making it larger so that it stands out next to the audio progress bar
looking at the way you have the icon lined up with the progress bar, I think that you should vertically align the elements so that the centers line up rather than the tops.

I would also say let's remove the audio button on the word within the paragraph and only show the audio player on the selected word panel.

Implemented most changes

Audio player no longer appears next to each annotate word, instead only the one player at the start of the document and one on the word panel details
The audio player button is now larger
The audio player button and progress button are better aligned


Cross-Compilation error

Hello,
I am on a 64bit Ubuntu and I'm trying to compile a go program that makes use of go-gtk for a 64bit darwin using the following command:
env OSXCROSS_NO_INCLUDE_PATH_WARNINGS=1 MACOSX_DEPLOYMENT_TARGET=10.6 CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=1 go build -v mywork/myprogram
The MacOs toolchain comes from https://github.com/tpoechtrager/osxcross.
I am able to successfully compile some other programs but the one including go-gtk fails compiling when linking pango and gobject:
...
os/exec
# github.com/mattn/go-gtk/pango
ld: library not found for -lpango-1.0
clang: error: linker command failed with exit code 1 (use -v to see invocation)
io/ioutil
github.com/mattn/go-gtk/glib
math/big
encoding/hex
compress/flate
compress/gzip
log
mime
crypto/elliptic
encoding/asn1
crypto/rand
# github.com/mattn/go-gtk/glib
ld: library not found for -lgobject-2.0
clang: error: linker command failed with exit code 1 (use -v to see invocation)
crypto/dsa
...

I am not a Linux pro and I'm not sure how to fix this so any advice is welcome - thanks!

As you can see in the error log, you need to install libgobject.

What lib is that exactly? I followed the installation instructions and I believe I have everything needed. Well I can compile for my native target (linux) so I must have it right?
ubuntu@ubuntu-VirtualBox:~$ sudo apt-get install libglib2.0-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libglib2.0-dev is already the newest version.
libglib2.0-dev set to manually installed.
The following packages were automatically installed and are no longer required:
  linux-headers-4.2.0-18 linux-headers-4.2.0-18-generic
  linux-image-4.2.0-18-generic linux-image-extra-4.2.0-18-generic
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

ubuntu@ubuntu-VirtualBox:~$ sudo apt-get install pango-1.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'libpango-1.0-0' for regex 'pango-1.0'
Note, selecting 'gir1.2-coglpango-1.0' for regex 'pango-1.0'
Note, selecting 'gir1.2-pango-1.0' for regex 'pango-1.0'
Note, selecting 'gir1.0-pango-1.0' for regex 'pango-1.0'
gir1.2-coglpango-1.0 is already the newest version.
gir1.2-pango-1.0 is already the newest version.
libpango-1.0-0 is already the newest version.
The following packages were automatically installed and are no longer required:
  linux-headers-4.2.0-18 linux-headers-4.2.0-18-generic
  linux-image-4.2.0-18-generic linux-image-extra-4.2.0-18-generic
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Thanks

could you please try libpango1.0-dev ?

And could you please make sure that you can compile & link the libraries using your compilers that you specified.

[sudo] password for ubuntu:
Reading package lists... Done
Building dependency tree
Reading state information... Done
libpango1.0-dev is already the newest version.
The following packages were automatically installed and are no longer required:
  linux-headers-4.2.0-18 linux-headers-4.2.0-18-generic
  linux-image-4.2.0-18-generic linux-image-extra-4.2.0-18-generic
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

As for your second question, this is probably what I have to fix but this is also where my knowledge of linux kinda stops. How do I make sure? Any command in particular that I can run? Sorry I'm new to Linux in general and compilers and all that stuff.
Thanks

$ cat > foo.c
#include <gtk/gtk.h>
int main(int argc, char* argv[]) {
  gtk_init(&argc, &argv);
}
^D

$ env OSXCROSS_NO_INCLUDE_PATH_WARNINGS=1 MACOSX_DEPLOYMENT_TARGET=10.6 CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=1 o64-clang `pkg-config --cflags gtk+-2.0` -c foo.c `pkg-config --libs gtk+-2.0`

ubuntu@ubuntu-VirtualBox:~$ cat > foo.c
#include <gtk/gtk.h>
int main(int argc, char* argv[]) {
  gtk_init(&argc, &argv);
}
ubuntu@ubuntu-VirtualBox:~$ env OSXCROSS_NO_INCLUDE_PATH_WARNINGS=1 MACOSX_DEPLOYMENT_TARGET=10.6 CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=1 o64-clang `pkg-config --cflags gtk+-2.0` -c foo.c `pkg-config --libs gtk+-2.0`
clang: warning: -lgtk-x11-2.0: 'linker' input unused
clang: warning: -lgdk-x11-2.0: 'linker' input unused
clang: warning: -lpangocairo-1.0: 'linker' input unused
clang: warning: -latk-1.0: 'linker' input unused
clang: warning: -lcairo: 'linker' input unused
clang: warning: -lgdk_pixbuf-2.0: 'linker' input unused
clang: warning: -lgio-2.0: 'linker' input unused
clang: warning: -lpangoft2-1.0: 'linker' input unused
clang: warning: -lpango-1.0: 'linker' input unused
clang: warning: -lgobject-2.0: 'linker' input unused
clang: warning: -lglib-2.0: 'linker' input unused
clang: warning: -lfontconfig: 'linker' input unused
clang: warning: -lfreetype: 'linker' input unused

Does this help?
Thanks

You have to build all of the libraries (gtk/glib/gio/pango...) with your compilers in your self.

Alright, any chance you could point me to a tutorial or steps to do this? I barely get the general idea...
Thanks

Sorry, I don't have OS X. and i don't know well about cross compilation.

Alright I will try to find some help on how to build libs using the osx compiler then.
Thank you


Broken Link for SETCURRENTKEY

(Actually, all mentioned method names should we written without capitals)
In section "SETCURRENTKEY Method", at the end: "For more information about this method, see SetCurrentKey Method (Record)." But the link seems to be broken, it leads to "Data Types and Methods in AL".

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

ID: 3e600284-07c3-67bd-bf11-5c1f2acd5432
Version Independent ID: 618552ae-0e4e-e124-1fa2-33b6f2a86c7c
Content: SETCURRENTKEY, SETRANGE, SETFILTER, GETRANGEMIN, and GETRANGEMAX Methods - Business Central
Content Source: dev-itpro/developer/devenv-setcurrentkey-setrange-setfilter-getrangemin-and-getrangemax-methods.md
Service: dynamics365-business-central
GitHub Login: @SusanneWindfeldPedersen
Microsoft Alias: solsen

Hello, the link has been fixed in the next update. Thanks for the feedback!


v2 routing doesn't apply layouts

What version of Remix are you using?
1.14.1
Are all your remix dependencies & dev-dependencies using the same version?

[X] Yes

Steps to Reproduce
Create routes as follows:

Expected Behavior
I would expect the remix routes output to look like this:
<Routes>
  <Route file="root.tsx">
    <Route path="*" file="routes/$.tsx" />
    <Route index file="routes/_index.tsx" />
    <Route path="authorize" file="routes/authorize.tsx" />
    <Route path="invite" file="routes/invite.tsx" />
    <Route path="login" file="routes/login.tsx" />
    <Route path="logout" file="routes/logout.tsx" />
    <Route path="status" file="routes/status.tsx" />
    <Route path="dashboard/account" file="routes/dashboard/account/route.tsx" />
    <Route path="dashboard/guilds:/guildId" file="routes/dashboard/guilds/$guildId.tsx>
        <Route path="dashboard/guilds/:guildId" file="routes/dashboard/guilds/$guildId/route.tsx" />
    </Route>
  </Route>
</Routes>

Actual Behavior
It looks like this
<Routes>
  <Route file="root.tsx">
    <Route path="*" file="routes/$.tsx" />
    <Route index file="routes/_index.tsx" />
    <Route path="authorize" file="routes/authorize.tsx" />
    <Route path="invite" file="routes/invite.tsx" />
    <Route path="login" file="routes/login.tsx" />
    <Route path="logout" file="routes/logout.tsx" />
    <Route path="status" file="routes/status.tsx" />
    <Route path="dashboard/account" file="routes/dashboard/account/route.tsx" />
    <Route path="dashboard/guilds/:guildId" file="routes/dashboard/guilds/$guildId/route.tsx" />
  </Route>
</Routes>

Fixed with this folder structure:


Beautiful String Algorithm in C++

I want to add a Beautiful String Algorithm.
And for this, I would like to code the solution for this problem in C++ language.
Problem Statement :
A binary string is called beautiful if it contains alternating 0s and 1s.
For Example:‘0101’, ‘1010’, ‘101’, and ‘010’ are beautiful strings.
@Kumar-laxmi sir, Please Assign me this issue.

Yep, nice issue! Start working on it @atul1510

@atul1510 Since this is an easy algorithm please implement it in all four languages

Yep, nice issue! Start working on it @atul1510

Assigned!
@atul1510 : C, C++. Java, Python


Logging / reporting processes

AKA epiphenomena: we presently store almost all the data of the run, expecting it to be processed after the fact. This approach will eventually not be able to scale, so we should consider offering the user a syntax for saying what should get logged in real time as the model runs.
One approach for logging for specific rewrite rules is to embed the pattern in some larger context $L \hookrightarrow Ctx$, and we pick out a subset $Log \hookrightarrow Ctx$ which is the relevant values to log (this latter mono might preferably be a map in $C$-Par, since it may not be a proper subobject) whenever the rewrite fires (the $Log$ subset of data of all maps $Ctx\rightarrow World$ that make the triangle (with a match $L \rightarrow World$) commute.
One approach for general logging after any step is to give patterns and report the counts (or the data of all matches) of that pattern in each resulting state of the world.
The partial maps induced by rewrites give us the ability to have the full trajectory, but we should come up with means of getting longitudinal data that may be smaller than the entire trajectory.

Reporting at every simulation step might well be too frequent. Often you want coarse reporting time (e.g. one simulation day) and there are many thousands of events between reporting times.
Computing the counts to report can be costly so even though you might be able recompute all the observables after every step and only save them periodically, in practice that can be wasteful.


I need jitsi BuildContext please

I need for show dialog after jitsi callback

What jitsdi context?

Is that a Flutter thing? Jitsi will run in its own Activity, so you'd need to reorder another activity in front.

Is that a Flutter thing? Jitsi will run in its own Activity, so you'd need to reorder another activity in front.

yes currently i work with flutter.
if that is not possible, I will try other ways. Thanks

Sorry, I don't know what we could do to help here.


Form validation scenarios

Do we need something similar to scenarios from yii2?
I'm all for specialized DTO projections, such as UserCreateDto, UserUpdateDto, but maybe someone will find it more productive to have one model with conditional validation for such cases. I see it as simply different groups of validators for each named scenario.

I'm against scenarios. These caused really fat form/AR models in Yii 2 and I think it will be the same in Yii 3 if we'll add them.

@samdark Ok, I just opened the issue for any possible discussion. I would try to contribute the usage of specialized DTOs for such cases.


MariaDB service crashes since updating to Laravel 11 oom-kill possible memory leak in Laravel 11?

Laravel Version
11.1.0
PHP Version
8.3.4
Database Driver & Version
MariaDB 10.11
Description
Hi :wave:
I thought I'd just mention this in case anyone else has experienced this since updating to Laravel 11.
I use MariaDB 10.11 in production. Since updating, I'm seeing that my database has been crashing. I've been running my server for a few years now, and it's always been operating on the latest Laravel version, and also has been fine sitting between 75% and 90% memory utilisation (8GB).
Steps To Reproduce
Two noticeable things are different in Laravel 11 compared to Laravel 10:

Removal of dbal package
Mariadb driver

I wanted to figure out whether I'm missing anything. As a result of this, at a cost, I've had to increase my server's memory. I do wonder whether there's a memory leak in how the driver works now in Laravel 11?
× mariadb.service - MariaDB 10.11 database server
     Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; preset: disabled)
     Active: failed (Result: oom-kill) since Thu 2024-03-28 04:00:36 EDT; 5min ago
   Duration: 1d 1h 19min 29.156s
       Docs: man:mariadbd(8)
             https://mariadb.com/kb/en/library/systemd/
    Process: 766 ExecStartPre=/usr/libexec/mariadb-check-socket (code=exited, status=0/SUCCESS)
    Process: 825 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir mariadb.service (code=exited, status=0/SUCCESS)
    Process: 874 ExecStart=/usr/libexec/mariadbd --basedir=/usr $MYSQLD_OPTS $_WSREP_NEW_CLUSTER (code=killed, signal=KILL)
    Process: 1443 ExecStartPost=/usr/libexec/mariadb-check-upgrade (code=exited, status=0/SUCCESS)
   Main PID: 874 (code=killed, signal=KILL)
     Status: "Taking your SQL requests now..."
        CPU: 2h 39min 52.288s

Mar 27 02:41:07 domain-monitor-2022 mariadb-check-upgrade[1473]:   1. Back-up your data before with 'mariadb-upgrade'
Mar 27 02:41:07 domain-monitor-2022 mariadb-check-upgrade[1473]:   2. Start the database daemon using 'systemctl start mariadb.service'
Mar 27 02:41:07 domain-monitor-2022 mariadb-check-upgrade[1473]:   3. Run 'mariadb-upgrade' with a database user that has sufficient privileges
Mar 27 02:41:07 domain-monitor-2022 mariadb-check-upgrade[1473]: Read more about 'mariadb-upgrade' usage at:
Mar 27 02:41:07 domain-monitor-2022 mariadb-check-upgrade[1473]: https://mariadb.com/kb/en/mysql_upgrade/
Mar 27 02:41:07 domain-monitor-2022 systemd[1]: Started MariaDB 10.11 database server.
Mar 28 04:00:36 domain-monitor-2022 systemd[1]: mariadb.service: A process of this unit has been killed by the OOM killer.
Mar 28 04:00:36 domain-monitor-2022 systemd[1]: mariadb.service: Main process exited, code=killed, status=9/KILL
Mar 28 04:00:36 domain-monitor-2022 systemd[1]: mariadb.service: Failed with result 'oom-kill'.
Mar 28 04:00:36 domain-monitor-2022 systemd[1]: mariadb.service: Consumed 2h 39min 52.288s CPU time.

It's been almost 3 hours since rebooting my database server, and I'm seeing the memory usage here at 1GB
● mariadb.service - MariaDB 10.11 database server
     Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; preset: disabled)
     Active: active (running) since Thu 2024-03-28 04:25:45 EDT; 2h 23min ago
       Docs: man:mariadbd(8)
             https://mariadb.com/kb/en/library/systemd/
    Process: 834 ExecStartPre=/usr/libexec/mariadb-check-socket (code=exited, status=0/SUCCESS)
    Process: 887 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir mariadb.service (code=exited, status=0/SUCCESS)
    Process: 1182 ExecStartPost=/usr/libexec/mariadb-check-upgrade (code=exited, status=0/SUCCESS)
   Main PID: 946 (mariadbd)
     Status: "Taking your SQL requests now..."
      Tasks: 95 (limit: 100205)
     Memory: 1.0G
        CPU: 15min 19.823s
     CGroup: /system.slice/mariadb.service
             └─946 /usr/libexec/mariadbd --basedir=/usr

Mar 28 04:25:44 domain-monitor-2022 systemd[1]: Starting MariaDB 10.11 database server...
Mar 28 04:25:44 domain-monitor-2022 mariadb-prepare-db-dir[887]: Database MariaDB is probably initialized in /var/lib/mysql already, nothing is done.
Mar 28 04:25:44 domain-monitor-2022 mariadb-prepare-db-dir[887]: If this is not the case, make sure the /var/lib/mysql is empty before running mariadb-prepare-db-dir.
Mar 28 04:25:45 domain-monitor-2022 mariadb-check-upgrade[1212]: The datadir located at /var/lib/mysql needs to be upgraded using 'mariadb-upgrade' tool. This can be done using the fo>
Mar 28 04:25:45 domain-monitor-2022 mariadb-check-upgrade[1212]:   1. Back-up your data before with 'mariadb-upgrade'
Mar 28 04:25:45 domain-monitor-2022 mariadb-check-upgrade[1212]:   2. Start the database daemon using 'systemctl start mariadb.service'
Mar 28 04:25:45 domain-monitor-2022 mariadb-check-upgrade[1212]:   3. Run 'mariadb-upgrade' with a database user that has sufficient privileges
Mar 28 04:25:45 domain-monitor-2022 mariadb-check-upgrade[1212]: Read more about 'mariadb-upgrade' usage at:
Mar 28 04:25:45 domain-monitor-2022 mariadb-check-upgrade[1212]: https://mariadb.com/kb/en/mysql_upgrade/
Mar 28 04:25:45 domain-monitor-2022 systemd[1]: Started MariaDB 10.11 database server.

Hey there,
Can you first please try one of the support channels below? If you can actually identify this as a bug, feel free to open up a new issue with a link to the original one and we'll gladly help you out.

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

Thanks!

No worries. Created https://stackoverflow.com/questions/78238067/mariadb-service-crashes-since-updating-to-laravel-11-oom-kill-possible-memory-le for reference

@driesvints Followed the advice on Stackoverflow. I'm being pushed back here mate :)

I would raise this as a bug report on laravel's support page, not here.

Hoping to see if others get a similar problem

I've retained DB_CONNECTION=mysql in production

You need to use the new mariadb on Laravel v11.

Sure, I used Laravel Shift a few days ago to update. It didn't change or mention anything about this. Does this mean I need to migrate all uuid columns over to this? Not quite sure of the compatibility of this if I ever want to go back to MySQL.

If you use mariadb you should best use that connection. This will make sure you don't deviate from it in the future. You should update your uuid columns as in the upgrade guide. If it's the same problem then that's most likely not it. You're also free to stay on mysql if you really want that.
@hafezdivandari @staudenmeir do any of you have any ideas what could cause the memory for the new MariaDB connection to blow up like above?
@sts-ryan-holton can you please add more info to reproduce this? What sort of queries/usage is causing this?

I've switched to mariadb for now. I used Laravel Shift, and there were no problems there. A bit more about the setup:
I updated to Laravel 11 and deployed the changes. Then almost 24 hours after the deployment, mariadb.service failed completely with the error attached above. The server had 8gb of memory on a Digital Ocean droplet and 4vcpus. It's had that setup for at least 2 years. There were no problems on Laravel 9, and on Laravel 10. I'm running MariaDB 10.11
My server has always ran at around 75-90% memory. When it crashed, moments before the memory usage went up to around 98% and fell over, I restarted and 24 hours later to this morning, same thing happened. And I've never had this happen ever despite running hot on memory.
I run:

Laravel Horizon, roughly processing between 1,000 - 2,000 jobs per minute continuously and have around 60-70 PHP processes running
Laravel Pulse (separate Redis injest)

CPU utilisation is never really that high, and when running SHOW FULL PROCESSLIST on the DB there's only around 70 active connections at any one given time.
This morning, I updated my droplet at a £30 monthly increase to double my CPU and memory. The server has been rebooted to perform that change earlier.
Earlier this morning when opening this issue, look at the memory usage:
Tasks: 95 (limit: 100205)
     Memory: 1.0G
        CPU: 15min 19.823s

And right now:
 Tasks: 98 (limit: 100205)
     Memory: 2.5G
        CPU: 48min 52.869s

Over 1.5GB extra consumed over just 5 hours?
I have another project that's got around 4 database queues running Laravel 10, it's been up for over a week and is at 1.0GB, and I've observed this project over an hour, it goes up to 1.1GB then back down to 1.0GB

Just checked another server too running Centos. Except, not Laravel, it's at 1.1GB over 1 month. So I have:

Wordpres Centos 9 -> 1.1GB over 1 month
Laravel 10 Centos 9 -> 1.0GB over 1 week
Laravel 10 Centos 9 (before Laravel 11) unknown but never crashed in 2 years
Laravel 11 Centos 9 after upgrade, 2.8GB after just 8 hours :eye:

Does this server only run MariaDB or your whole application?
How does the number of active connections develop over time? Does it only increase or stay in the same range?
Do you have the Laravel 10 numbers for comparison?

do any of you have any ideas what could cause the memory for the new MariaDB connection to blow up like above?

I don't really see how Laravel could cause these crashes since it "only" sends queries to MariaDB. Laravel itself doesn't allocate any database memory or run background tasks inside the database.
https://github.com/laravel/framework/pull/50044 is the "most fundamental" change in Laravel 11 I can think of, but I haven't seen any other reports of increased memory usage.

Two noticeable things are different in Laravel 11 compared to Laravel 10:
Removal of dbal package

This mostly (or even only) affects migration queries.

Mariadb driver

The MySQL and MariaDB driver are identical except for the UUID column type (which only affects migration queries for new columns).

The server runs MariaDB, and the whole application. It also runs a Nuxt-JS 2.x front-end. I've checked the number of incoming HTTPD connections and it's only 7. And Google Analytics doesn't show many on the site.
I've ran SHOW FULL PROCESSLIST; multiple times throughout the day, and have ran it a few times one after another. It fluctuates between 50 and 80, and no single item is left executing beyond 200 seconds or so at any one given time, quite normal for the type of application I'm running.
I experience both problems on mysql and mariadb drivers. I've experienced two MariaDB crashes since updating to Laravel 11 and PHP 8.3. I doubt PHP 8.3 is the issue here given the application remains up despite the crash.
Since my comment 2 hours ago which stated: "Memory: 2.5G"
I've checked again now: "Memory: 3.1G" so has been rising. I fear a third crash imminent over night since updating to Laravel 11.
What about configs? Service providers? These are both changes in Laravel 11.

since updating to Laravel 11 and PHP 8.3.

You updated both at the same time?

I updated PHP to 8.3 from 8.2 about an hour before.
Another note about mariadb.service status. The number of tasks never really change. It too only fluctuates between 96-98

May be related to queue? Do you have any queued jobs? What is your queue driver?

I'm using Laravel Horizon as my queue. Which goes through Redis v7. But Redis never crashed when mariadb crashed. Utilisation of redis never peaked either.

Can you go back to PHP 8.2 but keep Laravel 11?

Okay, I've switched back to php 8.2

Whether this is any use:
Locally, using Laravel Sail, PHP 8.3, MySQL 5.7 (image: 'mysql/mysql-server:5.7'), Horizon, Redis etc, I'm running the Laravel Task Scheduler using schedule:work and Horizon is processing everything normally as if it was in production, I'm seeing:
Over a 5 minute period, looking within Docker Desktop on the MySQL container, the memory usage graph in here has gone up over the 5 minute period:
It started at: 226MB at 19:30, and and risen to: 236MB by 19:35, an increase of 10MB in 5 minutes?
I don't want this to distract from the issue

A bit unrelated, but I encountered a similar issue, but not with database but with php itself being oom-killed once I switched to php 8.3. In my case It was due to some image manipulations I had to perform. I had to limit the max image size being produced to not go over 2000x2000. Still. on php 8.2 worked fine with larger images.

Database memory rose by 3GB over night. It's now sitting at 6.1GB

Is the database used by anything else besides the Laravel application?
Did you recently update MariaDB or change its configuration?
Are you using any "special" features like procedures or triggers?
For some people, switching to TCMalloc fixed the memory leaks:
https://mariadb.com/kb/en/using-mariadb-with-tcmalloc-or-jemalloc/
https://jira.mariadb.org/browse/MDEV-30889
https://www.reddit.com/r/mariadb/comments/xqvqbp/configure_mariadb_to_use_tcmalloc/

Is the database used by anything else besides the Laravel application?

It is not

Did you recently update MariaDB or change its configuration?

At least once a week, if not, once bi-weekly I try to run a dnf update command on my server. I've kept this up for over a year now. But have never actually changed MariaDB's version. I always composer update my application at least once a week as well, if not, at least once a month. So I'm effectively always running whatever changes are being made to the framework.

For some people, switching to TCMalloc fixed the memory leaks:

I've spent a few hours this morning digging further. I did come across jemalloc. Which I found that when running:
SHOW GLOBAL VARIABLES LIKE 'version_malloc_library';

It outputs "system". After some googling on how to install it, I edited mariadb.service and added:
[Service]
Environment="LD_PRELOAD=/usr/lib64/libjemalloc.so.2"

Restarted the database server. And version_malloc_library outputs jemalloc.
Upon rebooting, memory output was 260MB. That was some half hour ago roughly, and now we're sitting at 702MB. So it's still rising. I would hope it doesn't go beyond 1.1GB since my other application running Laravel 10 doesn't go beyond this. Interestingly, when running SHOW GLOBAL VARIABLES LIKE 'version_malloc_library'; on my other Laravel 10 application I get no entries - but it's not a fair test, it's using MySQL 8.0, sure, I could go down the road of migrating my entire database, but I doubt that will solve this issue if it's framework related or a a first-party package related

I feel that there's something in Laravel 11 making excessive connections to the DB?

The queue worker would be my first (and really only) suspect, but since you are using Redis, it only uses database for batching and storing failed jobs, AFAIK. Are you using batching or do you have a lot failed jobs/retries?
Besides that, Laravel should only connect to the database once for every request.

I'm not using job batching. In the past hour Horizon has processed 43,536 jobs, and 4 failures. Of which, the retry attempts is at 2 for each.
I tried pausing Horizon for a brief moment (hard to do in production systems) to see whether the memory usage would drop, and it didn't. But I agree with the idea that the queue worker could be doing something. Yes it connects to Redis, but then Redis has to have an open connection to that database. Could it be failing to close the connection or creating a sleep worker that never gets removed? I'm not sure, I've restarted Horizon.
Just checked in on MariaDB's memory usage and currently:
Tasks: 91 (limit: 100205)
     Memory: 1.0G
        CPU: 14min 39.529s

I ran sudo supervisorctl stop horizon and observed 2m 30s of Horizon not runninig at all. Meanwhile, had htop running and also periodically running systemctl status mariadb.service.
Over that time, the number of tasks remains at 91, memory at 1.1G, and CPU at 16m.
Here's the status after bringing supervisor back up. Of course, the built up jobs would result in the higher server memory usage here.
Other than that, no change sadly.

So it's definitely the queue workers. @sts-ryan-holton the next thing we can try is using Laravel's queue worker directly instead of horizon. What happens if you start processing jobs through the queue worker and leave horizon stopped?

As in me manually running queue:work in a terminal @driesvints ?

yeah, take horizon out of the scope entirely and see if the Laravel queue worker has the same issue.

Okay, I'll run the same test as above, except have three separate tabs and run the following:
php artisan queue:work redis-short-running --queue=on-demand-runs-now,on-demand-stripe-listeners,cron,listeners,redis-short-running --tries=1 --max-jobs=1000 --max-time=300 --sleep=3

php artisan queue:work redis --queue=on-demand-runs-now,uptime,notifications,dns,certificates,domains-expires,default --tries=1 --max-jobs=1000 --max-time=300 --sleep=3

php artisan queue:work redis-long-running --queue=on-demand-runs-now,domains,blacklists,subscriptions,redis-long-running --tries=1 --max-jobs=1000 --max-time=300 --sleep=3

Essentially manually running them, I'll report back the same types of screenshots

Okay, same test performed, except I manually ran the queue workers. The three separate queue worker tabs running the commands above all successfully run without any errors thrown in the output.
htop shows the same kind of output as with Horizon stopped entirely, and systemctl status mariadb.service shows the same task count all be it 1 less which rose back to 92, same memory, same CPU time

.

Then it's horizon most likely, not Laravel. Or maybe a combo of both. Do you still know which version of horizon you were on before you made the upgrade to Laravel v11?

Prior to the upgrade, I was on:

Horizon: 5.23.1
Laravel framework: 10.48.3

Post upgrade...

Horizon: 5.23.2
Laravel framework: 11.1.1

@sts-ryan-holton can you try to downgrade to Horizon 5.23.1 and laravel v11.0.7 and see if the issue persists?

I've downgraded Laravel to 11.0.7 and Horizon to 5.23.1. I had to also downgrade Pulse to Beta 15 from 16 as it required at least 11.0.8
I've restarted Horizon, cleared config and cache.
I've also restarted mariadb.service at the same time here, so at the time of this reply:
straight after restarting mariadb:
Tasks: 34 (limit: 100205)
     Memory: 262.5M
        CPU: 706ms

Within a minute of restarting mariadb service, task count and memory has already risen:
Tasks: 71 (limit: 100205)
     Memory: 309.2M
        CPU: 8.757s

@driesvints @staudenmeir Okay, since the last comment I posted, something interesting has happened here. One thing I observed within the mariadb.log file was thousands upon thousands of lines of [ERROR] lines for the following:
2024-03-29 12:51:31 5813 [ERROR] Incorrect definition of table mysql.column_stats: expected column 'histogram' at position 10 to have type longblob, found type varbinary(255).
2024-03-29 12:51:31 5813 [ERROR] Incorrect definition of table mysql.column_stats: expected column 'hist_type' at position 9 to have type enum('SINGLE_PREC_HB','DOUBLE_PREC_HB','JSON_HB'), found type enum('SINGLE_PREC_HB','DOUBLE_PREC_HB').

One suggestion I was given was to run mariadb-upgrade. Except, I've never ran this command ever on my server, and despite the logs above, which has occurred daily, it's never caused the server to crash.
Anyhow, I ran mariadb-upgrade, and for 3 hours prior to running this I had logged the memory output with the command:
systemctl show mariadb.service | grep "MemoryCurrent" | awk -F= '{printf "%.0f\n", $2/1024/1024}'

I then performed the upgrade, whilst:

Running PHP 8.3
Laravel 11.1.1
Latest Horizon

And logged the memory afterwards:
prior to `mariadb-upgrade`

191MB at 2024-01-29 15:00 (30m change: +0mb, 1h change: 0mb)
572MB at 2024-01-29 15:30 (30m change: +381mb, 1h change: 0mb)
667MB at 2024-01-29 16:00 (30m change: +95mb, 1h change: 476mb)
775MB at 2024-01-29 16:30 (30m change: +108mb, 1h change: 203mb)
866MB at 2024-01-29 17:00 (30m change: +91mb, 1h change: 199mb)
1053MB at 2024-01-29 18:00 (30m change: +0, 1h change: 187mb)

3h change: +862mb (+287mb per hour)

after `mariadb-upgrade`

269MB at 2024-01-29 18:00 (30m change: +0mb, 1h change: 0mb)
428MB at 2024-01-29 18:30 (30m change: +159mb, 1h change: 0mb)
446MB at 2024-01-29 19:00 (30m change: +18mb, 1h change: 177mb)
444MB at 2024-01-29 19:30 (30m change: +0mb, 1h change: 16mb)
463MB at 2024-01-29 20:00 (30m change: +19mb, 1h change: 35mb)
455MB at 2024-01-29 20:30 (30m change: +0, 1h change: 11mb)
477MB at 2024-01-29 21:00 (30m change: +22mb, 1h change: 14mb)

3h change: +208 (+69mb per hour)

Since then, I've woken this morning, it's been around 13 hours now, and the memory usage right now is:

483mb

Previously it would've been over 6gb.
Note I don't now have excessive errors in the logs, but query whether Laravel 11, since it doesn't use the dbal package anymore, whether, the errors I was experiencing related to mysql.column_stats are actually because I haven't performed the upgrade command and the removal of that package was doing something with those statistics which since I was getting errors before would now come alight? Thus why there might not have been any other reports of this.
I am still using jemalloc but might try removing this and defaulting it back to "system" for the rest of the day.

It sounds like MariaDB was upgraded without mysql_upgrade being run, and that something related to the MariaDB upgrade was causing the memory issue, coincidentally with (but possibly exacerbated by queries run by) the Laravel upgrade.
You mention dnf, so I assume Fedora. I haven't used Fedora in forever.. but it sounds like you can use 'dnf history list' to show package history (ref) - I believe it would be 'dnf history list mariadb-server'. Can you please run that and post the results?
It's worth noting that, unless there is a bug in the database server, nothing that Laravel (or any other database client) does should be able to cause the server to use more than the configured memory amounts/etc. It sounds like your MariaDB instance is probably configured to use more memory than your system can actually support; I suspect that if the buffer sizes/connection pool limits/etc were configured to the limits you expect, even with this issue the database server probably would not have run out of memory - but instead would have started running into major performance issues once all memory available to it was allocated, which would have hopefully made this issue easier to debug. ref - note that MariaDB's recommendations for memory utilization and such usually are written with the expectation that MariaDB is the sole process on a system/container - so adjust accordingly.
For what it's worth, here's another reference to MariaDB running poorly with similar symptoms until mysql_upgrade is run: (https://github.com/home-assistant/core/issues/87811)[https://github.com/home-assistant/core/issues/87811]
In any case - you'll probably want to make sure that whatever method you use to keep your system up to date will either only allow minor release upgrades for critical processes, or else ensure that things like mysql_upgrade will automatically be run upon major upgrades.


Conflict with tensorflowlitec.framework while trying to use this plugin with firebase_ml_custom

While trying to use this plugin with firebase_ml_custom to download models from firebase I get this error:
[!] The 'Pods-Runner' target has frameworks with conflicting names: tensorflowlitec.framework.
Any idea how to fix this? I already imported the plugin locally to work around the issue with the linking with pub.
Thanks.

You can change the rename the TensorFlowLiteC.framework folder to TFLiteFlutter.framework and similarly change https://github.com/am15h/tflite_flutter_plugin/blob/master/ios/tflite_flutter.podspec#L20 and https://github.com/am15h/tflite_flutter_plugin/blob/master/ios/tflite_flutter.podspec#L27 as well.

Hi, I did what you recommended but now I'm getting duplicate symbols, for example:
duplicate symbol '_TfLiteTensorDataFree' in:
/Users/ricardochen/Documents/GitHub/product_recognition/tflite_flutter_plugin-master/ios/TFLiteC.framework/TFLiteC(common_16c5e108d1d1bcacc04136cd10a98b4c.o)
/Users/ricardochen/Documents/GitHub/product_recognition/productrecognition/ios/Pods/TensorFlowLiteC/Frameworks/TensorFlowLiteC.framework/TensorFlowLiteC(c_api_internal.o)
duplicate symbol '_TfLiteTensorRealloc' in:
/Users//Documents/GitHub//tflite_flutter_plugin-master/ios/TFLiteC.framework/TFLiteC(common_16c5e108d1d1bcacc04136cd10a98b4c.o)
/Users//Documents/GitHub//imageclasfication/ios/Pods/TensorFlowLiteC/Frameworks/TensorFlowLiteC.framework/TensorFlowLiteC(c_api_internal.o)

I have same problem. I tried many solutions, but I can't solve it..

firebase_ml_custom uses platform channels as compared to tflite_flutter using dart:ffi. So this error is a bit strange.
I will need to take a deeper look to find a possible solution of using these two together.
Moreover, can you please elaborate on why you want to use these together. Probably in future we can plan to support such use cases with tflite_flutter itself

firebase_ml_custom is for downloading custom models from firebase, which in the dependencies have firebase packages which have tensorflowtile.framework as a dependency.

@ricardochen how do you import package as local plugin to work around this issue?

Hey everyone! Any solution for this issue!

Hey everyone! Any solution for this issue!

Has anyone fixed this yet

I'm facing the same issue, any update ?

Same problem here with firebase_core and firebase_messaging, any solution please?

You can change the rename the TensorFlowLiteC.framework folder to TFLiteFlutter.framework and similarly change https://github.com/am15h/tflite_flutter_plugin/blob/master/ios/tflite_flutter.podspec#L20 and https://github.com/am15h/tflite_flutter_plugin/blob/master/ios/tflite_flutter.podspec#L27 as well.

I try the @am15h solution, and clear my project, when i run pod install work, but when i build in xcode i have this error:
ld: framework not found TFLiteFlutter
any idea?

Finaly I make a empty project, and use these versions, I know there aren't a god practice, but i have a short dead line for this project,for now,  work for my
tflite_flutter: ^0.8.0
firebase_core: 1.1.1
firebase_messaging: 9.1.0
google_ml_kit: ^0.5.1

same as @fnoceda
Has anyone fixed this yet?

Same problem after adding TensofFlowLiteC.framewrk to pub-cache:
michal@Michals-MacBook-Pro~/Development/pest_scope/ios $ pod install
Analyzing dependencies
cloud_firestore: Using Firebase SDK version '8.7.0' defined in 'firebase_core'
firebase_auth: Using Firebase SDK version '8.7.0' defined in 'firebase_core'
firebase_core: Using Firebase SDK version '8.7.0' defined in 'firebase_core'
firebase_crashlytics: Using Firebase SDK version '8.7.0' defined in 'firebase_core'
firebase_ml_custom: Using Firebase SDK version '8.7.0' defined in 'firebase_core'
firebase_remote_config: Using Firebase SDK version '8.7.0' defined in 'firebase_core'
firebase_storage: Using Firebase SDK version '8.7.0' defined in 'firebase_core'
Downloading dependencies
Installing TensorFlowLiteC (2.7.0)
Installing TensorFlowLiteSwift (2.7.0)
[!] The 'Pods-Runner' target has frameworks with conflicting names: tensorflowlitec.framework.


Fix: Use JUC ExecutorService instead of weft one for DefaultStoreEventDispatcher, AbstractStoreDataManager

I find both store-affected-by-async-runner and indy-event-dispatch ConcurrentModificationException will affect the store delete event cleanups like on .sha1, .md5, same with: https://github.com/Commonjava/indy/pull/2186/files

I'll merge this first, let's talk later if any issues around this.


have a strategy for keeping the stats tables in sync

Options:
1 - explicit reindex button
2 - time-based reindex
3 - trigger-based indexing (...but min/max will drift out of sync -- could re-compute min/max if you modified the min/max I guess?)
4 - manual re-indexing when you submit an edit on the edit UI page
This might be complex.

An insight: false positives in stats_values are fine. We want to drive two use cases:

looking up an item by name, where names are typically unique-ish, eg 10 people with the same name
hinting to the user popular values for a column when editing or searching, eg Germany

It's important to avoid a false negative (ie user wants to set a fkey, but can't find the record).
A false positive is less critical, and could be detected at runtime and fixed up

Re regular stats: I think what matters most here is knowing the shape of some values. Maybe we should recompute on manual edits while the # of rows is < 100, but then let it get stale / recompute in the background / on a timer
The spirit of the thing: interactive users who are doing the happy path should get an experience that just works.

Triggers are interesting in that they "just work", but a little daunting in that they add a lot of complexity. Eg updating a table's columns will now require rewriting the triggers. Actually, that's not that bad, we can just drop and recreate.
Versioning is perhaps a pain? Maybe whenever we recreate dux column stats, we'd also recreate every trigger.
You can introspect them: https://github.com/simonw/sqlite-utils/issues/59
Do you write 1 trigger or N triggers? 1 is probably better. Check old.value != New.value before doing work.
How do you know if you should preserve a value? Maybe it's just type == text and not date-ish?
How do we know if we're already in the postings list? Need to fetch, parse and check for row I'd... Ah, can just do string comparison.
If the posting list is already full (10 items), drop last item.
This doesn't seem crazy. Fiddly, though


Allow mixing RDMA and non-RDMA devices in one pool

What would you like to be added?
Currently, RDMA devices must use the isRdma: true selector to have their RDMA resources mounted into a pod. This selector (to my understanding) prevents non-RDMA devices from being included in a resource pool with RDMA devices. So, from the user perspective, this selector has the dual responsibility of ensuring RDMA resources are added to containers using RDMA devices and filtering devices which are a part of a resource pool based on their RDMA capabilities.
I propose adding the ability to mix RDMA and non-RDMA devices into the same resource pool.
What is the use case for this feature / enhancement?
An example use case is mixing Intel and Mellanox VFs for DPDK applications. DPDK allows applications to use both of those VFs without any application code changes. Therefore, DPDK applications don't need to care what kind of VF they run on, and should be able to request a DPDK compatible VF. Instead, due to the boolean nature of the isRdma selector, the application must request either an Intel VF or Mellanox VF.
Implementation
I've put together a patch (upstreaming is awaiting internal review) that adds an auto value to the isRdma selector. When isRdma is set to auto, then RDMA and non-RDMA devices can be added to the same resource pool. When an RDMA-capable device (like a Mellanox VF) is requested, then the RDMA resources are attached to the pod. When a non-RDMA device is allocated to a pod, then whatever normal resources are attached to the pod. I've tested the patch against an Intel X710 VF and a Mellanox Connect X-5 VF without noticeable issues.
I am not sure how much backward compatibility this project aims to provide. By moving isRdma from a bool to string, I am not sure if some existing configurations that contain isRdma: true or isRdma: false will need to be updated or not. If backwards compatibility is a higher concern, then perhaps it will be better to add an additional flag rather than change the type of the existing one.
Questions
Is the use case presented a valid use case? Is the implementation approach mentioned acceptable, or would another way be preferred?

Hi @nlbrown2, thanks for the proposal!
I raised this issue in the community meeting today, we can discuss further here.
I have a concern with changing the type from bool to string, as you mentioned, it will no longer be backwards compatible. It will also break any current configs due to us changing a value type.
This change will probably require crd changes in network operator.
I guess if the user requires the old current implementation, they can simply set to "true" or false"

Hi @Eoghan1232 , thanks for your response! It sounds like the community is in favor of implementing this idea, which I am excited to hear!
I am not very familiar with how Go parses JSON, but my suspicion is that existing configs which use isRdma: true or isRdma: false will have to be updated. If it is possible to not require this, then retaining compatibility for old configs should also be possible.
Another option for backwards compatibility is to instead create a new configuration flag, such as AutoMountRdma: bool. When this new flag is set, then RDMA capable devices will have their resources mounted, even if isRdma is false. AutoMountRdma can default to false to retain behavioral compatibility with old configs. However, I am wary of introducing a new configuration option when a relevant existing configuration option exists. Plus, the interaction between isRdma and AutoMountRdma won't be very intuitive without reading relevant documentation.
If we have the freedom to require users to update their config files, then in the PR we can start a discussion around what values isRdma should take. We aren't bound to supporting "true" and "false", and those values may not make much sense for a non-boolean variable. There will certainly be values that behave the same as true and false do currently - maybe "yes" and "no"?
For the network operator changes, is there any special procedure for implementing a change like this which needs to impact both repositories?

Hi @nlbrown2, would you be able to join a community meeting to discuss this further ?
The next meeting is held on : 4th October 9am EST
NPWG Meeting

Hi,
I am happy to join that meeting. Look forward to discussing with you all there!

Hi @nlbrown2 any update on this? what was the outcome of the community meeting

Hi @SchSeba , @Eoghan1232 and I had a short discussion, which we then took offline. Eoghan had proposed some workarounds to enable this functionality, as he was working on a patch that would also impact the RDMA implementation. My project's requirements had changed such that this feature wasn't essential, so I wasn't able to test out Eoghan's proposal.
He had proposed using an admission controller to modify the pod spec based upon a per-node label. While it fit the use case I had in mind, I feel the more general solution will require changes to the SR-IOV Net Device Plugin.
I am still interested in enabling this functionality, but I'm not sure what Eoghan's status is, or its impact on this idea.

ok thanks for the update!