Alignment issue about the CPU affinity?

Hi Jovan,
Thanks for open-source this great work! When I was reading the code of functions, I noticed that: In the yaml file, we set the limit of each MXcontainer to be 2. But in the "runner.py", the CPU affinity is set to be (0,15). Given that we do not modify the affinity set(since in "run-all.py", the requests sent to the system does not contain "numcore" param, and you tested MxFaas on multiple 24 cores VMs, I do think there could be an alignment issue about the CPU affinity.
Here's one example: the k8s allocate CPU 0 and 22 to this container, but the container can only seen CPU 0-15. Won't this cause some potential issue?
Thanks for any possible calrification for better understanding MXFaaS!
Yinzhe

Ohh I seem to understand, looks like we are using the runner.py in pythonACtion folder

Hi Yinzhe,
Thank you for using our artifact! Let me understand your question:

runner is the function runtime that contains dispatcher logic, and spawns new handlers for new requests on the available cores (e.g., https://github.com/jovans2/MXFaaS_Artifact/blob/main/KNative_prototype/cnn_serving/runner.py)
node controller is monitoring the latencies of functions within a node and sets the correct per-function CPU assignments (https://github.com/jovans2/MXFaaS_Artifact/blob/main/KNative_prototype/nodeController.py)

You need to start the node controller before starting the experiments, it is a component of MXFaaS system. The node controller will periodically query the available functions and reassign their CPU assignments when needed.
Let me know if this helps or if there are still some unresolved issues.

Ahh, I see; so basically, even if we wanna do a single-node experiment, we should start the node controller first. At first I just though it is a component that only need to be started for multiple node experiment.
BTW Jovan, do you know if it is possible to register some other functions to MXFaaS, like PyAE code-decode application in the FunctionBench by ourselves? I think it should be fine right? We just need to copy runner.py and set our own docker image/blob storage for it? And does MXFaaS support local data storage? Like store data is disk/even directly in the docker file for testing? I'm not familiar with using blob so just wanna start some local simple test first.
Again, thanks for your kind help and reply!

Correct, the node controller is in charge of core assignment on a node level, so, it’s needed even for a single node experiments.
Adding new benchmarks to our system is fairly easy, as you said just change the app.py with your function and create a docker container for the function.
You can use other storage services, then, you would need to change the implementation of dnld_blob.py (e.g., https://github.com/jovans2/MXFaaS_Artifact/blob/main/KNative_prototype/cnn_serving/dnld_blob.py)
Let me know if you need some help porting new benchmarks.

You can use other storage services, then, you would need to change the implementation of dnld_blob.py  -> But still I shall not use local storage here right?  We are supposed to use remote storage services like S3 bucket, .etc?
Also Jovan I have a follow up question about the node controller: If I have different NUMA nodes in the VM, how do you control the binding problem? Like still we could use cpu affinity mask here, but this time we need to bind corresponding memory to the right cores(otherwise it may harm MXFaaS's performance)

You can use local storage, you will just implement your interface to operate with files and provide the data accordingly. However, the performance benefits of MXFaaS would be lower as your idle time goes down.
Correct, you would need to deal with memory allocation as in general NUMA-servers.

Okk, thanks for help. Here's the last questions, and I will mark this issue as complete after solving them:
1.In yamls like cnn_serve.yaml (https://github.com/jovans2/MXFaaS_Artifact/blob/main/KNative_prototype/cnn_serving/cnn_serving.yaml), I noticed there is a limit of 2 for CPU. But it looks like each MXFaaS's MXcontainer could use all CPUs in one VM. Jovan could you please help me out? I'm a little bit confused here.
If you think it's hard to explain maybe we can start from an simple example. Say that we only have one VM which has 8 cores(16vCPU), and we only run cnn_serving and vid_processing two applications. Then, we only have one cnn MXcontainer and one vid MXcontainer on this VM right?  And after that, if we want to scale up cnn application, what will happen here? like the cnn MXcontainer could run cnn function on all 16 cores? Won't this conflict with the 2 hard limit in yaml file?
2.Would you mind tell me how could we test serverless applications? Like the Train ticketing system applications you used in the original paper?
Many thanks!


ContentType import from hyper::header

Version
hyper = { version = "0.14", features = ["full"] }
Platform
Linux skrilla 5.13.0-27-generic #29-Ubuntu SMP Wed Jan 12 17:36:47 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Description
error[E0432]: unresolved import hyper::header::ContentType
--> src/main.rs:4:35
|
4 | use hyper::header::{CONTENT_TYPE, ContentType};
|                                   ^^^^^^^^^^^ no ContentType in header
[short summary of the bug]
I can't import ContentType
I tried this code:
use hyper::header::{CONTENT_TYPE, ContentType};
[code sample that causes the bug]
use hyper::header::{CONTENT_TYPE, ContentType};

Same reason Status code is exist,
I was writing a macro to response as JSON,
i thought is better to use "application/json" as a constant.

There's a separate mime crate that includes types for handling content-type, etc. I assume the context for keeping them separate is to avoid these types being a part of Hyper's stable API.

@olix0r  Thank you very much


Updated to include examples for privacy enhancements

Updated to include content in response on this Slack thread - https://go-quorum.slack.com/archives/C68NY0QQZ/p1604292913088800

@MadelineMurray  hey I'm not really sure why I am subscribed to this thread.


Expanding copyright statement checks [repo-check-dev]

This PR expands the checks done in repo-check.yml to include the outdated release number and GPL license type. It also appeared that the check was only looking at lines starting with '#' i.e. comments in shell scripts so I expanded this to include "//" i.e. comments in C++ files.
Addresses issue #2265.

PR
Author
Editor
Reviewers
Assignment
Approval
Merge

#2267
@mlstowell
@tzanio
@tzanio + @adrienbernede + @v-dobrev
05/23/21
⌛due 05/27/21
⌛due 06/03/21

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

Otherwise I think this is a great addition. Maybe we could add this to the git hooks.

I think those new jobs should be added as steps of a same job. This would prevent from having many very small jobs.
Minor: the comment "needed for astyle" should be removed.

I tried this at first but I could not make it work the way I wanted. The desired outcome was to check for any of these outdated statements and show the user which files needed to be updated. However, since each check contains an exit 1 the first failure would prevent the subsequent checks from running. I looked for a way to remove the exit 1 and replace it with a status variable. Then after all checks had been run we could exit if the status variable indicated a failure had occurred. Do you know of a simple way to define such a status variable?

@adrienbernede, can you please review

Merged in next for testing...


using log4j2 -  ERROR: Cannot set level: WARN for 'null'

Starting my server i have ERROR message many times:
ERROR org.springframework.cloud.logging.LoggingRebinder (LoggingRebinder.java:77) - Cannot set level: WARN for 'null'

I never saw that. Can you share a minimal project that reproduces the problem? What makes you think it is a Spring Cloud issue?

can't set up that project easily .. but maybe i can help to indentigy the cause
logging:
level:
ROOT: WARN
private void setLogLevel(LoggingSystem system, Environment environment, String name,
			String level) {
		try {
			if (name.equalsIgnoreCase("root")) {
				name = null;
			}
			level = environment.resolvePlaceholders(level);
			system.setLogLevel(name, LogLevel.valueOf(level));
		}
		catch (RuntimeException ex) {
			this.logger.error("Cannot set level: " + level + " for '" + name + "'");
		}
	}

name is set to null cause equals root
Then loj4j2 Method trys to get logger (getLoggerConfig() ) for "null" and runs into null pointer

@Override
	public void setLogLevel(String loggerName, LogLevel logLevel) {
		Level level = LEVELS.get(logLevel);
		LoggerConfig loggerConfig = getLoggerConfig(loggerName);
		if (loggerConfig == null) {
			loggerConfig = new LoggerConfig(loggerName, level, true);
			getLoggerContext().getConfiguration().addLogger(loggerName, loggerConfig);
		}
		else {
			loggerConfig.setLevel(level);
		}
		getLoggerContext().updateLoggers();
	}

private LoggerConfig getLoggerConfig(String loggerName) {
		return getLoggerContext().getConfiguration().getLoggers().get(loggerName);<<<<<<
	}

getLoggerContext().getConfiguration().getLoggers().get(null) !!!!   That causes the null pointer

It seems that
com.netflix.discovery: OFF
does not work either and i supposed it should.
ERROR org.springframework.cloud.logging.LoggingRebinder (LoggingRebinder.java:77) - Cannot set level: false for 'com.netflix.discovery'

The line with the NPE is actually in Spring Boot, so I'm not so sure it is a problem here. See here: https://github.com/spring-projects/spring-boot/issues/4808

tx. looking foward for the fix.


fix link

fix link in https://kubernetes.io/docs/api-reference/v1/definitions/#_v1_nodespec unschedulable Description

This change is

I signed it!


Move Black to be dev dependency (or remove it entirely)

For some reason Black has been added as a primary dependency instead of a dev dependency in the poetry config.
This means pip installing safer unnecessarily installs Black into the local Python environment and the corresponding conda-forge recipe  are unnecessarily installing Black at runtime now too.
P.S.
Since you already install Ruff as a dev dependency I was going to suggest removing the Black dependency entirely and using the near identical (depending on the config) Ruff formatter.

Ooops, I know why this happened (a boring mistake).
I'll get to this first thing tomorrow AM!
On Sun, Jan 14, 2024 at 10:24 PM Owen Lamont @.***>
wrote:

For some reason Black has been added as a primary dependency instead of a
dev dependency in the poetry config.
This means pip installing safer unnecessarily installs Black into the
local Python environment and the corresponding conda-forge recipe
https://github.com/conda-forge/safer-feedstock/blob/main/recipe/meta.yaml
are unnecessarily installing Black at runtime now too.
P.S.
Since you already install Ruff as a dev dependency I was going to suggest
removing the Black dependency entirely and using the near identical
(depending on the config) Ruff formatter
https://docs.astral.sh/ruff/formatter/.
—
Reply to this email directly, view it on GitHub
https://github.com/rec/safer/issues/24, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAB53MQU6A62UT4K3ATXO2DYOREKDAVCNFSM6AAAAABB2L674SVHI2DSMVQWIX3LMV43ASLTON2WKOZSGA4DAOJQGMZTOMI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
/t
PGP Key: @.***
https://tom.ritchford.com https://tom.ritchford.com
https://tom.swirly.com https://tom.swirly.com

You're welcome, love seeing the greater Ruff use. I'm a big fan of Ruff.


[RKE2] scale down button is not shown on rke2 clusters, but is for rke1 in the manage cluster page

Rancher Server Setup

Rancher version: v2.6.3-rc3
Installation option (Docker install/Helm Chart):docker

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc):

Proxy/Cert Details:

Information about the Cluster

Kubernetes version:any for rke2
Cluster Type (Local/Downstream):downstream

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider):digital ocean, aws

Describe the bug

the scale down button is not displayed on rke2 cluster manage page, but is shown for rke1
To Reproduce

provision an rke2 cluster with at least 2 nodes in 1 pool
once active, click on the cluster name from the cluster management page

Result
scale down button is not there (this button is greyed out on rke1 clusters until you select a node via a checkbox

Expected Result

rke2 should also have the scale down button
Screenshots

for comparison, here's the rke1 page

This is new functionality to be developed as part of https://github.com/rancher/dashboard/issues/4446. Closing as a duplicate.


duplicate symbols for architecture x86_64 React Ntaive version 0.64

I got this when build with latest version of react-native
duplicate symbol 'folly::detail::str_to_bool(folly::Range<char const*>)' in:
/Users/charlier/Library/Developer/Xcode/DerivedData/BanjaraWedding-hhgkttbaoprqvgftffbbkscdmncr/Build/Products/Debug-iphonesimulator/Flipper-Folly/libFlipper-Folly.a(Conv.o)
/Users/charlier/Library/Developer/Xcode/DerivedData/BanjaraWedding-hhgkttbaoprqvgftffbbkscdmncr/Build/Products/Debug-iphonesimulator/RCT-Folly/libRCT-Folly.a(Conv.o)
duplicate symbol 'folly::makeConversionError(folly::ConversionCode, folly::Range<char const>)' in:
/Users/charlier/Library/Developer/Xcode/DerivedData/BanjaraWedding-hhgkttbaoprqvgftffbbkscdmncr/Build/Products/Debug-iphonesimulator/Flipper-Folly/libFlipper-Folly.a(Conv.o)
/Users/charlier/Library/Developer/Xcode/DerivedData/BanjaraWedding-hhgkttbaoprqvgftffbbkscdmncr/Build/Products/Debug-iphonesimulator/RCT-Folly/libRCT-Folly.a(Conv.o)
ld: 2 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
1.react-native: 0.64
2.xcode :12.5.1
3.React :17
#PodFile look like
platform :ios, '10.0'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
require_relative '../node_modules/react-native/scripts/react_native_pods'
def flipper_pods()
flipperkit_version = '0.90.0'
pod 'FlipperKit', '~>' + flipperkit_version, :configuration => 'Debug'
pod 'FlipperKit/FlipperKitLayoutPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
pod 'FlipperKit/SKIOSNetworkPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
pod 'FlipperKit/FlipperKitUserDefaultsPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
pod 'FlipperKit/FlipperKitReactPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
end
def flipper_post_install(installer)
file_name = Dir.glob("*.xcodeproj")[0]
app_project = Xcodeproj::Project.open(file_name)
app_project.native_targets.each do |target|
target.build_configurations.each do |config|
cflags = config.build_settings['OTHER_CFLAGS'] || '$(inherited) '
unless cflags.include? '-DFB_SONARKIT_ENABLED=1'
puts 'Adding -DFB_SONARKIT_ENABLED=1 in OTHER_CFLAGS...'
cflags << '-DFB_SONARKIT_ENABLED=1'
end
config.build_settings['OTHER_CFLAGS'] = cflags
end
app_project.save
end
installer.pods_project.save
end
target 'Example' do
pod 'FBLazyVector', :path => "../node_modules/react-native/Libraries/FBLazyVector"
pod 'FBReactNativeSpec', :path => "../node_modules/react-native/React/FBReactNativeSpec"
pod 'RCTRequired', :path => "../node_modules/react-native/Libraries/RCTRequired"
pod 'RCTTypeSafety', :path => "../node_modules/react-native/Libraries/TypeSafety"
pod 'React', :path => '../node_modules/react-native/'
pod 'React-Core', :path => '../node_modules/react-native/'
pod 'React-CoreModules', :path => '../node_modules/react-native/React/CoreModules'
pod 'React-Core/DevSupport', :path => '../node_modules/react-native/'
pod 'React-RCTActionSheet', :path => '../node_modules/react-native/Libraries/ActionSheetIOS'
pod 'React-RCTAnimation', :path => '../node_modules/react-native/Libraries/NativeAnimation'
pod 'React-RCTBlob', :path => '../node_modules/react-native/Libraries/Blob'
pod 'React-RCTImage', :path => '../node_modules/react-native/Libraries/Image'
pod 'React-RCTLinking', :path => '../node_modules/react-native/Libraries/LinkingIOS'
pod 'React-RCTNetwork', :path => '../node_modules/react-native/Libraries/Network'
pod 'React-RCTSettings', :path => '../node_modules/react-native/Libraries/Settings'
pod 'React-RCTText', :path => '../node_modules/react-native/Libraries/Text'
pod 'React-RCTVibration', :path => '../node_modules/react-native/Libraries/Vibration'
pod 'React-Core/RCTWebSocket', :path => '../node_modules/react-native/'
pod 'React-cxxreact', :path => '../node_modules/react-native/ReactCommon/cxxreact'
pod 'React-jsi', :path => '../node_modules/react-native/ReactCommon/jsi'
pod 'React-jsiexecutor', :path => '../node_modules/react-native/ReactCommon/jsiexecutor'
pod 'React-jsinspector', :path => '../node_modules/react-native/ReactCommon/jsinspector'
pod 'ReactCommon/turbomodule/core', :path => "../node_modules/react-native/ReactCommon"
pod 'Yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
pod 'React-perflogger', :path => '../node_modules/react-native/ReactCommon/reactperflogger'
pod 'React-runtimeexecutor', :path => '../node_modules/react-native/ReactCommon/runtimeexecutor'
pod 'react-native-fbsdk', :path => '../node_modules/react-native-fbsdk'
pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec'
pod 'RCT-Folly', :podspec => '../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec'
pod 'Google-Mobile-Ads-SDK'
pod 'React-callinvoker', :path => "../node_modules/react-native/ReactCommon/callinvoker"
flipper_pods()
pod 'BVLinearGradient', :path => '../node_modules/react-native-linear-gradient'
pod 'FBReactNativeSpec', :path => "../node_modules/react-native/React/FBReactNativeSpec"
pod 'react-native-image-picker', :path => '../node_modules/react-native-image-picker'
post_install do |installer|
flipper_post_install(installer)
end
target 'ExampleTests' do
inherit! :search_paths
# Pods for testing
end
use_native_modules!
end

Getting the same with RN 0.65

For me, use_flipper!({ "Flipper-DoubleConversion" => "1.1.7" }) in Podfile fixed this.

Same here

Still having this error with React Native 0.66.1

For me, use_flipper!({ "Flipper-DoubleConversion" => "1.1.7" }) in Podfile fixed this.

This solves here
Installing Flipper-DoubleConversion 1.1.7 (was 3.1.7)

After upgrading XCode & RN I got the same error. I'm not sure if my project settings are different than @fiznool which is why I'm getting an error and not a warning, but @wjaykim fix worked for me as well.
React 17.0.2
React-Native 0.66.3
XCode 13.1

Get the same error with React-Native 0.66.3 and the tipp…

For me, use_flipper!({ "Flipper-DoubleConversion" => "1.1.7" }) in Podfile fixed this.

from @wjaykim solved it.
😎🙏

I don't understand why the Flipper version and its dependencies are not fixed inside React Native.
Every RN update has some conflict in Flipper libraries that require several hours of research to resolve.
Sorry for the outburst.

Apparently altering DEAD_CODE_STRIPPING setting (to either remove a 'NO' setting from pbxproj.proj, or add a 'YES' value for this setting) will resolve this. Experimental results from people that test this would be welcome.
https://stackoverflow.com/a/69565059/9910298

Apparently altering DEAD_CODE_STRIPPING setting (to either remove a 'NO' setting from pbxproj.proj, or add a 'YES' value for this setting) will resolve this. Experimental results from people that test this would be welcome.
https://stackoverflow.com/a/69565059/9910298

Worked for me! Thanks

Apparently altering DEAD_CODE_STRIPPING setting (to either remove a 'NO' setting from pbxproj.proj, or add a 'YES' value for this setting) will resolve this. Experimental results from people that test this would be welcome.

Setting the debug value to "YES" resolved this issue for me.

Thanks @mikehardy – you're in a bunch of the troubleshooting threads I come across and you seem to always have the answer along with an explanation. Much appreciated as always! 🙇

@chrisheninger turns out maintaining a bunch of popular repos is less about adding features and more about just figuring out compile errors for everyone - an unexpected result but that explains my presence in all the compile errors threads. Wish I could generate the fixes in non-regressive-for-other-cases ways and get people to upgrade to the versions with fixes though. Mostly these days all the compile issues are sorted out but some people are on old versions or we don't have an upstream fix we're 100% sure on yet. Bit by bit we get it working though...

Has anyone that has either a) removed DEAD_CODE_STRIPPING = NO; or b) changed the value to YES noticed any implications from this? I can't quite figure out what it does (although, judging from the name I can take a guess! 😄). But removing it seems to work.

I have not heard any negatives of setting it to NO but there is of course the direct negative implication that your final .ipa will be larger.
Negative of not specifying the flag or setting it to YES is that you cannot even compile for macCatalyst+Flipper, so it's a hard stop on developing. Other use cases in this thread indicate there may be other situations it leads to build-time link failure.
I just attempted to read through known literature on the subject and it turns out there is a sub-flag that may work for those affected. What is it?
It's turning DEAD_CODE_STRIPPING to YES (which previously would crash macCatalyst + Flipper builds, at least) but then turn PRESERVE_DEAD_CODE_INITS_AND_TERMS to YES (normally it would default to NO).
Maybe that allows things to still work but diminishes the size impact of not even attempting to determine dead code and strip it at link time. Unknown, test results would be needed.

It's turning DEAD_CODE_STRIPPING to YES (which previously would crash macCatalyst + Flipper builds, at least) but then turn PRESERVE_DEAD_CODE_INITS_AND_TERMS to YES (normally it would default to NO).

It seems this doesn't work, I get an error saying:
ld: option -no_dead_strip_inits_and_terms is obsolete and being ignored
and then all the duplicate symbol errors.

Never mind... I had a different issue that prevented the build from working.

Apparently altering DEAD_CODE_STRIPPING setting (to either remove a 'NO' setting from pbxproj.proj, or add a 'YES' value for this setting) will resolve this. Experimental results from people that test this would be welcome.

Setting the debug value to "YES" resolved this issue for me.

Thanks @mikehardy – you're in a bunch of the troubleshooting threads I come across and you seem to always have the answer along with an explanation. Much appreciated as always! 🙇

in my case its previously yes selected but still I am facing same issue

None of this working for me. Xcode 14 and react-native 0.68

For me, use_flipper!({ "Flipper-DoubleConversion" => "1.1.7" }) in Podfile fixed this.

In my case: use_flipper!({'Flipper' => '0.140.0', "Flipper-DoubleConversion" => "1.1.7"})
Okay so this worked on my end with RN 0.67.5 but it is a bit of a hack IMO. Does anyone know what the underlying cause is for this? I suspect it could be related to past RN upgrades done incorrectly as our app came from 0.59 to 0.63 to 0.67.

At this point even discussing Flipper implies you're two major versions behind here and failing steadily further back as it doesn't work with use_frameworks. I don't see Flipper prioritized for fixing yet (fixing new architecture + use_frameworks is a higher priority for react-native crew) so I'd say it's probably time to device a different troubleshooting strategy, disable flipper and get on current versions. But that's me....

At this point even discussing Flipper implies you're two major versions behind here and failing steadily further back as it doesn't work with use_frameworks. I don't see Flipper prioritized for fixing yet (fixing new architecture + use_frameworks is a higher priority for react-native crew) so I'd say it's probably time to device a different troubleshooting strategy, disable flipper and get on current versions. But that's me....

Thanks @mikehardy, I see your point. We are trying to catch up as fast as we can. Regarding this issue, I've been digging into it a bit more and although I don't have full clarity just yet I did find that selecting Yes for both Dead Code Stripping and Don't Dead-Strip Inits and Terms also works in my case without the need to explicitly select a Flipper-DoubleConversion version.

I was having this problem on an m1 mac, so the symbols are for arm64, but I think the solution might be the same. After spending a few hours trying out different solutions to this, I solved this by removing /opt/homebrew/opt/coreutils/libexec/gnubin/ from my path. That's right, I had gnu coreutils set as my default for commands like cp, which react-native's build scripts use. The net result was that extra files were being copied, due to subtle differences in how directories are copied between the gnu and the builtin cp.

I was having this problem on an m1 mac, so the symbols are for arm64, but I think the solution might be the same. After spending a few hours trying out different solutions to this, I solved this by removing /opt/homebrew/opt/coreutils/libexec/gnubin/ from my path. That's right, I had gnu coreutils set as my default for commands like cp, which react-native's build scripts use. The net result was that extra files were being copied, due to subtle differences in how directories are copied between the gnu and the builtin cp.

This saved my life, thanks a lot!
Quickfix
For those who encounter the same problem, this is a hack to exclude the gnu coreutils from your $PATH without actually removing it from your ~/.bash_profile.
Option 1: wrapping npx react-native calls into a wrapper for now
# react-native-wrapper
#!/usr/bin/env bash
PATH="$(echo "$PATH" | tr ':' '\n' | grep -v 'coreutils/libexec/gnubin' | paste -sd:)" npx react-native "$@"

Option 2: just remember to exclude it before calling any ios related commands
# *before* calling any ios related commands
export PATH="$(echo "$PATH" | tr ':' '\n' | grep -v 'coreutils/libexec/gnubin' | paste -sd:)"
# otherwise you might have to somehow delete the ~/Library/Developer/Xcode/DerivedData and/or ios/build and start over (the goal is to clean up the object files and the statically linked libraries)

As it appears to work if we exclude the gnu coreutils, one possible fix for the problem would be using POSIX-compliant options of the coreutils.

For me, use_flipper!({ "Flipper-DoubleConversion" => "1.1.7" }) in Podfile fixed this.

just put it anywhere?

I have this in my pod already
use_flipper!({ 'Flipper' => '0.125.0' }, configurations: ['Debug'])

and adding another line like this:
use_flipper!({ 'Flipper' => '0.125.0' }, configurations: ['Debug'])
use_flipper!({ "Flipper-DoubleConversion" => "1.1.7" })

breaks the pod installation process:
[!] CocoaPods could not find compatible versions for pod "Flipper-DoubleConversion":
  In Podfile:
    Flipper-DoubleConversion (= 1.1.7)

    Flipper-DoubleConversion (= 3.2.0)

None of your spec sources contain a spec satisfying the dependencies: `Flipper-DoubleConversion (= 3.2.0), Flipper-DoubleConversion (= 1.1.7)`.

You have either:
 * mistyped the name or version.
 * not added the source repo that hosts the Podspec to your Podfile.

[!] There are duplicate dependencies on `Flipper-DoubleConversion` in `Podfile`:

- Flipper-DoubleConversion (= 3.2.0)
- Flipper-DoubleConversion (= 1.1.7)

Is there a way to merge these two use_flipper! instructions?

I have this in my pod already
use_flipper!({ 'Flipper' => '0.125.0' }, configurations: ['Debug'])

and adding another line like this:
use_flipper!({ 'Flipper' => '0.125.0' }, configurations: ['Debug'])
use_flipper!({ "Flipper-DoubleConversion" => "1.1.7" })

breaks the pod installation process:
[!] CocoaPods could not find compatible versions for pod "Flipper-DoubleConversion":
  In Podfile:
    Flipper-DoubleConversion (= 1.1.7)

    Flipper-DoubleConversion (= 3.2.0)

None of your spec sources contain a spec satisfying the dependencies: `Flipper-DoubleConversion (= 3.2.0), Flipper-DoubleConversion (= 1.1.7)`.

You have either:
 * mistyped the name or version.
 * not added the source repo that hosts the Podspec to your Podfile.

[!] There are duplicate dependencies on `Flipper-DoubleConversion` in `Podfile`:

- Flipper-DoubleConversion (= 3.2.0)
- Flipper-DoubleConversion (= 1.1.7)

Is there a way to merge these two use_flipper! instructions?

yes, I believe you can use use_flipper!({ 'Flipper' => '0.125.0' , "Flipper-DoubleConversion" => "1.1.7"},  configurations: ['Debug']) to merge them

Best solution here is to delete React Native and with it; your entire existing app. Switch to a competent framework, such as:

SwiftUI for iOS
Jetpack Compose for Android

These frameworks are comprehensive, maintained by competent developers, and future proof - which is far more than I can say for the mess in which React Native has turned itself into, it's:
Consistent usage on deprecated frameworks such as UIKit (Apple has long-since shifted their focus onwards to SwiftUI)
Horrendously written code, an actual example:
https://github.com/facebook/react-native/blob/a6690bfb7b43120608ef17d1e7f08c9eb111e98f/packages/react-native/React/Fabric/RCTSurfacePresenter.mm#L186-L191
Duplicate symbols as you find in this issue ticket today.

Senseless hours wasting your time trying to fix all the things Meta/Facebook (will not/cannot) fix.
To have a barely functioning app, built on a foundation of deprecated UI frameworks which will inevitably become obsolete in an upcoming flagship release, rendering all your efforts here as useless.
I don't know what happened here, but for the sake of developer sanity and everyone involved, it's time to let this project go. I hope Meta/Facebook can take this as a learning oppurtunity moving forward.

Best solution here is to delete React Native and with it; your entire existing app.

This issue isn't your personal soapbox.

I am facing the same issues with react-native version 0.71.3

Experienced the same issue when adding Expo to an existing React Native project.
RN version: 0.72.4
The solution proposed by @wjaykim worked like a charm!

experienced the same issue. it happened due to the @react-native-community/viewpager fix the issue by replacing it with latest react-native-pager-view

@vidurajith-darshana saved my day ! spent like 6 hours and could not figure it out

For me, use_flipper!({ "Flipper-DoubleConversion" => "1.1.7" }) in Podfile fixed this.

just put it anywhere?

Put this above target {projectname} do

I have similar issue after installing react-native-gesture-handler and following by react-native-reanimated.

I can't use ..use_flipper!(.. solution since I disabled the flipper, so I ended up with:

Under ios folder:

pod deintegrate
RCT_NEW_ARCH_ENABLED=1 pod install

Open workspace with xcode and do "Clean Build Folder"
Delete derived data: rm -rf Library/Developer/Xcode/DerivedData
Build project using XCode.

And the errors gone, I can run the project normally.

I am facing the same issues with react-native version 0.71.3
Update: If you're encountering a similar issue of duplicate symbols .... I discovered that my problem stemmed from having both rn-fetch-blob and react-native-blob-util installed. These packages essentially serve the same purpose, so installing both is unnecessary. Opt for just one of them. I recommend using react-native-blob-util.

after two hours of debugging, I just had to do this. Thanks for saving my weekend. please let me know how did you find out the exact issue, the errors Xcode showed weren't helpful at all

It happened to me when I installed aws-amplify and I had to run the command npx pod-install in the root of project, run pod install in ios folder doesnt worked for me

@mikehardy Thank you very much. You are life saver.

After updating to react-native 0.76.2 and expo 52 I am facing the same issue.
This is the error message:
[RUN_FASTLANE] ⚠  ld: ignoring duplicate libraries: '-lc++'
[RUN_FASTLANE] ❌  duplicate symbol 'facebook::react::NativeCompressorSpecJSI::NativeCompressorSpecJSI(facebook::react::ObjCTurboModule::InitParams const&)' in
┌─ libReactCodegen.a55
└─ libReactCodegen.a37
[RUN_FASTLANE] ❌  duplicate symbol 'OBJC_METACLASS$_NativeCompressorSpecBase' in
┌─ libReactCodegen.a55
└─ libReactCodegen.a37
[RUN_FASTLANE] ❌  duplicate symbol 'OBJC_CLASS$_NativeCompressorSpecBase' in
┌─ libReactCodegen.a55
└─ libReactCodegen.a37
[RUN_FASTLANE] ❌  duplicate symbol 'facebook::react::NativeCompressorSpecJSI::NativeCompressorSpecJSI(facebook::react::ObjCTurboModule::InitParams const&)' in
┌─ libReactCodegen.a55
└─ libReactCodegen.a37
[RUN_FASTLANE] ❌  duplicate symbol 'OBJC_IVAR$_NativeCompressorSpecBase._eventEmitterCallback' in
┌─ libReactCodegen.a55
└─ libReactCodegen.a37
[RUN_FASTLANE]
❌  ld: 5 duplicate symbols
So far, I could not solve the error using any fixes suggested here. Any help is greatly appreciated!
Thanks.

I am using react-native-compressor 1.9.0 but not react-native-video-compressor in my project so I am not sure why react-native-video compressor is even included?

@mikehardy  I am sorry for any confusion I caused. I just found the appropriate issue in the react-native-compressor directory. Thanks for your quick answer though.


fix some linter issues

Signed-off-by: s3rj1k<EMAIL_ADDRESS>

Codecov Report

Merging #2 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master     #2   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           2      2
  Lines         182    182
=====================================
  Hits          182    182

Impacted Files
Coverage Δ

hsva.go
100% <100%> (ø)
:arrow_up:

captcha.go
100% <100%> (ø)
:arrow_up:

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 b06ff17...c9278e7. Read the comment docs.

What linter are you using? I already have 100% satisfaction from golint.

golangci, revive

If you would fork this, how do you plan to fix generated code?

Main issues are fixed in https://github.com/steambap/captcha/pull/4

Is this PR safe to merge? If so, I'll rebase the one with globalvars

Sorry, no. I don't like to see weird comment all over my code. Also, global vars are bad, but there are exceptions, like the generated font data.

This is exactly the behaviour that leads to forks and forks split open-source community efforts.
This should be a warning to future contributors.


acer-juniper: No audio

After installing Mobile Nixos by dd-ing it to my internal disk, I have noticed some issues with audio (mainly, it not working). I'm not completely sure if this is a thing just because I did something wrong while installing. The 2 things that I have tried to troubleshoot this issue are

Switching audio subsystems from Pulseaudio to Pipewire (this caused a Pro Audio option to show up, which didn't work),
Switching to the "Pro Audio" output, which didn't work.

the same for me: [https://github.com/mobile-nixos/mobile-nixos/issues/733]
seems there is kernel can not be imported correctly.


Mojo doc reference needs to be updated

Mojo reference in https://github.com/openshift/elliott/blob/master/README.md
The page you tried to load was originally found on Mojo, but it was contained in an area marked as not needed in The Source.
It will not be migrated.

Thanks.
https://github.com/openshift/elliott/commit/0cbadf80604b530ed1f5fb20a5bc9cedc98b1998


Update README.md

Add a note about Dockerfiles.

Thanks for opening this :)
I've opened #187 in relation to #183 to investigate if we can make configuration smoother, but I don't think this documentation in its current form adds enough to be included in the README.
Trying to compile without necessary configuration files is not an issue specific to Sentry, though documentation explaining some of the complexity around source code reading and compilation could be improved.
It could be prudent to add a warning here about the recursive file reading and a Logger.info call here that announces the recursive search is starting.  What do you think?

It's completely up to you how you will proceed with this PR and the documentation.
You now have some setup that is relevant in terms of Dockerfile preparation.
There are already some people who started using sentry again with your library after they were informed about this solution.

@KamilLelonek I'd be happy to link to a gist or blog post of yours that describes getting Docker and sentry-elixir set up, but maintaining docs for Docker builds within this repo is not something I am currently comfortable doing 🙂

OK, I'm closing it then.


Feature request: when clauses for group metadata

VSCode Version: 1.10.2
OS Version: 10.11.6

I've remapped a shortcut to View: Focus Next Group. This command will open an additional group if I'm on the last group and have fewer than 3 groups currently open.
It would be great to have a when clause to prevent this. A clause like editor.isLastGroup (or perhaps a combination of editor.openGroupCount and editor.currentGroupIndex) would allow me to prevent extraneous group opening. A similar check for editor.isFirstGroup would let me re-use the same shortcut to jump back and forth between the first group and the sidebar.
Thanks for your consideration!

PR welcome.

+1 for this. Just switched from vim to vscode recently. Being able to jump back and forth between the sidebar and the first editor group in a similar manner to vim + NERDTree would be great.
I'd be happy to take a stab at a PR. @bpasero any advice for implementing this feature? Good places to start, people I should chat with about it, resources on how when clauses are implemented, etc. would all be helpful :)

@jaydenwindle maybe look how we update the context for diff editor being active or not: https://github.com/Microsoft/vscode/blob/master/src/vs/workbench/browser/parts/editor/editorPart.ts#L662

I added activeEditorGroupIndex and activeEditorGroupLast. The former one allows to find out if the first group is active by checking for activeEditorGroupIndex == 0

Just make sure to mention in the release notes that the index starts from 0.

Hm good point, maybe I should change that.

I pushed a change to start activeEditorGroupIndex with 1.

Yeah makes sense. Change looks good, so I will not re-verify this.
Thanks


Create a Enum RPC message

Currently Enums are treated as a number for the gRPC communication which is fine. But it will be good to create atleast the "Enum" from proto file as a "Enum" typedef during the scripting. This will be helpful for the non gRPC communication operations.

Currently, I am creating a Enum typedef based on proto after scripting.

I think you should allow the user to choose either a ring or an enum.  Although an enum is not always possible, it is much better than a ring.

Listing down some of Enum features as defined in Proto3 and if they can be supported with LabVIEW Ring or Enum

Enum features as defined in proto 3
LabVIEW Ring
LabVIEW Enum

must contain a constant that maps to Zero as its value
Yes
Yes

use enum type declared in one message as the type of a field in a different message
Yes
Yes

Enum value must be in the range of 32-bit integer
Yes
No

Non sequential values
No (can workaround?)
No (can workaround?)

Aliases - Same value to different enum constants
No
No

Reserved Values - The proto buff compiler will complain if any future users try to use the identifiers specified as Reserved
No
No

We're planning to implement this feature using LabVIEW Enums. This means that users will have to call a look-up function get the numeric value for an enum item.

This means that users will have to call a look-up function get the numeric value for an enum item.

Sorry, what does this mean?   LabVIEW Enums are already numbers, so what is this look-up?

Ah, so it would only be if teh User actually needed the numeric value that they would need to use this look up.

Support for Enum type is now present in Version <IP_ADDRESS> release


.patch file to build it for other boards

Hey, @meenchen
For person_detection example, the "openmv_person_detection.patch" file handles everything for OpenMV H7 only.
For example, for the section:
diff --git a/src/omv/boards/OPENMV4/omv_boardconfig.h b/src/omv/boards/OPENMV4/omv_boardconfig.h
index 412de472..f7da2c03 100644
--- a/src/omv/boards/OPENMV4/omv_boardconfig.h
+++ b/src/omv/boards/OPENMV4/omv_boardconfig.h
@@ -150,16 +150,18 @@
 // The maximum available fb_alloc memory = FB_ALLOC_SIZE + FB_SIZE - (w*h*bpp).
 #define OMV_FFS_MEMORY          DTCM        // Flash filesystem cache memory
 #define OMV_MAIN_MEMORY         SRAM1       // data, bss and heap memory
+#define OMV_MAIN_MEMORY2        SRAM5       // my memory
 #define OMV_STACK_MEMORY        ITCM        // stack memory
 #define OMV_DMA_MEMORY          SRAM2       // DMA buffers memory.
 #define OMV_FB_MEMORY           AXI_SRAM    // Framebuffer, fb_alloc
 #define OMV_JPEG_MEMORY         SRAM3       // JPEG buffer memory.
 #define OMV_VOSPI_MEMORY        SRAM4       // VoSPI buffer memory.

-#define OMV_FB_SIZE             (400K)      // FB memory: header + VGA/GS image
-#define OMV_FB_ALLOC_SIZE       (100K)      // minimum fb alloc size
+#define OMV_FB_SIZE             (100K)      // defualt: 400 FB memory: header + VGA/GS image
+#define OMV_FB_ALLOC_SIZE       (50K)      // default: 100 minimum fb alloc size
 #define OMV_STACK_SIZE          (64K)
-#define OMV_HEAP_SIZE           (236K)
+#define OMV_HEAP_SIZE           (136K)
+// #define OMV_HEAP_SIZE           (236K)

 #define OMV_LINE_BUF_SIZE       (3 * 1024)  // Image line buffer round(640 * 2BPP * 2 buffers).
 #define OMV_MSC_BUF_SIZE        (2K)        // USB MSC bot data

This is the copied version of OPENMV4. That is why changing the "OPENMV4" parts with "OPENMV4P" is not enough to successfully build it. Further changes required since the "OPENMV4P/omv_boardconfig.h" is completely different than "OPENMV4/omv_boardconfig.h".
Potential changes are tough to guess, so it would be excellent to have some information about how to modify this .patch file. Besides, if there exists any further changes needed, I would be appreciated if you can also mention them.
Thanks in advance.

Hi @senceryucel,
That section defines the memory allocation of the openmv cam. Since our demo does not require high resolution so we can reduce the size of framebuffer, but I am not sure if this statement holds for the OPENMV4P.
Anyway, I create a new patch for OPEMV4P https://github.com/mit-han-lab/tinyengine/pull/74/files#diff-84b614231826accb212d46fb3b52e41f72a7a2a6767bd30b964f1684c569027d. I am able to compile with TARGET=OPENMV4P after applying that patch. Unfortunately, I don't have that board so I cannot test it out.
Feel free to give it a try and let me know if there is any other issues.

Hi, @meenchen
Thanks for all you have done, really appreciate it.
I've tried it with the patch you have created. It produced some other errors, that can be seen below:
src/winc.c: In function 'wifi_callback_sta':
src/winc.c:315:21: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
                     ipconfig.u32StaticIP = *((uint32_t*)ifconfig.ip_addr);
                     ^~~~~~~~
src/winc.c:316:21: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
                     ipconfig.u32SubnetMask = *((uint32_t*)ifconfig.subnet_addr);
                     ^~~~~~~~
src/winc.c:317:21: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
                     ipconfig.u32Gateway = *((uint32_t*)ifconfig.gateway_addr);
                     ^~~~~~~~
src/winc.c:318:21: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
                     ipconfig.u32DNS = *((uint32_t*)ifconfig.dns_addr);
                     ^~~~~~~~
CC src/m2m_ssl.c
CC src/flexible_flash.c
CC src/nmi2c.c
CC src/m2m_crypto.c
CC src/nmuart.c
cc1: all warnings being treated as errors
Makefile:19: recipe for target '/home/senceryucel/Desktop/tinyengine/examples/openmv_person_detection/openmv/src/build/drivers/winc1500/src/winc.o' failed
make[1]: *** [/home/senceryucel/Desktop/tinyengine/examples/openmv_person_detection/openmv/src/build/drivers/winc1500/src/winc.o] Error 1
make[1]: Leaving directory '/home/senceryucel/Desktop/tinyengine/examples/openmv_person_detection/openmv/src/drivers/winc1500'
omv/ports/stm32/omv_portconfig.mk:593: recipe for target 'FIRMWARE_OBJS' failed
make: *** [FIRMWARE_OBJS] Error 2
make: Leaving directory '/home/senceryucel/Desktop/tinyengine/examples/openmv_person_detection/openmv/src'

Hi @senceryucel,
Did you apply openmv_person_detection.patch before the new patch? The new patch is based on the old patch, so you may encounter some errors if only applying the new patch.
Note: This error should be fixed by removing the -Werror from -CFLAGS in src/omv/ports/stm32/omv_portconfig.mk(inside the old patch: https://github.com/mit-han-lab/tinyengine/blob/d412e116593a2b26c8504ccfaadd727a770a4219/examples/openmv_person_detection/openmv_person_detection.patch#L534)

Thank you so much, it worked out. I will probably have millions of follow up questions but it seems like the firmware part is over.


Fix Vagrantfile after adding test suite.

The install_salt.sh script was moved, so use the new name,
and filter out the 'test' node when making the list of VMs.

This change is

Sadly I don't think it's feasible to test the Vagrant configuration on Travis :(

I'd appreciate if someone could review this - it would make testing a lot easier, especially when doing heavy rebasing.

Tested locally and it looks good to me.
@bors-servo r+

:pushpin: Commit 6ec2ee7 has been approved by edunham

:hourglass: Testing commit 6ec2ee7 with merge ec98281...

:sunny: Test successful - travis


enh(core): Raise KeyError from projectlevel

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 80.32%. Comparing base (81944ee) to head (235b06c).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #52      +/-   ##
==========================================
+ Coverage   80.15%   80.32%   +0.17%
==========================================
  Files           9        9
  Lines         796      803       +7
  Branches      220      223       +3
==========================================
+ Hits          638      645       +7
  Misses        130      130
  Partials       28       28

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


game rules

Current coverage is 53.75% (diff: 100%)

Merging #38 into master will not change coverage

@@             master        #38   diff @@
==========================================
  Files             9          9
  Lines           333        333
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            179        179
  Misses          154        154
  Partials          0          0

Powered by Codecov. Last update 7285432...65de827


Complete copy edit pass

@rotycenh

OPS Build status updates of commit d526f8d:
:clock10: Pending: waiting for processors (6 builds ahead of you)
:warning: OPS Build is busy, click here to report any potential performance downgrade issues, or you could view OPS Portal for trend of build queue length.

 Details: Could not find a part of the path 'T:\0lf5\bread\toc.json'.

toc.json

[Warning] Error happen when converting toc.json to Pdf. Details: Could not find file 'T:\0lf5\toc.json'.

building-blocks/extending-templates/toc.json

[Warning] Error happen when converting building-blocks/extending-templates/toc.json to Pdf. Details: Could not find a part of the path 'T:\0lf5\building-blocks\extending-templates\toc.json'.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Fix deploy on tag

Update workflow:

remove prod deploy on push to main
add prod deploy on publish release

Fix bug on push tag but need to revisit when triggering deploy from release event.


net/http: using Transport.IdleConnTimeout may lead to goroutine leak in an edge case

What version of Go are you using (go version)?
1.10.2
Does this issue reproduce with the latest release?
Yes.
What operating system and processor architecture are you using (go env)?
GOOS="linux"
GOARCH="amd64"

What did you do?
I ran an HTTP short-polling client and the polling timeout value was equal to the IdleConnTimeout of the used http.Transport.
package main

import (
	"fmt"
	"io/ioutil"
	"log"
	"net/http"
	"runtime"
	"time"
)

func main() {
	// IdleConnTimeout close to the polling timeout
	pollTO := 30 * time.Millisecond
	connTO := pollTO

	// avoid the leak by not setting IdleConnTimeout:
	// connTO = 0
	// or by using a value different from the poll timeout:
	// connTO = pollTO + time.Millisecond

	// start a trivial server, it can be in a separate process:
	go func() {
		if err := http.ListenAndServe(":8080", http.HandlerFunc(
			func(w http.ResponseWriter, _ *http.Request) {
				w.Write([]byte("Hello, world!"))
			},
		)); err != nil {
			log.Fatalln(err)
		}
	}()

	// create a client with the IdleConnTimeout configured:
	c := &http.Client{
		Transport: &http.Transport{
			IdleConnTimeout: connTO,
		},
	}

	// run periodic requests, count the requests, goroutines and the heap in use:
	var (
		m runtime.MemStats
		reqs int
	)

	for {
		func() {
			req, err := http.NewRequest("GET", "http://localhost:8080", nil)
			if err != nil {
				log.Fatalln(err)
			}

			rsp, err := c.Do(req)
			if err != nil {
				log.Fatalln(err)
			}

			defer rsp.Body.Close()
			if _, err := ioutil.ReadAll(rsp.Body); err != nil {
				log.Fatalln(err)
			}

			reqs++
			runtime.ReadMemStats(&m)
			fmt.Print("\r",
				time.Now().Format("15:04:05"),
				", requests: ", reqs,
				", goroutines: ", runtime.NumGoroutine(),
				", heap in use: ", m.HeapInuse,
			)

			time.Sleep(pollTO)
		}()
	}
}

What did you expect to see?
I expected the existing connection from the pool either reused or not, without other issues (even if having the same timeouts for the short-polling and the IdleConnTimeout is quite an edge case).
What did you see instead?
I saw a steadily growing number of goroutines and memory usage.

CC @bradfitz

A belated thanks for the fun bug report. Sorry for missing this earlier.
I'm able to reproduce it and have started debugging. It's not immediately obvious what's happening, but I'll keep looking.

One problem is the rsp.Body.Close() shouldn't be deferred since we don't ever exit the block. That doesn't fix the underlying issue.

@fraenkel, no that's not the issue. It is in a func scope above, so the defer does work. But the bug also repros with an immediate Body.Close before the sleep.
I've found that it's related to the Transport's idle connection management, but then I had to do something else. I'll look at it again today.

Each increase of 3 goroutines (the Transport persistConn's readLoop+writeLoop + the server side handling it) happens right after each time this "not idle" case sometimes fires:
func (pc *persistConn) closeConnIfStillIdle() {
// ....
        if _, ok := t.idleLRU.m[pc]; !ok {
                // Not idle.
                return
        }

So whatever is removing it from that map isn't also closing the conn, which would break the readLoop's Peek which would make that goroutine return, closing the writeLoop, and the server goroutine would end when the conn closed also.

The cases which fail always are connections pulled from getIdleConn.

So from what I see, we call getIdleConn, and then see there is an idleTimer associated with it so its removed from the LRU but not returned. Then the closeConnIfStillIdle is invoked and decides its not idle, therefore we lose the pconn and its never closed.

Yeah, that check just seems wrong. Sending a CL with explanation.


Code refactoring

Use xml.etree as ".sublime-snippet" parser
add "escape comma" feature
when find files, skip some "hidden" directories like .git, .svn, and node_modules.
code refactoring for more pythonic taste (feel sorry for this, origin coding style just work too.)

Anything that adds pythonic taste to the style is fine by me :)

Thanks for the commit!


【BUG】无法从“markupsafe”导入名称“soft_unicode”

Python 3.10.5 (tags/v3.10.5:f377153, Jun  6 2022, 16:14:13) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

from pyg2plot import Plot
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\pyg2plot_init_.py", line 9, in
from pyg2plot.plot import Plot # noqa
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\pyg2plot\plot.py", line 9, in
from jinja2 import Environment
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\jinja2_init_.py", line 12, in
from .environment import Environment
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\jinja2\environment.py", line 25, in
from .defaults import BLOCK_END_STRING
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\jinja2\defaults.py", line 3, in
from .filters import FILTERS as DEFAULT_FILTERS  # noqa: F401
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\jinja2\filters.py", line 13, in
from markupsafe import soft_unicode
ImportError: cannot import name 'soft_unicode' from 'markupsafe' (C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\markupsafe_init_.py)

import pyg2plot
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\pyg2plot_init_.py", line 9, in
from pyg2plot.plot import Plot # noqa
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\pyg2plot\plot.py", line 9, in
from jinja2 import Environment
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\jinja2_init_.py", line 12, in
from .environment import Environment
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\jinja2\environment.py", line 25, in
from .defaults import BLOCK_END_STRING
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\jinja2\defaults.py", line 3, in
from .filters import FILTERS as DEFAULT_FILTERS  # noqa: F401
File "C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\jinja2\filters.py", line 13, in
from markupsafe import soft_unicode
ImportError: cannot import name 'soft_unicode' from 'markupsafe' (C:\Users\梦云之家\AppData\Roaming\Python\Python310\site-packages\markupsafe_init_.py)

I seem to have figured it out. I suggest you change the version of Jinja2, for example, 3.0.3.

from markupsafe import soft_str as soft_unicode

2年没更新了，......


build -w does not clear errors (was: compiler log unterminated)

1 rescript build -w
2 introduce error
3 fix error
end up with:
% cat lib/bs/.compiler.log
#Start(1657636470928)

This shows up in issues not cleared in the editor extension.
FYI @zth

CC @zth  could you take a look -- this looks like an issue with the current extension.

CC @zth could you take a look -- this looks like an issue with the current extension.

On it.

I draw the same conclusions as the initial post - the compiler log is not terminated for some reason, so the extension does not clear errors. I also tested with ReScript 9.1.4 where I could not reproduce the issue. So I don't think it's in the extension itself.

Looks like both the compiler and the extension have changed behaviour in their current versions.
Was wondering whether the extension should be resilient to the compiler not printing the log terminator, just as the previous version of the extension seems to be doing. Though the normal situation where that would happen is when the compiler is in the process of building, and has not finished yet. I guess this is possible as the compiler log would be written incrementally to disk and the watcher could pick up an incomplete change.
So perhaps making the extension more robust w.r.t. unterminated output would also make it wrong.

So: isolated a more basic wrong behaviour, without using a watcher: rescript clean then rescript then rescript again gives a terminated log on first build, but unterminated on second build.

That's easy to add to a test too, which would be much more complicated if a watcher were involved.

Taking a less rushed look at ninja now.

Actually all of the above.
Fixing the missing closing log removes printing of cycles done in https://github.com/rescript-lang/rescript-compiler/pull/5393


restore csv to exd and  import it

How can I restore csv to exd and  import it,i want to translate the text for some other country

This project can't support this. You should think about building a custom solution instead.


Feature request: bundle

Currently this plug-in ships in the form of a few handfuls of files, bundled as systemjs modules. It would be helpful if a single bundle were also provided.
The idea here is to enable development workflows, demos, plunkers, etc. with a modest number of roundtrips to grab the needed tooling. Such a bundle would mean just one round-trip for plugin-typescript, and one for typescript itself (which already ships a bundle that System can consume).
Although the context I have in mind is for Angular 2 applications, I believe it is equally applicable to other uses of this plug-in.

Thanks for raising this, I have actually wanted to do this for a while but was blocked by https://github.com/Microsoft/TypeScript/issues/6319 which is now resolved. I have just released 5.2.0 which distributes the plugin as a single file bundled with rollup.

Thank you!


feat(agent): Integrate Phoenix daemon

copilot:all

Current dependencies on/for this PR:

main

PR #4114

PR #4176   👈

This comment was auto-generated by Graphite.


on Qnap ts-251 cannot open the docker

Current Behavior
hi,
when I run the container I cannot see anymore the web link to start jdownloader.
any help would be really appreciated .
thanks
luca
Expected Behavior
No response
Steps To Reproduce
No response
Environment

OS:
OS version:
CPU:
Docker version:
Device model:
Browser/OS:

Container creation
from explore tab on my nas
Container log
│ Application:           JDownloader 2                                 │
    │ Application Version:   n/a                                           │
    │ Docker Image Version:  23.11.2                                       │
    │ Docker Image Platform: linux/amd64                                   │
    │                                                                      │
    ╰――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――╯
[cont-init   ] 89-info.sh: terminated successfully.
[cont-init   ] all container initialization scripts executed.
[init        ] giving control to process supervisor.
[supervisor  ] loading services...
[supervisor  ] loading service 'default'...
[supervisor  ] loading service 'app'...
[supervisor  ] loading service 'gui'...
[supervisor  ] loading service 'certsmonitor'...
[supervisor  ] service 'certsmonitor' is disabled.
[supervisor  ] loading service 'nginx'...
[supervisor  ] loading service 'xvnc'...
[supervisor  ] loading service 'openbox'...
[supervisor  ] loading service 'logmonitor'...
[supervisor  ] service 'logmonitor' is disabled.
[supervisor  ] loading service 'logrotate'...
[supervisor  ] all services loaded.
[supervisor  ] starting services...
[supervisor  ] starting service 'xvnc'...
[xvnc        ] Xvnc TigerVNC 1.13.1 - built Nov 17 2023 22:53:44
[xvnc        ] Copyright (C) 1999-2022 TigerVNC Team and many others (see README.rst)
[xvnc        ] See https://www.tigervnc.org for information on TigerVNC.
[xvnc        ] Underlying X server release 12014000
[xvnc        ] Sun Nov 26 16:47:38 2023
[xvnc        ]  vncext:      VNC extension running!
[xvnc        ]  vncext:      Listening for VNC connections on /tmp/vnc.sock (mode 0660)
[xvnc        ]  vncext:      Listening for VNC connections on all interface(s), port 5900
[xvnc        ]  vncext:      created VNC server for screen 0
[supervisor  ] starting service 'nginx'...
[nginx       ] Listening for HTTP connections on port 5800.
[supervisor  ] starting service 'openbox'...
[supervisor  ] starting service 'app'...
[supervisor  ] all services started.
[xvnc        ] Sun Nov 26 16:53:52 2023
[xvnc        ]  Connections: accepted: <IP_ADDRESS>::54717
[xvnc        ]  VNCSConnST:  closing <IP_ADDRESS>::54717: reading version failed: not an RFB
[xvnc        ]               client?
[xvnc        ]  EncodeManager: Framebuffer updates: 0
[xvnc        ]  EncodeManager:   Total: 0 rects, 0 pixels
[xvnc        ]  EncodeManager:          0 B (1:-nan ratio)
[xvnc        ]  Connections: closed: <IP_ADDRESS>::54717
[xvnc        ]  ComparingUpdateTracker: 0 pixels in / 0 pixels out
[xvnc        ]  ComparingUpdateTracker: (1:-nan ratio)
[xvnc        ]  Connections: accepted: <IP_ADDRESS>::54718
[xvnc        ]  VNCSConnST:  closing <IP_ADDRESS>::54718: reading version failed: not an RFB
[xvnc        ]               client?
[xvnc        ]  EncodeManager: Framebuffer updates: 0
[xvnc        ]  EncodeManager:   Total: 0 rects, 0 pixels
[xvnc        ]  EncodeManager:          0 B (1:-nan ratio)
[xvnc        ]  Connections: closed: <IP_ADDRESS>::54718
[xvnc        ]  ComparingUpdateTracker: 0 pixels in / 0 pixels out
[xvnc        ]  ComparingUpdateTracker: (1:-nan ratio)
[xvnc        ]  Connections: accepted: <IP_ADDRESS>::54719
[xvnc        ]  VNCSConnST:  closing <IP_ADDRESS>::54719: reading version failed: not an RFB
[xvnc        ]               client?
[xvnc        ]  EncodeManager: Framebuffer updates: 0
[xvnc        ]  EncodeManager:   Total: 0 rects, 0 pixels
[xvnc        ]  EncodeManager:          0 B (1:-nan ratio)
[xvnc        ]  Connections: closed: <IP_ADDRESS>::54719
[xvnc        ]  ComparingUpdateTracker: 0 pixels in / 0 pixels out
[xvnc        ]  ComparingUpdateTracker: (1:-nan ratio)
[xvnc        ] Sun Nov 26 16:54:23 2023
[xvnc        ]  Connections: accepted: <IP_ADDRESS>::54752
[xvnc        ]  VNCSConnST:  closing <IP_ADDRESS>::54752: reading version failed: not an RFB
[xvnc        ]               client?
[xvnc        ]  EncodeManager: Framebuffer updates: 0
[xvnc        ]  EncodeManager:   Total: 0 rects, 0 pixels
[xvnc        ]  EncodeManager:          0 B (1:-nan ratio)
[xvnc        ]  Connections: closed: <IP_ADDRESS>::54752
[xvnc        ]  ComparingUpdateTracker: 0 pixels in / 0 pixels out
[xvnc        ]  ComparingUpdateTracker: (1:-nan ratio)
[xvnc        ]  Connections: accepted: <IP_ADDRESS>::54753
[xvnc        ]  VNCSConnST:  closing <IP_ADDRESS>::54753: reading version failed: not an RFB
[xvnc        ]               client?
[xvnc        ]  EncodeManager: Framebuffer updates: 0
[xvnc        ]  EncodeManager:   Total: 0 rects, 0 pixels
[xvnc        ]  EncodeManager:          0 B (1:-nan ratio)
[xvnc        ]  Connections: closed: <IP_ADDRESS>::54753
[xvnc        ]  ComparingUpdateTracker: 0 pixels in / 0 pixels out
[xvnc        ]  ComparingUpdateTracker: (1:-nan ratio)
[xvnc        ]  Connections: blacklisted: <IP_ADDRESS>
[supervisor  ] SIGTERM received, shutting down...
[supervisor  ] stopping service 'app'...
[supervisor  ] stopping service 'openbox'...
[supervisor  ] service 'openbox' exited (with status 0).
[supervisor  ] stopping service 'nginx'...
[supervisor  ] service 'nginx' exited (with status 0).
[supervisor  ] service 'app' exited (with status 127).
[supervisor  ] stopping service 'xvnc'...
[xvnc        ] Sun Nov 26 16:56:16 2023
[xvnc        ]  ComparingUpdateTracker: 0 pixels in / 0 pixels out
[xvnc        ]  ComparingUpdateTracker: (1:-nan ratio)
[supervisor  ] service 'xvnc' exited (with status 0).
[finish      ] executing container finish scripts...
[finish      ] all container finish scripts executed.

Container inspect
No response
Anything else?
I don't know

Looks like an QNAP related issue ?
Note that the container can always be accessed via the URL http://XX.XX.XX.XX:YYYY, where XX.XX.XX.XX is the IP address of your NAS and YYYY is the port you mapped to 5800.

Hi,
I received an error message:
Safari cannot open the page because the address is not valid?
What can I do?
Thanks
Luca
Il 27 nov 2023, 14:15 +0100, jlesage/docker-jdownloader-2 @.***>, ha scritto:

5800

can I send the log or something else to understand what is the problem?
thanks

Make sure the container is running (in the logs you provided, it has been stopped).
Provide the output of docker inspect <container name>.
Provide the URL you used to connect to the container.

I have tried also with the container running.
this is the docker inspect:
{
AppArmorProfile:"docker-default"
Args:[]
Config:{...}
Created:"2023-11-26T16:47:32.85098696Z"
Driver:"overlay2"
GraphDriver:{...}
HostConfig:{...}
HostnamePath:"/share/CACHEDEV1_DATA/Container/container-station-data/lib/docker/containers/254ac4fe6451d30e8702d854dede71f45cc4c81d692a7b6d0d8860b590de1f78/hostname"
HostsPath:"/share/CACHEDEV1_DATA/Container/container-station-data/lib/docker/containers/254ac4fe6451d30e8702d854dede71f45cc4c81d692a7b6d0d8860b590de1f78/hosts"
Id:"254ac4fe6451d30e8702d854dede71f45cc4c81d692a7b6d0d8860b590de1f78"
Image:"sha256:d544df040e95e5f0c4af3a962d9c15d0b2a9499fe29fb41a8370e71b45568bc3"
LogPath:"/share/CACHEDEV1_DATA/Container/container-station-data/lib/docker/containers/254ac4fe6451d30e8702d854dede71f45cc4c81d692a7b6d0d8860b590de1f78/254ac4fe6451d30e8702d854dede71f45cc4c81d692a7b6d0d8860b590de1f78-json.log"
MountLabel:""
Mounts:[...]
Name:"/jdownloader-2-1"
NetworkSettings:{...}
Path:"/init"
Platform:"linux"
ProcessLabel:""
ResolvConfPath:"/share/CACHEDEV1_DATA/Container/container-station-data/lib/docker/containers/254ac4fe6451d30e8702d854dede71f45cc4c81d692a7b6d0d8860b590de1f78/resolv.conf"
RestartCount:0
State:{...}
}
the url is http://<IP_ADDRESS>:5800 or 5900.

The output of docker inspect is incomplet ?

please help me!!!

but if the output inspector is not completed is there a way to reinstall in the proper way?
How Can I mapped the port?
I'm really sorry to bother you but I'm a beginner.
can you guide me to fix the container?
thanks for your time

I don't have a QNAP so it's hard to give the exact steps.  But in Container Station, in advanced settings of the container, you should have a "Network" tab where you can define the mapping.

thi

What do you have when your click the +2 beside the "Port forwarding" label ?  This will probably show you what port is forwarded to 5800.

Ok, so port 5800 to mapped to 32801.  This means that you can access the container via http://<IP_ADDRESS>:32801.

it works!!!!
thank you soooooo much!!!

No problem!

Hi,
do you know how to change the output of downloader and put the downloads folder on the Qnap?
I know how to change but I cannot find the structure of my Qnap.

Normally you have to map a folder on the QNAP to /output inside the container.
This seems to be done under Advanced settings -> Storage: you should have an option "Bind Mount Host Path".
This might help: https://www.qnap.com/en/how-to/tutorial/article/how-to-use-container-station-3

thank you so much!!! again!!!


Local Path For ThumbUrl

Hi
Can I use Local Path Like "C:\A.jpg" For ThumbUrl ?
Thanks.

No. The url must be accessible through the internet.


vim bindings: text object i] not working

in the codemirror vim bindings demo putting the cursor on BUFSIZ and hitting di] has no effect.
tested on Win7, FireFox

@heppe Let me know if I should stop mentioning you on every Vim PR, but here's another one I'd like to have a Vim user review. Thanks!

(Err, this is not a PR, sorry about that. I shouldn't be triaging bugs when it's late.)
We don't currently have an active maintainer for the Vim mode, but I'll leave this open and hopefully someone will pick it up eventually.

This is likely related to keyboard layout. di] works with qwerty

this works for me too, I tested on OSX and Linux, and with chrome and firefox. I think this is not a bug with codemirror


Amend licensing details

Can we please remove the ambiguity here? Using "such as" leaves the impression that there may be other ways to license this, and there are not. The only thing missing is the equivalent edu and gov offers. Also should be "feature is" or "features are".
Required licenses and permissions
Currently, the information barrier features is in private preview. When these features are generally available, they'll be included in subscriptions, such as:
Microsoft 365 E5
Office 365 E5
Office 365 Advanced Compliance
Microsoft 365 E5 Compliance
I suggest changing to:
"Currently, the information barrier features are in private preview. When these features are generally available, they'll be included in the following subscritions:
Microsoft 365 E5/A5/G5
Office 365 E5/A5/G5
Office 365 Advanced Compliance
Microsoft 365 E5/A5/G5 Compliance"
Thanks!
Mark

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

ID: 85a288bc-9192-8c65-4ce9-b5abb260206e
Version Independent ID: 1f953ea6-e6e5-5e71-d541-3962637f25f9
Content: Information barriers in Microsoft Teams preview
Content Source: Teams/information-barriers-in-teams.md
Service: msteams
GitHub Login: @LolaJacobsen
Microsoft Alias: lolaj

@MarkBratton - Thank you for submitting this feedback.
I will get this over to for investigation. Thank you for reporting and making the docs better. Much appreciated.

@officedocsbot assign @scanum

@MarkBratton Thanks for pointing this out and helping improve MS Docs.  I'll have the changes approved and implemented soonest.

@lindspea - I merged the PR.


Add ALF

We need to add ALF into the CI image in order to run some test that depends on ALF, e.g. network, training etc.

alf is already installed in Dockerfile?

alf is already installed in Dockerfile?
I see. Somehow there are some issues when running alf related test. Will do more investigations.


Address iotools test failures

[x] Closes #1217
[x] I am familiar with the contributing guidelines
~Tests added~
~Updates entries to docs/sphinx/source/api.rst for API changes.~
~Adds description and name entries in the appropriate "what's new" file in docs/sphinx/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).~
~New code is fully documented. Includes numpydoc compliant docstrings, examples, and comments where necessary.~
[x] Pull request is nearly complete and ready for detailed review.
[x] Maintainer: Appropriate GitHub Labels and Milestone are assigned to the Pull Request and linked Issue.

This replaces flaky with xfail(strict=True) in the hopes that the SRML website issue will get resolved without us having to change any code.  Also addresses the PVGIS issue.

SRML should be working again.

thanks @kanderso-nrel

Thanks for the heads up @wholmgren, tests still pass after reverting the SRML changes.  FYI I'm traveling the next several days and won't be very responsive.


Review ObjectSerializer proposal for JavaScript

https://github.com/Azure/azure-sdk/issues/1454 tracks the proposal for ObjectSerializer from the .Net perspective.
Java has something similar.
We need to review the discussion there to see if Azure Core in the JavaScript land needs any counterparts to ObjectSerializer or not.
One upcoming use case for this would be the Avro serializers for Azure Event Hubs.
Another related aspect to this is our very on DataTransformer discussed in #1742

Related issue in Python: https://github.com/Azure/azure-sdk-for-python/issues/12557

No more planned work for now. Closing.


Add a CHANGELOG

Is your feature request related to a problem? Please describe.
There is no easy and centralised way for checking the changes being introduced in a new release. Sometimes the API is broken and there needs to be deprecation warnings issued at least a few minor releases ahead.
Describe the solution you'd like
A version-controlled CHANGELOG included with the repository (as a markdown file) which gets updated incrementally during all the PRs that lead up to a particular release. It gets finalised in the release/x.y.z PR before merging into master. Some points:

Chronologically reverse
Each contribution/feature should be linked to corresponding PR
Each release date should also be included
Changes should be grouped by types:

Added for new features.
Changed for changes in existing functionality.
Deprecated for soon-to-be removed features.
Removed for now removed features.
Fixed for any bug fixes.
Security in case of vulnerabilities.

After new release, create an Unreleased section at the top of the changelog which then gets updated both during PRs by individual contributors as well as when the team decides to work on and implement a certain future. This allows for a simple Coming soon... as well as makes it easy to prepare the final CHANGELOG during the release PR. More details here.

Describe alternatives you've considered
Discussions on Slack/Rocket.chat, fragmented notes in various PRs, Issues and meeting docs, some minimal points in the Github Releases section. None of this has archival and reference usage and are also difficult to maintain, aggregate and version control.
Additional context
Related: As discussed in the comments on PR #87 we need a well-structured commit message for the merge commits when we merge a branch into dev during the usual development cycle. The expected template for this is as below:

Short 1-line (50 chars) description of key feature/bug-fix with associated issue numbers if any (can go in the commit heading in Github PR merge UI)
(The part below goes in the merge commit message details)
Contributors: Full name (and not Github handle) of all contributors to this PR, irrespective of who made the code commits.
Longer multi-line description, typically in the form of a detailed list of various features implemented with any additional insights/remarks on the implementations etc.

It should be possible to implement this through an automated Github bot that notifies on every PR the requirements of updated tests, updated docs, changelog, commit message, CLA etc. Either enforce this through PR templates or through a github bot.

Related discussion on automatic Changelog and Release Notes generator: https://github.com/unitaryfund/mitiq/issues/565


Extraneous characters expected in Path

When I compare the output and expected inputs for CoreSync, the CoreSync system is including extraneous characters in the path, compared to other tools.
2015-08-25 08:25:34.363 coreSyncTest[27830:1154852] CoreSync Changes: [
{
"op" : "replace",
"path" : "/Appetizers/[1]/title",
"value" : "Crispy Cheese Ravioli"
}
]
2015-08-25 08:25:34.363 coreSyncTest[27830:1154852] &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
2015-08-25 08:25:34.364 coreSyncTest[27830:1154852] JSONTools Changes (https://github.com/grgcombs/JSONTools):
[
{
"op" : "replace",
"path" : "/Appetizers/1/title",
"value" : "Extra Crispy Cheese Ravioli"
}
]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
2015-08-25 08:25:34.366 coreSyncTest[27830:1154852] Java Backend Changes: (Unknown jSONPatch library)
[
{"op":"replace",
"path":"/Appetizers/1/description",
"value":"Pasta sauce "}
]

Ah yes, this is because CoreSync encodes array indexes in paths slightly differently than the JSONPatch spec does.
Instead of encoding the path as Appetizers/1/title, it wraps the index in brackets (i.e., Appetizers/[1]/title).
This partially by design, because an integer value can also be a key (i.e., "1"), so the brackets differentiate a string key from an array index.
However, I'm open to changing this for two reasons. Technically "[1]" can also be a key, and more importantly, it is a departure from JSONPatch. Let me look into this a bit.

@roberte3: Fixed, thanks!


Bulk-add existing users to an org

@hahn-kev please refine/approve:
I would generally be inclined to make admins go to an org and then add members to it (#779), just like we do with projects (i.e. an Org -> Member workflow). However, initially, Admins would probably really appreciate being able to add members in bulk e.g. for this sort of thing:

So, I think we need a bulk User -> Org workflow on the admin dashboard. I think @rmunn's design for bulk-delete looks just right for this. But with #776, I'm guessing we won't really have space for it on smaller screen sizes, so I think we might just hide it in that case and I think that's fine, because there will be at least one other option for setting org membership (#779).

Another idea of how we could ease this is that when an org admin adds a project to their org, they could automatically make all project members a member of the org also.

I think I agree that the bulk-add users feature will be best initiated from the org page, rather than the admin dashboard. I'm trying to figure out what the UX would look like of initiating a bulk-add-users-to-org flow from the admin dashboard, and I can't see it. We select a group users, then click a "Bulk Add to Organization" button, then select the org from a dropdown? Feels a little weird.
Doing it from the org page, I can see it working like this:

On org page, admins can see a bulk-add button.
When they click it, they get a modal with a UserTable component.

Alternately, they could get taken to the admin dashboard with a &bulkAddUsersToOrg=GUID query param, but I think UserTable in a modal, not leaving the org page, makes a lot more sense

UserTable already has filters built in, so you can search for everyone ending in example.org
"Select All" checkbox in table header, of course
Once one or more users are selected, click the Done button

One UI design question I haven't figured out yet is what if you do a filter, select some users, then do a different filter? Should the selected users be cleared, or should they be included even though they're not visible right now? I could see arguments both ways, e.g. you want to add everyone with an example.org or test.com email address. (Not writing down the actual domains I mean here, just to be cautious). Two passes through the bulk-add tool isn't too bad, but it might be nicer to be able to do a single pass. But it might also be confusing. Thoughts?

After talking about it with the team, lets just do the same thing we did for project bulk add. Have a text box where users can paste in a list of email addresses.


Botkit on The Changelog!

Howdy from The Changelog!
We'd love to have you on the show sometime soon. Who would be best person to join us to talk about Botkit and all the cool stuff you're up to?
(If you haven't heard of The Changelog, it's a weekly conversation that gets to the heart of open source technologies and the people who create them.)
Please email<EMAIL_ADDRESS>to coordinate. Looking forward to talking to y'all!

Hello - you can contact the howdy team directly:
<EMAIL_ADDRESS>


Error in demo code (table editing)

Hi there. Great plugin!
I found an error in demo page: https://quasar-easy-tables.web.app/editing
Please replace 'rowData' to formData insecond example (editable form on button click):

@uniconstructor oh nice catch!!!
I really have to improve the way I'm rendering the example source code a bit. : S
Thanks for reporting, I'll get to this soonish 😛

@uniconstructor I completely fixed up the docs!! See #16

@uniconstructor I completely fixed up the docs!! See #16


Add support for Redis Enterprise.

Swagger PR was merged: https://github.com/Azure/azure-rest-api-specs/pull/11360
Swagger: https://github.com/Azure/azure-rest-api-specs/tree/master/specification/redisenterprise/resource-manager

/azp run prepare-pipelines

I anyone able to take a look? Thanks.

@greenms Please ensure all the items in this list are cheeked: https://github.com/Azure/adx-documentation-pr/blob/master/engineering/adx_netsdk_process.md#appendix-a-pr-review-checklist
For example, there is no swagger link in here.

@bquantump I believe all of the items in the list are checked.  Please let me know if you discover otherwise.

@greenms Is this a brand new service? That is, this is the first release of Reddis Enterprise?

@bquantump Yes, this is the first release of Redis Enterprise.  Our public preview started 10/31/2020.

/azp run net - redis - ci

/azp run net - reddisenterprise - ci

/azp run net - redisenterprise - ci

RedisEnterpriseCache
/azp run net - RedisEnterpriseCach - ci

@greenms since this a new service, please add it to this file: https://github.com/Azure/azure-sdk-for-net/blob/master/eng/pipelines/mgmt.yml

@weshaggard @mitchdenny
https://dev.azure.com/azure-sdk/public/_build/results?buildId=615894&view=results
Why is this timing out? Can we bypass the timeout for now?

/azp run net - mgmt - ci

@bquantump it doesn't look like a timeout it looks like a unique failure on when the retry. You it a limitation in how Devops cannot publish the same artifact more then once. To workaround this I've retriggered the entire pipeline. Hopefully that will get this unblocked.
@bquantump given there are still a number of new track 1 mgmt libraries coming in that need to be added to the mgmt.yml file, you could add information about how to handle then in the check-enforcer commenting. Just submit a PR to https://github.com/Azure/azure-sdk-for-net/blob/master/eng/CHECKENFORCER#L42 with some information about how to get a pipeline working for these type of changes.


feat: migrate rpx2vw to postcss 8

[x] feat: migrate rpx2vw to postcss 8 & lock postcss version globally
[x] chore: bump version & add changelog
[x] feat: proxy

Codecov Report

Merging #967 (c887c05) into release-next (168b4ae) will increase coverage by 0.00%.
The diff coverage is 75.00%.

@@              Coverage Diff              @@
##           release-next     #967   +/-   ##
=============================================
  Coverage         48.93%   48.93%
=============================================
  Files                46       46
  Lines              1175     1177    +2
  Branches            284      284
=============================================
+ Hits                575      576    +1
- Misses              600      601    +1

Impacted Files
Coverage Δ

packages/postcss-plugin-rpx2vw/src/index.js
88.00% <66.66%> (-4.00%)
:arrow_down:

packages/plugin-rax-app/src/index.js
100.00% <100.00%> (ø)


[1.1.1] Domain Research

Issue Details
Description
This main issue is for us to do a background research on our Project Domain, which is about the Train Services Workload Management System.
Goals
To have a better understanding of the Train Service Day to Day Operation, the employees working in the Train Operations Department and their current workload management systems. We will then share our findings with the rest of the group.
Success or Completion Criteria

[x] #50
[x] #56

Allocated Time
2 Days
Start Date: 29/08/23, 1800
End Date: 30/08/23, 2359

Issue Comments
Description
Completed research on trains and train employees
Changes to success or completion criteria? y/n (if y, describe)
n
Start Date: 29/08/23, 1800
End Date: 30/08/23, 2359


feat: idle opportunities userData (WIP)

Description

Notice

[ ] Have you followed the guidelines in our Contributing guide?
[ ] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[ ] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)

closes #
Risk

Testing

Engineering

Operations

Screenshots (if applicable)

Current dependencies on/for this PR:

develop

PR #3315

PR #3338

PR #3316

PR #3342

PR #3343

PR #3345   👈

This comment was auto-generated by Graphite.


Android only bug when adding panels to disabled object

As title says, you get a null error only on android. Happens with all add methods Add(), AddToBack() , AddToFront(). Work around is to enable panels when adding and then disable.

Hi there! Thanks for letting me know about this. The issue has now been resolved.


Make Bytes map to Bytes in SolType

Motivation
alloy-sol-types exposes a sol_data::T variant for each of the primitive types. For example, alloy-primitives::FixedBytes is represented by an alloy-sol-types::FixedBytes, whose's SolType impl points back to the former via the associated RustType.
impl<const N: usize> SolType for FixedBytes<N>
where
    ByteCount<N>: SupportedFixedBytes,
{
    type RustType = RustFixedBytes<N>;   // alias for the primitive
    // rest of impl
}

In each case RustType points back to the alloy primitive, except for Bytes. Currently, Bytes instead maps to Vec<u8>.
impl SolType for Bytes {
    type RustType = Vec<u8>;
}

This creates issues for encoding & decoding patterns in SDKs like Stylus, which declare traits like.
pub trait AbiType {
    type SolType: SolType<RustType = Self>;
}

In particular, we lose the bidirectional relationship the other primitives have. The current work-around in Stylus is to declare a second, incompatible Bytes type that implements SolType with a correspondingSolValueType, but this is suboptimal since it's both confusing and not officially supported by Alloy.
/// **Note:** this trait is an implementation detail. As such, it should not
/// be implemented directly unless implementing a custom
/// [`SolType`](crate::SolType), which is also discouraged. Consider
/// using [`SolValue`](crate::SolValue) instead.
ρ trait SolTypeValue<T: super―SolType> { ... }

Solution
The Solution is to make Bytes map to Bytes, which it turns out is a very small diff.
PR Checklist

[x] Added Tests
[x] Added Documentation

@prestwich Regarding the first point, there's currently a macro_rules bytes! macro that lets you create a Bytes from string literals. If we were to move to a proc macro, bytes![...] could expand to Bytes::from(vec![...]) for non-str inputs.
macro_rules! bytes {
    () → {
        $crate::Bytes::new()
    };

    ($($s:literal)+) → {{
        // force const eval
        const STATIC_BYTES: &'static [u8] = &$crate::hex!($($s)+);
        $crate::Bytes::from_static(STATIC_BYTES)
    }};
}

For the second point, something that's nice about this is that bytes now expands to Bytes. You'd need to put []uint8 in an event, say, for the generated struct to actually have a Vec<u8> if I understand things correctly.

you can add a macro rules arm like this:
    [$($inner:literal),+] => {{
        // force const eval
        const STATIC_BYTES: &'static [u8] = &[$($inner),+];
        $crate::Bytes::from_static(STATIC_BYTES)
    }}


iOS 11 - Cannot play video in background mode.

Please help me fix this.

In AppDelegate I do something like this for background video playback.
func applicationDidEnterBackground(_ application: UIApplication) {
    let playerManager = PlayerViewController.shared.playerManager
    if let playerLayer = playerManager.view.layer as? AVPlayerLayer {
        playerLayer.player = nil

        debugPrint("playerLayer's player is now nil")
    }
}

func applicationWillEnterForeground(_ application: UIApplication) {
    // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background.

    let playerManager = PlayerViewController.shared.playerManager
    if let playerLayer = playerManager.view.layer as? AVPlayerLayer, let player = playerManager.value(forKey: "player") as? AVPlayer {
        playerLayer.player = player

        debugPrint("playerLayer's player restored")
    }
}


Misleading API function names download_file and upload_file

Is your feature request related to a problem? Please describe.
download_file and upload_file function names are misleading.
The problem with download_file is that while it does consume a storage bucket blob, it does not write to a file, it just returns bytes.
The problem with upload_file is that from the name one would expect the input to the function to be a filename, but it is actually bytes.
Describe the solution you'd like
Clearer api.
upload - input data: str | bytes
upload_from_file - input filename: str
download - returns str | bytes
download_to_file - return filename: str or absolute path to the file.
or have string and bytes spesific functions as well. but that might be a bit overkill.

Maybe its not that straight forward.
We decided not to call the blobs in storage bucket for blobs, but for files. Which kind of led to the names upload_file and download file.
Not a 100% sure how to move forward. My issue when i looked into changing it was this:
def download(storage_bucket_name, filename): ...

def download_to_file(storage_bucket_name, filename, local_filename): ...

The argument naming gets a bit weird 😓
So then maybe we should change the argument names aswell. But if we do that we should create a consistent naming standard and we should probably just follow what google does... Calling a blob a blob is probably just the easiest way forward where a blob is data in a storage bucket and a file is data stored in a conventional way.


v7.4.3 SHA256 hashes don't match for some artifacts

Prerequisites

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

Steps to reproduce
The hashes file for the v7.4.3 release seems to be wrong for some artifacts.
Steps to reproduce:
curl -L https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/powershell-7.4.3-linux-x64.tar.gz -o powershell-7.4.3-linux-x64.tar.gz
curl -L https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/PowerShell-7.4.3-win-x64.zip -o PowerShell-7.4.3-win-x64.zip
curl -L https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/hashes.sha256 -o hashes.sha256
sha256sum -c --ignore-missing hashes.sha256

Expected behavior
powershell-7.4.3-linux-x64.tar.gz: OK
PowerShell-7.4.3-win-x64.zip: OK

Actual behavior
powershell-7.4.3-linux-x64.tar.gz: FAILED
PowerShell-7.4.3-win-x64.zip: OK
sha256sum: WARNING: 1 computed checksum did NOT match

Error details
No response
Environment data
Name                           Value
----                           -----
PSVersion                      7.4.2
PSEdition                      Core
GitCommitId                    7.4.2
OS                             Debian GNU/Linux 12 (bookworm)
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals
No response

I think we are seeing this cause failures to build the Powershell devcontainer feature. Here's what I see in the logs:
2024-06-21 22:13:40.237Z: #18 2.966 POWERSHELL_VERSION=7.4.32024-06-21 22:13:40.239Z:
2024-06-21 22:13:41.785Z: #18 4.515 SHA256: 3ae8f3a556fd7e14fecefaacf15f5cfb0afab520b6f1aeae796d2eeafc9b64222024-06-21 22:13:41.787Z:
2024-06-21 22:13:42.064Z: #18 4.792 sha256sum: WARNING: 1 computed checksum did NOT match
2024-06-21 22:13:42.213Z: #18 4.792 powershell-7.4.3-linux-x64.tar.gz: FAILED

It was also while building one of our devcontainers that led me to create this issue.
The workaround was to pin to 7.4.2, there the SHA for the linux x64 release matches.
// .devcontainer/devcontainer.json
{
// snip
    "features": {
        "ghcr.io/devcontainers/features/powershell:1": {
            "version": "7.4.2" // Specific version until SHA's are fixed
        }
// snip
    }
}

Hi,
This issue impacts everyone using the PowerShell dev container feature, as it uses the SHA256 sums from the release notes to verify the download.
This sum is incorrect:
powershell-7.4.3-linux-x64.tar.gz
3ae8f3a556fd7e14fecefaacf15f5cfb0afab520b6f1aeae796d2eeafc9b6422

It should be:
5cfcc228afd3ffce536ec4541abafe97c629afcd6dc85c9a20712894bbf65adb

Please adjust the release notes @daxian-dbw

FYI @sliekens @daxian-dbw
Noting that it might be more than just the powershell-7.4.3-linux-x64.tar.gz file with the wrong sum.
I'm getting the PS dev container issue on an M1 MacBook for the powershell-7.4.3-linux-arm64.tar.gz file i.e.:
3.643 POWERSHELL_VERSION=7.4.3
7.530 SHA256: 6ba8ae0dedabbbfd4bf4a8f48d8819ec504ef092d4c3df120ff6565e542e39b1
7.771 powershell-7.4.3-linux-arm64.tar.gz: FAILED
7.771 sha256sum: WARNING: 1 computed checksum did NOT match
7.771 ERROR: Feature "PowerShell" (ghcr.io/devcontainers/features/powershell) failed to install! Look at the documentation at https://github.com/devcontainers/features/tree/main/src/powershell for help troubleshooting this error.

Updated the hashes file with the correct hashes.

Why not add tests in release process to check the hashes before publish?

The hashes.sha256 file is missing from the v7.4.3 release downloads, could you please let me know if this is expected? It's absence is breaking one of our automations:
WebDownload: [ ERROR ] Operation could not be completed due to error - Source https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/hashes.sha256, Destination C:\Windows\TEMP\pwsh-hashes256.txt, Error failed to download source https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/hashes.sha256 after 5 retries - Error received HTTP status code 404 for source https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/hashes.sha256 with HEAD request. Cannot download resource

Now the hashes.sha256 is there again, but it seems like it is malformed. I get the following error:
File name 'PowerShell-7.4.3-win-x64.msi' not found in checksum file.
When looking at the raw file contents it looks like the file endings are missing.

+1 hashes.sha256 is malformed, file endings are missing
...
57342b7b9aca6c53b27ee40a307e8fc5dc28b97218bfd016c7941ce25621f79b *PowerShell-7.4.3-win-x64
64b4a0636a2af4854b90593ac78645bb59f86b4d094f75b41a5a617afd2478d3 *PowerShell-7.4.3-win-x64
...

Updated again. Please verify.

@adityapatwardhan Works now! 👍

Confirmed. Works now.
Devcontainers can again use powershell feature with version set to latest (which is default).


Use a mmap file to read data in StaticRoute

When making use of the fallback sendfile method, a mmap file should be used to read the data to reduce memory usage.
Correct me if I'm wrong, but I believe reading data from a mmap file is better if you are running a web app on multiple processes. With a mmap file each process can share the memory pages, and thus save you some memory. This probably only true for large files.

I think it's overoptimization.
Most likely in production configuration the code will be run on Linux with sendfile support (and behind nginx BTW).
Don't expect too much from mmap support.

I'm sure there are countless schemes of serving up static content using other software, but I was strictly thinking from aiohttp's point of view rather than aiohttp + x.
But sendfile is useless in my case because I'm serving everything over SSL. I know I can do SSL termination at the load balancer, but I'd rather have each app do it's own crypto.
I'll do some benchmarks tonight to see if using mmap files makes any practical difference.

SSL use case makes sense for PR, I've missed this.

@jashandeep-sohi unfortunately GitHub doesn't send notification email if you just push new commits without a comment.
So I'm not aware about your work on the PR.
Do you think the current stage is ready for review?

Well, I was trying to running some benchmarks yesterday with ab (Apache HTTP server benchmarking tool), but I encountered a possible bug with Keep-Alive connections so I got side-tracked with that. I'll make a new issue to discuss that.
As for this PR, the code is good, but I haven't profiled memory usage yet.

Consider reviewing & merging.

Please fix merge conflicts

fixed

Thanks


Add extended tone demo to examples

Changes:

Added another example for playing tones using the MacroPad library.

Notes:

Please let me know if there's anything I need to change (e.g. the header, description, etc.), and I'll be happy to make the change!

Hello, @apendley. As you can see the checks have failed. Please check out this guide and run Black on your code, and push the update to this PR. Thanks!

Understood! I'll take care of it as soon as possible. Thanks!

@apendley It appears Pylint also failed with a trailing whitespace issue. This refers to whitespace at the end of a line or spaces on blank lines. I thought Black usually resolved that, so I'm a little confused. Are you up for troubleshooting it and trying to find the issue? If you feel like it's outside your wheelhouse, I can pull the PR down and then push the fix, but I wanted to give you the opportunity.
If you'd like to give it a try, you can install pre-commit, which is what we use to deal with all of this, and if you run it locally within the repository, you'll have the same processes happening on your computer that run remotely here. You can find instructions here on setting up Pre-commit.
Please feel free to ask any questions you might have about the process. I will be around again on Monday.

I don't mind giving it a shot! I would like to contribute more in the future, so it would be good for me to understand the process. I will try to fix this over the weekend if I get some time. Thanks!

Sounds great! Getting pre-commit setup will definitely help you in the future - we use it on all the libraries. The important thing to remember is that you install it globally once, but then you have to "install" it in each individual local repository by running pre-commit install from the top level of the repo directory. So it's a little bit of an extra step to remember to run that in each repo that you clone, but that's the way it's done. I'm happy to help with anything you need next week!

I installed pre-commit and fixed the issues it raised. Hopefully it will pass this time! 🤞


Adding ESRGAN TFlite

Adding TFLite model for ESRGAN.
Couldn't run automated validation on the structure, since tools/validator.py doesn't seem to work. This is probably due to recent refactoring into two different repositories, tensorflow/hub and tensorflow/tfhub.dev.
CC: @windmaple @gustheman

Thanks @captain-pool for flagging the validator.py problem. I manually ran validator.py for this PR and will fix the GitHub action soon. I'll merge this PR and comment again once the model is live on https://tfhub.dev/.

The Lite model is live at: https://tfhub.dev/captain-pool/lite-model/esrgan-tf2/1.