NLog core package with bare minimum

With bare minimum

Think NLog 6.0 should only have these classes and nothing else:

ILogger
Logger
LogEventInfo
LogFactory (Without GetCurrentClassLogger)
LoggingConfiguration + LoggingRule
InternalLogger (That has a subscription-system, but no Console-Stream / File-Stream / Trace-Writer)
Layout
LayoutRenderer
Target

Then create NLog-meta-package that includes the standard-stuff:

NLog.XmlLoggingConfiguration
NLog.JsonLayout
NLog.XmlLayout
NLog.ServiceRepository
NLog.CallSite
NLog.FileTarget
NLog.ConsoleTarget
etc.

And another NLog-meta-package with the advanced stuff:

NLog.AutoLoadConfiguration
NLog.ConcurrentFileTarget
NLog.ZipFileTarget
NLog.DatabaseTarget
NLog.SmtpTarget
etc.

When making the NLog 6.0 package, then these PublishTrimmed warnings should be isolated:
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(80,60): Trim analysis warning IL2057: NLog.Internal.PropertyHelper.<>c.<BuildPropertyConversionMapper>b__9_4(String,ConfigurationItemFactory): Unrecognized value passed to the parameter 'typeName' of method 'System.Type.GetType(String,Boolean)'. It's not possible to guarantee the availability of the target type. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Config\PropertyTypeConverter.cs(60,74): Trim analysis warning IL2057: NLog.Config.PropertyTypeConverter.<>c.<BuildStringConverterLookup>b__6_2(String,String,IFormatProvider): Unrecognized value passed to the parameter 'typeName' of method 'System.Type.GetType(String,Boolean)'. It's not possible to guarantee the availability of the target type. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Config\Factory.cs(128,38): Trim analysis warning IL2057: NLog.Config.Factory<TBaseType,TAttributeType>.<>c__DisplayClass8_0.<RegisterNamedType>b__0(): Unrecognized value passed to the parameter 'typeName' of method 'System.Type.GetType(String,Boolean)'. It's not possible to guarantee the availability of the target type. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\AssemblyHelpers.cs(71,13): Trim analysis warning IL2026: NLog.Internal.AssemblyHelpers.LoadFromPath(String,String): Using method 'System.Reflection.Assembly.LoadFrom(String)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Types and members the loaded assembly depends on might be removed. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Config\ConfigurationItemFactory.cs(349,13): Trim analysis warning IL2070: NLog.Config.ConfigurationItemFactory.CallPreload(Type): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicMethods' in call to 'System.Type.GetMethod(String)'. The parameter 'type' of method 'NLog.Config.ConfigurationItemFactory.CallPreload(Type)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\FactoryHelper.cs(52,17): Trim analysis warning IL2067: NLog.Internal.FactoryHelper.CreateInstance(Type): '#0' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicParameterlessConstructor' in call to 'System.Object System.Activator::CreateInstance(System.Type)'. The parameter 't' of method 'NLog.Internal.FactoryHelper.CreateInstance(Type)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Config\LoggingConfigurationParser.cs(385,17): Trim analysis warning IL2057: NLog.Config.LoggingConfigurationParser.RegisterExtension(String,String): Unrecognized value passed to the parameter 'typeName' of method 'System.Type.GetType(String,Boolean)'. It's not possible to guarantee the availability of the target type. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Targets\MethodCallTarget.cs(120,21): Trim analysis warning IL2075: NLog.Targets.MethodCallTarget.InitializeTarget(): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicMethods' in call to 'System.Type.GetMethod(String)'. The return value of method 'System.Type.GetType(String)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Targets\MethodCallTarget.cs(117,17): Trim analysis warning IL2057: NLog.Targets.MethodCallTarget.InitializeTarget(): Unrecognized value passed to the parameter 'typeName' of method 'System.Type.GetType(String)'. It's not possible to guarantee the availability of the target type. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Config\MethodFactory.cs(135,39): Trim analysis warning IL2070: NLog.Config.MethodFactory.ExtractClassMethods<TClassAttributeType,TMethodAttributeType>(Type): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicMethods' in call to 'System.Type.GetMethods()'. The parameter 'type' of method 'NLog.Config.MethodFactory.ExtractClassMethods<TClassAttributeType,TMethodAttributeType>(Type)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\ObjectReflectionCache.cs(252,17): Trim analysis warning IL2070: NLog.Internal.ObjectReflectionCache.GetPublicProperties(Type): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicProperties' in call to 'System.Type.GetProperties(BindingFlags)'. The parameter 'type' of method 'NLog.Internal.ObjectReflectionCache.GetPublicProperties(Type)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(418,13): Trim analysis warning IL2055: NLog.Internal.PropertyHelper.CreateCollectionObjectInstance(Type,Type,Object): Call to 'System.Type.MakeGenericType(Type[])' can not be statically analyzed. It's not possible to guarantee the availability of requirements of the generic type. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(425,13): Trim analysis warning IL2067: NLog.Internal.PropertyHelper.CreateCollectionObjectInstance(Type,Type,Object): '#0' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicParameterlessConstructor' in call to 'System.Object System.Activator::CreateInstance(System.Type)'. The parameter 'collectionType' of method 'NLog.Internal.PropertyHelper.CreateCollectionObjectInstance(Type,Type,Object)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(421,17): Trim analysis warning IL2070: NLog.Internal.PropertyHelper.CreateCollectionObjectInstance(Type,Type,Object): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicConstructors' in call to 'System.Type.GetConstructor(Type[])'. The parameter 'collectionType' of method 'NLog.Internal.PropertyHelper.CreateCollectionObjectInstance(Type,Type,Object)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(437,17): Trim analysis warning IL2075: NLog.Internal.PropertyHelper.ExtractHashSetComparer(Object,PropertyInfo): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicProperties' in call to 'System.Type.GetProperty(String,BindingFlags)'. The return value of method 'System.Type System.Object::GetType()' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(401,17): Trim analysis warning IL2075: NLog.Internal.PropertyHelper.TryCreateCollectionObject(Object,PropertyInfo,String,Object&,MethodInfo&,Type&): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicMethods' in call to 'System.Type.GetMethod(String,BindingFlags)'. The return value of method 'System.Type System.Object::GetType()' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(499,51): Trim analysis warning IL2070: NLog.Internal.PropertyHelper.TryCreatePropertyInfoDictionary(Type,Dictionary`2&): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicProperties' in call to 'System.Type.GetProperties(BindingFlags)'. The parameter 't' of method 'NLog.Internal.PropertyHelper.TryCreatePropertyInfoDictionary(Type,Dictionary`2&)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(300,21): Trim analysis warning IL2070: NLog.Internal.PropertyHelper.TryGetEnumValue(Type,String,Object&,Boolean): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicFields' in call to 'System.Type.GetField(String,BindingFlags)'. The parameter 'resultType' of method 'NLog.Internal.PropertyHelper.TryGetEnumValue(Type,String,Object&,Boolean)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(316,17): Trim analysis warning IL2070: NLog.Internal.PropertyHelper.TryGetEnumValue(Type,String,Object&,Boolean): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicFields' in call to 'System.Type.GetField(String,BindingFlags)'. The parameter 'resultType' of method 'NLog.Internal.PropertyHelper.TryGetEnumValue(Type,String,Object&,Boolean)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(474,17): Trim analysis warning IL2070: NLog.Internal.PropertyHelper.TryGetPropertyInfo(Type,String,PropertyInfo&): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicProperties' in call to 'System.Type.GetProperty(String,BindingFlags)'. The parameter 'targetType' of method 'NLog.Internal.PropertyHelper.TryGetPropertyInfo(Type,String,PropertyInfo&)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(248,17): Trim analysis warning IL2070: NLog.Internal.PropertyHelper.TryImplicitConversion(Type,String,Object&): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicMethods' in call to 'System.Type.GetMethod(String,BindingFlags,Binder,Type[],ParameterModifier[])'. The parameter 'resultType' of method 'NLog.Internal.PropertyHelper.TryImplicitConversion(Type,String,Object&)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(452,17): Trim analysis warning IL2026: NLog.Internal.PropertyHelper.TryTypeConverterConversion(Type,String,Object&): Using method 'System.ComponentModel.TypeDescriptor.GetConverter(Type)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Generic TypeConverters may require the generic types to be annotated. For example, NullableConverter requires the underlying type to be DynamicallyAccessedMembers All.. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\PropertyHelper.cs(452,17): Trim analysis warning IL2067: NLog.Internal.PropertyHelper.TryTypeConverterConversion(Type,String,Object&): 'type' argument does not satisfy 'All' in call to 'System.ComponentModel.TypeDescriptor.GetConverter(Type)'. The parameter 'type' of method 'NLog.Internal.PropertyHelper.TryTypeConverterConversion(Type,String,Object&)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Internal\Reflection\ReflectionHelpers.cs(60,17): Trim analysis warning IL2026: NLog.Internal.ReflectionHelpers.SafeGetTypes(Assembly): Using method 'System.Reflection.Assembly.GetTypes()' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Types might be removed. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Config\ServiceRepositoryInternal.cs(146,17): Trim analysis warning IL2070: NLog.Config.ServiceRepositoryInternal.CreateCompiledConstructor(Type): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicParameterlessConstructor' in call to 'System.Type.GetConstructor(Type[])'. The parameter 'itemType' of method 'NLog.Config.ServiceRepositoryInternal.CreateCompiledConstructor(Type)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
NLog\src\NLog\Config\ServiceRepositoryInternal.cs(173,13): Trim analysis warning IL2070: NLog.Config.ServiceRepositoryInternal.GetParameterizedConstructor(Type): 'this' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicConstructors' in call to 'System.Type.GetConstructors()'. The parameter 'itemType' of method 'NLog.Config.ServiceRepositoryInternal.GetParameterizedConstructor(Type)' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to. [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]
microsoft.netcore.app.runtime.win-x64\6.0.0-preview.4.21253.7\runtimes\win-x64\lib\net6.0\System.Linq.Expressions.dll : warning IL2104: Assembly 'System.Linq.Expressions' produced trim warnings. For more information see https://aka.ms/dotnet-illink/libraries [C:\Users\snakefoot\source\repos\NLog\src\ConsoleApp1\ConsoleApp1.csproj]

Getting the following warnings from NLog TestTrimPublish-example-project when using <PublishAot>true</PublishAot>´ with net7.0`:
3>"C:\Users\snakefoot\.nuget\packages\runtime.win-x64.microsoft.dotnet.ilcompiler\7.0.5\tools\\ilc" @"obj\Release\net7.0\win-x64\native\TestTrimPublish.ilc.rsp"
3>NLog.Layouts.LayoutParser.ParseLayoutRendererPropertyValue(ConfigurationItemFactory,SimpleStringReader,Nullable`1<Boolean>,String,PropertyInfo): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>NLog.Layouts.ValueTypeLayoutInfo.CreateTypedLayout(Type,Object): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>NLog.Internal.ObjectReflectionCache.TryLookupExpandoObject(Object,ObjectPropertyList&): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>NLog.Internal.PropertyHelper.TryNLogSpecificConversion(Type,String,ConfigurationItemFactory,Object&): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>NLog.Internal.PropertyHelper.CreateCollectionHashSetInstance(Type,Object,MethodInfo&): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>NLog.Internal.PropertyHelper.CreateCollectionHashSetInstance(Type,Object,MethodInfo&): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>NLog.Internal.PropertyHelper.CreateCollectionListInstance(Type,MethodInfo&): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>NLog.Internal.PropertyHelper.CreateCollectionListInstance(Type,MethodInfo&): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>NLog.Internal.PropertyHelper.ExtractHashSetComparer(Object,PropertyInfo): Using member 'System.Type.MakeGenericType(Type[])' which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for this instantiation might not be available at runtime.
3>Assembly 'System.Linq.Expressions' produced AOT analysis warnings.
3>Assembly 'System.Private.Xml' produced AOT analysis warnings.

Guess there will be a challenge with getting typed Layout<T> working with loading from configuration-file.
Also interesting that System.Xml is also giving issues. Guess the ability to load NLog.config using System.Xml should not be included in NLog-core.

I guess some idea are needed for naming the many new NLog-nuget-packages with NLog v6.
The basic NLog-package will not be able to read XML-files (Ex. Nlog.config) or write to File/Console (only stream-/textwriter-/method-target). It will be the pure core-API (LogFactory + Logger + Config + Targets + Layouts + LaytoutRenderers)
To make it easier for applications to "install" NLog-with-batteries-included, then a meta-package could be introduced that included basic-stuff. NLog-config-XML-reader / Console-target / File-target / Mail-target / Http-target / Network-target. Maybe call that meta-package "NLog.Setup" ?
I'm unsure if NLog.Extensions.Logging should be as slim as possilbe, and should only depend on NLog-Core-package. This will give the best behavior for AOT-applications that wants to use NLog. And then have NLog.Extensions.Hosting and NLog.Web.AspNetCore to depend on "NLog.Setup"-meta-package.

Maybe NLog.Core for the minimal and just NLog for the meta package?

Was planning to make the NLog-package a fully working logging-library. But without the ability to read NLog.config-XML-file (Avoid dependency on the System.Xml-library). And all targets will be moved into their own nuget-packages. So was hoping that NLog-package would work just fine as stand-alone (configure from code).

I find it hard to name those meta packages. Maybe we should try it without meta packages first?

Think I need to do more testing of the NLog-code-base and AOT, and see where the penalty comes.

Simple NET8 AOT Console-App = 1.5MByte.
Simple NET8 AOT Console-App with XmlReader-dependency = 6 MByte
Simple NET8 AOT Console-App with full NLog-API but no targets or config-loader = 3 MByte

Curious what contributes to the additional 1.5 MByte by adding full NLog-API (Have identified that XML-library and RegEx-library has a huge price). Also curious of the price/penalty for including basic Console-Logging and File-Logging by default. Think 90 pct of NLog users are happy with console and file-logging, especially if minimal dependency-overhead.

Played a little with the NLog source-code, and refactored LogFactory + Logger + LogEventInfo to have no knowledge about target- and layout-output. But instead all output-logic is handled by the LoggingConfiguration-class, then AOT-Console-App is happy and using NLog has minimal overhead. Ofcourse the main-application that setup NLog LoggingConfiguration will get the dependency chain with Target + Layout + LayoutRenderers + Filters + etc.
Seems that too much logic/dependencies has ended up at LogFactory + LogEventInfo, and needs to be moved somewhere else.

Trying to use NLog v5.3 to obsolete unwanted API-parts, so it becomes the bridge to the "final" NLog v6 API.:

Created #5485 to begin disconnecting LogFactory from Target- / Layout-dependency-tree
Created #5443 that disconnects the NLog InternalLogger for Console and File-output. So the dependency-tree is only invited when using the "LogToConsole" and "LogToFile"-properties.

Starting to lean towards keeping support for console- and file-output in the NLog-library with ver. 6. But just a simplified NLog FileTarget without concurrent support (Only KeepFileOpen= true / false).


Add configuration cache info to performance docs page

The "Improving the Performance of Gradle Builds" page doesn't currently mention the configuration cache at all. Adding a small section on it. Additionally, I tweaked the wording of a bulleted list of inputs that impact the configuration cache that now appears on both the performance and the configuration cache docs pages (readability improvement).
Context
We'd like to surface the configuration cache in trainings and developer advocacy programs soon, so I'm adding it to this page to make it more discoverable.
Contributor Checklist

[X] Review Contribution Guidelines
[X] Make sure that all commits are signed off to indicate that you agree to the terms of Developer Certificate of Origin.
[X] Make sure all contributed code can be distributed under the terms of the Apache License 2.0, e.g. the code was written by yourself or the original code is licensed under a license compatible to Apache License 2.0.
[X] Check "Allow edit from maintainers" option in pull request so that additional changes can be pushed by Gradle team
[N/A] Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective
[N/A] Provide unit tests (under <subproject>/src/test) to verify logic
[X] Update User Guide, DSL Reference, and Javadoc for public-facing changes
[X] Ensure that tests pass sanity check: ./gradlew sanityCheck
[X] Ensure that tests pass locally: ./gradlew <changed-subproject>:quickTest

Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation
[ ] Recognize contributor in release notes

@bot-gradle test BT

Sorry I don't understand what you said.
Currently, the following commands are supported:
@bot-gradle test <BuildTrigger1> <BuildTrigger2> ... <BuildTriggerN>

A trigger is a special build for this PR on TeamCity, common triggers are:

SanityCheck/CompileAll/QuickFeedbackLinux/QuickFeedback/PullRequestFeedback/ReadyForNightly/ReadyForRelease
Shortcuts: SC/CA/QFL/QF/PRF/RFN/RFR
Specific builds:

BD: BuildDistributions/BuildDocs so that you can preview the generated docs/distribution.
PT: PerformanceTest, all performance tests for Ready For Nightly stage.
APT: AllPerformanceTest, all performance tests, including slow performance tests.
AST: AllSmokeTestsPullRequestFeedback
AFT: AllFunctionalTestsPullRequestFeedback
ASB: AllSpecificBuildsPullRequestFeedback
ACC: AllConfigCacheTestsPullRequestFeedback
ACT: AllCrossVersionTestsReadyForNightly
AFTN: AllFunctionalTestsReadyForNightly
ACTR: AllCrossVersionTestsReadyForRelease
AFTR: AllFunctionalTestsReadyForRelease

@bot-gradle test and merge

queues this PR for testing and merges if all tests pass by:

Creating a merge commit from your PR branch HEAD and the target branch
Running a ReadyForNightly build against the merge commit
When it passes, fast-forward the target branch to this merge commit (i.e. merge the PR)

The merge commit is called a pre-tested commit, which means that it fully tests the integration
of your branch HEAD and latest master, instead of only testing your branch HEAD.
@bot-gradle cancel

cancel a running pre-tested commit build or remove it from queue

@bot-gradle clean

clear the conversation history

@bot-gradle help

display this message

To run a command, simply submit a comment.  For detailed instructions see here.

I think you mean BuildDocs
@bot-gradle test BD

OK, I've already triggered the following builds for you:

BuildDistributions build

Staged preview of the docs content: https://builds.gradle.org/repository/download/Gradle_Master_Check_BuildDistributions/54255709:id/distributions/gradle-7.6-docs.zip!/gradle-7.6-20220726034200%2B0000/docs/userguide/performance.html#enable_the_configuration_cache

@bot-gradle test BD

OK, I've already triggered the following builds for you:

BuildDistributions build

OK, I've already triggered the following builds for you:

BuildDistributions build

@bot-gradle test and merge

OK, I've already triggered a build for you.


UV coords in generate_custom_mesh example are wrong

At this line last coord of the top side should be [1.0, 0.2], not [1.0, 0.25]
I have added yellow rectangle to texture to demonstrate this

demo

texture

Will make a quick PR in just a moment


Map more - or all - of /dls | e.g. /dls/yxx/epics/logs

❯ i07 l
switching to /dls/i07/epics/logs
bash: pushd: /dls/i07/epics/logs: No such file or directory
❯ ll /dls
total 0
drwxr-xr-t. 3 root root 39 Aug 19 08:26 science

I just worked out that we can't do this - it seems that /dls/ixx is dynamically mounted like /home/xxx
this does not work in a container see #1

This means we are going to have to manually mount the folders you need at start of container :-(


[worker server] removing unused method

This is part of the workerserver config refactor (final PR!)
Now that this method is no longer used in twitter source, we can safely remove it.  Any future binaries should use the code in setup.go

Current coverage is 63.88% (diff: 100%)

Merging #146 into master will decrease coverage by 0.11%

@@             master       #146   diff @@
==========================================
  Files            61         61
  Lines          2622       2622
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           1678       1675     -3
- Misses          826        829     +3
  Partials        118        118

Powered by Codecov. Last update cd68992...2e5f798


bug(overlay): cdk-overlay-container a11y failure (not contained by landmark)

Reproduction
Steps to reproduce:

Visit https://overlay-cont-a11y.stackblitz.io/
Open the mat-select so a cdk-overlay-container is present
Run axe plugin to check 508 (https://www.deque.com/axe/browser-extensions/)

axe gives the following error regarding the cdk-overlay-container, since it is outside the main landmark:
All page content must be contained by landmarks

Expected Behavior
Overlay container should not throw an a11y violation
Actual Behavior
See above
Environment

Angular: 10.0.3
CDK/Material: 10.0.1
Browser(s): Chrome
Operating System (e.g. Windows, macOS, Ubuntu):  OSX

Unfortunately this is still an issue in Angular 12.1.1
Current work around is in app.component.ts
import { OverlayContainer } from '@angular/cdk/overlay';
...

constructor(private overlayContainer: OverlayContainer) { }

ngOnInit(): void {
   this.overlayContainer.getContainerElement().setAttribute('role', 'region');
}

This applies the role of 'region' to the overlay
https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Region_role
There may be a more appropriate role?

I don't think that any of the landmark roles would be appropriate for the overlay container since it can contain all sorts of overlays. From the region role specifically:

The region role should be reserved for sections of content sufficiently important that users will likely want to navigate to the section easily and to have it listed in a summary of the page.

It's worth noting that the lack of a role doesn't have an impact on the user's experience, it only gets flagged by automated tools that don't have any context to work with. I'm closing the issue, because I don't see an appropriate role that can be applied and the workaround above can be used if you want to get rid of the tooling warnings.


obs-gstreamer: 0.3.5 -> 0.4.0; obs-vaapi: init at 0.1.0

Description of changes
The VA-API portions of obs-gstreamer were split to their own obs-vaapi plugin.
Remaining changelog can be seen at: https://github.com/fzwoch/obs-gstreamer/releases/tag/v0.4.0
Things done
Tested each plugin individually, and both of them, screenshots at the end.

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Screenshots

Without these plugins:

Only vaapi:

Only gstreamer:

Both plugins:

Result of nixpkgs-review pr 212836 run on x86_64-linux 1

2 packages built:

obs-studio-plugins.obs-gstreamer
obs-studio-plugins.obs-vaapi

Ideally OBS plugins should be in their own directory.

Ideally OBS plugins should be in their own directory.

Even though I agree with you, I don't think I should be the one to start the new trend in this PR. It's out-of-scope.
— What I can+will do, is change the new one since it's introduced in this PR.

@ofborg build obs-studio-plugins.obs-vaapi obs-studio-plugins.obs-gstreamer


Update docs to include links to Next.js

Add next.js examples to docs

@silesky I made some edits, lmk what you think


Replace Soundscape to Openscape in translations

In some translations it still says Soundscape. I replaced everything I found to Openscape.

Thanks for this! :)


Support for bravotv.com

URL: http://www.bravotv.com/watch-what-happens-live/season/episode-12131/videos?clip=2889030
Error: Unsupported URL: http://www.bravotv.com/watch-what-happens-live/season/episode-12131/videos?clip=2889030
Version: 2<IP_ADDRESS>
Video player: ThePlatform
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-v', u'http://www.bravotv.com/watch-what-happens-live/season/episode-12131/videos?clip=2889030']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 2.7.5 - Darwin-13.3.0-x86_64-i386-64bit
[debug] exe versions: ffmpeg 2.4.3, ffprobe 2.4.3, rtmpdump 2.4
[debug] Proxy map: {}
[generic] videos?clip=2889030: Requesting header
WARNING: Falling back on generic information extractor.
[generic] videos?clip=2889030: Downloading webpage
[generic] videos?clip=2889030: Extracting information
ERROR: Unsupported URL: http://www.bravotv.com/watch-what-happens-live/season/episode-12131/videos?clip=2889030
Traceback (most recent call last):
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/generic.py", line 1115, in _real_extract
doc = parse_xml(webpage)
File "/usr/local/bin/youtube-dl/youtube_dl/utils.py", line 1594, in parse_xml
tree = xml.etree.ElementTree.XML(s.encode('utf-8'), **kwargs)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 1300, in XML
parser.feed(text)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 1642, in feed
self._raiseerror(v)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 1506, in _raiseerror
raise err
ParseError: not well-formed (invalid token): line 14, column 409
Traceback (most recent call last):
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 655, in extract_info
ie_result = ie.extract(url)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 282, in extract
return self._real_extract(url)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/generic.py", line 1704, in _real_extract
raise UnsupportedError(url)
UnsupportedError: Unsupported URL: http://www.bravotv.com/watch-what-happens-live/season/episode-12131/videos?clip=2889030

Duplicate of #4657.


Bug for getType？ first argument is not an instance of "typesafe-actions"

Describe the bug

I use getType() method but I got this error:
Uncaught Error: first argument is not an instance of "typesafe-actions"
To Reproduce
actions :
import { action } from 'typesafe-actions';
import { MemberActionTypes, MemberList } from './types';

export const queryMemberList = () => action(MemberActionTypes.queryMemberList);

export const queryMemberListSuccess = (memberList: MemberList[]) =>
action(MemberActionTypes.queryMemberListSuccess, memberList);

type:
export interface MemberList {
	_id: string;
	name: string;
	gender: string;
	mobile: string;
	site: string;
	exp: string;
}

export const enum MemberActionTypes {
	queryMemberList = 'member/QUERY_MEMBER_LIST',
	queryMemberListSuccess = 'member/QUERY_MEMBER_LIST_SUCCESS',
}

export interface MemberState {
	readonly memberList: MemberList[];
}

reducer :
import * as Immutable from 'immutable';
import * as MemberAction from './actions';
import { ActionType, getType } from 'typesafe-actions';
import { MemberActionTypes, MemberState } from './types';
import { Reducer } from 'redux';

export type MembersAction = ActionType<typeof MemberAction>;

const initalState: Immutable.Map<string, MemberState> = Immutable.fromJS({
	memberList: [],
});

const reducer: Reducer<Immutable.Map<string, MemberState>, MembersAction> = (
	state = initalState,
	action: MembersAction
) => {
	switch (action.type) {
		// case MemberActionTypes.queryMemberListSuccess: {
		case getType(MemberAction.queryMemberListSuccess): {
			return state.set('memberList', Immutable.fromJS(action.payload));
		}
		default:
			return state;
	}
};

export { reducer as MemberReducer };

Project Dependencies

Typesafe-Actions Version: ^2.0.4
TypeScript Version: ^3.1.1
tsconfig.json:

{
  "compilerOptions": {
    "removeComments": false,
    "module": "esnext",
    "target": "es5",
    "lib": [
      "es6",
      "dom",
    ],
    "sourceMap": true,
    "moduleResolution": "node",
    "allowUnreachableCode": false,
    "strict": true,
    "rootDir": ".",
    "jsx": "react",
    "outDir": "../dist/interface",
  },
  "include": ["**/*.ts", "**/*.tsx"],
  "exclude": ["node_modules", "**/*.spec.ts"]
}

Environment

Browser and Version: chrome
OS: macOs
Node Version: 10.6.0
Package Manager and Version: yarn 1.7.0

getType doesn't work with the plain action creator. With that method, you need to use the enum that you've defined in the switch statement.
If you want to keep using getType, you can use createAction.

@Carl-Foster Thank you for your timely feedback, It is not seen in the document.

What is the reason that getType and isActionOf does not work with the simpler action creators?
It would be really nice if they did.

It's a feature of this library through a meta property on action creator.


Support both variants of Net::SSH::Service::Forward#open()

Net::SSH::Service::Forward#open() has a 3-argument variant as well as a 4-argument one.  The latest published/tagged version only supports the 3-argument one.  This pull request adds support for the latter as well while.
Tests are included.

@bitaxis thanks much for the PR 👍 , please also include an usecase, why you need that local_host param.


fix: fix bug in index remapping when plan contained multiple rewrite groups

A bug would occur when some of the rewrite groups were covered by the index and other rewrite groups were not.

LGTM overall. Pending add test coverage.

When merge when CI passes


WIP: Add WSGI training

@tschorr Feel free to ping me when you're ready for a second pair of eyes to review the training.

@stevepiercy thanks for offering, I definitely will in a couple of days.

This is ready for a first review + merge into master. There are still ~2 chapters missing and I need to add to the rest, but I think it's important to get at least the Installation instructions (setup.rst) online.

As I stated in my initial review, I reviewed only the first 2.5 files. Please let me know if you want me to review the remaining files. When a PR is merged, I assume that no further review is desired. Thank you!

@stevepiercy could you review the remaining files on master and create issues for individual problems?


"Select current folder" not possible with hidden Select button

When using external buttons to confirm the selection, the consumer of the file picker widget relies on update events to track the current selection. In location mode, the event fired after entering a new folder does not include any entries. This makes it impossible to select the current folder, like the internal button allows to.
To solve this, either a separate event for navigation is required, or the update event in location mode needs to include the current folder when nothing else is selected.
Also, when issue #8 is implemented, the navigation/update event will need to be fired on initial load to communicate the actual permissions of the starting folder, i.e. whether the user is allowed to upload files there. If the root folder can have restricted permissions, then an initial event is already required now.

IMO the update event should always reflect the current selection model for when you would otherwise click the submit button in the file-picker. Since the location mode selects the current folder if nothing is selected, I think it would make sense that the update event propagates the current folder on navigation.

Done in #72 and will be released in 0.7. (#73)

It works now, but the API is a bit inconsistent: the update event during navigation contains the current folder as a single resource, while normal update events contain an array of them (i.e. different array nesting levels, and therefore different types of arguments).
Luckily that was necessary. Otherwise there is no way to detect when a subfolder was selected via navigation or via selection. This is used to determine the text of the select button (whether to add the word "current" or not).
So either the API documentation should be updated to reflect the different argument types, or the consumer needs some other way to distinguish whether the user will select the current folder or a selected subfolder.

cc @LukasHirt


Add removal_detection example

This PR adds an example that shows how you can know when a component has been removed, so you can react to it.
Related to  #941

Ah, thanks!
I didn't see the headings because there were no newlines before them, so my markdown syntax highlighting didn't highlight them.
I added newlines before and after the headings in the changelog for the upcoming version so it matches the changelogs for the previous versions.
And I moved the change to Added. :)


title: fix youtube shorts and live urls

I don't think these worked even before the recent refactor, since there were no regexes in youtube_title to catch them.
Examples which failed before but work now:

https://www.youtube.com/shorts/NH2BBt3pNG8
https://www.youtube.com/live/jfKfPfyJRdk

Added another fix for a longstanding subtle bug that touches some of the same lines of code

LGTM. TYFYS. o7


Cleanup edit list

Cleanup edit list
Add delete function for list
Cleanup and fix iOS deployment

Current dependencies on/for this PR:

main

PR #37   👈

This stack of pull requests is managed by Graphite.


Feature/ios offline maps

This PR includes the localTiles component for iOS.
Is not working yet because the image doesn't appear on the map and I can't understand why here: https://github.com/Vizzuality/forest-watcher/compare/feature/ios-offline-maps?expand=1#diff-44b2bfcf63bf79541d50fced09f7b80eR35
But at least we have the component available to remove this

Should we merge now even though it isn't complete? Or should we wait?

Could you review my changes @j8seangel

Remember to run npm install as I've just merged the library changes.


Error in utils file

ERROR in src/core/types/Utils.tsx:46:45
TS2344: Type 'UserData["content"][0]' does not satisfy the constraint 'ComponentData<DefaultComponentProps, string>'.
Type 'ComponentData<any, string> | ComponentDataMap' is not assignable to type 'ComponentData<DefaultComponentProps, string>'.
Type 'ComponentDataMap' is not assignable to type 'ComponentData<DefaultComponentProps, string>'.
Type 'ComponentData<UserProps[keyof UserProps], keyof UserProps extends string ? string & keyof UserProps : never>' is not assignable to type '{ type: string; props: WithId; }'.
Type 'UserData["content"][0]' is not assignable to type '{ type: string; props: WithId; }'.
Type 'ComponentData<any, string> | ComponentDataMap' is not assignable to type '{ type: string; props: WithId; }'.
Type 'ComponentDataMap' is not assignable to type '{ type: string; props: WithId; }'.
Types of property 'props' are incompatible.
Property 'id' is missing in type 'WithId<UserProps[keyof UserProps]>' but required in type 'WithId'.
44 |   >,
45 |   UserAppState extends AppState = AppState,

46 |   UserComponentData extends ComponentData = UserData["content"][0]
|                                             ^^^^^^^^^^^^^^^^^^^^^^
47 | > = {
48 |   UserConfig: UserConfig;
49 |   UserProps: UserProps;

how to solve this issue please explain
How can I integrate all component of  Puck Editor into my code?
Please help i install your library npm i @measured/puck --save it does not give any component like header paragraph etc please help and solve above issue

Hi @uidevencriss - not possible to debug from your message. Please use GitHub markdown formatting to to break up the message in future.
For now, I recommend following this guide: https://measured.co/blog/building-a-react-page-builder-an-introduction-to-puck


Missing colour in legend

In the node list-colouring example there is no colour 0 in the legend.

A similar problem arises with the total-colouring example.


[ARCTIC-1408][Ams]Disable authentication for ZooKeeper client.

Why are the changes needed?

resolve #1408
The previous approach was to solve the problem by clearing the Kerberos authentication information, but now a more user-friendly and convenient way has been found, which is to disable authentication for the ZooKeeper client to solve the problem.
Brief change log
System.setProperty("zookeeper.sasl.client", "false");
How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[x] Run test locally before making a pull request

Documentation

Does this pull request introduces a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

I have validated it in the environment and suggest that it be merged as soon as possible because the impact of the previous solution to clear Kerberos authentication is unclear.


Support ceph msgr2 address config

Required information

Distribution: Ubuntu
Distribution version: 20.04
The output of "lxc info" or if that fails:

Kernel version: 5.4.0-48-generic
LXC version: 4.6
LXD version: 4.6
Storage backend in use:

Issue description
When creating a lxd ceph storage pool for a Ceph Octopus cluster I encountered the following error:
~$ lxc storage create lxd-ceph-test ceph
Error: Failed to run: ceph --name client.admin --cluster ceph osd pool create lxd-ceph-test 32: unable to parse addrs in '[v2:<IP_ADDRESS>:3300,v1:<IP_ADDRESS>:6789]'
[errno 22] error connecting to the cluster

This is the address format for msgr v2 and is supported by all the recent ceph tools [0], i.e. running ceph --name client.admin --cluster ceph osd pool create lxd-ceph-test 32 directly creates the pool (but doesn't register it with lxd).
[0] https://docs.ceph.com/en/latest/rados/configuration/msgr2

This might be a limitation of the luminous client packaged with lxd snap.
~$ snap run --shell lxd --login
bash-4.4$ ceph --version
ceph version 12.2.13 (584a20eb0237c657dc0567da126be145106aa47e) luminous (stable)

It's not a LXD thing, it's a snap thing. The snap ships with Ceph 12 which does not understand the new addresses.
We'll be rebasing the snap on Ubuntu 20.04 in the near feature which will give us Ceph 15.
Until then, you can configure the snap to use the client from the host system with:

snap set lxd ceph.external=true
systemctl reload snap.lxd.daemon

Which will take care of this.


Add support for POST and other HTTP methods

This PR adds support for caching POST and other HTTP methods.
Previously, Hishel supported only GET and HEAD methods, which are the only methods recommended to be cached by the specification.
However, some servers use POST endpoints to receive structured data such as JSON or XML; these function similarly to GET requests and can be cached in the same way that conventional GET methods are.
For example, GraphQL APIs use the POST method to receive JSON data for filtering.
To support this feature, we must also consider how we will distinguish between two separate requests to the same URL using the same HTTP method but with different request bodies.
Now, we generate a key for each request by simply hashing the value of METHO + URL, therefore this PR includes the request body to distinguish between two separate queries to the same URL.
So we can deal with such situations appropriately.
# two separate cache entries.
client.post("https://example.com/v1/cachable_post", json={"data": "request 1"})
client.post("https://example.com/v1/cachable_post", json={"data": "request 2"})

Also, you can ignore specification rules if the response doesn't support it.
Some examples:
import hishel

# All the specification configs
controller = hishel.Controller(
        # Cache only GET and POST methods
        cacheable_methods=["GET", "POST"],

        # Cache only 200 status codes
        cacheable_status_codes=[200],

        # Use the stale response if there is a connection issue and the new response cannot be obtained.
        allow_stale=True,

        # First, revalidate the response and then utilize it.
        # If the response has not changed, do not download the
        # entire response data from the server; instead,
        # use the one you have because you know it has not been modified.
        always_revalidate=True,
)

# All the storage configs
storage = hishel.S3Storage(
        bucket_name="my_bucket_name", # store my cache files in the `my_bucket_name` bucket
        ttl=3600, # delete the response if it is in the cache for more than an hour
)
client = hishel.CacheClient(controller=controller, storage=storage)

# Ignore the fact that the server does not recommend you cache this request!
client.post(
        "https://example.com",
        extensions={"force_cache": True}
)

# Return a regular response if it is in the cache; else, return a 504 status code. DO NOT SEND A REQUEST!
client.post(
        "https://example.com",
        headers=[("Cache-Control", "only-if-cached")]
)

# Ignore cached responses and do not store incoming responses!
response = client.post(
        "https://example.com",
        extensions={"cache_disabled": True}
)

I think we should also test client. With something like this maybe:

Yeah I think we really need some tests for the clients, but I think it should be in another pull request because now we do not have any client test.

We also should have a link from getting started on how to enable POST caching. And maybe it should have an explicit title so a search could find it.

I think it could be an example in the documentation like http://hishel.com/examples/github/, also in the separate PR.

Thanks @umnovI :pray:

I think it could be an example in the documentation like http://hishel.com/examples/github/, also in the separate PR.

We'll need to make sure it's possible to find it with search then.
For example searching by get gives me

And nothing on this example

Thanks @umnovI 🙏

NP! Great work!


Login with Github Failed

GitLens Version:v11.5.1
Git Version: 2.32.0.windows.1

VSCode Version: 1.57.1
OS Version:win10

Steps to Reproduce:
1.Open VS Code as Administrator.
2.Click to login in gitlens from account

3.Authorize Visual Studio Code to access GitHub in Chrome

but vscode developer tools log Sign in failed: FetchError: request to https://vscode-auth.github.com/token?code=a752aece0dd8f5876465&state=e5387cda-f6b0-4738-a9c5-e33d56c71ea1 failed, reason: read ECONNRESET

and chrome log Refused to apply style from 'https://vscode-auth.github.com/css/fonts/roboto.css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

I expect to login into gitlens in vscode. Thanks for help

Unfortunately that error is coming from VS Code's GitHub auth provider (which GitLens uses) -- Can you please file this issue on the vscode repo? Thanks!


Fix null reference exception thrown when TextBlock text is null.

Prevent TextBlock from throwing null reference exception when WrapText is set to true and the value of text is null. Fixes issue#82

Thanks. LGTM


synonyms with SolrTextTagger

Hi David!
Thanks for this project.
I'm new with Solr and I'm trying to use synonyms with SolrTextTagger. In documentation, I've found that you shouldn't use synonyms in query time. So I'm trying to add synonyms in index time. My config seems like:
curl -X POST -H 'Content-type:application/json'  http://localhost:8983/solr/companies/schema -d '{
  "add-field-type":{
    "name":"tag",
    "class":"solr.TextField",
    "omitNorms":true,
    "indexAnalyzer":{
      "tokenizer":{
         "class":"solr.StandardTokenizerFactory" },
      "filters":[
        {"class":"solr.SynonymFilterFactory", "synonyms":"synonims.txt", "ignoreCase":"true", "expand":"true"},
        {"class":"org.opensextant.solrtexttagger.ConcatenateFilterFactory"}
      ]},
    "queryAnalyzer":{
      "tokenizer":{
         "class":"solr.StandardTokenizerFactory" },
      "filters":[

      ]}
    },

  "add-field":{ "name":"name",     "type":"text_general"},

  "add-field":{ "name":"name_tag", "type":"tag",          "stored":false },

  "add-copy-field":{ "source":"name", "dest":[ "name_tag" ]}
}'

but it doesn't work well.
So do synonyms are supported by SolrTextTagger at all or I'm doing something wrong? Thanks.

Hi,
If you search the README.md for "synonyms", you should see that it's expressly not supported.  However if you get the 1.1.1 version of the project (e.g. via the tag) then that version supports synonyms.


Document how to get node-deepstackai-trigger working on Unraid

This tutorial assumes that you will be running deepstack and node-deepstackai-trigger as docker containers on an Unraid server.
Hope this helps people trying to get this running on Docker. I have had it working for the last week and it has been working smoothly while using far less system resources than trying to run deepstack on a Windows VM. I would be happy to turn this into a Wiki page with screen shots on the node-deepstackai-trigger git repository.
Setup deepstack as a docker container
Since deepstack isn't in the Unraid app store we will need to manually setup the container. Create a new container with the following parameters

Name: deepstack
Repository: deepquestai/deepstack:latest
Network Type: Custom :br0
It is important to use this and not Host or Bridge as Unraid will prevent docker containers from talking to each other if they are connected using Host or Bridge
Fixed IP address (optional): Assign an unused IP on your network
Console shell command: Shell
Privileged: Off

Now create the following Container Variable
Variable 1

Name:  Key 1
Key: PUID
Value: 1000

Variable 2

Name:  Key 2
Key: PGID
Value: 1000

Variable 3

Name:  VISION-DETECTION
Key: VISION-DETECTION
Value: True

Path 1

Name:  Datastore
Container Path: /datastore
Host Path:: /mnt/user/appdata/deepstack/datastore/
This is just where I use, you can use any location
Access Mode: Read/Write

Port 1

Name:  Web
Host Port: 5000
Connection Type: TCP
Description: Container Port: 5000

Click done, wait for deepstack to download and run, it can take 20 minutes or more. Check that it is running by going to http://fixedIPYouAssigned:5000
Setup node-deepstackai-trigger as a docker container
Since node-deepstackai-trigger isn't in the Unraid app store we will need to manually setup the container. Create a new container with the following parameters

Name: node-deepstackai-trigger
Repository: danecreekphotography/node-deepstackai-trigger:latest
Network Type: Custom :br0
It is important to use this and not Host or Bridge as Unraid will prevent docker containers from talking to each other if they are connected using Host or Bridge
Fixed IP address (optional): Assign an unused IP on your network
Console shell command: Shell
Privileged: Off

Now create the following Container Variable
Variable 1

Name:  Images
Key: PUID
Value: 1000

Variable 2

Name:  Images
Key: PGID
Value: 1000

Variable 3

Name:  Time Zone
Key: TZ
Value: Enter Timezone such as America/New_York

Variable 4

Name:  VERBOSE
Key: VERBOSE
Value: true

Path 1

Name:  Images
Container Path: /aiinput
Host Path:: /mnt/user/Blue Iris/deepstackai_images/
This is where your Blue Iris images will be stored. It is important that however you run Blue Iris that it has write access to this folder. In my case I run Blue Iris on a Windows VM and have this folder available to docker and the Windows VM

Path 2

Name:  Config
Container Path: /config
Host Path:: /mnt/user/appdata/node-deepstackai-trigger/config/
This is where you will put your versions of the example files in Example settings.json and triggers.json
Access Mode: Read/Write

Port 1

Name:  Host Port 1
Host Port: 4242
Connection Type: TCP
Description: Container Port: 4242

Very nice! Yes, I'd love to have this as proper documentation for the wiki. If you stick it in a markdown file and make sure it passes markdownlint I'd be happy to include it. I think you can attach it all as a zip file here?
One thing I've also wanted to do is actually get this listed in the UnRaid app store but have never had any luck finding documentation on how to do that. Do you by any chance know the submission process?

Tks for this nice "Howto".
The only think that I modify was the Network Type.
I was not able to figure how to change the Subnet of a Docker Network.
So I used the Bridge. I forwarded port 4242 to 4241 and the 5000 to 83.
It work!

Tks again!

Very nice! Yes, I'd love to have this as proper documentation for the wiki. If you stick it in a markdown file and make sure it passes markdownlint I'd be happy to include it. I think you can attach it all as a zip file here?
One thing I've also wanted to do is actually get this listed in the UnRaid app store but have never had any luck finding documentation on how to do that. Do you by any chance know the submission process?

I haven't tried to submit an application myself to the UnRaid app store but this is the best post I've found so far that points to how to do it
https://forums.unraid.net/topic/55503-how-to-submit-new-docker-containers-to-community-apps/
and
https://forums.unraid.net/topic/57181-docker-faq/#comment-566084

Great documentation, and I believe I've followed exactly. I've used the bridge version and forwarded ports, which I prefer. I've even tried using the custom Network type. Unfortunately, it doesn't look like the trigger is pulling the images. The watch pattern is correct, and I've moved my aiinput folder to a number of places including the config folder.
This is all the log ever says. I assume 'unable to read' the secrets is a check before just picking up the setting.json in config, but maybe I am actually missing something. Not using secrets right now.
2020-11-05T23:30:17-05:00 [Main] ****************************************
2020-11-05T23:30:17-05:00 [Main] Starting up version 5.4.0
2020-11-05T23:30:17-05:00 [Main] Timezone offset is 300
2020-11-05T23:30:17-05:00 [Main] Current time is Thu Nov 05 2020 23:30:17 GMT-0500 (Eastern Standard Time)
2020-11-05T23:30:17-05:00 [Settings] Unable to read the configuration file: ENOENT: no such file or directory, open '/run/secrets/settings'.
2020-11-05T23:30:17-05:00 [Settings] Loaded settings from /config/settings.json

@mattiapsu please open a new github issue for your specific troubleshooting request. Make sure to include the entire output log as well as your settings.json and triggers.json file.

Closing old issues.


parent_object doesn't work for scalar values

I think this used to work but doesn't anymore.
I modified a test to show this:
#[test]
fn get_parent_objects() {
    let mut doc = AutoCommit::new();
    let map = doc.put_object(ROOT, "a", ObjType::Map).unwrap();
    doc.put(&map, "foo", "bar").unwrap();
    let (_, scalar) = doc.get(&map, "foo").unwrap().unwrap();
    let list = doc.insert_object(&map, 0, ObjType::List).unwrap();
    doc.insert(&list, 0, 2).unwrap();
    let text = doc.put_object(&list, 0, ObjType::Text).unwrap();

    assert_eq!(doc.parent_object(&map), Some((ROOT, Prop::Map("a".into()))));
    assert_eq!(doc.parent_object(&list), Some((map.clone(), Prop::Seq(0))));
    assert_eq!(doc.parent_object(&text), Some((list, Prop::Seq(0))));
    assert_eq!(
        doc.parent_object(&scalar),
        Some((map, Prop::Map("foo".into())))
    );
}

The last assertion fails, the return value of doc.parent_object(&scalar) is None.

This might be my bad!
Maybe this was only ever intended to work for Values that are ObjType?

I would only expect it to work for actual object ids, not just any reference to an op (which is what the scalar is in this example).

This might be my bad!
Maybe this was only ever intended to work for Values that are ObjType?

That was the intention.  It is possible to embed enough info with a value that this query could work but would add some overhead.  My though would just be to change the api call to either only take ObjId's as an argument or return a useful error cannot retrieve parent object from a scalar value or something.

At the moment I think the only IDs we return are (type wise) exids, which don't differentiate between objid or opid. Might be worth exploring ways of differentiating these.
I think a proper error message is definitely worth it though, my fault for not adding one!


Where is the file

I can't find the file
Microsoft.Samples.ReportingServices.CustomSecurity.dll

you have to compile the project and you will find the file in bni folder.

Thank You.
I thought I Build the Solution, but the step to fix the reference to Microsoft.ReportingServices.Interfaces was not done. Now I can compile and now I see the files.


Detailed Workflow documentation

Hello Thanks for your effort,
Can you explain electrum personal server workflow more detailed in a documentation ?
For Example:
How does EPS integrate with bitcoin core and electrum ?
What are the limits ? Can I use electrum personal server with 100k addreses and with 10 million transaction ?
Does EPS keep addresses and related transactions in a DB or  check at startup and keep them in a memory or something else ?
Detailed workflow documentation will be very useful to explain these kind of questions.
Please also assume who reads this documentation does not know anything about Electrumx or another Electrum Server implementation.

Thanks for the issue. I will. Could you give me an example file from another project on github which does this? It will help with writing.
Here are some brief answers to your questions (which can later form part of the docs)

How does EPS integrate with bitcoin core and electrum ?

EPS connects to Bitcoin Core over the JSON-RPC interface. It also opens a server socket and implements the Electrum server protocol, Electrum wallet can connect to this socket.

Does EPS keep addresses and related transactions in a DB or check at startup and keep them in a memory or something else ?

EPS is configured with the user's master public keys and uses those to calculate bitcoin addresses to watch, those bitcoin addresses are imported in Core as watch-only. On startup EPS uses the RPC listtransactions and gettransaction to obtain all the transactions which involve the monitored bitcoin addresses. The transactions are stored in a python dict datastructure called address_history. During runtime EPS will poll RPCs functions for updates to transactions or addresses. If a change happens then the address_history dict will be updated, and a message sent to the Electrum wallet if it's connected.

What are the limits ? Can I use electrum personal server with 100k addreses and with 10 million transaction ?

I don't know. Presumably it's limited by the address_history dict (how big it gets, how quickly it can be accessed, etc)

I'm not good at documentation also. I want information more than fancy graphs actually :)
Step by step which explains how EPS runs what asks for bitcoin core rpc, how responses to electrum client.
For example:

Electrum Personal Server Creates Child pubkeys from master pubkeys (Please apply rescan if these a old wallet).
a. You can configure these address/child pubkey count by config

It sends gethistory call to bitcoin core rpc for each bitcoin address. Then save them to memory dict.
a. When electrum client asks EPS responses by this memory dictionary.

When electrum client has already has connected EPS it asks all addreses history and EPS responses from memory dictionary.
a. If there is a new transaction. Bitcoin rpc will send callback EPS (method, params) and EPS sends callback to Electrum client (method, params).

Then I can see and say:
When EPS runs at first it will ask all addreses and their transactions, So it may take time to initialize. Or I can say it will keep them in localdb so if I run EPS first it will not take that much time.


Website is not responsive  . Improve UI of site

I want to improve the UI and the responsive of the website . Can you please assign me this work?


Widget word map with vertor tile

Hi team Flutter
i can use map for gis app but map_vew is not support for widget and features is not full for work map in GIS

I'm going to close this as dup of #73
https://github.com/flutter/plugins/tree/master/packages/google_maps_flutter is still work-in-progress.


TEP-0127: Larger results using sidecar logs - parsing sidecar logs to extract results

Changes

This PR addresses a part of TEP-0127 - parsing logs to extract results into the task run CRD.
The taskrun reconciler fetches the logs of the injected sidecar container sidecar-tekton-log-results. The logs are already structured and can be un-marshalled via json. The reconciler parses these logs and adds the results to the task run CRD. If the size of the result is greater than the max-result-size configured by the user then the TaskRun fails with reason TaskRunResultLargerThanAllowedLimit.
Before approving this PR, review https://github.com/tektoncd/pipeline/pull/5834
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[x] Has Docs included if any changes are user facing
[x] Has Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
[x] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings)
[x] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
Parsing sidecar logs to extract results into the task run CRD.

/kind feature

/hold wait for https://github.com/tektoncd/pipeline/pull/5834 to be merged

/hold cancel

/retest

/approve
Looks good to me!

/retest


Include imports and defs in Coverage report

Resolves #678
Coverage report reflects reality closer now. 60% rather than 42%
Review Checklist

Tests were added to cover all code changes
Documentation was added / updated
Code and tests follow standards in CONTRIBUTING.md

@nagem Can you review api/web/start.py to confirm that is the appropriate way to start the coverage before the local files are imported?

LGTM!

LGTM!


fix(checkout): Add missing Order Comments input id

What?
Added the missing ID attribute to the Order Comment input
Why?
To match the label and fix accessibility issues
Testing / Proof
@bigcommerce/team-checkout

@elaleprieto could you amend your commit message to something like fix(checkout): CHECKOUT-000 Add missing Order Comments input id

Done! ✅


unable to view bookmarks

the text color in not inverting when choosing bookmarks

or you could change the "sidebar highlight text" to black, which fixes the issue maintaining the accent

Sidenote: This currently only applies to the 🔧 Custom Install way.


Cleanup some Dev Drive Insights code

Summary of the pull request
Remove code from this code review comment: https://github.com/microsoft/devhome/pull/3728/files#r1736780267
While in there, remove unused usings and fix spellings
References and relevant issues
Detailed description of the pull request / Additional comments
Validation steps performed
PR checklist

[ ] Closes #xxx
[ ] Tests added/passed
[ ] Documentation updated

Ping @SohamDas2021


Doesn't work with generated pages

Hi,
Thank you for your module, it is greatly appreciated. Is there a way to make it work with static pages too? I mean those generate with npm run generate.
Antony

Sorry, of course it cannot work on generated pages since we can't figure it out beforehand. Maybe you could put some warning on the docs so simple-minded people like me do not incur in the same issue :D


Client-side error - 'id'

Captured by server-side logging in 2.0.13
main.1f692e8d.js 47:4418 Unable to get property 'id' of undefined or null reference
happens about 5 times / day

@vassil Do you have the statement (preferably unobfuscated) in the JavaScript where this happens?

Does this still happen since 2.0.18(.1) i.e. with the React 16 upgrade merged?


Scss variables overwrite does not work

Overwriting $palette-primary-color: red !default; works but not $bar-height: 20px !important; on config.scss

I carefully looked at the variables Scss, it should be: $bar - height: 20 px !default; can works

Thanks @mingxia you found the fix :)


8.4 is missing

PHP 8.4.1 tag / release is missing weeks after release / merge

fixed: https://github.com/containerbase/composer-prebuild/releases/tag/2.8.4

you opened the issue right after the new composer version was released. you can't expect it to be released at the same time here. if needs at least a couple of hours until renovate processed it.

please update the issue description, it's wrong. you're referring to php, but this repo releases composer.


[Feat] [OpenIdFed] Implement OIDC-Fed configuration endpoint

Implement the multi-tenant OIDC-Fed configuration document endpoint.
The library should expose an endpoint for each configured Relying Party, using its clientId as baseUrl, and adding the "/.well-known/openid-federation" path.

see this if helps
https://github.com/italia/spid-cie-oidc-django/blob/dev/spid_cie_oidc/entity/views.py
and the method of the objects to export dynamically a signed JWT of an entity configuration
https://github.com/italia/spid-cie-oidc-django/blob/dev/spid_cie_oidc/entity/models.py#L261


collect multiple values at once

Sometimes I just want to flatten N values into a single list and buffer any overflow for the next synchronization.
Currently throws an exception when given multiple values at once:
main.rkt> (define m (make-mediator))
main.rkt> (thread (λ () (for ([i 10]) (sync (say m i #t)))))
#<thread>
main.rkt> (sync (collect m 4))
; cons: arity mismatch;
;  the expected number of arguments does not match the given number
;   expected: 2
;   given: 3
;   arguments...:
;    3
;    #t
;    '()

Another alternative: any number of values from N senders. This is almost the same as the current behavior, except flattening the results would make it impossible to know if you got exactly one value from each sender.


Change region names

Once we have a system in place for changing a region name:
Change:

[ ] Central Indiana to Indiana
[ ] Burlington to Vermont

We should probably go back and change all the other region's where I've updated the name:

[ ] Oklahoma (formerly Oklahoma City)
[ ] Massachusetts (formerly Boston)
[ ] West Michigan (formerly Grand Rapids)
[ ] Wisconsin (formerly Milwaukee)

I think that's it, though I'm just going by memory...
However, in those cases, we wouldn't be changing the name from what it currently is. Not sure if that's a problem.
The System
This will involve copying data to a new region.
It needs to include user data, too. So, for example, if a user edited location 1234 in Burlington, they should have a record saying they've edited location 1234x in Vermont (and the old Burlington record should be wiped). On that note, the location IDs are likely going to change.
What else?

Crap, I put this in pbm-ios... closing.


Adds debug version support

This allows us to archive debug builds, via a naming convention ${version}_debug. The naming convention intentionally avoids hyphens in order to allow easy copy-paste and prevent interference on those splitting on hyphen.
This also fixes #6, by including all binaries (notably we were only missing bin/su-exec)
Many thanks to @mathetake who helped elaborate the use case of debug builds. Even if not many should need these, knowing why helps!
Debug releases
Debug versions help provide troubleshooting information to Envoy maintainers when there is a crash (Segmentation fault).
A debug version ends in _debug (ex v1.18.3_debug) and listed in envoy-versions_debug.json.
NOTE Debug builds are very large. For example, the normal build may be less than 70MB, while its debug build is >2GB.
Only use debug versions in advanced situations.
The main visible change is insight into the source that led to a segmentation fault.
Ex. a normal version may crash with a backtrace like this:
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:104] Caught Segmentation fault, suspect faulting address 0x0
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:91] Backtrace (use tools/stack_decode.py to get line numbers):
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:92] Envoy version: d362e791eb9e4efa8d87f6d878740e72dc8330ac/1.18.2/Clean/RELEASE/BoringSSL
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #0: __restore_rt [0x7f75e06d1980]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #1: [0x55974d40da69]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #2: [0x55974daae313]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #3: [0x55974cf2d94d]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #4: [0x55974cf316d5]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #5: [0x55974cf3fd41]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #6: [0x55974d02e2e0]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #7: [0x55974d036a36]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #8: [0x55974ce066bf]
[2021-06-18 03:51:22.264][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #9: [0x55974cf65f40]
[2021-06-18 03:51:22.265][33][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #10: [0x55974cf66382]

A debug version has more information in the backtrace, and may lead to faster diagnosis:
[2021-06-18 03:44:43.425][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:104] Caught Segmentation fault, suspect faulting address 0x0
[2021-06-18 03:44:43.425][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:91] Backtrace (use tools/stack_decode.py to get line numbers):
[2021-06-18 03:44:43.425][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:92] Envoy version: d362e791eb9e4efa8d87f6d878740e72dc8330ac/1.18.2/Clean/RELEASE/BoringSSL
[2021-06-18 03:44:43.425][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #0: __restore_rt [0x7f93cafa5980]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #1: [0x55e14b315a69]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #2: std::__terminate() [0x55e14b9b6313]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #3: Envoy::Http::ConnectionManagerImpl::ActiveStream::chargeStats() [0x55e14ae3594d]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #4: Envoy::Http::ConnectionManagerImpl::ActiveStream::encodeHeaders() [0x55e14ae396d5]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #5: Envoy::Http::FilterManager::encodeHeaders() [0x55e14ae47d41]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #6: Envoy::Router::Filter::onUpstreamHeaders() [0x55e14af362e0]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #7: Envoy::Router::UpstreamRequest::decodeHeaders() [0x55e14af3ea36]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #8: Envoy::Http::Http1::ActiveClient::StreamWrapper::decodeHeaders() [0x55e14ad0e6bf]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #9: Envoy::Http::Http1::ClientConnectionImpl::onHeadersCompleteBase() [0x55e14ae6df40]
[2021-06-18 03:44:43.432][32][critical][backtrace] [bazel-out/k8-opt/bin/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:96] #10: Envoy::Http::Http1::ClientConnectionImpl::onHeadersCompleteBase() [0x55e14ae6e382]

@mathetake PTAL at the script headers if you don't mind. I think they hopefully make more sense now

much better I think 😄

good.. I think future me will appreciate this also :D

ok final name is bin/tar_envoy_artifact.sh as it is making the a release artifact in tar format. Thanks for all the backchannel on this @mathetake!


Call methods outside of instance

When extended Vue and adding additional methods, howcome it's not possible to call from outside the instance?
// mixin.js
module.exports = {
  created: function () {
    this.hello()
  },
  methods: {
    hello: function () {
      console.log('hello from mixin!')
    }
  }
}

// test.js
var myMixin = require('./mixin')
var Component = Vue.extend({
  mixins: [myMixin]
})
var component = new Component() // -> "hello from mixin!"

// mixin.js
module.exports = {
  methods: {
    hello: function () {
      console.log('hello from mixin!')
    }
  }
}

// test.js
var myMixin = require('./mixin')
var Component = Vue.extend({
  mixins: [myMixin]
})
var component = new Component();
component.hello();

component.hello is not a function

Hi, why its closed? do you have solution?


[skip ci] Discover rbd facts.

Example "output":
        "rbd_images": {
            "rbd-root-images": {
                "base-debian-stretch": {
                    "info": {
                        "block_name_prefix": "rbd_data.1b14046b8b4567",
                        "create_timestamp": "Mon Nov 19 20:38:01 2018",
                        "features": [
                            "layering",
                            "exclusive-lock",
                            "object-map",
                            "fast-diff",
                            "deep-flatten"
                        ],
                        "flags": [],
                        "format": 2,
                        "name": "base-debian-stretch",
                        "object_size": 4194304,
                        "objects": 25600,
                        "order": 22,
                        "size":<PHONE_NUMBER>00
                    },
                    "status": {
                        "watchers": []
                    }
                }
            }
        }

I only tested this on Ansible 2.2 and with my own config; it may not be very robust.

This is not triggered anywhere in the ceph-ansible code. We are not using it we might remove it, but I didn't know people were using it.
I'm going to merge it as is since we don't have any coverage and it might be beneficial to you.
Thanks for the contribution.


Change replaceAll to replace

Thank you for your great plugin.
I faced this issue because my project is using node v14.x while replaceAll is only available since node v15.0.0
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll#browser_compatibility

So I think it would be great if your plugin could support node v14 or have warning about minimum Node version

Hey! Thank you for your feedback, appreciated! This definitely sounds like a reasonable change, which looks good to me!
Also, your comment about the lack of information on Node compatibility is relevant. Would you mind adding this piece of data within the package.json, preferably based on Vite's very own requirements? No worries if you can't, just let me know and I will do it :)


Scrollable containers don't make edge elements fully visible when swiping a11y focus on iOS

Related: #36307 for Android GridView issues.
Problem
When using an accessibility service on iOS (VoiceOver), focusing on an element (by tap or swipe) in a scrollable container (GridView, ListView, etc.) which is partially obscured does not make the element fully visible. However, swiping to a fully hidden element beyond the currently visible items does make the element visible by scrolling the list.
Background
Implicit accessibility scrolling on iOS (ex: VoiceOver) is achieved by caching the next few items outside of view of the current scroll area in the semantic tree, but marking them as isHidden. When the accessibility focus moves from an item in the visible viewport to an isHidden item in the cache area (ex: swiping right with VoiceOver), the engine will call showOnScreen on the widget.
What needs to change
We likely need to also call showOnScreen for items which are partially obscured, but not marked as isHidden.
Sample taken from #36307
import 'package:flutter/material.dart';

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

class MyApp extends StatefulWidget {
  @override
  State createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  bool useSemanticsDebugger = false;

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        showSemanticsDebugger: useSemanticsDebugger,
        theme: ThemeData(primaryColor: Colors.blue),
        home: Scaffold(
          appBar: AppBar(
            title: Text('GridView Semantics Test'),
          ),
          body: GridView.count(crossAxisCount: 4,
//          body: ListView( // Try swapping the GridView for this ListView. The problem happens for both.
              children: _buildChildren(context),
          ),
        ));
  }

  List<Widget> _buildChildren(BuildContext context) {
    final widgets = List<Widget>();
    for(int i = 0; i < 100; ++i) {
      widgets.add(ListTile(
        title: Text('Cell $i'),
      ));
    }
    return widgets;
  }
}

flutter doctor -v
[✓] Flutter (Channel master, 1.21.0-2.0.pre.95, on Mac OS X 10.15.6 19G73, locale en-GB)
    • Flutter version 1.21.0-2.0.pre.95 at /Users/tahatesser/Code/flutter_master
    • Framework revision 50b87dc6c3 (19 hours ago), 2020-07-22 11:09:59 -0700
    • Engine revision dcc9a4048d
    • Dart version 2.9.0 (build 2.9.0-21.0.dev 9dca49e71e)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.1
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    • CocoaPods version 1.9.3

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

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

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

[✓] Connected device (5 available)
    • SM M305F (mobile)      • 32003c30dc19668f          • android-arm64  • Android 10 (API 29)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS 13.6
    • macOS (desktop)        • macos                     • darwin-x64     • Mac OS X 10.15.6 19G73
    • Web Server (web)       • web-server                • web-javascript • Flutter Tools
    • Chrome (web)           • chrome                    • web-javascript • Google Chrome 84.0.4147.89

• No issues found!

Derailed by higher priority issues.
As seen above, I would like to add another or condition to where the engine decides to call showOnScreen when a semantics node is focused, which would check if the node is partially hidden. My original plan was to walk the tree back from the selected node up to the root, and at each step cumulatively apply the current node's transform to the original node's rect (accumulating the transformations), and check if it fits within the bounds of the parent's rect. However, this would require walking the tree every time a node is selected.
Now I'm thinking it might be better to add a new isPartiallyHidden flag on the framework, and just do a quick flag check on the engine side. This would help solve similar problems on other platforms and promote code reuse. The current code which calculates isHidden could be extended to check if the paintRect intersection shrunk the semantics rect, so it would just be O(1) time per node on each tree update on the framework side rather than O(K) (where K = depth) whenever a node is focused.
I may need to write a design doc. Will post more info soon.

We need to be carefully with calling showOnScreen for partially visible nodes. It is a common pattern for a11y users to just slide their finger over the screen to explore what is on screen. If you do that the screen content must not change while the user explores it. That means, when a11y focus lands on a partially visible node this way, we CANNOT scroll the screen.
In other words: we can only call showOnScreen on a partially visible node if the a11y focus landed on it by swiping left/right on the screen (linear navigation), but not if it lands there by tapping the node or by sliding your finger over it (explore by touch).
AFAIK, iOS doesn't have a way of telling these two navigation types apart.

Do you know what is the native behavior regarding swipe left right to partially hidden node? Do they also scroll the element to be fully visible?

@goderbauer That makes sense in hindsight, thanks for the explanation, will put further thoughts in reply to the design issue.
I did a little digging as well, and this StackOverflow post sums up the discussions I could find. I agree there doesn't seem to be a way to tell these two navigation types apart, which seems like a pretty unfortunate platform limitation.
Should we go ahead at close this issue then, or can you think of any other approaches we could take to support this behavior?
@chunhtai for native iOS apps, swiping to a partially hidden element at the edge of any scrollable container (both GridView and ListView) does make the focused element visible by scrolling it to the center of the visible viewport of the container. Touch exploration and tapping to focus a partially hidden element does not bring it into view, as noted by goderbauer. I'm unsure how that behavior is implemented natively, and whether or not we have access to the same functionality.

@nscobie In that case we should keep this open because this is indeed a bug (at least a quality improvement). We should summarize our finding here and why we can't fix it. Hopefully in the future iOS may have new api to enable this.

Should we go ahead at close this issue then, or can you think of any other approaches we could take to support this behavior?

I would consider this one as an actual bug in our implementation because we behave differently than native would. Unfortunately, we cannot fix this one due to platform limitations. We can leave this one open to revisit in case the limitations ever change.

This issue is reproducible on the latest stable and master channels.

Demo video
https://user-images.githubusercontent.com/104349824/203539970-10d709e8-49a2-4deb-8415-c51765d79771.MP4

flutter doctor -v (stable and master)
[✓] Flutter (Channel stable, 3.3.8, on macOS 13.0 22A380 darwin-x64, locale en-VN)
    • Flutter version 3.3.8 on channel stable at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 52b3dc25f6 (23 hours ago), 2022-11-09 12:09:26 +0800
    • Engine revision 857bd6b74c
    • Dart version 2.18.4
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

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

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

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

[✓] IntelliJ IDEA Community Edition (version 2022.2.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 70.0.5
    • Dart plugin version 222.4167.21

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

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

[✓] Connected device (3 available)
    • iPhone 14 Pro Max (mobile) • 332079AF-E895-4685-910E-7B1E18B0C6B8 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-0 (simulator)
    • macOS (desktop)            • macos                                • darwin-x64     • macOS 13.0 22A380 darwin-x64
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 107.0.5304.110

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

• No issues found!

[!] Flutter (Channel master, 3.6.0-7.0.pre.33, on macOS 13.0 22A380 darwin-x64, locale en-VN)
    • Flutter version 3.6.0-7.0.pre.33 on channel master at /Users/huynq/Documents/GitHub/flutter_master
    ! Warning: `flutter` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision b7023e843a (2 hours ago), 2022-11-22 20:47:07 -0500
    • Engine revision f75287af0b
    • Dart version 2.19.0 (build 2.19.0-416.0.dev)
    • DevTools version 2.19.0
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

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

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

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

[✓] IntelliJ IDEA Community Edition (version 2022.2.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 70.0.5
    • Dart plugin version 222.4167.21

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

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

[✓] Connected device (4 available)
    • SM T225 (mobile)           • R9JT3004VRJ                          • android-arm64  • Android 12 (API 31)
    • iPhone 14 Pro Max (mobile) • 332079AF-E895-4685-910E-7B1E18B0C6B8 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-0 (simulator)
    • macOS (desktop)            • macos                                • darwin-x64     • macOS 13.0 22A380 darwin-x64
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 107.0.5304.110

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

! Doctor found issues in 1 category.

There is another report b/280593444

It looks like there are two private method we can use to detect whether the voice over swipe to focus a new item
accessibilityScrollToVisible
accessibilityScrollToVisibleWithChild
These methods are only called if swipe to focus not when tocuh explore. I will attempt to make use of these method


Update get_urls function to return urlpatterns

Use of patterns is deprecated since django 1.8.  You can use plain lists now.
This would now work for django >1.9 also fix the "ImportError: cannot import name 'patterns'" error.

Cheers, thanks for this @othreecodes!  Just one minor thing that I left a comment on, otherwise happy to merge :)

@othreecodes I forgot to request, please do add yourself to the AUTHORS file.  I'll merge that in right away.  :)


'About Peruse' menu option doesn't appear to do anything

Version: v.0.4.1
OS: Linux Mint 18.2
If I click on the menu (upper left) 'Peruse' -> 'About Peruse' nothing seems to happen.

Thanks, we've got this penned in for the UX enhancements coming. I'll leave this here for for reference just now.


Error access.

hello , i use this code.
   <?php
   require_once("vendor/autoload.php");
   $cpanel = new \Gufy\CpanelPhp\Cpanel([
       'host'        =>  'https://server01.nubewww.tech:2087', // ip or domain complete with its protocol and port
       'username'    =>  'xxxxxxxxx', // username of your server, it usually root.
       'auth_type'   =>  'xxxxxxxxxxx', // set 'hash' or 'password'
     'password'    =>  'xxxxxxxxxxxxxxxx', // long hash or your user's password
  ]);

  $accounts = $cpanel->listaccts(); // it will returned as array
  print_r($accounts);

and when i call from browser i recive this error.
Client error:POST https://server01.nubewww.tech:2087/json-api/listacctsresulted in a403 Forbidden Access deniedresponse: {"cpanelresult":{"apiversion":"2","error":"Access denied","data":{"reason":"Access denied","result":"0"},"type":"text"}} (truncated...)

Hi, @Askeshine. I also encountered this error. Have you solved it?


swift-inspect: Explicitly reference String.init(cString:)

This was briefly failing to build because of an ambiguous initializer while making other changes, it's better to be explicit with method names anyway.
rdar://127548384
This cherry-picks https://github.com/apple/swift/pull/73490

@swift-ci please smoke test

@swift-ci please test