PWA Android Firefox child components not mounted

Version
3.0.5
Node and OS info
yarn 1.9.4
Steps to reproduce
Install basic template with vue-cli and check PWA.
Launch on android firefox.
Firefox sees app as PWA and offers to add it to home screen.
Add it to home screen.
What is expected?
When you add app to home screen and launch, you should be able to see exactly the same thing that you see on the web.
What is actually happening?
When you add app to home screen and launch you only see a header nav, which is written straight in App.vue, you don't see any child components until you click on something. Then app launches fully. In case you erase this nav or put it to a child component, then app will be blank.

Couldn't find anything related to this issue on the internet and not sure if it's a Vue.js bug in general or Vue-cli bug. I know exactly that this is not Firefox'es issue, because if you go to mobile.twitter.com and add it to home screen as an App, it works nicely.

Please provide an actual reproduction.
Your description is incomplete and not suited to reproduce the problem.


Tooltip custom style width not working

The issue is present in the latest release. ("@material-ui/core": "4.11.0")

Current Behavior 😯
I apply a large value to the custom Tooltip style: width 1200
Expected Behavior 🤔
The tooltip is the correct size: width 1200

Steps to Reproduce 🕹
https://codesandbox.io/s/zealous-hypatia-u1fdp?file=/src/App.js
Steps:

Create custom element with styles
Add width: 1200

Tech
Version

Material-UI
v4.11.0

React
v16.13.1

Browser
Edge Chromium v85.0.564.41

Tip, we document it in https://material-ui.com/components/tooltips/#variable-width

I should have accepted a maxWidth, or a with property, quite hard to customize for each case


JetBrains: @-file tagging suggestions doesn't get disappear after deleting "@" symbol

Cody Version
5.5.0
IDE Information
IntelliJ IDEA 2023.3.3 (Community Edition)
Build #IC-233.14015.106, built on January 25, 2024
Runtime version: 17.0.9+7-b1087.11 aarch64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 14.3
GC: G1 Young Generation, G1 Old Generation
Memory: 2048M
Cores: 8
Metal Rendering is ON
Registry:
ide.experimental.ui=true
Non-Bundled Plugins:
idea.plugin.protoeditor (233.13135.65)
DevKit (233.14015.152)
gherkin (233.11799.165)
cucumber-java (233.11799.196)
PythonCore (233.14015.106)
com.sourcegraph.jetbrains (5.5.0)
Kotlin: 233.14015.106-IJ
Describe the bug
Platform: MacOS
Steps to reproduce:

Have Cody plugin installed in your VS Code editor
Login to Cody with Free/Pro/Enterprise user
Open Cody chat window
Type "@" and search for some files from your project
Delete the "@" synbol

Observed behavior:
File suggestions doesn't get dismissed after deleting "@" symbol
Expected behavior
@-file tagging suggestions should get dismissed when user delete "@" symbol
Additional context
Video link:
https://drive.google.com/file/d/1j78a1keHN97JYWRm0dIKSTVtzc5zNKJJ/view?usp=drive_link

Good catch, thanks, @jay-fibi! I can repro this. It looks like if you just type@ the issue occurs and you have to click the chat input to make the list of files disappear. But if you type anything after the @ (e.g. @..) the behavior is as expected.


After installing R3 via git URL, I have nearly 400 compilation errors with R3 in my Unity3d project.

After installing R3 via git URL, I have nearly 400 compilation errors with R3 in my Unity3d project. It seems that it is caused by not being able to find the classes under the path "https://github.com/Cysharp/R3/tree/main/src/R3" in your project.

Read about the Install process.
https://github.com/Cysharp/R3#unity
Perhaps you are not installing via NuGet.

Read about the Install process. https://github.com/Cysharp/R3#unity Perhaps you are not installing via NuGet.

Thank you for help.
Of course I also tried the Nuget installation  in the trial documentation and it worked fine. But I still prefer to install them through git by url.


feat: Suppress envoy headers

What this PR does / why we need it:
This PR implements #2358
Which issue(s) this PR fixes:
Implements #2358

we may need to revisit where this field lives in the future and consider moving it into BackendTrafficPolicy if

this feature is something that is tied to the developer persona instead of the system admin persona
if there are valid use cases where a user would like to enable this feature at the Gateway level (all HTTPRoutes ) by default but disable it for some explicit routes (using a explicit BackendTrafficPolicy targeted at the route level)


V4 Development Tracker

V4 Development Tracker
This issue is for tracking the changes being made for V4 of the AWS SDK for .NET. Development of V4 is happening in the v4-development branch in this repository. V4 is an evolutionary major version change with minimal breaking changes so application code using the AWS SDK can upgrade to V4 with low effort.
Update November 11, 2024
New blog post released for preview 4 catching up some of the major changes since preview 1. https://aws.amazon.com/blogs/developer/preview-4-of-aws-sdk-for-net-v4/
Update August 15, 2024
First preview packages have been released. Blog post for the release https://aws.amazon.com/blogs/developer/preview-1-of-aws-sdk-for-net-v4/
Breaking changes
The list of breaking changes made in V4.

.NET Framework 3.5 target has been removed.
.NET Framework 4.5 target has been updated to 4.7.2
Properties using value types on classes used for making requests and responses have been changed to use nullable value types. Essentially properties of type bool are changed to bool?.
Properties using collections on classes used for making requests and responses will now default to null. The V3 behavior of initializing collections can be restored by setting the Amazon.AWSConfigs.InitializeCollections to true. This property also exists in V3 for users that want to try this behavior change before upgrading to V4.
S3 service clients configured for us-east-1 will no longer be able to access buckets in other regions. Buckets musts be accessed with S3 service clients configured for the region the bucket is in. This change avoids surprises in applications using the S3 service client when under the covers it makes multiple AWS requests to access buckets that are not in service clients configured us-east-1 region.
The IAM action identifiers have been removed from the Amazon.Auth.AccessControlPolicy.ActionIdentifiers namespace. These identifiers were previously marked as obsolete due to be being out of date with no mechanism to keep them up to date. Code using these ActionIdentifiers should be upgrade to use the string value of the IAM action name.
The S3 encryption client has been removed from the AWSSDK.S3 package. This client had been marked as obsolete with the encryption client moved to its separate package Amazon.Extensions.S3.Encryption package. The following migration guide to transition to the separate package. https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/s3-encryption-migration.html
The DetermineServiceURL method on the ClientConfig, the base class of service client configs like AmazonS3Config, was removed. This had been marked obsolete and was tied to an internal endpoint resolution system that was removed in V4. Application code calling this method should switch to using the DetermineServiceOperationEndpoint method on the service client.
When using credential providers that rely on Amazon Security Token Service (STS) the calls will always use the regional endpoint. V3 by default used us-east-1 regardless of the configured region when running in the public partition. As part of this change the StsRegionalEndpointsValue enum was removed. Any code using that enum should be removed.
On service client configs the RetryMode defaults to Standard instead of Legacy. The Legacy enum value was removed.
On service client configs the DefaultConfigurationMode defaults to Standard instead of Legacy. The Legacy enum value was removed.
DefaultClientConfig in AWSSDK.Extensions.NETCore.Setup no longer extends from service client config base class ClientConfig. The service client config properties have been replicated on DefaultClientConfig using nullable value types to allow detecting when a value has been set on DefaultClientConfig when copying the values to the service client config being created for the service client.
CloudFront's CookieSigner and UrlSigner have been moved to a separate extension package called AWSSDK.Extensions.CloudFront.Signers to support SSL3 and take a dependency on BouncyCastle.Cryptography.
EC2's GetDecryptedPassword has been moved to a separate package called AWSSDK.Extensions.EC2.DecryptPassword to support OpenSSL 3 and take a dependency on BouncyCastle.Cryptography.
The SDK's source copy of BouncyCastle has been removed.
S3's Tagging-Directive has been exposed as a public property on CopyObjectRequest and is no longer automatically set to COPY. If a user doesn't specify a tagging directive the S3 backend automatically assumes it is COPY but if a user explicitly sets it to null, then we won't set the value at all.
AmazonS3Config's UseArnRegion will take the value set in the environment variable over that set in the ~/.aws/config file. This follows other config environment variable + config file precedence.
Leading slashes will no longer be trimmed in CopyObject and CopyPart operations. The config option DisableTrimmingLeadingSlash has been removed.

Other noteworthy changes
Removed Code

The obsolete ECSTaskCredentials class is removed. Please use the GenericContainerCredentials provider which also supports EKS Pod Identities.
The obsolete StoredProfileAWSCredentials and StoredProfileCredentials is removed. Please use the NetSDKCredentialsFile or the SharedCredentialsFile.
The obsolete HasCachedAccessTokenAvailable method on the SSOAWSCredentials class is removed.
The obsolete EnvironmentAWSCredentials is removed. Please use AppConfigAWSCredentials instead.
The obsolete StoredProfileFederatedCredentials is removed. Please use FederatedAWSCredentials instead.
The obsolete StoredProfileSAMLCredentials class in SecurityTokenService is removed. Please use FederatedAWSCredentials instead.
The obsolete EndpointDiscoveryEnabled class is removed. Please use the EnvironmentVariableAWSConfiguration instead.
The obsolete UseSigV4 property on the AmazonWebServiceRequest class is removed. SignatureVersion will be used directly instead.
The obsolete TryGetSection methods in ProfileIniFile that don't take in nested properties is removed. Please use the TryGetSection method in ProfileIniFile that accounts for nested properties.
The obsolete Parameters dictionary in WebServiceRequestEventArgs is obsolete. ParameteCollection will be used instead.
The obsolete DoesS3BucketExistAsync(string bucketName) in ICoreAmazonS3 is removed because it always uses HTTP. Please use Amazon.S3.Util.AmazonS3Util.DoesS3BucketExistV2Async instead.
The following methods in AWSSDKUtils are removed ResolveResourcePath, ProtectEncodedSlashUrlEncode, ConvertToUnixEpochMilliSeconds
EC2_METADATA_SVC, EC2_METADATA_ROOT, EC2_USERDATA_ROOT, EC2_DYNAMICDATA_ROOT, EC2_APITOKEN_URL in EC2InstanceMetadata are removed. The fields were marked as obsolete in v3.
The obsolete ProfileManager class in Amazon.Util is removed. Please use the SharedCredentialsFile or the NetSDKCredentialsFile instead.
The following obsolete properties on AWSConfigs are removed: Logging, ResponseLogging, and LogMetrics. Use LoggingConfig instead.
public static Condition NewCondition(DateComparisonType type, DateTime date) in Amazon.Auth/AccessControlPolicy/ConditionFactory is removed. Please use NewConditionUtc instead.
In the ClientConfig class, the obsolete DetermineDnsSuffix has been removed. Use the service specific client.DetermineServiceOperationEndpoint method instead. The ReadEntireResponse property has been removed, use the AWSConfigs.LoggingConfig.LogResponses or ClientConfig.LogResponse instead.

DynamoDB Changes
In V4 we're addressing issues around testability, improving configuring the high-level Table and DynamoDBContext clients, and potentially additional fixes that require breaking changes.

In DynamoDB's high-level programming model, initializing the Table with a mocked IAmazonDynamoDB now returns an InvalidOperationException instead of a NullReferenceException . Async Table methods should now work with a mocked client but you may still see exceptions when calling sync methods from .NET/Core/Standard. See PR #3388, this mostly addresses #1589.
In DynamoDB's object persistence programming model, we've separated the shared DynamoDBOperationConfig into new operation-specific objects (SaveConfig, LoadConfig, QueryConfig, etc.). The shared config has grown overtime, and contains properties that don't apply to every operation which can lead to confusion. we've marked the methods that take DynamoDBOperationConfig as obsolete. We won't remove them from V4 yet, though may do so in a future version. See PR #3421
In DynamoDB's object persistence programming model, we've removed MetadataCachingMode and DisableFetchingTableMetadata from DynamoDBOperationConfig, and did not include these on the new operation-specific configs that were introduced above. These are table-level settings that should be specified on the global AWSConfigsDynamoDB.Context or on DynamoDBContextConfig. See PR #3422
In DynamoDB's object persistence programming model, DynamoDBOperationConfig no longer inherits from DynamoDBContextConfig. This prevents you from passing a DynamoDBOperationConfig in to the constructor for DynamoDBContext, where some properties on the operation-specific config (such as OverrideTableName) do not apply. See PR #3422
DynamoDBStreams has been removed from the DynamoDB package and is now in its own package and namespace.
Community PR #3476 Allow to remove TableNamePrefix on individual operation level. Thanks Oleksandr Liakhevych
We have added new operation specific interfaces to allow customers to mock DynamoDB operations. See PR #3450. The factory methods on IDynamoDBContext have been updated to return the new interfaces.

Object Persistence Programming Model

Mock BatchGet operations via IBatchGet and IMultiTableBatchGet interfaces.
Mock BatchWrite operations via IBatchWrite and IMultiTableBatchWrite interfaces.
Mock TransactGet operations via ITransactGet and IMultiTableTransactGet interfaces.
Mock TransactWrite operations via ITransactWrite and IMultiTableTransactWrite interfaces.
Mock Scan and Query operations via the IAsyncSearch interface.

Document Programming Model

Mock Table operations via the ITable interface.
Mock Scan and Query operations via the ISearch interface.
Mock TransactWrite operations via IDocumentTransactWrite and IMultiTableDocumentTransactWrite interfaces.
Mock TransactGet operations via IDocumentTransactGet and IMultiTableDocumentTransactGet interfaces.
Mock BatchWrite operations via IDocumentBatchWrite and IMultiTableDocumentBatchWrite interfaces.
Mock BatchGet operations via IDocumentBatchGet and IMultiTableDocumentBatchGet interfaces.

The FromJson and ToJson methods on the Document object now use System.Text.Json instead of LitJson for serialization. A benefit of using System.Text.Json is this parser supports using the .NET Decimal type supporting higher precision for numeric floating point properties.

The following changes were made in the SDK. They do not require changes to applications code using the SDK.

The following dependencies were added to the .NET Framework 4.7.2 and .NET Standard 2.0 targets

System.Buffers
System.Memory
System.Text.Json

AWSSDK.Extensions.NETCore.Setup has been made Native AOT compatible.
In .NET Standard 2.0, .NET Core 3.1 and .NET 8 the AssemblyVersion will match the AssemblyFileVersion. In .NET Framework 4.7.2 target AssemblyVersion will continue to use the V3 pattern of locking the version to the first 2 parts of the the AssemblyFileVersion. This is done because .NET Framework treats the AssemblyVersion as part of the identity assembly. This causes assembly collisions and forced recompilation when mixing versions of the SDK.
The embedded endpoints.json file in AWSSDK.Core was removed. This was a 1 MB json file that was parsed at startup for the SDK to determine the service endpoint for a region. Endpoint resolution has been replaced with a new system that generates rules into each individual service assembly for determining the service endpoints.
Community PR #3359 Optimize GetExtension execution time on .NET 8. Thanks Steven Weerdenburg
Community PR #3293 improving AWSSDK.ToHex performance. Thanks Steven Weerdenburg
Community PR #3292 improving AWSSDK.CopyTo performance. Thanks Daniel Marbach
Community PR #3324 optimizing the AWS SigV4 signer. Thanks Daniel Marbach
Community PR #3363 improving AWSSDKUtils.ParameterAsString performance. Thanks Daniel Marbach
Community PR #3365 improving AWSSDKUtils.DetermineService performance. Thanks Daniel Marbach
Community PR #3307 Optimizing AWSSDKUtils.UrlEncode performance. Thanks Daniel Marbach
Community PR #3425 Avoid allocating byte[] when converting MemoryStream to String. Thanks Paulo Morgado
Community PR #3423 Refactor user agent construction to avoid creating unnecessary string objects. Thanks Paulo Morgado
Community PR #3439 Refactor JSON request marshaller to avoid creating unnecessary intermediate strings. Thanks Paulo Morgado
Community PR #3458 Add ToString methods for better enum string conversion.
Thanks Paulo Morgado

We'll publish the preview packages to NuGet (e.g. <PackageReference Include="AWSSDK.AccessAnalyzer" Version="<IP_ADDRESS>-preview" />), we're just working on some changes to our internal build system at the moment (we'll update this issue as soon as the packages are available).

First preview packages have been released. Blog post for the release https://aws.amazon.com/blogs/developer/preview-1-of-aws-sdk-for-net-v4/

Are you able to provide a preview version of Amazon.AspNetCore.DataProtection.SSM that depends on AWSSDK.Extensions.NETCore.Setup?
Trying to enable native AoT for a project that depends on the SSM package gives a bunch of warnings:
ILC : Trim analysis error IL2026: Microsoft.Extensions.DependencyInjection.ExtensionMethods.PersistKeysToAWSSystemsManager(IDataProtectionBuilder,String,Action`1<PersistOptions>): Using member 'Microsoft.Extensions.DependencyInjection.ServiceCollectionExtensions.TryAddAWSService<IAmazonSimpleSystemsManagement>(IServiceCollection,ServiceLifetime)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. The AWSSDK.Extensions.NETCore.Setup package has not been updated to support Native AOT compilations.
C:\codebuild\tmp\output\src1982900738\src\aws-sdk-net\sdk\src\Core\Amazon.Runtime\ConstantClass.cs(84): Trim analysis error IL2072: Amazon.Runtime.ConstantClass.Intern(): 'type' argument does not satisfy 'DynamicallyAccessedMemberTypes.PublicFields' in call to 'Amazon.Runtime.ConstantClass.LoadFields(Type)'. The return value of method '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.
  ILC: Method '[AWSSDK.Extensions.NETCore.Setup]Amazon.Extensions.NETCore.Setup.DefaultClientConfig..ctor()' will always throw because: Missing method 'Void Amazon.Runtime.ClientConfig..ctor()'
  ILC: Method '[Amazon.AspNetCore.DataProtection.SSM]Amazon.AspNetCore.DataProtection.SSM.SSMXmlRepository+<GetAllElementsAsync>d__9.MoveNext()' will always throw because: Missing method 'Void Amazon.SimpleSystemsManagement.Model.GetParametersByPathRequest.set_WithDecryption(Boolean)'

It's possible some of the above are also coming from internal libraries for transient dependencies that haven't been compiled against v4 yet either.
The app is still blocked from 0 AoT warnings due to a dependency on another third-party library that hasn't published some fixes I made yet, but otherwise this SSM package is the final hurdle.

FYI this is the error I get from an .NET 8 app running as a Lambda with the latest version of Amazon.AspNetCore.DataProtection.SSM. It builds fine, but then fails at runtime:
System.Security.Cryptography.CryptographicException: An error occurred while trying to encrypt the provided data. Refer to the inner exception for more information.
 ---> System.MissingMethodException: Method not found: 'Void Amazon.SimpleSystemsManagement.Model.GetParametersByPathRequest.set_WithDecryption(Boolean)'.
   at Amazon.AspNetCore.DataProtection.SSM.SSMXmlRepository.GetAllElementsAsync()
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine)
   at Amazon.AspNetCore.DataProtection.SSM.SSMXmlRepository.GetAllElementsAsync()
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Amazon.AspNetCore.DataProtection.SSM.SSMXmlRepository.GetAllElements()
   at Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager.GetAllKeys()
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider.CreateCacheableKeyRingCore(DateTimeOffset now, IKey keyJustAdded)
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider.GetCurrentKeyRingCore(DateTime utcNow, Boolean forceRefresh)
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Protect(Byte[] plaintext)
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Protect(Byte[] plaintext)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Serialize(AntiforgeryToken token)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.Serialize(IAntiforgeryFeature antiforgeryFeature)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.GetAndStoreTokens(HttpContext httpContext)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.AntiforgeryExtensions.GetHtml(IAntiforgery antiforgery, HttpContext httpContext)
   at Microsoft.AspNetCore.Mvc.TagHelpers.FormTagHelper.Process(TagHelperContext context, TagHelperOutput output)
   at Microsoft.AspNetCore.Razor.TagHelpers.TagHelper.ProcessAsync(TagHelperContext context, TagHelperOutput output)
   at Microsoft.AspNetCore.Razor.Runtime.TagHelpers.TagHelperRunner.RunAsync(TagHelperExecutionContext executionContext)
   at AspNetCoreGeneratedDocument.Pages_Shared_SignIn.ExecuteAsync() in /_/src/Codeflowbot/Pages/Shared/SignIn.cshtml:line 13
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageCoreAsync(IRazorPage page, ViewContext context)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageAsync(IRazorPage page, ViewContext context, Boolean invokeViewStarts)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderAsync(ViewContext context)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ViewContext viewContext, String contentType, Nullable`1 statusCode)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ViewContext viewContext, String contentType, Nullable`1 statusCode)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeResultAsync>g__Logged|22_0(ResourceInvoker invoker, IActionResult result)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResultFilterAsync>g__Awaited|30_0[TFilter,TFilterAsync](ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResultExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeResultFilters()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)
   at MyApp.MyLoggerMiddleware.Invoke(HttpContext context) in /_/src/Codeflowbot/Middleware/CurrentUserLoggerMiddleware.cs:line 20
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.InvokeCore(HttpContext context)
   at Microsoft.AspNetCore.Diagnostics.StatusCodePagesMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.<Invoke>g__Awaited|10_0(ExceptionHandlerMiddlewareImpl middleware, HttpContext context, Task task)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.HandleException(HttpContext context, ExceptionDispatchInfo edi)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.<Invoke>g__Awaited|10_0(ExceptionHandlerMiddlewareImpl middleware, HttpContext context, Task task)
   at MyApp.MyMiddleware.Invoke(HttpContext context) in /_/src/Codeflowbot/Middleware/LambdaLoggerMiddleware.cs:line 38
   at Amazon.Lambda.AspNetCoreServer.AbstractAspNetCoreFunction`2.ProcessRequest(ILambdaContext lambdaContext, Object context, InvokeFeatures features, Boolean rethrowUnhandledError)

@martincostello A preview version of Amazon.AspNetCore.DataProtection.SSM is out targeting V4 https://www.nuget.org/packages/Amazon.AspNetCore.DataProtection.SSM/4.0.0-preview.1

Thanks @normj.
I've tested the latest version of the packages with three of our applications collectively using the v4 packages listed below, and I've not encountered any issues:

Amazon.AspNetCore.DataProtection.SSM
AWSSDK.DynamoDBv2
AWSSDK.SimpleSystemsManagement
AWSSDK.SecurityToken

I've also tried native AoT publishing with two of the three, and there were also no trim warnings.

Awesome @martincostello! Thanks for the feedback.

Would it make sense to drop 'netcoreapp3.1' target framework as well in V4? It is not supported by Microsoft. Anyone who uses it for whatever reason - would still be able to use netstandard2.0 version.

@Dreamescaper When we choose to drop a target we look at is it supported by Microsoft and our customer usage of the target. For example .NET 6 goes out of support by Microsoft tomorrow but we know there are still a lot of users still using .NET 6 and that would pretty rough to force everybody to update to get access to the latest AWS changes.
I can't give numbers but when we started the V4 effort last spring there was still a lot of .NET Core 3.1 usage. The usage is dropping pretty fast now but given the amount of required heads up time we have to give for dropping a platform it would delay V4. I suspect we will do a follow up 4.1 sometime in the near future that drops .NET Core 3.1. There are also some slight differences between the .NET Core 3.1 target and .NET Standard 2.0 target with dependencies and a few APIs that are only available in .NET Core 3.1 given it has access to more .NET APIs.

Is there any rough timeline on a preview 2 or GA? Excited to use this and see the perf benefits.

@SamuelCox We are currently on preview 4. I'm hesitant to put a timeframe because as a team that is involved with almost every AWS release you can imagine we get randomized quite a bit. The intention was for V4 to have a relatively short development cycle to get to GA avoid it getting delayed due to our team's nature of being pulled in so many directions. Given we are in re:Invent time and then moving into the holiday season here in the US I don't see us GAing this year.


[iOS] SkiaNode props not reflecting most recent value change when change occurs in the background

Description
On my Skia canvas, I have gradients and texts that change color depending on user theme preference. I'm running into an issue specifically on iOS where if I dismiss the app to the background and change the theme, whenever I bring the app back to the foreground, the updates to the colors aren't reflected on the canvas. This is happening on iOS exclusively, as I'm unable to reproduce on Android.
Version
0.1.171
Steps to reproduce

See reproducible code
Run iOS simulator with reproducible code
In the simulator, put the app into the background, then in settings change dark mode to light mode or vice-versa
Bring app to the foreground
See that the text color does not change, unless, you click the text, oddly.

Snack, code example, screenshot, or link to a repository
function TestText() {
    const isDarkMode = useColorScheme() === 'dark';
    const color = isDarkMode ? 'red' : 'blue';

    const fontSize = 32;
    const font = useFont(
        require('./assets/fonts/NunitoSans-Regular.ttf'),
        fontSize,
    );

    if (!font) {
        return null;
    }

    return (
        <View style={{padding: 16}}>
            <Canvas style={{height: fontSize, backgroundColor: 'green'}}>
                <Text
                    x={0}
                    color={color}
                    y={fontSize}
                    font={font}
                    text="Hello world!"
                />
            </Canvas>
        </View>
    );
}

Confirmed! Will investigate, thanks for the nice and clear reproduction @ealmiladi!


Using MediaCapabilities API page

a guide article called "Using the  API", which is a subpage of the main API landing page and describes how to use the API at a basic level.

duplicate of #415


Building for target of different words size than host

I'm trying to build scipy for a 32-bit target (Cortex-A7) using a 64-bit host and am hitting an error which I suppose has something to do with this:
| build/tmp-glibc/work/armv7vet2hf-neon-ultima-linux-gnueabi/python3-scipy/1.5.3-r0/recipe-sysroot-native/usr/include/python3.8/pyport.h:726:2: error: #error "long_bit definition appears wrong for platform (bad gcc/glibc config?)."
|   726 | #error "long_bit definition appears wrong for platform (bad gcc/glibc config?)."
|       |  ^~~~~

It seems that for whatever reason the native pyport.h is used which due to the word size mismatch will obviously be wrong.

To be specific, this happens when trying to compile pypocketfft.cxx in scipy/fft/_pocketfft.
It seems that the issue here is more with pybind11 than with NumPy or SciPy

To be specific, this happens when trying to compile pypocketfft.cxx in scipy/fft/_pocketfft.
It seems that the issue here is more with pybind11 than with NumPy or SciPy


Update efergy to add support for multiple channels

Description:
Fix for the issue I pointed out here about a year ago. Adds support for solar installations using Eco-Eye or Wattson energy monitors. Changed entity id to include energy channel.
No documentation changes are applicable however entity id's will be different therefore it's a breaking change.
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox.

Hi @daniel-stoneuk,
It seems you haven't yet signed a CLA. Please do so here.
Once you do that we will be able to review and accept this pull request.
Thanks!

I have changed the edits that I've made to use string formatting however there are other elements of the component that do not use string formatting - is this okay?

This PR seems to have gone stale. Closing it. You can reopen it when you're ready to finish it.


Sampling needs to be configurable for tracing, even if using custom sampler. Current code results in massive log spam

Describe the feature request
We use Dynatrace at our company and are currently testing using the new OTEL configuration it provides with Istio 1.22, since OpenTracing was removed in Envoy 1.30, which is what Istio 1.22 uses. We have it all working but are seeing this message nonstop in our logs, to the point it's very difficult to see actual traffic logs without some sort of filtering done:
2024-09-05T18:28:10.787073363Z 2024-09-05T18:28:10.786914Z	error	envoy tracing external/envoy/source/extensions/tracers/opentelemetry/http_trace_exporter.cc:86	OTLP HTTP exporter received a non-success status code: 503 while exporting the OTLP message	thread=23
It looks like Istio hardcodes a sample rate of 100 when using a custom sampler - https://github.com/istio/istio/blob/b8197f455bcf6b0ce48ef8a1f26b7a1313c429fb/pilot/pkg/networking/core/tracing.go#L119-L130. Thus, we have deduced with Dynatrace support that it's just rejecting the majority of the traces due to sampling rate limits on its side.
The comment says "the sampling percentage is set to 100% so all spans arrive at the sampler for its decision" but why limit it in this way? I don't want to sample EVERY call, and send EVERY call to Dynatrace just for them to throw away 95% of them; isn't that incredibly wasteful? Not to mention, the very point of this issue which is my istio-proxy logs are filled nonstop with 503's.
I suggest making the sample rate configurable, just like it is with a non-custom sampler, so consumers can choose what works best for them.
Affected product area (please put an X in all that apply)
[ ] Ambient
[ ] Docs
[ ] Dual Stack
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ X ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

@joaopgrassi

Not an expert here but I think there is some confusion. First, the logs you are seeing (OTLP HTTP exporter received a non-success status code: 503 while exporting the OTLP message) have nothing to do with sampling. This means that we are failing to report to dynatrace. This is orthogonal from how much we sample -- it seems like your setup is completely broken and not able to export to dynatrace.
Note a single one of those calls could be (attempting to) exporting 1000s of spans at once.
Now on the 100% tracing - it does not mean 100% of traces will be sampled. It means you are using a custom sampler which is not (just) percentage based. if we were to set this to something else (say 1%), then we would prefilter 1% of spans before we even let the custom sampler. Dynatraces sampler (and others) expect to see all spans (locally!) so they can decide which ones to sample using more complex algorithms.

Interesting.....ok then, let me take this back to our own monitoring SME's and Dynatrace and see what they say. Interestingly enough, we see traces in Dynatrace, so at least SOME of getting over there. But then we also see these 503's, so it almost seems like it's working sporadically, which makes no sense to me. We are using the exact setup steps in their docs. ¯_(ツ)_/¯
Thanks @howardjohn , I hope to follow up shortly.

Hi all, sorry this notification seem to have slipped on the myriad of my other notifications.
Yes, @jbilliau-rcd  what @howardjohn mentioned is correct. The percentage sampling is hardcoded to 100% when using a customer sampler on purpose. For a sampler to be able to accurately apply the decision, it needs to "see" all spans. If we were to set the percentage to 1%, then the sampler only has 1% of the entire population to sample. So we want everything there.
I'm an engineer working at Dynatrace, I have looked now into your support case. Can you confirm that it's a healthcheck that is being fired in the pod? Can you confirm that the spans that do get ingested Dynatrace are the health check ones? (should have attributes to help find this out).
My assumption at the moment is that the health checks are producing the spans non-stop. I think it may be even a bug in the OTel tracer in Envoy. If there's a customer sampler configured (which is your case), it seems we don't use the sample decision from Envoy and 100% rely on the sampler.  https://github.com/envoyproxy/envoy/blob/main/source/extensions/tracers/opentelemetry/tracer.cc#L219. See that tracing_decision is not used when a sampler is present.
I have found this PR https://github.com/envoyproxy/envoy/pull/3578 that seem to somehow address sampling of healthchecks. If I'm right, that decision sets the tracing_decision to false for health check requests, but since we don't use it, they are all sampled.
But, I tried using this sample app from Istio to reproduce it https://istio.io/latest/docs/ops/configuration/mesh/app-health-check/ but I get no spans at all. No errors, nothing. Can you maybe share the app/pod definition that you deploy in the cluster so I can verify this? One thing you can try is editing the MeshConfig and removing the Dynatrace sampler and see if the error stops.

hey @joaopgrassi , thanks for responding....this has been holding up our Istio 1.22 rollout for over a month now while we try to figure out what these 503's are. Our nonprod Dynatrace environment is already configured to ignore all health checks, as well as prometheus scraping:

Now, just out of curiosity, I have removed all PodMonitors from my cluster (so prometheus isn't scraping anything anymore) AND removed my readinessProbe....so at this point, nothing is hitting my application, internally or externally. And yet....in the logs I see this:
<IP_ADDRESS>:80 <IP_ADDRESS>:46580 - - -
2024-09-20T15:25:18.210571734Z [2024-09-20T15:25:17.896Z] "- - -" 0 - "-" 170 256 22 - "-" "-" "-" "-" "<IP_ADDRESS>:80" outbound|80||not.used <IP_ADDRESS>:46712 <IP_ADDRESS>:80 <IP_ADDRESS>:46598 - - -
2024-09-20T15:25:18.210573093Z [2024-09-20T15:25:17.915Z] "- - -" 0 - "-" 175 255 2 - "-" "-" "-" "-" "<IP_ADDRESS>:80" outbound|80||not.used <IP_ADDRESS>:46748 <IP_ADDRESS>:80 <IP_ADDRESS>:46698 - - -
2024-09-20T15:25:18.210574418Z [2024-09-20T15:25:17.918Z] "- - -" 0 - "-" 178 251 0 - "-" "-" "-" "-" "<IP_ADDRESS>:80" outbound|80||not.used <IP_ADDRESS>:46764 <IP_ADDRESS>:80 <IP_ADDRESS>:46750 - - -
2024-09-20T15:25:18.210575777Z [2024-09-20T15:25:17.918Z] "- - -" 0 - "-" 179 256 0 - "-" "-" "-" "-" "<IP_ADDRESS>:80" outbound|80||not.used <IP_ADDRESS>:46772 <IP_ADDRESS>:80 <IP_ADDRESS>:46754 - - -
2024-09-20T15:25:24.214691710Z [2024-09-20T15:25:20.891Z] "- - -" 0 - "-" 1254 1637 3007 - "-" "-" "-" "-" "<IP_ADDRESS>:9999" outbound|443||jason-dev-418023852230-use2-activegate.dynatrace.svc.cluster.local <IP_ADDRESS>:43360 <IP_ADDRESS>:443 <IP_ADDRESS>:45000 - - -
2024-09-20T15:25:28.219517601Z [2024-09-20T15:25:28.098Z] "- - -" 0 - "-" 1846 2621 12 - "-" "-" "-" "-" "<IP_ADDRESS>:443" outbound|443||kubernetes.default.svc.cluster.local <IP_ADDRESS>:53922 <IP_ADDRESS>:443 <IP_ADDRESS>:43128 - - -
2024-09-20T15:25:30.220557382Z [2024-09-20T15:25:23.898Z] "- - -" 0 - "-" 5732 1640 6005 - "-" "-" "-" "-" "<IP_ADDRESS>:9999" outbound|443||jason-dev-418023852230-use2-activegate.dynatrace.svc.cluster.local <IP_ADDRESS>:45546 <IP_ADDRESS>:443 <IP_ADDRESS>:35824 - - -
2024-09-20T15:25:42.224714190Z [2024-09-20T15:25:38.098Z] "- - -" 0 - "-" 884 1564 3331 - "-" "-" "-" "-" "<IP_ADDRESS>:9999" outbound|443||jason-dev-418023852230-use2-activegate.dynatrace.svc.cluster.local <IP_ADDRESS>:54300 <IP_ADDRESS>:443 <IP_ADDRESS>:36778 - - -
2024-09-20T15:32:37.301613681Z 2024-09-20T15:32:37.301316Z	error	envoy tracing external/envoy/source
/extensions/tracers/opentelemetry/http_trace_exporter.cc:86	OTLP HTTP exporter received a non-success status code: 503 while exporting the OTLP message	thread=31
2024-09-20T15:33:17.299095151Z 2024-09-20T15:33:17.298735Z	error	envoy tracing external/envoy/source/extensions/tracers/opentelemetry/http_trace_exporter.cc:86	OTLP HTTP exporter received a non-success status code: 503 while exporting the OTLP message	thread=32
2024-09-20T15:36:12.304875Z	error	envoy tracing external/envoy/source/extensions/tracers/opentelemetry/http_trace_exporter.cc:86	OTLP HTTP exporter received a non-success status code: 503 while exporting the OTLP message	thread=32
2024-09-20T15:38:42.242738Z	error	envoy tracing external/envoy/source/extensions/tracers/opentelemetry/http_trace_exporter.cc:86	OTLP HTTP exporter received a non-success status code: 503 while exporting the OTLP message	thread=20
So the first few lines are Istio connecting to EC2 instance metadata to get topology and region information...then we see the pod connecting to the in-cluster DT activategate....so far, all normal. Then, the 503's start, even with no traffic, no prom scraping, no probes configured at all.
Something's gotta be going on here. This is our IstioOperator config we deploy with istioctl:
extensionProviders:
          - name: dynatrace-otel
            opentelemetry:
              dynatrace_sampler:
                cluster_id:<PHONE_NUMBER>
                tenant: akp68187
              http:
                headers:
                  - name: Authorization
                    value: Api-Token XXX
                path: /api/v2/otlp/v1/traces
                timeout: 10s
              port: 443
              resource_detectors:
                dynatrace: {}
              service: istio-config/akpXXXX.live.dynatrace.com

So not sure where to go from here. Thoughts?

When Envoy exports to Dynatrace akpXXXX.live.dynatrace.com the OTLP message is forwarded to our servers, without any configuration being applied. The configuration you have there, is only applied later on in the pipeline. So it doesn't interfere with the initial "ingest" of the OTLP message. Our public APIs still receive it and forward the message.
But if Envoy is trying to export and getting the 503s, then unfortunately something must be triggering it to generate the spans. I'm not sure at this point how one can find out what is making it generate spans. Certainly something in your cluster is causing it. And it must be a lot, for the OTLP trace requests go over your tenant's limits and the requests are being throttled.
Maybe the Istio folks here can give more ideas how we can find out what is generating traffic on the pod? @zirain

Also, from my support case with Dynatrace:
Our dev's have idenitified some notable behavior. As mentioned before, on the cluster/active gate side we were not seeing 503's as shown by the OTel exporter. This was the main source of confusion, but while 503's were not present, we were reporting large spikes in 429 errors. This throttling error lines up far more with the envoy side spam. The reasoning for why the 429's appear as 503s seem to be a envoy/otel quirk. Searching online for similar issues has shown some similar cases where when the export endpoint stops responding, the 503 appears rather than the expected result. Unfortunately there is not much information on why this is, but it is envoy side and not a large focus.
So it almost does seem like if envoy doesn't get a 200, it just 503's regardless of the reason why. Thus, why I created this issue on the Envoy side...that log message should be mute-able, I don't want to see it.
https://github.com/envoyproxy/envoy/issues/35997#issuecomment-2334739443

Also, I experienced the log span you mentioned. It seems once a request fails to export traces, it keeps retrying, because my Envoy logs were filled with these messages: (even though I sent only a single request to Envoy)

This issue as it's stated can be closed, turns out this was a bug on the envoy side and was fixed via a PR by @joaopgrassi . Closing.

There's backports now in Envoy for versions 1.29|30|31. So once Istio releases new patch releases that includes those then this should be resolved for everyone.


how to handle Header and Trailer from this JAR

Hi @rbheemana @datawarlock
Could you guys please help in removing the header and trailer from EBCDIC binary file.

Please create a table and use where clause on the select table to ignore header and trailer records


Problems of managing users and admins

I found there're might be two systems/mechanisms of user management. One is signing up from xxxx.com/login page and this will by default create a new project with that user and make him as owner. Another is with OAuth/SSO or manually added by the owner, which belongs to current project.
My requirement is, there should be only one project, it has one owner and multiple admins, other normal users should create there account with OAuth. I tested and found following problems:

Cannot directly add existing account as project admin (in the teammate page), I have to send invitation email to the corresponding email address of that user, and he has to do sign up again from the invitation url, he cannot use the existing OAuth created account to login to dashboard as this account has no way to set password (maybe the real reason is there're two different accounts, described below). But because I want only one project, it is better to not allow signing up after initializing the first project.
Actually when signing up the email being input do not really need to be the same as the address which received the invitation, so it seems the user owns two accounts now, one for dashbord admin of the project, another for frontend usage of the same project. Even though the user input same email as his frontend OAuth account, these are still two different accounts, and the admin user has to remember yet another password. The good news is if he use same email, then jumping from dashboard to frontend will automatically use the corresponding frontend account.
After adding new user in the dashboard (ADD button in xxxx.com/dashbord/users), it cannot login from the xxxx.com/login entry and it always says email or password incorrect. It seems this is just a frontend account so cannot login from backend. However there's no way to directly login a frontend account using email and password, so I don't know what's the meaning of manually adding users in the dashboard, is it just used for on-behalf things? Another bug is after deleting this manually created user from dashboard and trying to sign up using the same email, it says the email already exists, so it looks like it's not really deleted, but still exists in database.

By the way, I found even using HTTP only deployment strategy (following https://github.com/clearflask/clearflask?tab=readme-ov-file#no-certificates), the invitation url in the email is still HTTPS, is this a bug?

Cannot directly add existing account as project admin

Yes this is by design unfortunately.
If they don't need Dashboard access, but do need to be able to change modify other people's comments, there is also the concept of Moderator. You can set the Moderator privileges on any project user here https://clearflask.com/dashboard/users

Actually when signing up the email being input do not really need to be the same as the address which received the invitation

Yes, a Dashboard admin account will auto-create an account on each project it owns. When you click the Visit button through the Dashboard, it will automatically create and log you in to that project.

After adding new user in the dashboard (ADD button in xxxx.com/dashbord/users),

Yes, these are users as part of the project and can only access the portal, not the Dashboard itself

the invitation url in the email is still HTTPS

Yes it is a bug. I don't think it's worth fixing, you should really add HTTPS.

Thanks for your reply.
Moderator is not what I want, I need someone else to be able to manage the roadmap.
Now I understand the relationship between dashboard account and project acount, a dashboard account could create or join to multiple projects, in each project there's a corresponding project account, this is good.
So at the moment the only way to add an admin is via email invitation, i.e. email service becomes a required dependency of admin management. I hope we could have a more standalone method to manage them without a thirdparty dependency, I agree the design of invitating users to create their dashboard account, but how about directly making invitation url from dashboard so it can be send to the user in any way. Of course email is still an option, but in case the email service has problem, or the mail is missing or ignored, maybe adding a button to get the same invitation url could be a big help.
And when I want to add admins, I have to keep signing up open because the admin users have to create their dashbord accounts on their own. Can this be a potential risk?

However there's no way to directly login a frontend account using email and password, so I don't know what's the meaning of manually adding users in the dashboard, is it just used for on-behalf things?

Can you give any explanation about this?

Another bug is after deleting this manually created user from dashboard and trying to sign up using the same email, it says the email already exists, so it looks like it's not really deleted, but still exists in database.

This is a mistake by myself, never mind. But I found another tiny bug that when deleting a dashboard account by oneself, it is really deleted but the webpage shows an error message "Not Allowed", and when refreshing the page it will return to login dialog. So I think the "Not Allowed" message means the account was deleted and dashboard access is not allowed any more, but why not to directly return to login without this error message?


Potential regression with SSViewer::dontRewriteHashlinks()

I've just updated my framework to the latest 4.0.x-dev on my sandbox host, and I've noticed that in code where I'm making use of SSViewer::dontRewriteHashlinks(), hash links are still being rewritten.  For example:
public function getTemplate()
{
    return SSViewer::create([static::class])->dontRewriteHashlinks();
}

Prior to updating framework, rendering this object using getTemplate() would result in HTML with regular hash links. However, it is now ignoring the dontRewriteHashlinks() call, and the resulting HTML has rewritten hash links. Is this a possible regression in the last update to SSViewer?

The way it works is a little different to how it once worked; This method used to affect the global state, but now it only affects the specific template you are rendering.
Can you please share a working proof of concept that I can test locally?

@tractorcow sure thing, here you go. Clone and make a .env for it. On build, a HashLink\Test\TestPage will be created as a root page that renders an object with a hashlink.  Check the code of HashLink\Test\TestObject to see what it's doing.

I'll need to install php7... I'll get back to you.

I see the problem; Unfortunately, it's not easy to fix.
When the string is originally rendered, (in forTemplate()) the hash-link is NOT rewritten.
However after this has been included in the parent page, the parent page does not have rewrite hashstring disabled, and it'll rewrite this link anyway.
You may need to turn it off on the TestPage, not on the TestObject.
This works:
<?php

namespace HashLink\Test;

use PageController;

class TestPageController extends PageController
{
    public function getViewer($action)
    {
        return parent::getViewer($action)->dontRewriteHashlinks();
    }
}

@tractorcow disabling it per page is indeed a workaround, but my apps consist of a graph of individual component objects, each one responsible for it's own rendering.  Some will require hashlinks rewritten, and some not.  So ideally we still need to be able to modify this behaviour on an individual basis (i.e. per SSViewer instance), which was the former functionality until these changes.
Would @chillu care to weigh in with his thoughts?

Well, we could use a new option in DBHTMLText to flag whether hash links are re-written or not; When a nested text is included in a parent template (e.g. a page including an include), it could use this option to prevent re-writing of links we'd explicitly not re-written.
This is the same problem, and solution, that we had for shortcodes; Previously shortcodes were re-written by parent containers. The fix was a HTMLFragment injector registration which created DBHTMLText with shortcodes disabled, and these are used as the default fragment holder.

I've had a look at this, and it doesn't seem possible for an inner template to disable hash rewrites in an outer template.
You will need to set the variable before rendering pages where you need to disable hashlink rewrites.
<?php

namespace HashLink\Test;

use PageController;
use SilverStripe\View\SSViewer;

class TestPageController extends PageController
{
    protected function init() {
        parent::init();
        SSViewer::setRewriteHashLinksDefault(false);
    }
}

The issue we were running into with setting this variable in getTemplate() is that this is inside the rewrite loop, making it too late to set this variable. It is backed up, and restored after every render, so temporary modifications to this inside the loop are both overwritten, and reset at the end of the loop.
The long term fix is to not have rewriting at all, or just rewrite them explicitly rather than after the fact.

By the way, you can turn them on for individual objects inside a parent, but you can't do the reverse. For your project you'll need to do this on a case by case basis after turning it off for the entire page.

this makes me sad.
is there any way to output the included template without rerendering by the parent? seems pretty redundant for the parent to redo it. i can understand parsing it for collecting requirements, but why rerender?
i used to use a data-href attribute as a workaround, but it now chews that attribute as well. perhaps the regex could be fussier?


Tool fails on file with only a comment

When running pylint-quotes on a project that has a file like
"""This is my toplevel module."""

It will fail at https://github.com/edaniszewski/pylint-quotes/blob/master/pylint_quotes/checker.py#L149
with a traceback like
  File "/home/tellendil/.virtualenvs/entrepy/lib64/python3.6/site-packages/pylint/lint.py", line 726, in check
    self._do_check(files_or_modules)
  File "/home/tellendil/.virtualenvs/entrepy/lib64/python3.6/site-packages/pylint/lint.py", line 855, in _do_check
    self.check_astroid_module(ast_node, walker, rawcheckers, tokencheckers)
  File "/home/tellendil/.virtualenvs/entrepy/lib64/python3.6/site-packages/pylint/lint.py", line 934, in check_astroid_module
    walker.walk(ast_node)
  File "/home/tellendil/.virtualenvs/entrepy/lib64/python3.6/site-packages/pylint/utils.py", line 970, in walk
    cb(astroid)
  File "/home/tellendil/.virtualenvs/entrepy/lib64/python3.6/site-packages/pylint_quotes/checker.py", line 102, in visit_module
    self._process_for_docstring(node, 'module')
  File "/home/tellendil/.virtualenvs/entrepy/lib64/python3.6/site-packages/pylint_quotes/checker.py", line 149, in _process_for_docstring
    for i in range(0, node.body[0].lineno):
IndexError: list index out of range

thanks for opening the issue (:
added some changes via the referenced PR that should fix this. haven't yet released a new version which this change. i'm in the process of putting together a test suite that will include this case -- once thats in, i'll release.


Shortcut tests and fixes

[Current coverage][cc-pull] is 98.14%

Merging [#5][cc-pull] into [master][cc-base-branch] will increase coverage by 1.86%

@@             master         #5   diff @@
==========================================
  Files             3          3
  Lines           538        539     +1
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            518        529    +11
+ Misses           20         10    -10
  Partials          0          0

Powered by Codecov. Last updated by [41c1946...ac8cf72][cc-compare]
[cc-base-branch]: https://codecov.io/gh/TriOptima/tri.table/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/TriOptima/tri.table/compare/41c194639a82e435183fc06876d01ad6876cb4ce...ac8cf72ffc096b57029d7e769a2c7b649252b703?src=pr
[cc-pull]: https://codecov.io/gh/TriOptima/tri.table/pull/5?src=pr

This has been merged upstream.


Cannot install v0.2.0-beta.1 on the windows

When I try to install v0.2.0-beta.1 on windows system shows next error:
fatal: cannot create directory at 'blueprints/mirage:factory': Invalid argument.

Names with colon are restricted on Windows

Thank you, we will be changing this shortly

563074a4e8d23f93b0ec7ae0737854fac0c10983 fixes


Improve code generation(less verbose) for connecting bundles between modules

Feature Description
I'd like bundles between modules to be connected using more terse Verilog when there's no modification of the bundles.
Type of Feature

code cleanup

Related Features
This strongly related to  #99
I'll develop an example and attach it to this issue.

If I have a regular structure realized in Chisel, where there's a bundle of signals going between a lot of modules:
class ConfigurationBundle extends Bundle
{
   val xxx = Bool()
   val yyy = UInt...
}

class ThingAMaBobBundle extends Bundle
{
   val foo = Input(Vec(5, new ConfigurationBundle))
   val bar = Output(Vec(5, new ConfigurationBundle))
}

val a = Module(new ThingAMaBob)
val b = Module(new ThingAMaBob)

// Lots of Verilog for the code below
a.io <> b.io

This will result in lots of Verilog code as all elements in all vectors(if they are nested) will be exanded to named signals.
Whereas really if the the inputs and outputs had been represented as wide integers, then very little Verilog would have been generated.
From a human point of view, there's a single connection between a and b here, the details of those signals are only important inside the ThingAMaBob

I ran som experiments and to quantize the effect of a feature like this, it would reduce the size of the Verilog generated for a particular module from 24000 lines to  8000 lines. Somewhat guestimated.
For debugging/simulation, it might, sometimes, be useful to have the expanded current symbolic format.
If there was a way to avoid "unrolling" Vec()'s and represent Vec()'s as some sort of array/record in Verilog, that would probably break the break of this "code size explosion problem".

I read up a bit on Verilog, and I guess what's critically missing from Verilog to reduce the verboseness here is the 'typedef struct' construct that exists only in Verilog.
Like:
https://en.wikipedia.org/wiki/SystemVerilog
 typedef struct packed {
    bit [10:0]  expo;
    bit         sign;
    bit [51:0]  mant;
} FP;

FP     zero = 64'b0;

The question then becomes, and this is a big question, should Chisel output a subset of SystemVerilog that's supported by open source tools to make the generated code more legible to humans?
I know Intel Altera Quartus supports SystemVerilog, so I can't imagine that Xilinx and other FPGA vendors don't.
Critically Verilator says it supporst SystemVerilog(probably a subset including typedef structs...), Yosys says it supports "a small subset of SystemVerilog).
The generated code from Chisel matters to adption and use of Chisel.
Here's an interesting Youtube video about the Edge TPU by Google and their experience with Chisel. The video is a bit dated, but there are still applicable lessons to be learned:
https://www.youtube.com/watch?v=x85342Cny8c

Good thoughts @oharboe. Thanks for taking the time to write this up.
I'm in agreement that we should emit either SystemVerilog structs or interfaces. Currently the Verilog emitter is limited to Verilog 2001. However, we do have a SystemVerilog emitter (which is an unmodified child of the Verilog emitter). I think it would be reasonable to build out the SV emitter to included structs and/or interfaces in addition to logic types and the always_* SV variants.
With this approach you can then get strict Verilog 2001 if you need it or "better" SV if your tools support it.

@seldridge  Sounds good! I would encourage Chisel to try to stay within a subset of SystemVerilog that's usable by open source tools: Verilator and Yosys. Otherwise, it's going to be tough to engage the larger community in this support as not everybody has access to $1m/year tools.

Hi @oharboe
I find it quite interesting too, my main question is the difference when it comes to synthesis ? In terms of runtime, resources usage and congestion ?
As far as I understand current tools : the simpler verilog, the better result (and faster synthesis) despite much larger verilog files.
However I have no actual figures to demonstrate this statement so I would be quite interested in actual comparisons for big projects.
Depending how far you want to expend the modification of the emitter, one concern is for example : a register of a SV packed struct is treated as single big register which might cause congestion issues in some case where the tool attempt to have all bits of the signal placed closely although it might not be necessary.
(talking from FPGA synthesis, place&route point of view)

@johnsbrew Excellent point. I guess this argues for outputting both so it is possible to compare quality of results. I have found that Quartus seems to "get" my design and that it doesnt matter much how I articulate it. Really what matters is the amount of logic and wiring per cycle. I have no data to back this up.


The "jfrog plugin install" command should allow upgrading a plugin

Describe the bug
The "jfrog plugin install" command should upgrade an installed plugin to its latest version. With the current implementation, if the plugin is already installed, JFrog CLI prompts a message saying it is already installed, rather than upgrading it. A workaround is to run the "jfrog rt uninstall" command, and then install it again.
To Reproduce
Run "jfrog plugin install my-plugin@older-version" and then "jfrog plugin install my-plugin"
Expected behavior
If a newer version than the installed one exists, the plugin should be upgraded. If the installed plugin version is the latest one, a message should be displayed, saying that the latest plugin version is already installed.
Screenshots
N/A
Versions

JFrog CLI version: 1.41.1
JFrog CLI operating system: All
Artifactory Version: All

Additional context
N/A

Closing this issue , since the functionality works as expected.


Respawn time + buyback indicator

Currently, ReDota does not show the timing for when a dead hero will respawn, nor whether the player has buyback.

Respawn time indicator added in 43b88c829fdf29f354d97669570687e6859ec23d.


Failed to create service instance

Dear colleagues,
We are trying to create AI Core service instances via BTP operator on eu10 production. The creation failed, and I could see the following error message in the live manifest of the serviceinstance:
error sending request GET /v1/service_instances: Get
        "<<...encrypted_string...>>/v1/service_instances?attach_last_operations=true&fieldQuery=name+eq+%27ai-core%27+and+context%2Fclusterid+eq+%27B9F82677-D4A8-6153-847D-B291568D6256%27+and+context%2Fnamespace+eq+%27ai-core-namespace%27&labelQuery=_k8sname+eq+%27aicore-service-instance%27":
        Post
        "<<....encrypted_string....>>/oauth/token":
        unsupported protocol scheme ""

Can you please help me? Thank you!
If you want to check the encrypted strings in the above message, please contact me via Slack.
Cheers,
Wei

I will close this ticket for now. I am more convinced now it is an AI Core issue.

Hi @ww917352
Seems like an issue with the operator's credentials, verify that service manager url and token url are correct.
Thanks,
Keren


[tcgc] switch ... to always mean spreading, regardless of model or alias

This issue is blocked by #771
Clear and concise description of the problem
Right now, tcgc has ...MyModel maintain the logical grouping, but ...MyAlias spread out the parameters. This is because there is a lack of support for op(MyModel) language definitions, and because we want to regroup models spread in azure core templates.
However, this behavior is often confusing and has led to a lot of back and forth. After talking with the TypeSpec team, we want to change the default, because eventually with more language support, ...MyModel should mean spread. The TypeSpec team will also modify the spreading currently done in Azure.Core templates (#771). If we implement this change concurrently with the Azure.Core changes, emitters shouldn't really see any code changes
Checklist

[X] Follow our Code of Conduct
[X] Check that this issue is about the Azure libraries for typespec. For feature request in the typespec language or core libraries file it in the TypeSpec repo
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

closing because we're documenting this change in #1043

reopen since this is only for tcgc change.


[Logbook] Display all shells

As user, display all shells, but disable it if: "on water" or have an important damage.
Add a label about that states, to inform user why that shell is disabled.

Do not disable choices (same form for: new, new as admin, edit); but add a validator for new as user (no as admin).


After column sorting, I need it to write changes to react state

Description

Hey. I need to set changes into react state after column sorting (asc, des). As my understanding handsontable uses visual view to sort, columnMove and etc. It doesn't write sorting changes into state.
Your environment

React wrapper version: 3.0.0
Handsontable version: 6.2.2
Browser Name and version: Chrome Version 76.0.3809.87 (Official Build) (64-bit)
Operating System: Windows 10 (64-bit)

Hi. You're looking for getData() method. It will return data after the modifications.

Thanks. It works but I have used array of objects, is there a way to get data as it is, getData() returns array of arrays.

No, I don't see any method that could help here. You could map all indexes with toPhysicalRow() method and order rows on your own. But columns are props, and not always all of them are in use. This is left up to the developer to decide.


Ensure that router logs system health errors

@cgtz addressed comment.

There seems to be a test that checks an exception message:
com.github.ambry.frontend.AmbryBlobStorageServiceTest > routerExceptionPipelineTest FAILED
    org.junit.ComparisonFailure: Unexpected exception message expected:<VMTTRLPYD9[]> but was:<VMTTRLPYD9[ Error: UnexpectedInternalError]>
        at org.junit.Assert.assertEquals(Assert.java:123)
        at com.github.ambry.frontend.AmbryBlobStorageServiceTest.checkRouterExceptionPipeline(AmbryBlobStorageServiceTest.java:1545)
        at com.github.ambry.frontend.AmbryBlobStorageServiceTest.doRouterExceptionPipelineTest(AmbryBlobStorageServiceTest.java:1522)
        at com.github.ambry.frontend.AmbryBlobStorageServiceTest.routerExceptionPipelineTest(AmbryBlobStorageServiceTest.java:676)

Yeah because I think it sets the exception message - With this change, something extra is being added to the message.

Codecov Report

Merging #761 into master will decrease coverage by 0.05%.
The diff coverage is 100%.

@@             Coverage Diff              @@
##             master     #761      +/-   ##
============================================
- Coverage     65.62%   65.57%   -0.06%
- Complexity     3901     3903       +2
============================================
  Files           342      342
  Lines         25903    25908       +5
  Branches       3231     3233       +2
============================================
- Hits          16999    16989      -10
- Misses         8005     8016      +11
- Partials        899      903       +4

Impacted Files
Coverage Δ
Complexity Δ

...main/java/com.github.ambry.router/RouterUtils.java
94.73% <100%> (+0.61%)
10 <0> (+1)
:arrow_up:

.../java/com.github.ambry/router/RouterException.java
50% <100%> (ø)
4 <2> (ø)
:arrow_down:

...in/java/com.github.ambry.clustermap/Partition.java
82.43% <0%> (-4.06%)
23% <0%> (-1%)

...github.ambry.rest/AsyncRequestResponseHandler.java
88.52% <0%> (-2.3%)
23% <0%> (ø)

...in/java/com.github.ambry.store/BlobStoreStats.java
84.68% <0%> (-1.44%)
92% <0%> (-1%)

.../com.github.ambry.router/GetBlobInfoOperation.java
79.86% <0%> (-1.39%)
30% <0%> (-1%)

.../main/java/com.github.ambry.router/PutManager.java
84.13% <0%> (-0.69%)
22% <0%> (ø)

...ain/java/com.github.ambry/rest/ResponseStatus.java
100% <0%> (ø)
9% <0%> (ø)
:arrow_down:

...va/com.github.ambry.rest/NettyResponseChannel.java
90.88% <0%> (+0.04%)
80% <0%> (+2%)
:arrow_up:

...va/com.github.ambry/rest/RestServiceErrorCode.java
92.85% <0%> (+0.26%)
5% <0%> (ø)
:arrow_down:

... and 2 more

Continue to review full report at Codecov.

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

@cgtz fixed the test, this can be merged if you don't have any other comments.


django 2.0 supported

Hello,

MIDDLEWARE instead of MIDDLEWARE_CLASSES as of Django 1.10.
Cascaded option specified for Foreign key
Using User.is_authenticated() as methods rather than properties is no longer supported as of Django 2.0
Django 2.0 does NOT support Python 2.x.

Thanks!


replace print statements with logging

Describe your changes
Describe any testing you have performed
Please add any demo scripts to CIL-Demos/misc/
Link relevant issues
Checklist when you are ready to request a review

[ ] I have performed a self-review of my code
[ ] I have added docstrings in line with the guidance in the developer guide
[ ] I have implemented unit tests that cover any new or modified functionality
[ ] CHANGELOG.md has been updated with any functionality change
[ ] Request review from all relevant developers
[ ] Change pull request label to 'Waiting for review'

Contribution Notes
Please read and adhere to the developer guide and local patterns and conventions.
All contributed code must be under Apache-2.0

Close #1258 #1259


Configure CustomResource dynamically via python class.

Add option for importing outside of python class that returns config params,
and override CustomResoruce attributes dynamically instead of loading
config file. For example, outside of python class is able to retive config
params via network such as AWS dynamodb.

Below is an example of a config provider settings.
> cat /etc/cfn/cfn-resource-bridge.conf
[cfn_client]
resource_type=Custom::CfnCustom
default_action=python -m cfn_sqs
config_provider=com.example.cfn_bridge_config_provider.CfnBridgeConfigProvider

> cat /Library/Python/2.7/site-packages/com/example/cfn_bridge_config_provider.py
class CfnBridgeConfigProvider(object):

    def get_options(self):
        queue_url = self.get_queue_url_from_aws_dynamodb()
        return {
            'queue_url': queue_url,
            'default_action': 'action-default'
        }

This project has been archived. Please use CloudFormation’s native support for Custom Resources as documented at https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html


Updated prql-js dependency to v0.6.1 to use new case, loop and other added PRQL compiler features

See PRQL v0.6.0 and 0.6.1 release notes that list prql compiler lib updates: https://github.com/PRQL/prql/releases
Use new Pi PRQL example to test and demo it: https://prql-lang.org/posts/2023-03-14-pi-day/

PRQL loop examples to test prql-js v0.6.1 update:

PRQL loop examples after prql-js update:

Awesome @RandomFractals !

Tested generates sql "loop" queries with duckdb sql tools in vscode:

Released: https://github.com/PRQL/prql-vscode/releases/tag/0.6.1


OPUS

Adds support of hardware OPUS audio encoder when it is available on device.
Why ?
Improves audio quality for the same bitrate.
Prerequisites
A phone with a hardware OPUS encoder.

Released in 2.3.0


Switch test file from jld2 to daec

This PR simply replaces our single jld2 test file with a daec file and removed the JLD2 dependency from the package.

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

Project coverage is 89.11%.

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #53      +/-   ##
==========================================
+ Coverage   89.06%   89.11%   +0.04%
==========================================
  Files          31       31
  Lines        2305     2305
==========================================
+ Hits         2053     2054       +1
+ Misses        252      251       -1

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


Implement Azure Table/Cosmos DB counter store

Especially useful for Functions: can just reuse underlying Storage account, no need for any extra services.

Done in v4.0.


General Issue: Define scope of the package

Background Information
Current language in the Description File:

A toolbox for developers working on pharmaverse admiral packages.

Current language in the README:

Tools for developing functions and maintaining a healthy codebase within the family of admiral R packages.

But want to make sure we are all on the same page as these two phrases aren't exact and the overlap of admiral and admiraldev is a bit tricky.
I see this package as not only being for a place for specific functions that help our admiral packages functions, but also give us reports and tools to make our development life easier.
For example, the testing Addin that reformats the testthat files to adhere to our Unit Test Guidance.  An addin that allows for easier setup of roxygen headers and reports on keywords and families being used.  I see a lot more potential here, but don't want it to get too wild!
Definition of Done
The Scope of package is decided upon and written into the Readme.

I'd change wording slightly to "A toolbox for developers working on {admiral} and its extension packages". Otherwise I like it 👍

I think we should add more details for contributors and developers who want to add a new function. Which functions should be added to admiraldev and which to admiral?

I'm seeing an admiral function as something that adds a variable to a dataset or "helps" to add a variable to a dataset.  A helper could be a compute function, a source object, get_ something, etc.  But we should define them clearly.
While a function that checks the integrity of the function inputs and outputs is placed into admiraldev.   Hence the assert , is and some of the getfunctions moving here.   I thinkadmiraldev`  scope should have some additional room for helper tools like the expect_dfs, dataset_vignette, addin for roxygen template and re-numberings tests, etc.

@rossfarrugia any thoughts on this?  also anyone else we should invite to this package.  I just added Robin, but wasn't sure if any onco or other core people should be included.
@SyedMubasheer and @PoojaKumari05 just keeping you in the loop.

@bms63 my feeling is just start off with moving the pieces over that users don't ever need to use themselves from admiral (e.g. dev utility functions like the assertions) and then over time we could consider if anything else should move. if a user needs to use it directly though, I'd say leave it in admiral. I agree with your point that we'll add anything here over time that makes our development lives easier too.
On this note, one piece to consider including here from the start for me would be the CI/CD workflows as discussed at https://github.com/pharmaverse/admiraltemplate/pull/27 from admiraltemplate. It would cut down need for an extra new repo like {admiralci}.

also i'm fine with who you added from Roche side to this repo (I just removed Ondrej as he no longer works on this). we can add others over time as needed.

I am not sure if we should place the general workflows into admiraldev. If we do so, we can not modify them for admiraldev specific purposes because it would change the workflows for all other admiral related packages. Maybe it is safer to keep them separate.

@cicdguy (did you change your handle Dinakar? 😆 ) - note we decided at admiral core team that the CI/CD workflows should live in a new repo {admiralci} which you and your team could set-up and we could move all of https://github.com/pharmaverse/admiraltemplate/tree/main/.github/workflows (including the README) over to this repo. This means all other admiral repos then could just decide which workflows to assign based on the yaml approach and they would only ever be centrally maintained in one place. Sound ok to you?

@cicdguy (did you change your handle Dinakar? 😆 )

Ha, yeah I did 😸

Sound ok to you?

That sounds great! We will begin migration when the repo is ready. Just make me an admin on that repo and we'll handle the rest.

Here goes:  https://github.com/pharmaverse/admiralci


Did anyone test PHP74 compatibility?

We have found several issues in our pre-trial of PHP74 in Travis.
Currently, the test matrix here fails and does not yet include this new version.
Maybe we can share and create a required patch here to make it compatible with the new soon to be released PHP minor (dec 2019).

PHP Deprecated:  Array and string offset access syntax with curly braces is deprecated in /vendor/propel/propel/src/Propel/Runtime/ActiveQuery/Criteria.php on line 2411
Deprecated: Array and string offset access syntax with curly braces is deprecated in /vendor/propel/propel/src/Propel/Runtime/ActiveQuery/Criteria.php on line 2411
PHP Deprecated:  Array and string offset access syntax with curly braces is deprecated in /vendor/propel/propel/src/Propel/Runtime/ActiveQuery/Criteria.php on line 2414
Deprecated: Array and string offset access syntax with curly braces is deprecated in /vendor/propel/propel/src/Propel/Runtime/ActiveQuery/Criteria.php on line 2414

looks like needs small adjustments.

We're forking it and maintaining our own repo at this point.  I don't even know who maintains this repo.  It seems to be abandoned.

Is anyone aware of a working fork compatible to PHP7.4?

@asgouros we're maintaining one with Symfony 5.0 components now as well.  I'd encourage others to contribute with pull requests.  We'll be maintaining it for years to come.  It doesn't yet support strictly typed generated models, but that'd be an awesome pull request :)
https://github.com/rentpost/Propel2

If you are not aware, https://github.com/propelorm/Propel3

@SourceCode Oh, I'm aware.  Here is an issue I ticket I raised over a year ago...
https://github.com/propelorm/Propel3/issues/86
We've already started migrating to Doctrine now as well, but we'll need to maintain a fork of Propel for quite some time.

@oojacoboo @asgouros
What is your status on this subject at this point?
We at Spryker are still evaluating the options. But now things become critical as 7.4 is now really out there a lot, and we are creating tons of deprecation notices everywhere by now.

Well, we have taken the "fork" path for now just to provide the minimum PHP 7.4 compatibility changes.

Well, we have taken the "fork" path for now just to provide the minimum PHP 7.4 compatibility changes.

If its required by your software fork and update then submit a PR that is the best way to ensure the support you require gets included in the project long term.

@dereuromark We'll be maintaining a fork for at least a couple years.  It's fully 7.4 compatible and running in prod for us.
I'd certainly welcome collaboration on the fork:  https://github.com/rentpost/Propel2

There is now traffic again on this main library, it might be worth putting it all there if things can go back to normal maintenance mode. As then everyone would profit from it.
Just a question how many maintainers/developers are interested in long term support and help.

Given that the PHP74 improvements have landed in master, I will close this.


Add downcasting for FastSineBankGenerator->Generator.

Might be worth adding any other missing generators to this list. I'm working on making generators directly addable to bevy_synthizer Sound components and From makes that nicer to work with.
Thanks.

I'm frying other fish unrelated to synthizer-rs these days so let me know if you want to handle that, otherwise it's low on my list until I get far enough in ammo to need Synthizer.  Would rather batch anything you want to send me in one release.


Row-Level Security Azure SQL DW

Azure SQL Data Warehouse supports row-level-security:
see https://docs.microsoft.com/en-us/sql/relational-databases/security/row-level-security?view=sql-server-2017

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

ID: bba35cbb-4160-0b5d-6829-103b25ad6ce9
Version Independent ID: fa12ea8e-401a-9567-7b35-ffff532a99b6
Content: Choosing a batch processing technology
Content Source: docs/data-guide/technology-choices/batch-processing.md
Service: guidance
GitHub Login: @ZoinerTejada
Microsoft Alias: pnp

Hello @hau-mal Thank you for reporting this issue! We will investigate and make any necessary changes.


binding of ID does not work when bound value changes

When providing an ID to any one-way-input, the value is respected on the first render. However, when the bound ID value changes, the input element's ID does not change.
I added a failing test case for this in #178.

@bgentry This is standard Ember behavior
https://ember-twiddle.com/6b5a7a73af7e9e2dfba122e7ff4feb28

Can't believe I never knew about this one (documented here). Sorry for the noise, @martndemus


[Issue]: Since upgrade, "Open Jellyfin" from tray app opens document folder

Please describe your bug
Since upgrading to jellyfin_10.8.8_windows-x64.exe from the repo, when I right-click the tray app and click 'Open Jellyfin', it opens the Documents folder on Windows 10 instead of Jellyfin in the browser.
Jellyfin Version
10.8.0
if other:
10.8.8
Environment
- OS: Edition	Windows 10 Pro, Version	22H2, OS build	19045.2251, Experience	Windows Feature Experience Pack 120.2212.4180.0
- Jellyfin.Windows.Tray version <IP_ADDRESS>

Jellyfin logs
No response
FFmpeg logs
No response
Please attach any browser or client logs here

Nothing in the logs and nothing in windows logs about it.
Let me know what other info you many need since this is regarding the tray app.

Please attach any screenshots here
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Looking through a test install, I'm unable to replicate this issue. It's not the most ideal method to call explorer.exe with a URL in the code, but in all tests it's opened the default browser - Edge, Firefox, Chrome.
What's the current default browser on your system?

@anthonylavado  My current browser is Microsoft Edge, (Chromium) Version 109.0.1518.70 (Official build) (64-bit). I upgraded Jellyfin to version  10.8.9 (Windows X64) hoping the upgrade would solve the issue but the issue is still there. It is not an issue on my backup Windows Jellyfin server, which has the same version of Windows (right down to the version build number) as well as the same Edge build.
I set Google Chrome as default browser, restarted and it still occurs and I went back to Edge as my default browser.
Is there something in the Windows registry that could make this happen? I looked at Windows default app settings for Windows Explorer as well as Edge, including by protocol, to see if something was amiss and it appears there isn't.

After months, this issue went away. I only made two changes to my Windows 10 computer. I noticed my 'Documents Folder' in Windows had been moved from a custom location back to the Default profile location and I changed it back to my custom location and my Windows computer installed Cumulative Update for Windows 10 KB5022834 and .Net Framework update KB5022729. Maybe it reset some setting that was causing the tray app to open Documents folder. I don't know enough about the tray app to know it if writes anything to the registry or not and whether these two changes corrected it or not. It's fixed now. Marking closed.


Add timeout to osc commands for upstream rpm-packaging job

There was a job hanging in "osc branch" for days so add a timeout.
To hanging job was:
https://ci.opensuse.org/view/OpenStack/job/openstack-upstream-gerrit-rpm-packaging-Master/143/console

LGTM. personally I'd even just do $osc but either way is fine by me. +1

+1


Fix decapsulation failure

There's a bug that essentially breaks the current implementation; this PR patches it. I'll explain it briefly.
Kyber detects decryption failure by comparing the given and expected ciphertexts:
fail := byte(1 - subtle.ConstantTimeCompare(ciphertext[:], cmp))

Here subtle.ConstantTimeCompare returns 1 if decryption succeeded, and 0 on failure. Hence fail is 0 on success, and 1 on failure. On failure, Kyber should overwrite the decapsulated key with a secret dummy value. However, since fail is 0b00000001 only the lowest bit of each byte is overwritten.
for i := 0; i < paramsSymBytes; i++ {
	skx := privateKey[:Kyber512SKBytes-paramsSymBytes+i]
	kr[i] = kr[i] ^ (fail & (kr[i] ^ skx[i]))
}

This effectively turns the KEM into a CPA-secure scheme, which you can break with about log N queries and 2^32 hashes computed locally. The fix is pretty simple: fail needs to be 0xff on failure.

@defund This is a fantastic catch and a very important fix. Thank you very much for your diligence and your contributions.

Wow... Updated the JavaScript version as well


[mwc-button-icon and Material Icons] Extra/unnecessary Top Padding

Describe the bug
I have noticed using the Chrome dev tools, that using Material Icons together with mwc-button-icon add unnecessary top padding on the icon.
To Reproduce
import linkedinIcon from '../components/svgs/brands/linkedin.svg.js';

--- SNIP-- -

<div class="action-icons" slot = "actionItems" >
    <!-- social icons -->
    <mwc-icon-button
        @click=${() =>
        Router.go(socialMedia.href)}
        >linkedinIcon</mwc-icon-button
    >
</div>

--- SNIP ---

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.

Browser Version (please complete the following information):
Google Chrome
Version 85.0.4183.83 (Official Build) (64-bit)

Additional context
Add any other context about the problem here.

This is an internal  and style because its a part of the implementation. What are you trying achieve in which it cannot be applied to <mwc-icon-button> directly?

I am not trying to achieve anything mwc-button-icon works just fine it is just this internal extra top padding which bugs me a bit like is it really necessary?

It is necessary. Without the padding it looks like this


Revisiting how we define GraphQL queries in the starter template

Today, GraphQL queries to the Storefront API are defined as strings in the starter template:
useShopQuery({ query: QUERY, ... });

const QUERY = gql`
  query indexContent(
    $country: CountryCode
    $numCollections: Int = 2
    $numProducts: Int = 3
    $includeReferenceMetafieldDetails: Boolean = false
    $numProductMetafields: Int = 0
    $numProductVariants: Int = 250
    $numProductMedia: Int = 1
    $numProductVariantMetafields: Int = 10
    $numProductVariantSellingPlanAllocations: Int = 0
    $numProductSellingPlanGroups: Int = 0
    $numProductSellingPlans: Int = 0
  ) @inContext(country: $country) {
    collections(first: $numCollections) {
      edges {
        node {
          descriptionHtml
          description
          handle
          id
          title
          image {
            ...ImageFragment
          }
          products(first: $numProducts) {
            edges {
              node {
                ...ProductProviderFragment
              }
            }
          }
        }
      }
    }
  }

  ${ProductProviderFragment}
  ${Image.Fragment}
`;

This includes several fragments exposed as strings from UI components we expose in Hydrogen.
Here's why we originally chose this pattern:

Simplicity. String-based queries co-located with the page server component means no jumping between files, no importing or finagling a build tool to generate queries from a .graphql file, etc. You also don't need to learn a new tool with its own set of options to fetch the data that you want.
Plug and play. We wanted Hydrogen components to work out of the box, so we needed to expose fragments to ensure developers queried enough information to make them work. Developers ideally only request what they need to make their components work, and it's easy to augment existing queries with custom additions.
Education. String-based queries show exactly what data you're requesting. It's just GraphQL. You can use the VSCode GraphQL plugin or the shopify.dev docs to explore what fields are available. We wrote a special codegen plugin to allow developers to hover over the fragments to see what exactly they contained.

As Hydrogen and the starter template have evolved, we've put this pattern through its paces. Its cracks are starting to show:

Variable bloat. As we added new features to Hydrogen components like selling plans, localization, and pagination, we had to allow developers to customize these values. With string-based fragments, there isn't a great solution for this other than to hardcode a variable in the fragment. The developer has to either provide the query a default value, or pass a value for the variable in useShopQuery. There are a ton of variables, and this feels gross and overwhelming.
Fragment bloat. Our initial strategy for providing just enough data to make the components of the work was a double-edged sword: our components do so much that we need to query so much data to make them work! The pendulum has swung too far in the other direction. Our graphql-constants.ts file containing the string fragments is large and likely bloats the compiled JavaScript bundle. See #49
Fragment discovery. Our approach for exposing fragment values as code comments kind of worked, but it's still not the best experience. It's not super clear to developers what they're querying. We can do better.

It's clear that this is not the best strategy moving forward.
What's important?
Let's narrow down some goals for what we're actually trying to achieve.

It should be clear what EXACT data Hydrogen components need to function. We currently do not validate props at runtime for Hydrogen components (or if we do, we don't do it enough). We should go through each component and validate its props, throwing an Error when a required piece of data was not provided, with an actionable step for the developer to update their GraphQL queries to fetch the correct data.
The GraphQL queries in the starter template should be elegant. This means less variable bloat. It probably means less fragment use, even if it makes for longer queries. I'm also OK with these queries living in *.graphql files in a graphql folder of the starter template, with a Vite plugin to compile them to GraphQL documents (along with #import fragment support).
Developers should be able to augment existing queries in the starter template. It should be easy and clear how to do this without searching for custom options or diving into the source code of Hydrogen.
Queries should be performant. We should not be over-fetching data. We should set sensible pagination defaults and make them easy to override. We shouldn't be bundling a bloated constants file.

How do we achieve this?
We're kicking around ideas!

Better Hydrogen component props validation (must-have)
Maybe a dedicated Storefront API client
Maybe standalone GraphQL files in the starter template
Maybe queries-as-components, e.g. <ProductProviderQuery /> leveraging Suspense, with the ability to augment by passing children.

This is a great idea. There is currently lots of source code looking up to figure out what is going on with the queries.

Update: We've removed fragments and have trimmed down queries. We're moving forward with raw GQL in the template rather than abstracting it.


Filter structured data, starting from the data section entry point

[ ] Requirement 1:  There is a filter button that allows data to be filtered by date, type, and source, etc.
[ ] Requirement 2: Currently selected filter type(s) should be visible to the user
[ ] Requirement 3: User should be able to execute the filter visually
[ ] Requirement 4: Executing the filter should update the view of the data

My gut is that we're going to have to hardcode user filter options, then map their selections into corresponding dcids.
The entity will be country/USA for the majority of sets. Then we can use the REST API to query based on the generated dcid. Examples:

User selects 'Bachelor's degree or higher':
Constructed dcid: Count_Person_EducationalAttainmentBachelorsDegreeOrHigher

GET Request:
https://api.datacommons.org/v1/observations/series/country/USA/Count_Person_EducationalAttainmentBachelorsDegreeOrHigher?key=AIzaSyCTI4Xz-UW_G2Q2RfknhcfdAnTHq5X5XuI

User selects filters 'Science and Engineering Related Major', 'Female', 'Age 25-39':
Constructed dcid:
Count_Person_25To39Years_BachelorOfScienceAndEngineeringRelatedMajor_Female

GET Request:
https://api.datacommons.org/v1/observations/series/country/USA/Count_Person_25To39Years_BachelorOfScienceAndEngineeringRelatedMajor_Female?key=AIzaSyCTI4Xz-UW_G2Q2RfknhcfdAnTHq5X5XuI

User selects 'Bachelor's degree or higher', 'Black', 'Female': Note that this StatVar maps to an obscure name, dc/t7403chwvspm. We'll want to construct the plain text name from the permutation of filters, then have a hardcoded map from values to DCIDs.
Also note that this GET request does not appear to work for this DCID, returning an empty set:
https://api.datacommons.org/v1/observations/series/country/USA/dc/hyfn2tlyz48lb?key=AIzaSyCTI4Xz-UW_G2Q2RfknhcfdAnTHq5X5XuI
We should check with DC team if there is a bug when making a request for a variable_dcid that has a slash.

https://docs.datacommons.org/api/rest/v1/observations/series

Looks like this might be a bug, yes. I confirmed that dc/t7403chwvspm does have data for country/USA by making a POST request to the bulk endpoint like this:
curl -X POST -H 'Content-Type: application/json' -H 'X-API-Key: AIzaSyCTI4Xz-UW_G2Q2RfknhcfdAnTHq5X5XuI' --url https://api.datacommons.org/v1/bulk/observations/series --data '{"entities": "country/USA", "variables": "dc/t7403chwvspm"}'

And it gave me a response with data:
{"observationsByVariable":[{"variable":"dc/t7403chwvspm","observationsByEntity":[{"entity":"country/USA","seriesByFacet":[{"series":[{"date":"2011","value":2500237},{"date":"2012","value":2586868},{"date":"2013","value":2685130},{"date":"2014","value":2794779},{"date":"2015","value":2911464},{"date":"2016","value":3032728},{"date":"2017","value":3181761},{"date":"2018","value":3312142},{"date":"2019","value":3452809},{"date":"2020","value":3634067}],"facet":"1273233945"}]}]}],"facets":{"1273233945":{"importName":"CensusACS5YearSurvey_AggCountry","provenanceUrl":"https://www.census.gov/","measurementMethod":"CensusACS5yrSurvey"}}}

My guess would be that their GET endpoint doesn't parse the slashes properly.

DC team confirmed this is a bug and suggests using the bulk series call as a workaround: https://api.datacommons.org/v1/bulk/observations/series?entities=country/USA&variables=dc/t7403chwvspm&key=AIzaSyCTI4Xz-UW_G2Q2RfknhcfdAnTHq5X5XuI
In the chat they also tagged someone from DC to look at this issue.

Opened #53 to track dcid mapping work.


Import Aborted ( Double free or corruption)

Expected behaviour
Actual behaviour
Shows below error.

double free or corruption (top)
Aborted

Steps to reproduce the behavior
On shell :pip3 install  openTSNE
python>> import openTSNE

Could you please provide more information about your system e.g. which operating system you're using, Python version, package versions (pip freeze), etc.

On further debug, I found that the issue is caused by Numba. Numba tries to invoke intel svml library, which crashes. The solution was to set NUMBA_DISABLE_INTEL_SVML=1, before using.
Closing the issue as it is not directly related to OpenTSNE.


1.10.0 Broken

Even though testRelease passed, 1.10.0 broke somehow with Maps.
This needs to be fixed ASAP

hehe I was just wondering about this… Glad I'm not crazy :-)

https://github.com/airbnb/react-native-maps/issues/371
Looks like maps broke it.

I think I'm going to disable maps and release soon.

Released 1.10.1 with no maps.


update docker file to pre-build the site before deployment

currently the dockerfile does not run the build command to prepackage the site. that means start takes longer and can fail for build reasons. Also, we should be running tests in the build.
Also, seems like we are running watch-css in production?!

Also, seems like we are running watch-css in production?!

Is it something coming from the new env implementation? Cause i can't see watch-css in the build script

I think we were just confuse with many things going on at once and were looking at the wrong (service's) Dockerfile and then the website's package.json.