Null effective policy causing exception.

Authorization Policy Exception
Using PolicyServer.Local causes the exception but I can't reprodure the exception in a test project.
Functional impact
The page fails to load. It seems to happen wherever the [Authorize] attribute is present. I have a global AuthorizeFilter as well for a default policy of require authenticated user.
Minimal repro steps
Browse to any page with the [Authorize] attribute (Test project works though)
Expected result
No exception.
Actual result
Exception is thrown.
Further technical details
[Check this line of core]https://github.com/aspnet/Mvc/blob/330b74f0ab4c8e337ec93a9129fc9f2df7eca135/src/Microsoft.AspNetCore.Mvc.Core/Authorization/AuthorizeFilter.cs#L143
ArgumentNullException: Value cannot be null.
 Parameter name: policy
Microsoft.AspNetCore.Authorization.AuthorizationPolicyBuilder.Combine(AuthorizationPolicy policy)
Microsoft.AspNetCore.Authorization.AuthorizationPolicyBuilder..ctor(AuthorizationPolicy policy)
Microsoft.AspNetCore.Mvc.Authorization.AuthorizeFilter.GetEffectivePolicyAsync(AuthorizationFilterContext context)
Microsoft.AspNetCore.Mvc.Authorization.AuthorizeFilter.OnAuthorizationAsync(AuthorizationFilterContext context)
Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()
Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()
Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)
Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)

Does anyone have any idea what might be causing this? I'm using ASP.NET Core 2.1 release candidate.
My package references are as follows:
    <PackageReference Include="Microsoft.AspNetCore.HttpsPolicy" Version="2.1.0-rc1-final" />
    <PackageReference Include="Microsoft.AspNetCore.Identity.UI" Version="2.1.0-rc1-final" />
    <PackageReference Include="Serilog" Version="2.7.1" />
    <PackageReference Include="Serilog.Extensions.Logging" Version="2.0.2" />
    <PackageReference Include="Serilog.Sinks.Console" Version="3.1.1" />
    <PackageReference Include="Serilog.Sinks.File" Version="4.0.0" />
    <PackageReference Include="StructureMap" Version="4.6.1" />
    <PackageReference Include="StructureMap.Microsoft.DependencyInjection" Version="1.4.0" />

My OS is Windows 10 and I'm using IIS Express as web server.

I just logged an issue in AspNet/MVC but it is related to PolicyServer.Local so I would appreciate any input you migh have. cc @leastprivilege @brockallen

Thanks for reporting this issue.
@javiercn, can you please look into this?

@HaoK As he's the expert in this area.
@grantmcdade I can't repro this.
Can you provide a minimal repro project that showcases the issue?
Thanks.

thanks  @javiercn. I have already spent the last two days trying to do exactly that but as you found out it's not an easy problem to reproduce. I don't have this setup to debug this and since I'm no expert I don't know what might be causing the problem. I will continue to try and reproduce this in a smaller Project.

Startup.cs is a good place to start

Ok so the issue appears to be when AuthorizeFilter is created with a null effective policy, Combine does not allow passing in a null policy, GetEffectivePolicy should be checking for null policy and combining with a empty policy rather than passing in null.

Ok so the workaround is to turn off AllowCombiningAuthorizeFilters in mvcOptions

@HaoK Can taking it from here?

Sure

fyi @blowdart @ajcvickers

Thanks for looking into this so quickly. I have created the project to help with reproduction of the issue.
https://github.com/grantmcdade/CTG.Web
It is basically the original project with as much as possible stripped out. If you try to view "Account -> Details" while already logged in then the exception occurs.

@grantmcdade Thanks for the repor.
@HaoK Can you take a look to ensure your fix covers @grantmcdade issue?

Yep its definitely the same issue, so policy server uses a custom IAuthorizationPolicyProvider, so this is going to hit everyone who uses policy server + 2.1 :(

@grantmcdade have you confirmed that the workaround works for you as well?  Turning off the combination behavior should avoid hitting this code path.
mvcOptions.AllowCombiningAuthorizeFilters = false

I am using PolicyServer.Local and also hitting this issue after upgrading from ASP.NET Core 2.0 to 2.1 RC.
mvcOptions.AllowCombiningAuthorizeFilters = false works for me. Thanks!

Yes I can confirm that it does work.
Sent from my Samsung Galaxy smartphone.
-------- Original message --------From: Hao Kung<EMAIL_ADDRESS>Date: 23/05/2018  23:48  (GMT+01:00) To: aspnet/Mvc<EMAIL_ADDRESS>Cc: Grant McDade<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [aspnet/Mvc] Null effective policy causing exception. (#7809)
@grantmcdade have you confirmed that the workaround works for you as well?  Turning off the combination behavior should avoid hitting this code path.
mvcOptions.AllowCombiningAuthorizeFilters = false
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
{"@context":"http://schema.org","@type":"EmailMessage","potentialAction":{"@type":"ViewAction","target":"https://github.com/aspnet/Mvc/issues/7809#issuecomment-391507366","url":"https://github.com/aspnet/Mvc/issues/7809#issuecomment-391507366","name":"View Issue"},"description":"View this Issue on GitHub","publisher":{"@type":"Organization","name":"GitHub","url":"https://github.com"}}
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/aspnet/Mvc","title":"aspnet/Mvc","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/aspnet/Mvc"}},"updates":{"snippets":[{"icon":"PERSON","message":"@HaoK in #7809: @grantmcdade have you confirmed that the workaround works for you as well?  Turning off the combination behavior should avoid hitting this code path.\r\n\r\nmvcOptions.AllowCombiningAuthorizeFilters = false"}],"action":{"name":"View Issue","url":"https://github.com/aspnet/Mvc/issues/7809#issuecomment-391507366"}}}
{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"hideOriginalBody": "false",
"originator": "37567f93-e2a7-4e2a-ad37-a9160fc62647",
"title": "Re: [aspnet/Mvc] Null effective policy causing exception. (#7809)",
"sections": [
{
"text": "",
"activityTitle": "Hao Kung",
"activityImage": "https://avatars1.githubusercontent.com/u/6537861?s=160\u0026v=4",
"activitySubtitle": "@HaoK",
"facts": [
]
}
],
"potentialAction": [
{
"name": "Add a comment",
"@type": "ActionCard",
"inputs": [
{
"isMultiLine": true,
"@type": "TextInput",
"id": "IssueComment",
"isRequired": false
}
],
"actions": [
{
"name": "Comment",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "IssueComment",\n"repositoryFullName": "aspnet/Mvc",\n"issueId": 7809,\n"IssueComment": "{{IssueComment.value}}"\n}"
}
]
},
{
"name": "Close issue",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "IssueClose",\n"repositoryFullName": "aspnet/Mvc",\n"issueId": 7809\n}"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/aspnet/Mvc/issues/7809#issuecomment-391507366"
}
],
"@type": "OpenUri",
"name": "View on GitHub"
},
{
"name": "Unsubscribe",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "MuteNotification",\n"threadId": 337845729\n}"
}
],
"themeColor": "26292E"
}

Moved this out to 2.2, as the workaround is pretty cheap and this doesn't meet the bar for a patch.

Fixed via https://github.com/aspnet/Mvc/pull/8068


Fix memory leak when excluding an IP range

==14856==    at 0x4C28D84: malloc (vg_replace_malloc.c:291)
==14856==    by 0x41DE0F: xmalloc (xmalloc.c:38)
==14856==    by 0x41DF49: xstrdup (xmalloc.c:51)
==14856==    by 0x41CD50: ip_in_range (util.c:235)
==14856==    by 0x4153F2: exclude_ip (parser.c:1030)
==14856==    by 0x416645: pre_process_log (parser.c:1585)
==14856==    by 0x41693E: read_log (parser.c:1634)
==14856==    by 0x416D87: parse_log (parser.c:1674)
==14856==    by 0x40EA58: main (goaccess.c:1007)

This has been fixed.


Add support for string formatting of floats with ":f" format code

Also adds automatic conversion of int -> float when the ":f"
format code is specified.

Contributes to #1613

Thanks for contributing!


Neural Coder enable support of Keras script-based model

Type of Change
Feature addition: support Keras script-based model as keras_inc
Description

Enabled support of auto-quantizing Keras script-based model
Also enabled inc_auto as a default optimization for launcher and for API: our domain detector will detect whether the code is PT/TF/Keras/ONNX and choose default feature accordingly:

PyTorch: default dynamic quantization scheme
TensorFlow/Keras model based: default TensorFlow quantization scheme
Keras script-based: default Keras script-based static quantization scheme
ONNX: default dynamic quantization scheme

Also enabled "enable_only" -e mode/argument in neural_coder launcher for testing
Update docs accordingly

Expected Behavior & Potential Risk
Able to enable INC on Keras script-based model, for example this code
The current enabling pattern design is in accordance with the Keras example which was merged a few days ago, with key detection of model = keras.Sequential(xxx):
from neural_compressor.quantization import fit
from neural_compressor.config import PostTrainingQuantConfig
from neural_compressor.experimental import common
config = PostTrainingQuantConfig(backend='itex')
quantized_model = fit(MODEL_NAME, conf=config, calib_dataloader=DATALOADER_NAME, eval_func=eval_func)

Note that user needs to define a dataloader and eval_func as in the example.
How has this PR been tested?
Locally, can test on any machine with
# installation
git clone https://github.com/intel/neural-compressor.git
cd neural-compressor
git checkout neural_coder_enable_keras
python setup.py develop
cd ..

# test
python -m neural_coder -e neural-compressor/neural_coder/examples/keras/mnist.py

Dependency Change?
None

/Azurepipeline  run


url download

下载的txt格式的文件，打开的内容却是一个文件的路径

When the param is a hyperlink, this problem will occur, is there a solution?


<EMAIL_ADDRESS>decompress error

Hi,
I've got an issue regarding the installation of avidemux:

Scoop Configuration

{
    "last_update":  "2022-11-08T17:45:46.3258362+01:00",
    "scoop_branch":  "master",
    "scoop_repo":  "https://github.com/ScoopInstaller/Scoop"
}

Please attach your 7zip.log, thanks.

Unfortunately they changed the packaging of the latest release to a Qt based installer. See Universal Extractor's output here:
Qt Installer  v2.0.0 - 3.0.x - 2018.12.11 - www.qt.io  - stub : Microsoft Visual C++ v.12 - 2013 ( E8 MZ-PE ) www.microsoft.com [ .QT METADATA Section 4 ] - no sec. CAB/7z/Zip [ Win Vista ] ,
Overlay :  -> .rcc file - Qt Resources ( Binary Data ) - http://qt-project.org

It seems there's currently no way to extract this type of installer silently. Apparently it's some sort of .zlib compression but I couldn't find a zlib extractor that worked. Chocolatey does it by providing a .qs script with --script parameter that presses the buttons automatically but it still will pop up a window. And, that will ask for admin rights to install it to C:\Program Files.
I think we might have to move it to the nonportable bucket.
In the meantime you could install the nightly version avidemux-nightly from the versions bucket.

Duplicate of #9496.

maybe this should be disabled until it is fixed?

It should be fixed now.


release the fine-tuned model for Image Text Retrieval ?

may I ask : how much time does it take to do finetuning for the Image Text Retrieval task ? and is it possible to release the fine-tuned model so we can directly inference on the coco dataset ? because the training with (4 V100 with 16G mem) or (8 V100 with 32G mem) is kinda expensive...

Generally, base model takes 30+ hours for finetuning on 4*V100 (32GB), and large model takes more than twice of that time.
Great suggestion.
We will release some finetuned checkpoints very soon, stay tuned.

@dixonhsiao The retrieval model is released. Please check MODEL_ZOO.md


Modify Implementation of iolog4s for log4cats for slf4jLogger

Uncertain if I want this or not. But wanted to put it up as a proposal/idea.

Just and FYI. Depending on the fate of https://github.com/ChristopherDavenport/log4cats/pull/32 this might become obsolete.

This seems to be close-able because of https://github.com/ChristopherDavenport/log4cats/pull/33

Closing in favor of #33


test: fix upgrade tests

Description
Fixes the upgrade and upgrade-light tests by making the following changes

Do not error if coin pair already exists for when creating uni swap coin pair
Skip Bitcoin dust withdraw for v21 test run

How Has This Been Tested?

[ ] Tested CCTX in localnet
[ ] Tested in development environment
[ ] Go unit tests
[ ] Go integration tests
[ ] Tested via GitHub Actions

Summary by CodeRabbit
Release Notes

New Features

Introduced a new command-line flag to skip Bitcoin dust withdrawal tests in local end-to-end testing.
Updated scripts to include the new flag for running tests.

Bug Fixes

Enhanced error logging for cross-chain swap and ZRC20 swap tests to provide detailed error messages for better debugging.
Improved error handling in deposit and call swap tests, allowing for continued execution even if an error occurs.

Documentation

Added comments to clarify expected behavior in Bitcoin deposit tests related to dust amounts.

We should not introduce a flag and make cli more complex for just an edge case

Removed the flag, we already have the light flag pattern for test to not run in previous version and should reuse this


[ISSUE #3997] fix sql script error

FIXES ISSUE #3997

Make sure that:

[ ] You have read the contribution guidelines.
[ ] You submit test cases (unit or integration tests) that back your changes.
[ ] Your local test passed ./mvnw clean install -Dmaven.javadoc.skip=true.

Codecov Report

Merging #4009 (60c0c8f) into master (b70f52c) will decrease coverage by 0.28%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #4009      +/-   ##
============================================
- Coverage     70.21%   69.92%   -0.29%
+ Complexity     6693     6654      -39
============================================
  Files           923      923
  Lines         25163    25155       -8
  Branches       2269     2266       -3
============================================
- Hits          17667    17589      -78
- Misses         6119     6184      +65
- Partials       1377     1382       +5

Impacted Files
Coverage Δ

...ache/shenyu/plugin/grpc/cache/GrpcClientCache.java
68.75% <0.00%> (-31.25%)
:arrow_down:

.../client/server/consul/ShenyuConsulConfigWatch.java
60.41% <0.00%> (-25.00%)
:arrow_down:

...yu/sync/data/http/refresh/AbstractDataRefresh.java
68.96% <0.00%> (-13.80%)
:arrow_down:

...a/org/apache/shenyu/common/utils/VersionUtils.java
67.85% <0.00%> (-10.72%)
:arrow_down:

...che/shenyu/sync/data/http/HttpSyncDataService.java
81.63% <0.00%> (-8.17%)
:arrow_down:

.../apache/shenyu/admin/model/dto/BatchCommonDTO.java
50.00% <0.00%> (-7.15%)
:arrow_down:

...apache/shenyu/admin/model/dto/AuthPathWarpDTO.java
57.14% <0.00%> (-7.15%)
:arrow_down:

...org/apache/shenyu/admin/model/dto/AuthPathDTO.java
58.82% <0.00%> (-5.89%)
:arrow_down:

...henyu/plugin/grpc/resolver/ShenyuNameResolver.java
58.51% <0.00%> (-5.32%)
:arrow_down:

...elimiter/handler/RateLimiterPluginDataHandler.java
54.54% <0.00%> (-4.55%)
:arrow_down:

... and 35 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Missing bidder adapter in custom download page

Hi!
I'm in charge of the freewheel ssp bidder adapter (alias: stickyadstv) and I noticed we cannot see it on the download page if we choose Prebid 1.3.4:
http://prebid.org/download.html
Note that stickyadstv is shown if we choose prebid 0.34.
Do you know why? And is there something I should do to fix it?
Thx for your answer.
In the readme:
"Once your adapter code is actually released, we merge the adapter docs PR, and the Downloads page is automagically updated with a checkbox to include your adapter."
I probably missed something in my adapter doc to enable the checkbox in the download page...

Hello,
I'm guessing that's because your bidder doc (https://github.com/prebid/prebid.github.io/blob/master/dev-docs/bidders/smartyadstv.md) doesn't include prebid_1_0_supported : true in the header.
Geoffray

Thanks!  I'll have a look


Gracefully handle search index exceptions on non MongoDB Atlas

Allow users to explicitly exclude features (e.g. search indexes) in CLI commands.

Q
A

Type
bug

BC Break
no

Fixed issues
https://github.com/doctrine/mongodb-odm/pull/2671#issuecomment-2312782111

Summary
The CLI commands for managing schema entities (e.g. creating collections and indexes) attempt to process all schema definitions by default. This is problematic for features such as Atlas Search indexes, which have more restrictions.
For example, CreateCommand defines an ordered list (i.e. $createOrder) for schema entities to process when no command line arguments are specified. If any Atlas Search indexes exist in class metadata, those will be processed by default; however, that may not be supported in a development environment.
If users want to exclude certain DDL operations, they cannot rely on the default order and must manually enumerate all schema entities to process. Consider introducing skip- options to allow users to opt out of specific features.
Context: https://github.com/doctrine/mongodb-odm/pull/2671#issuecomment-2312782111

Thanks @Jafarili!


Support integer suffixes

https://en.cppreference.com/w/c/language/integer_constant

This requires some cooperation between the parser and the lexer.

closed in https://github.com/jyn514/rcc/commit/0cf3d70b0c5e41481289105802b85aa36a30fdac


CI: add pr reviewer

Thanks for contributing!

What type of PR is this?

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:


Build improvements

Pull Request Test Coverage Report for Build 712092027

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 70.364%

Totals

Change from base Build 711103922:
0.0%

Covered Lines:
665

Relevant Lines:
938

💛  - Coveralls


Update recent views

package summary in recent_packages view
version in recent_releases view

Mainly for the RSS feeds but I've also just thrown in the small fix of adding the version to the Recent Releases section:

Fixes #292

Good to go!

I'm going to make a couple of commits to this locally to tweak the formatting of the version number. I think there's something I can do quickly to make it look better. Holding off on merging until then.

Great! How about I split off this last commit and we merge the view updates separately?

Never mind, it'd probably cause too much trouble with your copy of the branch

I think the change I'll make is tiny, probably fine to do it in this PR. Unless you have a strong preference for a different one.


Add Group and User resources

Update docs with tfplugindocs
Add Group resource
Add User resource
Implement rudimentary translation between TrueNAS Middleware Group/User IDs and system (BSD) Group/User IDs for consistent UX
Only commit changes to docs/examples touched by this change

(This is my first Go project PR, if it needs any changes please let me know.)

Looks good so far, but I would like to see some tests for both, fairly straightforward, just follow existing examples, thanks!

It seems you might have based parts of your implementation on mine (https://github.com/lkubb/terraform-provider-truenas/tree/users-groups), which does contain tests and thus could be a good starting point. I wanted to submit it last year after the PR for the API, but life got in the way sadly and I was not 100% satisfied the way it was.
Otherwise, we/I can also incorporate your improvements into that branch and update the tests accordingly to get this feature over the line.

It seems you might have based parts of your implementation on mine (https://github.com/lkubb/terraform-provider-truenas/tree/users-groups), which does contain tests and thus could be a good starting point. I wanted to submit it last year after the PR for the API, but life got in the way sadly and I was not 100% satisfied the way it was.
Otherwise, we/I can also incorporate your improvements into that branch and update the tests accordingly to get this feature over the line.

I actually had no idea that someone had started working on this when I decided to add the feature. If you've got something that works, we can definitely close my PR. Real life has gotten in the way on my end as well. I did start working on tests a while back, and I found a couple of issues already, so this PR isn't mergeable as-is.
Either way, I'll get back to this eventually... I just can't commit to when that will happen. :(

@aarontc sorry for the ping, but are there any updates on this? I'm also interested in this feature 😄


MGDOBR-1417: Observability: Record failed metric if provisioning fails in manager

https://issues.redhat.com/browse/MGDOBR-1417
PR owner checklist
Please make sure that your PR meets the following requirements:

[x] Your code is properly formatted according to this configuration.
Run mvn clean verify -DskipTests so that imports are correctly set.
[x] Your commit messages are clear and reference the JIRA issue e.g: "[MGDOBR-XXX] - $clear_explanation_of_what_you_did"
[x] The layers in the kustomize folder have been updated accordingly.
[x] All new functionality is tested
[x] Pull Request title is properly formatted: MGDOBR-XYZ Subject
[x] Pull Request contains link to the JIRA issue
[x] Pull Request contains link to any dependent or related Pull Request
[x] Pull Request contains description of the issue
[x] Pull Request does not include fixes for issues other than the main ticket

PR reviewer(s) checklist

[ ] Check if code and Github action workflows have been modified and if the modification is safe
[ ] If the modification is safe, add the safe to test label

How to trigger pipelines and use the bots:

Run the end to end pipeline
Annotate the pull request with the label: safe to test. If you want to run the pipeline again, remove and add it again.

Rebase the pull request
Comment with: /rebase.

Deploy BOT
Comment with `/deploy <dev,stable> when the PR has been merged to deploy to a target environment.

Removing @ChughShilpa as the PR has two approvals and really doesn't warrant much more!


Module 'tensorflow' has no attribute 'placeholder'

I'm using Anaconda3 and the latest version of this repository. I have manually installed librosa and TensorFlow (following Anaconda tutorial).
Environment: Anaconda Prompt (Windows 10), TensorFlow set up as "tf" using conda create -n tf tensorflow
See attached picture for the error. The same happens when using tf-gpu.

I'm sure I did something wrong but I don't know what it is.

Edit: Seems like this code does not like TensorFlow 2. I will attempt the workaround I found and report back.

Now it crashes because cuDNN handle could not be created. Is there a way to limit memory usage? (have 6GB VRAM, NVIDIA GTX 1660. Hits maximum memory use immediately)

Forcing the CUDA instance to use less memory by patching the train.py script seems to work a little bit, until it also crashed with tons of memory allocation error despite having more than 3GB of free memory available.
# Set up session
    gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.5)
    sess = tf.Session(config=tf.ConfigProto(log_device_placement=False, gpu_options=gpu_options))
    init = tf.global_variables_initializer()
    sess.run(init)

This keeps happening. What am I doing wrong? Is it the CUDA version mismatch?

Your sequence length seems fairly long (87040), that could cause the OOM. Try chunking the audio to around one second segments.
Those type errors could be related to TF1 / TF2 discrepancies

I tried only the shortest clips, and it seems to work. What could be the maximum length per voice sample?

I’d say the simplest way to find out is just to experiment. No need to use actual data, you could just generate random tensors of specific lengths.
Calculating memory consumption is not straightforward, since it depends also on model size (need to store activations and gradients, which scales in both sequence length and network depth)

Just to share my experience, I am using a dataset with one sentece per voice sample. So the audios have around 3 to 5 seconds each.


Saving a draft determination seems to be sending out a notification when it should save the draft only and not notify

@danblah  What is the messages that get sent exactly? Slack or e-mail, part of the text from the messages is helpful.

I can not replicate this. Please reopen if it’s still an issue.


Question: how to make plots into the Visdom Server from other languages? (eg. C++, Java, ...)

There is a REST interface or a specific HTTP request for that? Thank you!

There are currently no code examples showing how to do this, but it is certainly possible. All plotting functions in the Python client generate a JSON data structure describing the plot contents, and post the JSON to the server: https://github.com/facebookresearch/visdom/blob/master/py/init.py#L246
The JSON format is defined by Plot.ly. Hence, you can generate the appropriate JSON in C++ or Java and send it to the server, which will visualize it.
Having said that, re-implementing and maintaining client logic in some other language is a lot of work. For the Lua client, therefore, we did the following: the Lua client sends a special JSON request to the server that contains the (Python client) function name and all the input arguments that one would pass to the Python client: https://github.com/facebookresearch/visdom/blob/master/th/init.lua#L964
The server unpacks this special request and executes the corresponding Python client code to obtain the JSON that encodes the data Plot.ly needs: https://github.com/facebookresearch/visdom/blob/master/py/server.py#L290
The advantage of this approach is that (1) it minimizes the amount of Lua code we have to write and (2) any changes in the Python client are automatically exposed in the Lua client.
If you'd like to add a C++ or Java client, I would propose to use a similar setup. It may not require any changes in the server side (although we should probably change the name of the unpack_lua function).

Great! Thank you for the detailed information @lvdmaaten


peer dep missing: typescript

npm install -g alm
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.

then
npm ls -g --depth 0
/usr/local/lib
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>
npm ERR! peer dep missing<EMAIL_ADDRESS>required by<EMAIL_ADDRESS>

I think package is okay. It should be npm troubles.I post here if someone care

Yup, it works fine without it. Tslint support is not a first class priority for now.

I've updated tslint to latest and we still have that error:

This is because we ship with (and support!) TypeScript Nightly. This works okay when tslint does a require('typescript'), just that npm install gives this warning. So you can safely ignore :rose:


Only query single route if segmentRange specified

Removes two queries on loading a route on master and the other attempt at this

Implemented these changes in: https://github.com/commaai/connect/pull/522


[5.8] Refactor how we are diagnosing unsafe flags

Currently, we are diagnosing unsafe flags in a bit of a backwards way, trying to infer them from build settings that were derived from them. This adds an explicit usesUnsafeFlags model property that is driven by whether the unsafeFlags API was used in a given target.
fixes #5965

@swift-ci please smoke test


Need a way to ask for non-master binaries or request BFS

What is binaries in master are broken, what if we want to demo a branch that doesn't have binaries prebuilt.
Need an option for this.

feature added in current install


Add Fortran API to Cubed-Sphere classes

Need to add the Fortran API to the cubed-sphere classes so cubed-sphere grids could be implemented and accessed from Fortran code.

@danholdaway is this active?

I think it would be needed but I don't have time to work on that at the moment. @MarekWlasak @odlomax are you planning to work on this or maybe already have?

@MarekWlasak, @odlomax: a follow-up on Dan's question. Do you know the status of this issue?

I am going to close this issue, please reopen if needed.


CI: add live migration test

Now that we're on track of implementing live migration we should start considering how to implement a live migration test. Not sure whether it's possible but let's investigate at first.
Ideally the device should be touching guest memory, therefore we need which kernel driver requires the easiest PCI device implementation. I've attached a list of (probably) PCI devices that (probably) do DMA. We need to figure out which can be easily used in the guest (e.g. present a networt or block device, a GPIO device, etc.).
Another approach would be to write a custom kernel module that randomly allocates memory and modifies.
Or, we can simply wait for SPDK/vfio-user or some mp-qemu device to be implement and use that.

drivers.zip

See #554


🐛 [firebase_messaging] In Flutter web adding a custom background notification show two notifications

Bug report
Describe the bug
I want to show a custom background notification on web but if I added in my firebase-messaging-sw.js an override to messaging.onBackgroundMessage I get two notifications, the custom notification and the default notification
Steps to reproduce
Steps to reproduce the behavior:

Follow flutter messaging tutorial to make integrate Flutter and Firebase messaging
Go to the background
Send notification from Firebase
Add a custom icon image to the notification and send again
Override onBackgroundMessage in firebase-messaging-sw.js and send a notification again

Expected behavior
1- Sending a notification with image will show the notification with the custom image
2- Override onBackgroundMessage in javascript shows the custom image as expected but not showing the default notification with chrome icon

Additional context

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
[✓] Flutter (Channel stable, 3.16.3, on macOS 14.1 23B74 darwin-x64, locale en-EG)
    • Flutter version 3.16.3 on channel stable at /Users/apple/.pvotal/flutter
    • Upstream repository<EMAIL_ADDRESS>    • Framework revision b0366e0a3f (30 hours ago), 2023-12-05 19:46:39 -0800
    • Engine revision 54a7145303
    • Dart version 3.2.3
    • DevTools version 2.28.4

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/apple/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A507
    • CocoaPods version 1.14.3

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

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

[✓] IntelliJ IDEA Community Edition (version 2023.2.5)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 76.3.4
    • Dart plugin version 232.10248

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

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 14.1 23B74 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 119.0.6045.199

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

• No issues found!

if I override the messaging on my firebase service js (firebase-messaging-sw.js) file it show the default notification and the custom notification
firebase-messaging-sw.js
// Necessary to receive background messages:
const messaging = firebase.messaging();

// Optional:
messaging.onBackgroundMessage((payload) => {
    console.log("onBackgroundMessage", payload);

    const { title, body, image } = payload.notification ?? {};
    console.log("onBackgroundMessage title", title);
    console.log("onBackgroundMessage body", body);
    console.log("onBackgroundMessage image", image);

    if (!title) {
        return;
    }
    console.log("onBackgroundMessage Make sure macOS allow chrome to show notification from macOS settings/notifications/chrome");

    self.registration.showNotification(title, {
        body,
        icon: image || '/icons/Icon-192.png',
    });
});

@darshankawar I don't use javascript or postman
I only use the firebase console

// Optional:
messaging.onBackgroun

@amrgetment I think the optional part you are implementing in the worker is triggering the duplicate notif. Sending a notification with title/body displays the notification automatically and flutter_location_notification to display the notification and hence it could be the reason as why you are seeing two notifications.

@darshankawar I use flutter_local_notifications for Android, iOS and in my testing, I disabled it
Notifications for web work by default If I added the Firebase messaging
  await Firebase.initializeApp(options: flavor.firebaseOptions);
  final FirebaseMessaging firebaseMessaging = FirebaseMessaging.instance;

I tried to override the default behaviour but it didn’t work for me
 FirebaseMessaging.onBackgroundMessage((RemoteMessage message) async => print);
I want either disable default onBackgroundMessage and use javascript by
FirebaseMessaging.setDefaultBackgroundMessage(javascriptOnly or none);
or customizing the default behaviour notification
FirebaseMessaging.setBackgroundMessageOptions(image: image url or image asset);

are you able to change the background notification icon in Flutter web by adding an image url?

No, I remember trying the same for android which works, but haven't tried on web yet.
I'll keep the issue open for team's input on expected behavior whether the app should show two notifications after adding custom background notification on web.
/cc @Lyokone

Firebase messaging will present a notification at the level of the Firebase web JS SDK if you send a notification. You might think about using the nodejs Firebase admin SDK to send data-only messages (silent messages with no notification) which will allow you to use your custom handler firebase-messaging-sw.js to present notifications. Here is an example script you could use:
const admin = require('firebase-admin');
// Get service account key from firebase console
const serviceAccount = require('../ff-e2e-service.json');
admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
});
const token = 'TOKEN';
admin
.messaging()
.send(
  {
    token: token,
    data: {
      something:'test',
    },
    android: {
      // Required for background/terminated app state messages on Android
      priority: 'high',
    },
    apns: {
      payload: {
        aps: {
          // Required for background/terminated app state messages on iOS
          contentAvailable: true,
        }
      },
    },
  },

)
.then((res) => {
  if (res.failureCount) {
    console.log('Failed', res.results[0].error);
  } else {
    console.log('Success');
  }
})

Other than that, there isn't much we can do to block the default notification if you're sending one via the Firebase console.

@russellwheatley Thanks, I got it, I have to use Nodejs Firebase admin SDK to send data-only messages
I think there should be a comment regarding this behaviour in the following file
https://github.com/firebase/flutterfire/blob/52c53f5c470aeca32e652cb0d477c5fc2bba7812/packages/firebase_messaging/firebase_messaging/example/web/firebase-messaging-sw.js#L19


Support the option "chunk_size" for "du.Upload".

Add an option chunk_size to du.Upload. It just simply exposes the chunkSize option of the react component.
Extend the documentation of du.Upload and the changelog.
Fix some typos in the documentation.

To author:

I have not updated the documentation. If you think this PR is acceptable, I could add a commit for the docs before you merge it.
Please blacklify upload.py from your side. Thank you!

Thanks for the PR @cainmagi ! I think this is perfectly fine! Yeah, it would perhaps good to include the parameter in the docs before merging (and add comment to changelog). As for the blackification, I'm just going to make a separate commit after the PR merge, and it's fine in this small sized PRs. On larger PRs it would be good to have the same style applied before accepting the PR.
By the way, what code editor you use? At least on Visual Studio Code there is support for automatic formatting (with black or others) on file save, which can be also configured just for one Workspace (handy!).

OK, I will implement the docs for this PR first.
I am using VS codes. But I have not tried automatic formatting before. I always use flake8 and pylint to check my codes and fix the warnings manually. In the last week, I have learned how to use black from you.

The documentation and changelog have been added.

Thanks again @cainmagi , this is now part of the dev branch and will be part of next release of dash-uploader!

Thank you! I have just changed 0.6.0 to TBD in the CHANGELOG. There should be another 0.6.0 in the docs that need to be changed (if you want to change it).

Oh yeah I see it in the chunk_size parameter description. I guess the next release will be 0.6.0 as there are new feature(s) coming, so most probably the version number will be correct. Have to update it later if not.


Regression: slow startup speed

When opening version 1.10.8 all albums are shown as a white background and it takes up to 2 or 3 seconds until the album thumbnails are shown.
With version 1.10.7 all albums are shown instantly when opening the app, even when it was killed.
Installed from fdroid on a Pixel 7a.

You mention that it happens even when the app is killed, but in any case, your issue is similar to that one:

#970

So, could you please try this build, which contains the fix for #970? It will install as "Aves [Profile]" and is a separate app (with its own settings, etc.) It will scan your whole collection on first launch, so please do not assess the launch performance until all this is done and the app is stable.

I can confirm the fix from #970 resolves the issue. It's as fast as 1.10.7.
Thank you very much for the fast response!
Not only is Aves Libre the best gallery app for android, it also has the fastest support. :-)


ctop config file

Possible capabilities:

custom/additional keybinds
color scheme modification
default view (all containers vs running containers)

I'd also love to alter the columns visible in a config.

Maybe we could use TOML for the file format? https://github.com/BurntSushi/toml
I could hack something up with that relatively quickly (and it would be a very helpful feature to me 😄 )

@bcicen, any comments on the config file?


Use django-channels and websockets so others can observe what's playing

close by pull-request #235


Turn off EAP capability for RTC workflow

This is to turn off the EAP capability on s1-reader to avoid AUX_CAL loading.
Just a line of change, but we need s1_orbit.get_orbit_file_from_list(), in order to run this without error. The most recent version of s1-reader is missing this function. I've suggested to revive the functionality in the PR here

LGTM. Before approving and merging it to the main repo, do we need any other changes to be able to use the latest version of the S-1 reader?

No change would be necessary on RTC to use s1-reader as long as my PR on the reader here is merged. The current version of s1-reader does not have get_orbit_file_from_list(), which RTC is using in runconfig.py. The PR will revive the function and we can run rtc-s1.py as it is.

LGTM. Before approving and merging it to the main repo, do we need any other changes to be able to use the latest version of the S-1 reader?

No change would be necessary on RTC to use s1-reader as long as my PR on the reader here is merged. The current version of s1-reader does not have get_orbit_file_from_list(), which RTC is using in runconfig.py. The PR will revive the function and we can run rtc-s1.py as it is.

That's awesome! Let's wait for that PR to get merged then.


Fix suggestion menu closes on typing @ at second line

Details

On Android, typing a new next on a new line will trigger a scroll callback. The scroll callback is set to hide the suggestion menu.
Fixed Issues

$ https://github.com/Expensify/App/issues/26197
PROPOSAL: https://github.com/Expensify/App/issues/26197#issuecomment-1697563990
Tests

Same as QA Steps

[x] Verify that no errors appear in the JS console

Offline tests

Same as QA Steps
QA Steps

Open any chat
On the composer, type anything on the first line and press Enter to go to the 2nd line
Type @ on the 2nd line
Verify a suggestion menu is showing
Add multiple new lines to the composer so it's scrollable
Add enough text to reach the end of the line with your cursor (the line should end with a space)
Input "@", which should appear on the next line
Verify that the suggestion list shows up
After at least a second, scroll the composer manually
Verify that the suggestion menu disappears

If you scroll right after typing (< 1 s), it's acceptable for the suggestion menu not to disappear after this interaction

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://github.com/Expensify/App/assets/50919443/df989070-0ee9-4d5a-b8b3-3fb0a4b465cf

Mobile Web - Chrome

https://github.com/Expensify/App/assets/50919443/3385ea3f-827e-4f53-92bf-4c2e3652573d

Mobile Web - Safari

https://github.com/Expensify/App/assets/50919443/34dcbb5f-2572-40ea-b413-d21ae332b7ac

Desktop

https://github.com/Expensify/App/assets/50919443/988848ea-d7b6-4a81-b3be-33055532c0e0

iOS

https://github.com/Expensify/App/assets/50919443/2bf753a0-3858-4d90-a017-cd9c40c761bc

Android

https://github.com/Expensify/App/assets/50919443/2fb195c4-f642-4312-a0cf-a97a4c2311e4

I think we're looking good, I'll start completing the checklist.

Please merge main

@bernhardoj
Scrolling doesn't close the suggestion list for me on the feature branch... Do you reproduce this behavior?
The code looked good for me on paper, but it doesn't seem to achieve its goal (unless there is a flaw in my testing)
https://github.com/Expensify/App/assets/2590174/19dc34a8-bc2d-463f-9137-5da4ef58ced0
https://github.com/Expensify/App/assets/2590174/63cd928d-1487-4eeb-9fbf-70b21204b06b

@bernhardoj Also, update the test steps to include this case

@bernhardoj It's okey, I guess. Could also be:

Ensure that the composer has many enough lines so it's scrollable (they can be empty)
Add enough text to reach the end of line with your cursor (the line should end with a space)
Input "@", which should appear on the next line
Verify that the suggestion list shows up

...but also...

Ensure that the composer has many enough lines so it's scrollable (they can be empty)
Make the suggestion menu show up by inputting "@"
After at least a second, scroll the composer manually
Verify that the suggestion menu disappears

If you scroll right after typing  (< 1 s), it's acceptable for the suggestion menu not to disappear after this interaction

@bernhardoj "After at least a second, " can be removed in my opinion. I was too defensive suggesting that. I have big trouble reproducing a case when the manual scroll is considered layout-triggered, so I think we can just drop that part.

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/2590174/cbffea74-60bf-42c9-966e-e9f2608950ab

Mobile Web - Chrome
https://github.com/Expensify/App/assets/2590174/e809b7ff-4f5d-4db9-9919-c18b544b18b4

Mobile Web - Safari
https://github.com/Expensify/App/assets/2590174/90090c01-dda1-44cc-9c3f-1e6754961328

Desktop

iOS
https://github.com/Expensify/App/assets/2590174/7e24f52f-292c-4a64-9a94-e48e17d20e61

Android
https://github.com/Expensify/App/assets/2590174/ab0f0bfa-f299-430e-aec6-04c0623d9dda

"After at least a second, " can be removed in my opinion

Removed
Should we remove this too?

If you scroll right after typing (< 1 s), it's acceptable for the suggestion menu not to disappear after this interaction

I don't have a strong opinion here.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/Gonals in version: 1.3.75-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.3.75-12 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/Gonals in version: 1.3.76-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.3.76-6 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


No TypeScript definitions for the Mochawesome helper

What are you trying to achieve?
Have TypeScript definitions for addMochawesomeContext.
What do you get instead?
There is no Mochawesome class in the typings directory.

Provide test source code if related

declare namespace CodeceptJS {
  interface SupportObject { I: I }
  interface Methods extends  Mochawesome {}
  interface I extends WithTranslation<Mochawesome> {}
  namespace Translation {
    interface Actions {}
  }
}

Details

CodeceptJS version: 3.2.3
NodeJS Version: 16.13.0
Operating System: Windows 10

I'd like to work on this if it is not picked. It would be great if you can give some hints on what to change :)

I just had the same problem. I have now added the following to the steps.d.ts.
`class Mochawesome {
/**

Use Mochawesome API inside a test.

@param description - context string.
*/
addMochawesomeContext(description: string): void;
}
`

I don't know, should I make a pull request with it. I don't know what file it fits in and if it even meets the requirements here. 😊


Error with walletFromSeed function

Hi, I am trying to convert lucid to lucid-evolution.
And now, I faced an issue with walletFromSeed function.
import {
  generateSeedPhrase,
  walletFromSeed,
} from "@lucid-evolution/lucid";
const seed = generateSeedPhrase();
const { address } = walletFromSeed(seed);

This gives me error like this.
Error {
  code: 'ERR_CRYPTO_HASH_FINALIZED',
  message: 'Digest already called',
}

The funny thing is that if I use generateSeedPhrase from lucid-cardano, then it works all fine.
Working code
import {
  walletFromSeed,
} from "@lucid-evolution/lucid";
import {
  generateSeedPhrase,
} from "lucid-cardano";
const seed = generateSeedPhrase();
const { address } = walletFromSeed(seed);

When I see both libraries code, the only difference is that Sha256 function they use.
lucid-cardano uses<EMAIL_ADDRESS>lucid-evolution uses this approach.
import { createHash } from "node:crypto";
const Sha256 = createHash("sha256");

This issue happens, because hasher does not reset, after you finalize the hasher using digest.
The possible way to fix is

Create hasher instance every time you need.
Use hasher's copy method.

fixed https://github.com/Anastasia-Labs/lucid-evolution/pull/63

Great


Bluemix

Add Bluemix terraform deploy based on our aws, azure, gce, and packet code.
Looks like we'll need some https://github.com/IBM-Bluemix/schematics-onboarding#early-access
/cc ckelner

Early access involves using an IBM supplied and custom-built Terraform binary from a users local machine (not publicaly available).
Can we build the terraform binary from IBM-Bluemix/terraform?

/cc @ckelner

Hi there @hh -- I'll respond via the email thread you kicked off. We're working to get IBM-Bluemix/terraform up to snuff for public consumption -- we're currently working internally as of right now w/ a very near term goal to make the binary available publically.  Look for an email from me soon.


fix(test): fix issue causing required field 'gasPrice' in transaction

#216  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @jakim929 and the rest of your teammates on  Graphite


ceph: 18.2.1 -> 18.2.4

Description of changes
Changelog looks good: https://docs.ceph.com/en/latest/releases/reef/#v18-2-4-reef
Also includes the race fix from this for now (without my requested comment improvement)

#328847

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Currently building.

VM tests pass on x86_64

Independent of this PR:
I also suspect that this test step is wrong, and may always have been wrong:
https://github.com/NixOS/nixpkgs/pull/35299#issuecomment-2274876869

I also suspect that this test step is wrong, and may always have been wrong:

I think there's a few oddnesses from back then, but the pool deletion really should fail unless mon_allow_pool_deletion is enabled. Perhaps it would be clearer if there was also a test step that must succeed for:
ceph tell mon.* injectargs '--mon-allow-pool-delete=true'
ceph osd pool delete aio-other-test aio-other-test --yes-i-really-really-mean-it

It would've made sense to add a successful deletion to the test too, that I agree with. But as I wrote in https://github.com/NixOS/nixpkgs/pull/35299#issuecomment-2275609792, the mustFail steps was added for completeness. They can definitively be removed, or the step that @srhb suggested be added to make it actually complete.

I pushed a fix for that. It removes the above ImportError.

Bah, somehow my push didn't work, and this got merged without the fix... I'll make a new PR for that.


Chroma Key

Hi there!
I've been using GPUImage 1 and 2 for a while and looks like on GPUImage 3 there is no reference to ChromaKey or Background Color Rendering as it used to.
Will Chroma Keying be available in a future build with Metal?
Thanks,
Charlie.

Chroma keying has since been added to the framework, and I've updated the README to reflect this.


Configurable Janitor owner tag as per netflix/SimianArmy#178

Implement a user configurable Janitor Monkey OWNER_TAG_KEY as requested by Issue #178

NetflixOSS » SimianArmy » SimianArmy-pull-requests #3 SUCCESS
This pull request looks good

SimianArmy-pull-requests #175 SUCCESS
This pull request looks good

NetflixOSS » SimianArmy » SimianArmy-pull-requests #4 SUCCESS
This pull request looks good

SimianArmy-pull-requests #176 SUCCESS
This pull request looks good

SimianArmy-pull-requests #177 SUCCESS
This pull request looks good

NetflixOSS » SimianArmy » SimianArmy-pull-requests #5 SUCCESS
This pull request looks good

SimianArmy-pull-requests #178 SUCCESS
This pull request looks good

NetflixOSS » SimianArmy » SimianArmy-pull-requests #6 FAILURE
Looks like there's a problem with this pull request

SimianArmy-pull-requests #179 SUCCESS
This pull request looks good

NetflixOSS » SimianArmy » SimianArmy-pull-requests #7 SUCCESS
This pull request looks good

Actually there are few more Hard Coded uses of resource.getTag("creator"); and resource.getTag("owner");
I'll do another commit; and re-do this request.


Add operators to modify Requests and Response in an App

Codecov Report

Merging #516 (ef47957) into release/next (6f3e008) will decrease coverage by 0.43%.
The diff coverage is 26.66%.

:exclamation: Current head ef47957 differs from pull request most recent head cc85e97. Consider uploading reports for the commit cc85e97 to get more accurate results

@@               Coverage Diff                @@
##           release/next     #516      +/-   ##
================================================
- Coverage         57.53%   57.10%   -0.44%
================================================
  Files                66       66
  Lines              1460     1471      +11
  Branches             40       47       +7
================================================
  Hits                840      840
- Misses              620      631      +11

Impacted Files
Coverage Δ

zio-http/src/main/scala/zhttp/http/HttpApp.scala
50.00% <0.00%> (-13.64%)
:arrow_down:

...p/src/main/scala/zhttp/http/middleware/Patch.scala
66.66% <66.66%> (-13.34%)
:arrow_down:

Continue to review full report at Codecov.

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


No console response on start up

Hello
I've managed to successfully install the plugin and have the console appear in my home app. If the console is already on I can successfully turn it off. If I try to turn it on again it doesn't work and the tile in the Home app says "No Response" with the exclamation mark. However looking at the Homebridge log it looks like the plugin is able to find the console in standby. "[5/17/2020, 9:21:17 PM] [XboxTv] Device: <IP_ADDRESS> Game console, get current Power state successful, state: STANDBY"
Any ideas?
Cheers

Are U enabled Instant Power Mode in the console settings?

Yes sir.

Are U get This after U press powerON
Device: <IP_ADDRESS> Xbox One, booting..., response: { status: 'success' }
if not check Your network, firewall and config.

After I power on the console manually I get the following:
5/17/2020, 9:36:28 PM] [XboxTv] Device: <IP_ADDRESS> Game console, state: Online
[5/17/2020, 9:36:28 PM] [XboxTv] Device: <IP_ADDRESS> Game console, connected.
[5/17/2020, 9:36:28 PM] [XboxTv] Device: <IP_ADDRESS> Game console, get current Power state successful: ON
[5/17/2020, 9:36:28 PM] [XboxTv] Device: <IP_ADDRESS> Game console, get current App successful: Microsoft.Xbox.LiveTV_8wekyb3d8bbwe!Microsoft.Xbox.LiveTV.Application
[5/17/2020, 9:36:28 PM] [XboxTv] Device: <IP_ADDRESS> Game console, get current Mute state: ON
[5/17/2020, 9:36:28 PM] [XboxTv] Device: <IP_ADDRESS> Game console, get current Volume level: 0
Forgive me as I'm quite new to this, are there any other settings than a static ip I need to check?
Cheers

Are U write in config.json settings correct Live ID?

That was it! I had my xbox live ID not the console Live ID. Thank you!
Does the console Name need to match the console or is that just what shows up in the Home App?
Cheers

U can free to name Your console in config.json under "name" or use Config UI X to do this.


sangat memuaskan untuk dapat dipelajari, akan banyak hal

[Enter feedback here]

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

ID: f46fe2f9-8db5-5b66-fedf-e3f99ea42e0e
Version Independent ID: 3da926b1-c9f0-8e9c-ac6e-4c02b7ff42e1
Content: Preserve metadata and ACLs using copy activity - Azure Data Factory & Azure Synapse
Content Source: articles/data-factory/copy-activity-preserve-metadata.md
Service: data-factory
Sub-service: data-movement
GitHub Login: @jianleishen
Microsoft Alias: jianleishen

@lipannn09
Could you please elaborate the query for better understanding. So, we can assist you further.

Since we have not heard back from you, we will now proceed to close this thread.If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


docs(README): add GHES workflow example

This pull request includes a significant change to the README.md file. The change adds a new job to the GitHub Actions workflow, which is designed to create an example of how to use create-github-app-token action on GitHub Enterprise Server.
Resolves https://github.com/actions/create-github-app-token/issues/98

Thanks, @mouismail! Just a couple of small suggested changes for your consideration.

Thanks @parkerbxyz I have committed your changes.

FYI, the feedback from a GHES User:

just fyi, the solution in the PR works perfectly for generating the app installation token from public to enterprise GH :slightly_smiling_face:


Improve processing of multi-line result error messages

Motivation and Context
#2105 introduced a post-processing step to Java result error messages. The implementation cut all results at the first newline character. This resulted in longer multi-line error messages being no longer shown to users as intended.
This PR applies the intended removal of Junit-Prefixes from the error messages, but implements it in such a way that multi-line messages are no longer cut off.
Description
If multiple error messages are part of the testcase, the implementation adds an additional newline between them to visually separate different (potentially multi-line by themself) messages.
Test Coverage

FeedbackService.java: 93%

One can add newlines to failure messages. Output of a test case with fail("BubbleSort does not sort correctly\nAdditional Line"); (modified SortingExampleBehaviorTest.java):

As far as I can tell Artemis looks if a failure message attribute is present in the JUnit-XML to decide if a test was successful or not. At which point however the java.lang.AssertionError becomes part of the message, I’m not sure.
The raw JUnit-XML still contains the stack trace, but it is not part of the String that is post-processed:
<failure message="BubbleSort does not sort correctly
Additional Line" type="java.lang.AssertionError">java.lang.AssertionError:
BubbleSort does not sort correctly
Additional Line
	at pr.SortingExampleBehaviorTest.testBubbleSort(SortingExampleBehaviorTest.java:39)
</failure>

This also means that a unit-test that contains assertTrue(false)passes according to Artemis, one containing assertTrue("Failure message!", false) does not.
At that point I’m not sure if it is even possible to have multiple lines with java.lang.AssertionError: …, or if that is possible for the first line of a message only, as the unit-test exits at the first failing assertion.
This would mean I could simplify the code to only replace it once and not consider the possibility of multiple messages present for post-processing.
We definitely need the multi-line functionality, as we use Dejagnu for blackbox-tests and have to use the JUnit-XML to wrap the stdout to get it somehow back to Artemis (if there is a better way we do not know about, feel free to let us know).

@b-fein While I get why multi-line messages are no processed correctly, I don't understand what this has to do with Assertions without a message failing :(

Now I read the code and make sense. Cause errorList.isEmpty() defines if test is successful. And errorList is empty if there is no message...

Artemis would like to show the feedback messages of tests (based on assertions) to students to help them understand their failures. Depending on the configuration (hidden vs. visible test), the feedback is helpful during or after the working time.
We never intended the use of assertX(...) without error messages, so this is an edge case that you have found here.
I think we should still fix the issue behind this, the question however is what we then show to the student. (Note that some students are in their first semester, so showing too technical error messages such as stack traces might not be helpful)

@b-fein thanks for this contribution. If you send me your email address to<EMAIL_ADDRESS>I can also invite you into our Slack channel. It might be easier to get some support there.
Would you mind fixing the issue related to empty assert messages in this PR as well?
Would also be great if you could resolve the merge conflict.

@krusche I also implemented a fix for the issue. Now tests are only considered successful if both the error and failure lists are empty regardless of their respective messages.
The ErrorDTO/FailureDTO only contain messages and have no information about the stack-trace. Therefore, the only message I could add to the user feedback is either a static generic one or one based on the type of the error/failure.
I decided to add one based on the type if possible, as this at least gives some hint about the origin of the failure at least for Java, e.g. if it was a NullPointerException or a failed assertion. The message shown to the user is then for example:
Unsuccessful due to an error of type: java.lang.AssertionError
If the type is not known, too, then no special message is created.
Of course, if any proper message is present, then that is always used, same as before.

@MaisiKoleni  I now implemented the matching and removing of the exceptions via the pattern.
e.g.
java.lang.AssertionError: expected:
    4
but was:
    5
org.opentest4j.AssertionFailedError: expected:
   something else

will be turned into
expected:
    4
but was:
    5
expected:
    something else

Concerning the change in the JenkinsService, I think this is a good idea, and it would be good to have something like that for Bamboo as well. Maybe this could be moved to the feedback service as well?

In the BambooService [1] the underlying data model [2] is different from Jenkins, i.e. the info if success/failed is directly linked to the job already and there is no failure type. The error strings seem to be just part of the response sent to Artemis and as far as I can tell are used as received from the Bamboo plug-in.
[1] https://github.com/ls1intum/Artemis/blob/914effb8556ae7f3287b2710f35fc6f9cd87f0cc/src/main/java/de/tum/in/www1/artemis/service/connectors/bamboo/BambooService.java#L708
[2] https://github.com/ls1intum/Artemis/blob/0949e556fc83e6b4d93d6ad1503bc9cd94a2c285/src/main/java/de/tum/in/www1/artemis/service/connectors/bamboo/dto/BambooBuildResultNotificationDTO.java#L329

if this needs to be tested, I'm not sure how to test this!

I tested it against our setup and it perfectly works. I can confirm that it fixes #2273. If I can be of any help with further testing or code reviewing to get it merged, just let me know. I will continue to run this branch, as #2273 is a blocker for us.

We now have the following problem for our Bitbucket/Bamboo, we get parts of the stack trace:

We will have to find a way to unify that somehow.

We might need a fix for this in the notification plugin.
Also, Bamboo cannot deal with multiline error messages:

and

They are displayed twice while they only appear once in the logs.

@b-fein if we cannot easily fix the issue with Bamboo, I suggest that we move the code that leads to problems completely into the JenkinsService. This way, we could avoid those issues.
Of course, I am also happy if we find a solution that supports both scenarios.
Do you think we can merge the updated fix (including testing and review) until tomorrow evening, so that it still fits into the next milestone / release?

@krusche I added a commit that reverts FeedbackService to the same processing that was done before this PR and moved the (for now) Jenkins-specific processing into JenkinsService.


[Bug]: Importing an old app with select widget bound to a JS variable throws an error

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Evaluation of select widget binding fails when an old app is imported. Refreshing the app clears the error.
Steps To Reproduce

Import the attached app
Go to the select widget seen in the video and observe the evaluation of the binding fails on first load causing incorrect errors on the property pane but refreshing the page shows the correct values

Automation test cases (1).zip
Public Sample App
No response
Environment
Production
Issue video log
https://www.loom.com/share/b7880713c2e6485cb84df44c836c9545
Version
Cloud

@ramsaptami could you please confirm once if this is still reproducible?

Closing this for now. @ramsaptami please re-open this if it is reproducible again.


double approval when clicking "Delete all local data and reset device"

There should be a pop-up second approval when clicking "Delete all local data and reset device" to prevent unwanted/accidental device resets.

This has been fixed a while ago


Topic can't unsubscribe subscription

Describe the bug
Pulsar: v2.8.1
Topic partition: 20
There are three subscriptions on this topic. Now delete the second subscription. As a result, another partition has not been deleted. It shows that there are active consumer processes, we go to the host and check the process through this port. We find that there is no process, Then we can't delete it through unsubscribe.

bin/pulsar-admin topics unsubscribe -s housekeeping_ignite persistent://pulsar/iagw/21_rate_out_b
17:35:36.602 [AsyncHttpClient-7-1] WARN  org.apache.pulsar.client.admin.internal.BaseResource - [http://localhost:30200/admin/v2/persistent/pulsar/iagw/21_rate_out_b/subscription/housekeeping_ignite?force=false] Failed to perform http delete request: javax.ws.rs.NotFoundException: HTTP 404 Not Found
Subscription not found

Reason: Subscription not found

Have you tried to use the PulsarAdmin to list the subscriptions or check the active consumers/producers? I'm not sure if the problem is related to Pulsar Manager or Pulsar, PulsarAdmin can help to determine the problem

@.***
From: lipenghui
Date: 2022-01-17 22:59
To: apache/pulsar
CC: xuesongxs; Author
Subject: Re: [apache/pulsar] Topic can't unsubscribe subscription (Issue #13787)
Have you tried to use the PulsarAdmin to list the subscriptions or check the active consumers/producers? I'm not sure if the problem is related to Pulsar Manager or Pulsar, PulsarAdmin can help to determine the problem
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you authored the thread.Message ID: @.***>

Have you tried to use the PulsarAdmin to list the subscriptions or check the active consumers/producers? I'm not sure if the problem is related to Pulsar Manager or Pulsar, PulsarAdmin can help to determine the problem
bin/pulsar-admin topics partitioned-stats:

Prompt "subscription has active consumers" when deleting topic, but no consumers are actually connected.
It may be that the consumerList is not deleted in the consumerList after the consumer is disconnected.

Looking at the broker process stack, I feel that this problem can not be solved without restarting the broker.
broker.txt
broker1.txt

@xuesongxs Do you see the same thing happening here #15050

https://github.com/apache/pulsar/pull/21687


getCurrentInstance type not correct

Version
2.7.0
Steps to reproduce
vue2.7 getCurrentInstance type was not match vue3 & @vue/composition-api
export function getCurrentInstance(): { proxy: Component } | null {
  return currentInstance && { proxy: currentInstance }
}

see:

https://github.com/vuejs/composition-api/blob/main/src/runtimeContext.ts#L184
https://github.com/vuejs/core/blob/main/packages/runtime-core/src/component.ts#L213

What is expected?
has correct type
What is actually happening?
not match

I guess you are not supposed to access the component internals :)

In vue3:
export const getCurrentInstance: () => ComponentInternalInstance | null = () =>
  currentInstance || currentRenderingInstance

in @vue/composition-api
let currentInstance: ComponentInternalInstance | null = null
// ....
export function getCurrentInstance() {
  return currentInstance
}

They both returned ComponentInternalInstance. So vue2.7 are missing the following important function & props：

state

data
props
slots

function

emit

They are on getCurrentInstance().proxy which is roughly equivalent to this. So you can do proxy.$props or proxy.$emit for example.

same issue :(

@vue/composition-api's implementation is not the source of truth - 2.7 has intentional deviations from it.

Only exposing proxy is intentional, because other properties on the internal instance is considered, well, internal. You should refactor any code that relies on anything other than proxy.
This is necessary because relying on the internal instance properties when using Composition API is a sign that you are misusing it. It makes your code less reusable AND introduces risk of compatibility with future versions of Vue. We exposed getCurrentInstance mostly for official libraries that need additional internal access, not for userland application code. It was mistakenly documented in WIP v3 docs but is no longer considered a public API.

Vue 3 will likely start showing warnings when you rely on properties other than proxy soon.

@yyx990803 considering that this API is not public, how do you suggest to get the vue app instance (the one created with createApp() ) from any Vue component (created using

@yyx990803 I know it's a closed issue and I understand your point of view, and I actually agree with you, but I think it's a good think to leave getCurrentInstance in API docs, even just to mention it. Even if advanced library authors need it, they still need to know about it.

Does anyone know an alternative approach to get the access to the Vue instance (for v2.7)?

Vue instance can be accessed by Vue , same like you access it in your main.js. If you mean component instance then you can access it by getCurrentInstance() (or getCurrentInstance().proxy), not sure what would be use case for using the first one, in my apps I'm using only the second one


[v3] Refactor to use packet metadata instead of overloaded receiver

Pulls in ibc-go v3.4.0, which has the backported FungibleTokenPacketData memo string and also the packet sequence in the MsgTransferResponse, two pieces which are necessary to have a clean implementation of the forward middleware.
This removes the need to overload the receiver field with delimited data and updates to use the memo instead. The receiver field is reverted to typical usage of the next receiver address string.
This effort aims to standardize usage of the packet memo for multi-hop IBC interactions. The format proposed here is JSON with root keys that indicate the intended consumer of the data (middleware or otherwise). Special thanks to Dev Ojha and Nicolas Lara from the Osmosis team for collaborating on this schema.
For example, to enqueue a swap action that should be handled by a swap middleware, rather than forward as the key, a root key such as swap or wasm can be used. To be clear, it is not the intention of the packet forward middleware to support other memo root keys, but chained middleware is compatible with this JSON structure. The forward middleware will ignore the memo unless there is a forward key, and other middleware can behave similarly for their relevant key.
For multi-hop actions, a next property is included in the object for the relevant root key to specify the next action. The intention is that the consumer will handle what it needs using the data from the object, then pass the next object for the next consumer to handle, e.g. pass as the next packet memo. In this use case, the forward root key is used to specify that the forward middleware should handle this packet. Multiple forwards can be enqueued by nesting next: { forward: {...}}.
type PacketMetadata struct {
	Forward *ForwardMetadata `json:"forward"`
}

type ForwardMetadata struct {
	Receiver string          `json:"receiver"`
	Port     string          `json:"port"`
	Channel  string          `json:"channel"`
	Timeout  time.Duration   `json:"timeout"`
	Retries  *uint8          `json:"retries"`
	Next     *PacketMetadata `json:"next"`
}

Example happy path multi-hop A->B->C->D
        channel-0 channel-1         channel-2 channel-3        channel-4 channel-5
┌───────┐       ibc        ┌───────┐        ibc       ┌───────┐        ibc       ┌───────┐
│Chain A│◄────────────────►│Chain B│◄────────────────►│Chain C│◄────────────────►│Chain D│
└───────┘                  └───────┘                  └───────┘                  └───────┘
     1. transfer 2. recv_packet  3. forward 4. recv_packet  5. forward 6. recv_packet
         ─────────────────► packet  ─────────────────► packet  ─────────────────►
     9. ack                 forward   8. ack           forward   7. ack
         ◄───────────────── middleware◄─────────────── middleware◄───────────────

Example: multi-hop A->B->C->D, C->D recv_packet error, refund back to A
        channel-0 channel-1         channel-2 channel-3        channel-4 channel-5
┌───────┐       ibc        ┌───────┐        ibc       ┌───────┐        ibc       ┌───────┐
│Chain A│◄────────────────►│Chain B│◄────────────────►│Chain C│◄────────────────►│Chain D│
└───────┘                  └───────┘                  └───────┘                  └───────┘
     1. transfer 2. recv_packet  3. forward 4. recv_packet  5. forward 6. recv_packet ERR
         ─────────────────► packet  ─────────────────► packet  ─────────────────►
         9. ack ERR         forward   8. ack ERR       forward   7. ack ERR
         ◄───────────────── middleware◄─────────────── middleware◄───────────────

Example: forward A->B->C with 1 retry, max timeouts occurs, refund back to A
        channel-0 channel-1         channel-2 channel-3
┌───────┐       ibc        ┌───────┐        ibc       ┌───────┐
│Chain A│◄────────────────►│Chain B│◄────────────────►│Chain C│
└───────┘                  └───────┘                  └───────┘
     1. transfer 2. recv_packet     3. forward
         ─────────────────► packet  ─────────────────►
                            forward   4. timeout
                            middleware◄───────────────
                                    5. forward retry
                                    ─────────────────►
         7. ack ERR                 6. timeout
         ◄─────────────────         ◄─────────────────

does it need to be escaped?
"{\"receiver\":\"osmo1asdfasdfasdfasdfasdfasdfasdf\",\"port\":\"transfer\",\"channel\":\"channel-0\",\"timeout\":0,\"retries\":0,\"next\":null}"

The way we're planning to implement this on Osmosis is that a swap happens in the final destination (osmosis) and then we initiate a new transfer after the swap happens. We would be responsible for making sure the right amount of tokens are returned if that last transfer fails. So even if the swap happens on chain B in your example, that's not a case of swap-and-forward from the pov of this middleware.

Agreed, if you are going to handle the transfer logic after the swap within wasm, then the forward middleware will not be used on the osmosis chain for the A->B->C example. For an A->B(osmosis)->C->D example, the packet forward middleware could still be used on chain C though.
There might be a good way on osmosis to not have to re-write the forward logic by executing the swap contract on the VM then falling through to the packet forward middleware based on the success/fail of the contract execution I think though.
For other dexs that use an sdk module for handling the swap, falling through to the packet-forward-middleware after a successful swap is more straightforward. We have an implementation of the swap middleware that uses this approach.

Ending the ibc transaction with a success Ack when doing the swap has the disadvantage that the sender will receive a success and then have to wait for a second IBC transaction to receive the assets, but I don't think we can recover from a failure after the swap without being able to override the behaviour of WriteAcknowledgementForForwardedPacket.

https://github.com/strangelove-ventures/packet-forward-middleware/pull/36#discussion_r1026646076

Can you add docs / examples on how to use this new format?

Yes definitely, we can get this added. A minimal example would look like this:
{
  "forward": {
    "receiver": "osmo1asdfasdfasdfasdfasdfasdfasdf",
    "port": "transfer",
    "channel": "channel-0"
  }
}

The root forward key is an indicator for the packet-forward-middleware that it should handle the memo.
retries, timeout, and next are optional parameters. it will use the chain provided configuration for retries and/or timeout if not present.
The entire string must be valid json, so yes, the next parameter needs to be an escaped json string. If the next memo also has a next, it will need to be double escaped, etc.

We have an implementation of the swap middleware that uses this approach.

Is the swap middleware just calling the exported functions of this middleware (WriteAcknowledgementForForwardedPacket and ForwardTransferPacket )? I wonder if it might be useful for this middleware to determine if it should return or forward based on the Ack from the wrapped functions. This way instead of internally calling functions from the packet-forward-middleware, the underlying implementation(swap, in this case) could just return something like Ack('{"success": "true", "forward": {"channel": "...", ... } }')
Happy to jump on a call and brainstorm ideas around this


Deploying Seaport and Conduit Controller in local Ganache Network

I tried to deploy the Seaport and Conduit Controller on my local Ganache network by following the steps outlined here.
But some of the transactions do not get executed correctly and when I look at the blockchain explorer, this error can be seen.
Error: (Awaiting internal transactions for reason) .
Why does this happen and can these two contracts be deployed in the local ganache network

@SenudaJayalath have you been able to solve this issue, I will suggest you talk with an Opensea Developer concerning this issue,on their live chat Developers support page. (CLICK HERE) SUPPORT
to engage in a conversation with opensea support and have the transaction looked into so as to resolve it right away.


Some mostly mechanical cleanups.

Following reasonable modernize-* clang tidy suggestions. Enabling all of them, then disabling the ones that produce overzealous or possibly less readable results.
Also, fix some of google-readability-braces-around-statements suggestions, but there are more.
A lot based on clang-tidy suggestions.

Codecov Report
Base: 93.00% // Head: 93.00% // Increases project coverage by +0.00% :tada:

Coverage data is based on head (18b216f) compared to base (ced1d3b).
Patch coverage: 93.05% of modified lines in pull request are covered.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1717   +/-   ##
=======================================
  Coverage   93.00%   93.00%
=======================================
  Files         352      352
  Lines       25471    25458   -13
=======================================
- Hits        23689    23677   -12
+ Misses       1782     1781    -1

Impacted Files
Coverage Δ

common/analysis/command_file_lexer.cc
83.33% <ø> (ø)

common/analysis/lint_waiver.cc
93.51% <0.00%> (ø)

common/analysis/matcher/matcher_builders.h
100.00% <ø> (ø)

common/formatting/state_node.cc
95.48% <ø> (ø)

common/formatting/state_node.h
100.00% <ø> (ø)

common/formatting/unwrapped_line.h
100.00% <ø> (ø)

common/parser/parser_param.h
100.00% <ø> (ø)

common/strings/obfuscator.h
100.00% <ø> (ø)

common/strings/patch.cc
97.55% <ø> (ø)

common/strings/position.h
100.00% <ø> (ø)

... and 86 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Some modernize-return-braced-init-list already as well, but not entirely yet.


feat(styles-migration): add automatic migration ro remove close-button classes

removes classes btn and btn-icon from close-button elements

Preview environments are getting posted here, as soon as they are ready!


Support web components

They can have any names and even dash.

Not worth it: https://www.youtube.com/watch?v=UrS61kn4gKI
Custom HTML elements will be implemented when there is a real-world usage (outside of Web Components)


Add map to teamfight so that people can click that instead of tabs

fixes #415
fixes #434
fixes #419
fixes #519
WIP. Part of this PR is fixing the deaths_pos array in teamfight objects (first commit).

fullscreen:

hover state:

lots of items or abilities:

mobile:

Is it possible to show the individual hero deaths somehow?  That's something the old UI used to do.
I guess if we do that we can't really use the map as a selector.

Can you also please fix #519 in this PR? thanks.

I am not convinced about the teamfight selection. How would it work when 2 of them occur at the same place?
What about using the timeline from the overview page to select the teamfight?

Actually, let's use both map and the timeline to be allowed to select the teamfight.

I thought about that being a good future enhancement (selecting from the timeline). @blukai I did try using the swords for the graves, and what I learned from that is that it is pretty hard to see the crossed swords when they are close to each other. I can change it but I think it will be harder to see how many teamfights there actually were and select a teamfight when they are all close together.

Also, @dartharaknus , I was thinking that we would add another way to select the teamfight. Right now where we display the time of the fight under the map, we could convert that into a dropdown. That way if there are fights close to each other, it is easier to select a specific teamfight (they would be labeled by the times the occurred and possibly the networth delta team winner (radiant or dire icon))

I could do that, but would it be better than using an svg?

I personally prefer css over svg since it's human readable


Python: Return streaming tool call output to the caller

Motivation and Context
The streaming function call content, function result content, or code interpreter output was not being streamed back to the caller chunk by chunk.

Description
This PR enabled yielding the proper chunks to the caller based on handling the thread.run.step.delta event.

Fixes #9352
Adds test coverage
Fixes a separate mypy issue related to BinaryContent

Contribution Checklist

[X] The code builds clean without any errors or warnings
[X] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[X] All unit tests pass, and I have added new tests where possible
[X] I didn't break anyone :smile:

Python Unit Test Overview

Tests
Skipped
Failures
Errors
Time

2660
4 :zzz:
0 :x:
0 :fire:
1m 14s :stopwatch:


Updated docs cover page; added measurement list

Updated the description of MLTE on the documentation cover page; changed the old links to the 'A2IT' framework to MLTE; added the measurement list under contents.
Added a new markdown file to the docs folder with a list of the current MLTE measurement offerings

obsolete, changes made to this branch under a new pull request


Revert "SFI: EFDocs: Correct all image issues all severity levels"

Reverts dotnet/EntityFramework.Docs#4850
Why were these deleted?
cc @roji @AndriySvyryd

/cc @wadepickett @tdykstra