Consider introducing an aggregate trait for types that can be both serialized and deserialized

Motivation
Very often when writing generic code I'm assuming that types that can be both serialized and deserialized. So I might have to write something like
fn foo<T: Serialize + DeserializeOwned>() {}

it seems senseful to me to be able to write something like
fn foo<T: Serde>() {}

instead. serde could provide a blanket impl to that effect. To motivate this with a real-world example, I currently have these trait bounds in a piece of code:
    Material: Serialize + DeserializeOwned,
    Material::Parameters: Serialize + DeserializeOwned,
    OPoint<f64, D>: Serialize + DeserializeOwned,

With the suggested addition, it would instead read
    Material: Serde,
    Material::Parameters: Serde,
    OPoint<f64, D>: Serde,

which, arguably, is far simpler.
Q & A

You could just provide your own Serde trait, it doesn't need to be in serde proper.

I could, but there are at least two problems with this:

I would like to have this functionality across many crates and projects: I would have to create a mini-crate with only this trait.
Users reading the code wouldn't be familiar with the trait, so upon reading the code it might not be clear what the trait does. If it's provided by serde, then it would have more legitimacy and users might be more familiar with it.

Wouldn't trait aliases be better suited for this? Maybe we should wait for trait aliases to land?

Perhaps. This feature seems far away, and we'd need the MSRV to follow suit, which would take far longer (maybe even never / version 2?). I don't immediately see any benefits of implementing it as a trait alias - both implementations would achieve the same practical result. DeserializeOwned is already precedence: it's effectively a trait alias implemented by way of a blanket impl.

The trait should be called SerDe, not Serde!

Yeah, I'm worried that this might be a particular source of bike-shedding. I also considered SerializeDeserialize, but the benefits diminish somewhat by having a very long trait name.

I'm interested to hear what people think.

I'd prefer not to build something like this into this crate. Thanks anyway for the suggestion!


feat(DIST-1525): attach webpack_nonce to inline

Purpose
Fixes #458
Approach
Webpack (and some other projects I've seen, like Styled Components) support a __webpack_nonce__ global: this value is checked at runtime (not bundle time), and if it's set it is used as the value of the nonce attribute attached to any injected <style> or <script> tags.
This PR is intended to only add a nonce attribute if that global is set: otherwise it should not change the output
Adds a test of the nonce being attached

There seems to be an issue with the Github Action, I am looking into it.
@dominics I just realized since this is a PR from your fork, I can not push any changes to it. Can you please add short section about this into react SDK README file? Into "Configuration" section, above the "Examples" section. You can just mention the feature and link to #458 for more details.

@dominics the issue with Github Actions seems to be resolved now, I tested with a dummy PR from a fork via non-Typeform Github account. Please rebase on latest main branch.

Rebased on main, and added a short section to the README 👍

:tada: This PR is included in version @typeform/embed-react-v1.3.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


add a .Xresources file for reference and updates, change a single lin…

…e in stylesheet, rework the colors to be less harsh on the eyes in config

If you're fixing a UI issue, make sure you take two screenshots. One that shows the actual bug and another that shows how you fixed it.

I've tested the changes and it's still the same for me?

This should fix the WebUI problem

I'm aware of that, I've been trying to figure out why it's not loading the correct colors. It basically just looks like breeze at the moment, despite the correct colors being defined.

I'm aware of that, I've been trying to figure out why it's not loading the correct colors. It basically just looks like breeze at the moment, despite the correct colors being defined.

You forgot to put the custom-webui.css file from the Dracula WebUI into the css folder and include it in the index.html file.


Find better BeforeTargets for Common.*.targets

Currently using a target that causes the BuildXCFramework and BuildAar targets to run too often (including in a nuget restore build pass).
Need to look for a better target to use for each platform.  There is something like CollectNativeReferences on iOS and _ResolveAars on Android (which they inject into CoreResolveReferencesDependsOn)

This should be slightly improved by https://github.com/Redth/DotNet.Platform.SlimBindings/pull/15 via:
https://github.com/Redth/DotNet.Platform.SlimBindings/pull/15/files#diff-236b52437f49e99579d42ec96e008395e33c185e8d331efe41b985b9310e0890R25
https://github.com/Redth/DotNet.Platform.SlimBindings/pull/15/files#diff-cb7e40267b52d3998ef1e84c108fb5189594d1151d694001c550a223538a2d02R40-R46
Though I will be revisiting this when introducing MSBuild tasks, as this doesn't work perfectly with projects that multitarget ios/mac.

Fixes for multitargeting landed in https://github.com/Redth/DotNet.Platform.SlimBindings/pull/22, going to close this as fixed.


A tag for recipes with pictures

I think we need another tag or something similar that separates all the recipes with pictures from ones that do not contain any pictures. Right now I get an impression that 80% (based on what I clicked) recipes have no pictures. And these ones do not interest me at all and probably some other people as well.

Ya, looks like it is about 72%, which is too high imo.
I don't really like the idea of using the same tagging for pictures though because it is something that could be automated (does the recipe file contain an image link? then this recipe has an image), and it might be useful to have a way to filter out recipes without images but also filter by a tag. Like if you want Japanese recipes that have images.
Something that might be doable in the makefile.
Maybe having the Makefile add a camera emoji or something to the beginning of every recipe link that has an image?

I agree with this
Idk the best way to indicate this. Maybe color the bulletpoint?
Maybe add camera emoji after bullet point?
There should be some indication because you might end up eating some cow turd and not know

What do you guys think about how this looks? I don't think the camera emoji looks that bad. 📷
There could also be a sort by field so you could do sort by type (plain or images), sort by newest/oldest, and sort by name.
or, keep it incredibly basic :|


[SDK] Add overlay shims for ClockKit framework

This will resolve a mismatch between the SDKs in Xcode 11 and this repository, fixing a spurious build issue.
rdar://problem/51583518

@swift-ci test


Use temp dir and abs path in api_gen.py

Use Temp Dir and Abs path in api_gen.py

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

Project coverage is 55.27%.  Consider uploading reports for the commit 2a9e5af to get more accurate results

Additional details and impacted files
@@             Coverage Diff             @@
##           master   #19533       +/-   ##
===========================================
- Coverage   79.38%   55.27%   -24.12%
===========================================
  Files         496      496
  Lines       44056    44056
  Branches     8160     8160
===========================================
- Hits        34975    24351    -10624
- Misses       7220    18122    +10902
+ Partials     1861     1583      -278

Flag
Coverage Δ

keras
55.27% <ø> (-23.97%)
:arrow_down:

keras-jax
?

keras-numpy
55.27% <ø> (-0.17%)
:arrow_down:

keras-tensorflow
?

keras-torch
?

keras.applications
?

keras.applications-jax
?

keras.applications-numpy
?

keras.applications-tensorflow
?

keras.applications-torch
?

Flags with carried forward coverage won't be shown. Click here to find out more.

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


[aac @ 0x17c8fe0] The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it.

Hello Don. I have updated to the latest version however this has broken the converter for me. I think it may be related to a change you made in version 0.15.0
I am getting the following error
[aac @ 0x17c8fe0] The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it.

Its been working great until I have updated. My conversion server is running Ubuntu 16.04. Would you be able to re add to experimental option back in? or add an if statement adding it back for Ubuntu?
Let me know if you need any more info. Thank you

@dgibbs64 Sorry I took so long to respond. This is not a bug.
It's likely that your version of ffmpeg is too old so it's requiring that deprecated option. What version of ffmpeg are you running now?

Ideally as Ubuntu 16.04 LTS it is unlikely to get the update to remove the experimental warning having a check to identify a ffmpeg version older that X will still have the experimental option used.

@dgibbs64 That's an ancient version of ffmpeg and likely other things, like proper crop detection, won't work either, at least not correctly. You need version 3 or later.
You can find up to date packages for Ubuntu here:
https://launchpad.net/ubuntu/+source/ffmpeg
I won't restore the option for older versions of ffmpeg because the latest ffmpeg spews warnings about it. I'm damned if I do and damned if I don't. :)

Yes I get your point if 3.0 is way better. However as the current LTS version of Ubuntu does not have 3.0 its kind of an issue. The only way to go about this is updating to a non LTS version which I would rather avoid.
If I remember correctly you use this mainly on mac? If possible it may be worth adding further installation notes for at least Ubuntu/debian. Also stating that ffmpeg 3.0 is only supported now.
Right dist upgrade for me. My conversion/transcode server has been great using your program and my automated bash script. I just drop the files in a directory and let them to go.

@dgibbs64 Yes, I use the tools mainly on my Mac. You make a good point about documentation. I described the ffmpeg version requirement when I made the change to convert-video in the feature proposal, but I didn't include it the "README" document other than in the change log. I'll figure out how to mention that.
I'm glad the tools are working out for you! But I'm sorry you hit this snag.

I have completed a dist upgrade now and its all working again :D. Thanks

@dgibbs64 Excellent! Sorry to have to put you through that. :)
OK, I'll close this then.


Consider adopting All Contributors specification

https://allcontributors.org/
Let's recognise all contributions, code or not.

@all-contributors bot add @KitBurgess for design, code

@kujon the docs page looks like this below:

Yeah, awesome!

@all-contributors bot add @cvonsteg for code, review

@all-contributors bot add @syed1992 for review

@all-contributors bot add @dstarkey23 for code, docs, examples

Adds @dstarkey23 as a contributor for code, doc, example.

@all-contributors bot add @dstarkey23 as a contributor for code, doc, example.

@all-contributors bot add @syed1992 for review

@all-contributors bot add @syed1992 for review


Support Haiku

Search before asking

[X] 在 issues 中没有找到类似的内容。I searched in the issues and found nothing similar.

Feature
Support Claude Haiku Model
描述 Motivation

Haiku is cheaper for translation, so maybe you can add to options.
Solution
No response
还有其他内容吗？Anything else?
No response
你是否愿意提交一份 PR？Are you willing to submit a PR?

[ ] 我愿意提供 PR! I'm willing to submit a PR!

官方都没正式发布

官方都没正式发布

早就发布了，都可以用了啊。

Haiku model is supported now.


Plugin fails the build when Git executable is not available

Describe the bug
Bugsnag Android Gradle Plugin seems to require Git executable to be available and will fail otherwise, which is surprising and contradictory to the documentation which literally says: "values are automatically detected if Git is installed", so it sounds like it shouldn't fail if there is no Git.
When I used a Docker image without the Git executable in my GitHub Actions pipeline, the Bugsnag plugin's task failed:
Execution failed for task ':app:bugsnagRelease-releaseTask'.
> Error while evaluating property 'gitVersion' of task ':app:bugsnagRelease-releaseTask'.
   > A problem occurred starting process 'command 'git''

Many Docker images don't include Git because in CI environment both the repository and the Git info such as commit SHA (i.e. revision) etc. are available via environment variables (example).
Therefore, I decided to provide the necessary information manually in my app/build.gradle.kts file:
android {
    bugsnag {
        if (System.getenv("CI").toBoolean()) {
            sourceControl {
                provider.set("github-enterprise")
                repository.set("https://some.url/to-my/repo")
                revision.set(System.getenv("GITHUB_SHA"))
            }
        }
    }
}

Unfortunately, it didn't seem to help and the plugin's task was still failing. Maybe my if condition was wrong (I didn't check) but judging from this code, I thought the problem may lie in the lack of adequate logic on the plugin's side. It looks like the Git commands are being executed regardless of Git availability or manual sourceControl configuration.
I ended up creating another Docker image with Git installed and that solved the problem for me, but IMO Bugsnag plugin shouldn't require Git to be present.
If you would like to try it yourself, the Docker images I was using are here:

without Git: azabost/android-sdk:jdk17-sdk33
with Git: azabost/android-sdk:jdk17-sdk33-git

Steps to reproduce

Apply Bugsnag Android Gradle Plugin
Either configure or don't configure bugsnag.sourceControl block - probably doesn't matter
Run the release build variant on a machine without git executable
See error

Environment

Android Studio version: Android Studio Giraffe | 2022.3.1 Patch 2
Gradle version: 8.1.1
Android Gradle Plugin (AGP) version: 8.1.2
Bugsnag Android Gradle Plugin version: 8.1.0

Gradle build error with stacktrace
Click here to expand:
> Task :app:bugsnagRelease-releaseTask FAILED
> Task :app:generateBugsnag-releaseMapping

0 problems were found storing the configuration cache.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:bugsnagRelease-releaseTask'.
> Error while evaluating property 'gitVersion' of task ':app:bugsnagRelease-releaseTask'.
   > A problem occurred starting process 'command 'git''

* Try:
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
See the complete report at file:///__w/MyApp/MyApp/build/reports/configuration-cache/54wp53pq39e6fbw1bdjjhxy2x/d7gy44vhzne2w65yh4m77yww3/configuration-cache-report.html
795 actionable tasks: 795 executed
Configuration cache entry stored.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:bugsnagRelease-releaseTask'.
	at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:38)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73)
	at org.gradle.internal.execution.impl.DefaultExecutionEngine$1.execute(DefaultExecutionEngine.java:64)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:146)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:135)
	at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
	at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
	at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
	at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:74)
	at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
	at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:42)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:337)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:324)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:317)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:303)
	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:463)
	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:380)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:49)
Caused by: org.gradle.process.internal.ExecException: A problem occurred starting process 'command 'git''
	at org.gradle.process.internal.DefaultExecHandle.execExceptionFor(DefaultExecHandle.java:241)
	at org.gradle.process.internal.DefaultExecHandle.setEndStateInfo(DefaultExecHandle.java:218)
	at org.gradle.process.internal.DefaultExecHandle.failed(DefaultExecHandle.java:370)
	at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:87)
	at org.gradle.internal.operations.CurrentBuildOperationPreservingRunnable.run(CurrentBuildOperationPreservingRunnable.java:42)
	... 2 more
Caused by: net.rubygrapefruit.platform.NativeException: Could not start 'git'
	at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:27)
	at net.rubygrapefruit.platform.internal.WrapperProcessLauncher.start(WrapperProcessLauncher.java:36)
	at org.gradle.process.internal.ExecHandleRunner.startProcess(ExecHandleRunner.java:98)
	at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:71)
	... 3 more
Caused by: java.io.IOException: Cannot run program "git" (in directory "/__w/MyApp/MyApp"): error=2, No such file or directory
	at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:25)
	... 6 more
Caused by: java.io.IOException: error=2, No such file or directory
	... 7 more

Hi @azabost
I have raised this as an item on our backlog. We will be sure to keep you informed of any updates, however I presently do not have a firm ETA on the release.


r4d search link has rectified without extra 4 in the project id

r4d search link has rectified without extra 4 in the project id and link is workable

Code checked and looks ok, comments should be removed to avoid confusion.


Issue60: Hacktoberfest celebration: Blogs: 'Rooster Rescue' by Alexis…

Description
New blog submission for 'Rooster Rescue' by LittleMissButtons (Alexis Pendleton).
Related Issue
Issue 60: Hacktoberfest celebration: Blogs:
Acceptance Criteria
Write a blog on anything related to pet or stray animals: Hacktoberfest
Type of Changes

Type

:bug: Bug fix

:sparkles: New feature

:hammer: Refactoring

:100: Add tests

:link: Update dependencies

✓
:scroll: Docs

Updates
Before

After

Blog12 card added to the bottom of the 'Blog' page
Rooster Rescue blog page added
b12-poster image added for that blog
Writer added to the Contributions.md

Testing Steps / QA Criteria
Blog page and new blog at the bottom on the page. Click 'Rooster Rescue' card for the full blog.

@akshitagupta15june  I am making another PR within few minutes

@Anuran12 can you look at the discord dm , i just dmed you regarding something


Add ignore ability for specific lines

Dfmt allows this via
// dfmt off
// dfmt on

dscanner should have something similar

https://github.com/Hackerpilot/Dscanner/issues/240


Add release v0.6.19 notes to CHANGELOG

What this PR does / why we need it:
In preparation for v0.6.19 release, update changelog

@romoh and @bfjelds, I added a couple new sections (thanks to contributors and installation steps).


fix: README.md grammar tweaks.

Just noticed some minor areas for improvement while reading over the README file.

Thank you so much @Amb1guousRaccoon


Batching

You'd need a whitelist of batchables to prevent errors - only a few specific options are batchable, all the rest are explicitly unbatchable - ie they must be equal to permit batching. You should not have blacklists on model/steps/cfg, that is a tiny subset of all the batch-breaking options.


ADDED Trending posts

Pull Request
Title

ADDED Trending posts
Description

It gives top 6 posts based on user reaction count
Related Issues

Fixes: #248
Changes Made

added new compnent

TrendingPosts.tsx

2.getTrendingPostsController  (in post/controller.ts)
some other small changes
Checklist

[x] I have tested the changes locally
[x] Documentation has been updated (if necessary)
[x] Changes are backward-compatible

Screenshots (if applicable)

It is better to see in preview
Additional Notes

nothing
Footer

@MeetDOD  can you please help me why i am getting deployment error

@MeetDOD can you please help me why i am getting deployment error

Bro I can't, only @VaibhavArora314 can see the logs and tell he has the access/deployed with his vercel account 👍

@MeetDOD can you please help me why i am getting deployment error

Bro I can't, only @VaibhavArora314 can see the logs and tell he has the access/deployed with his vercel account 👍

okay @MeetDOD

hey @VaibhavArora314 can you please help with me with deployment failure
i my local it is working fine but deployment keeps failing

DONT MERGE THE PR

https://github.com/VaibhavArora314/StyleShare/assets/133508962/34db5b1d-1293-4d2e-86db-1157b4738a9e

I think it is a level 3 issue...it is very hard... @VaibhavArora314

Okay @VaibhavArora314


Integrate more of the README.md into the sphinx site

Moved some of the more use case specific stuff from the main README, to the sphinx site to not overwhelm a first time viewer. While still allowing more detailed instructions in a central place on the site.
I think adding the quick links and a catch phrase also looks nice at the top of our README, but I'd like thoughts on that. Replacing the 3 top images with a catchy demonstration video might be cool in the future? 🤔
View modified readme here

Oh I also removed the minimum coverage and maximum duplication conditions from the quality gate, a bit more of the positive green checks didn't sound too bad to me :). We'll still see the coverage and duplication percentage in the overview posted by the bot


Update integration-with-frameworks.md

Added info about integrations Cloudflare Image Resizing with Ruby on Rails

Thank you for the feedback about how we can make improvements with developers.cloudflare.com documentation. This doesn't quite align with the purpose of this page, but your feedback has been noted for future consideration. Thanks!


Force camelcase on requests

Thanks for the quick answer & fix :+1:
Let me know when the next release is ready, than I can test & confirm everything is fine with vaultwarden


refreshes all the time

unable to setup as it keeps on refreshing and never reaches a stable point ....
i followed the steps to setup this application turns out it is more than just frustrating to set this up

Did you look at the sample app? Think it shows the DSL editor and visual editor in sync and doesn't refresh all the time...
A bit more details on what is refreshing all the time or some sample code to demonstrate the problem would help

@onu411514c: It'd be good to also know which browser and version you're on.

browser version -->> Version 68.0.3440.75 (Official Build) (64-bit)
node -- >  v8.11.4

It does that on Windows i can confirm that. It's fine on Mac with the same Chrome version. I'll investigate...

This was introduced not long ago with Angular 6 upgrade: c130c5cc59ee348b420d34d9ad9f3575f4064d95
I have upgraded ngx-bootstrap being used by the sample app to 3.x because wanted not to use rxjs-compat package. It turned out however that something is off with ngx-bootsrap 3.x: https://github.com/valor-software/ngx-bootstrap/issues/4494
I worked around the problem by transpiling ngx-bootstrap.es2015.js file at runtime by SystemJS. It worked great everywhere up until. This is very unfortunate because I couldn't find a better solution but to rollback sample to ngx-bootstrap 2.x and add rxjs-compat. (ngx-bootstrap is used show modal dialogs for the sample app).
I have updated the dependendy of lite-server and now you should be able to see the sample in other browsers on Windows. Note, however, that FF and IE are not well supported as we were aiming to get it working primarily on Chrome.

Fixed with 5d7f8929fba4588ad6951f824ddd44e123144a39

@onu411514c: Please try it out and let us know if you have any other feedback. Thanks for reporting this!


Nimiq.watch API returns 50 results max

No matter how much you set as the number of results you want to have, the maximum that is returned is 50.
So if you increase the offset by 100, you miss 50 txs.
https://github.com/svub/nimiq-voting-app/blob/bb2a73d87ae0cde03767ba599d5ecda7baa1012b/src/lib/network.ts#L33

Ok, thanks for the pointer!!
Maybe add a note in the API doc if you like. :)


Open links in new tab from lbry.tv

The Issue
Hyperlinks should open in a new window (i.e share links, other urls)
System Configuration

LBRY Daemon version:
LBRY App version:
LBRY Installation ID:
Operating system:

Anything Else

Screenshots

To be clear, this is just external links, right?

Yep, updated !


chore: shake out HMR code from production build

Something something Taylor Swift meme.

Didn't take Jacob as a Swiftie 👀


Wake on Lan not working with HA 2024.2.0

WOL stopped working for me while my OPNsense installation was still at 23.7.12 and updated HA to 2024.2.0. I updated my OPNsense instance in the hope to fix it, but jokes were on me, it became worse. Had to check the open issues here first...
I just saw the exact same errors as noted in the pfSense repository: https://github.com/travisghansen/hass-pfsense/issues/188
Can't reproduce the error at the moment since I remotely upgraded OPNsense, but can do so if needed, when I'm back home.

Telegram command: turn on Server: Error executing script. Unexpected error for call_service at pos 1: 'list' object has no attribute 'get' Traceback (most recent call last):   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 485, in _async_step     await getattr(self, handler)()   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 723, in _async_call_service_step     response_data = await self._async_run_long_action(                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 685, in _async_run_long_action     return long_task.result()            ^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/core.py", line 2279, in async_call     response_data = await coro                     ^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/core.py", line 2316, in _execute_service     return await target(service_call)            ^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 892, in entity_service_call     single_response = await _handle_entity_call(                       ^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 962, in _handle_entity_call     result = await task              ^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/components/template/switch.py", line 161, in async_turn_on     await self.async_run_script(self._on_script, context=self._context)   File "/usr/src/homeassistant/homeassistant/components/template/template_entity.py", line 562, in async_run_script     await script.async_run(   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1600, in async_run     return await asyncio.shield(run.async_run())            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 435, in async_run     await self._async_step(log_exceptions=False)   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 487, in _async_step     self._handle_exception(   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 512, in _handle_exception     raise exception   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 485, in _async_step     await getattr(self, handler)()   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 723, in _async_call_service_step     response_data = await self._async_run_long_action(                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 685, in _async_run_long_action     return long_task.result()            ^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/core.py", line 2279, in async_call     response_data = await coro                     ^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/core.py", line 2316, in _execute_service     return await target(service_call)            ^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/config/custom_components/opnsense/services.py", line 43, in _async_send_service     await self.hass.helpers.service.entity_service_call(   File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 843, in entity_service_call     entity_candidates = _get_permissible_entity_candidates(                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 796, in _get_permissible_entity_candidates     and (entity := entities.get(single_entity)) is not None                    ^^^^^^^^^^^^ AttributeError: 'list' object has no attribute 'get'

I think this is a bug in hass. We probably need to have the devs look at it and comment.

This explains why this hasn't been working. Ugh. Hopefully this gets resolved soon, as I too rely on it quite a bit. Thanks.

Check out https://github.com/travisghansen/hass-pfsense/issues/188#issuecomment-1937111820 for a potential workaround.

Can you share the service call you are making that generates this error? Please also switch the format of the logs to preserve the line breaks as shown below (you use three backticks before and after, you can quote this reply to see what I mean)
Telegram command: turn on Server: Error executing script. Unexpected error for call_service at pos 1: 'list' object has no attribute 'get' Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 485, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 723, in _async_call_service_step response_data = await self._async_run_long_action( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 685, in _async_run_long_action return long_task.result() ^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2279, in async_call response_data = await coro ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2316, in _execute_service return await target(service_call) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 892, in entity_service_call single_response = await _handle_entity_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 962, in _handle_entity_call result = await task ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/template/switch.py", line 161, in async_turn_on await self.async_run_script(self._on_script, context=self._context) File "/usr/src/homeassistant/homeassistant/components/template/template_entity.py", line 562, in async_run_script await script.async_run( File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1600, in async_run return await asyncio.shield(run.async_run()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 435, in async_run await self._async_step(log_exceptions=False) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 487, in _async_step self._handle_exception( File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 512, in _handle_exception raise exception File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 485, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 723, in _async_call_service_step response_data = await self._async_run_long_action( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 685, in _async_run_long_action return long_task.result() ^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2279, in async_call response_data = await coro ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2316, in _execute_service return await target(service_call) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/opnsense/services.py", line 43, in _async_send_service await self.hass.helpers.service.entity_service_call( File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 843, in entity_service_call entity_candidates = _get_permissible_entity_candidates( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 796, in _get_permissible_entity_candidates and (entity := entities.get(single_entity)) is not None ^^^^^^^^^^^^ AttributeError: 'list' object has no attribute 'get'

Ignore the above ^
The PR linked below is what caused the change and the fix is shown in the isy994 integration code changes from the same PR: https://github.com/home-assistant/core/pull/106759/files

Should be fixed in v0.1.19. Thanks to @raman325 !

Issue resolved in v0.1.19!


subscription-manager pre-registration

This add support for pre-registering with subscription-manager in the buildah tasks (0.2 only). When activation keys are provided the buildah-task container will register and then provide certs to the buildah env via volume mounts so that users do not need to add subscription-manager register commands to the Containerfiles. This makes downstreaming somewhat easier and addresses negative user feedback.
This PR installs subscription -manager on the fly - consider adding it to buildah-task container instead.

Look for any open pull requests in the repository with the title "e2e-tests update" and
see if there are recent e2e-tests updates that will be applicable to your change.

/retest

Tested with the buildah task, works well 🎉

/retest

opened https://github.com/konflux-ci/buildah-container/pull/98 to get subscription-manager included in buildah-task

Works on ubi9 as well :)

rebased and removed dnf install.

/retest

i'm doing some add'l testing, don't merge for now.

this is ready to go. tested with:

entitlement certificates as key value secrets
activation keys secret + registration in Dockerfile
activation keys as secrets and auto-pre-registration


hms-video-store doesn't have a GitHub repository

This is not related to this project, but I didn't knew a better place to say it, so here it goes:
hms-video-store have its source code in NPM, and its license is MIT, so why it doesn't have a GitHub repository as all other 100ms open-source projects [that I know]?

Any news about this?


[UNDERTOW-2449] Revert changes that have been merged by mistake in CI…

… when investigating PushResourceRSTTestCase
Jira: https://issues.redhat.com/browse/UNDERTOW-2449

I'll investigate this later today. Unfortunately, the test is not passing on proxy scenarios. I'll see if I want to have the test merged with proxy tests disabled or not after I figure what exactly is happening


*: bump 0.4.4

Support requesting snapshot (https://github.com/pingcap/raft-rs/pull/243)
Make flow control more aggressive (https://github.com/pingcap/raft-rs/pull/340)

Test failure due to missing clippy on nightly rust. It has pass the check on stable rust. So I'm going to merge it.


pathPrefix missing for local links inside content

Inside content links are missing the pathPrefix in version 1.7.9.
Since I don't see anything related to it in the changelog, I suspect this is still a problem in newer versions.
@TylerBarnes Is there any way we could spin up a 1.7.10 or 1.8. only with that fix?  I'm stuck on these version since I can't upgrade WPGatsby or WPGraphQL any further for now.

It seems this could be a problem of pathPrefix not being passed down to the gatsby-plugin-catch-links.
Is there a way to overwrite the plugin and use it in our main project instead?

@henrikwirth you should be able to add gatsby-plugin-catch-links to your gatsby-config.js and it'll use that instead.

I don't see an option for that in that plugin though, so this plugin may need to check for a path prefix and add it to the inline relative links

Yep, looks like this plugin needs to handle this https://github.com/gatsbyjs/Gatsby/blob/master/packages/gatsby-plugin-catch-links/src/catch-links.js#L167

So after playing around a little, I figured, that the problem mainly arises from the fact, that the links inside content are written as follows:
Some Link

The problem is that usually, if you would use GatsbyLink on a link like this, it would prefix the link automatically. This doesn't happen for the links inside Wysiwyg though, since the node process function only picks up links, that have the actual WordPress backend domain in front. Like:
Some Link

I think it would be great to have that as an option. like add path prefix to relative urls inside content. And I believe this should even be the default behavior.

I'm cleaning up this repo a bit and moving this issue to our internal backlog. If anyone finds this issue and needs this sooner please add a feature request to https://portal.gatsbyjs.com/gatsby-cloud


Fix CMake warning about FindEigen.cmake being deprecated.

CMake prints the following warning:
-- checking for module 'eigen3'
--   found eigen3, version 3.2.0
CMake Warning at /opt/ros/jade/share/cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  CMakeLists.txt:130 (find_package)

-- Found Eigen: /usr/include/eigen3
-- Eigen found (include: /usr/include/eigen3)

Replacing Eigen with Eigen3 as proposed by the warning message works for me (Ubuntu 14.04.3 LTS).

Hi, thanks for the pull request, but I don't think this is sufficient because you need to change the usage of that find_package() as well, e.g.: https://github.com/ros-visualization/rviz/pull/965/files#diff-af3b638bc2a3e6c650974192a53c7291R170
For more info see: http://wiki.ros.org/jade/Migration#Eigen_CMake_Module_in_cmake_modules


GQ Characterization Tolerances

near-zero eigenvalues of the 2nd order coefficients and determinant values of the coefficient matrices used to determine the GQ types may be a problem in the future. Any given tolerance value will not cover all cases encountered.
One suggested solution is to duplicate the geometry and generate GQs for all reasonable types given the characterization parameters generated in mcnp2cad. The idea here being that the user can then select the correct model that results.

Some more discussion about this issue can be found in #66. At some point it would certainly be worthwhile to study this more in-depth.


Authentication

Hi,
I installed your starter project without problems and it works.
Is it possible do not allow the access to a page for a user not authenticated? Now I can open every page without authentication.

Duplicating #26.


Update docker network inspect help syntax

Closes  #17318 🐹. Missed that when adding support of multiple network in inspect :sweat:.
Thanks @moxiegirl :wink:
$ docker network inspect --help
docker network inspect [OPTIONS] NETWORK [NETWORK...]

Removed duplicate golint comment.
Signed-off-by: Vincent Demeester<EMAIL_ADDRESS>

LGTM, thanks @vdemeester
ping @moxiegirl for the merge

@vdemeester :clap: u r :star2: :bow:

@moxiegirl :blush:


pt.js - Added missing strings

It seems I forgot to update Portuguese. The script (now in https://github.com/jzu/new_mew_strings) also brought up leftovers in ar and zhtw.
ADD_Label_8
ADD_MetaMask
ADD_Radio_5_PathAlternative
ADD_Radio_5_PathCustom
ADD_Radio_5_PathTrezor
ADD_Radio_5_withTrezor
ADD_Radio_5_woTrezor
ERROR_36
ERROR_37
SWAP_elapsed
VIEWWALLET_HidePrivKey
VIEWWALLET_ShowPrivKey
x_MetaMask

Ugh, doing it right this time.


Flag B018 for strings and f-strings which aren't docstrings

Summary
This PR updates the B018 heuristic to consider standalone string literals, except for those used as docstring and attribute docstring, as useless expression.
fixes: #11292
Test Plan
Add a test file full of attribute docstring and verified the snapshot.

Going through the ecosystem changes, it seems like most of the violations is because the string is used as a docstring for a variable or a class attribute. While for demisto/content, at least the ones I opened, used strings as a header which should instead be a comment.

Oh, I just understood what Charlie meant by https://github.com/astral-sh/ruff/issues/11292#issuecomment-2094987829, I'll see on to avoid flagging these. I think one way would be to add a ATTRIBUTE_DOCSTRING in the semantic model.

Yeah we should not flag those. Thanks Dhruv!

Still quite a lot of usages of triple-quoted strings which could be comments instead. This makes me wonder if this should be behind preview?

I do think it should probably be in preview.

What is holding this PR from being merged? Are you still debating whether this should be a separate rule or be under B018? Are there any unresolved edge cases?
If any help is needed to merge this I would like to contribute.
This is a very useful rule and it is the last one that forces us to use Pylint alongside Ruff.


[WIP] Improvements and fixes for Auto-Renewable Subscription

Hello @kattrali @mattt (Sorry, I'm not sure who to mention!).
I'm developing an iOS app that includes a feature to use Auto-Renewable Subscription, with greatly helpful library venice. Then I found some issues and fixed / improved them.
Let me explain the changes.

[improvement] Enable to pass shared_secret as options.

As you know, Apple requires shared secret when verifying Auto-Renewale subscription. Though venice already enables me to pass the value by attr_writer of Venice::Client, it's more helpful to pass the value as an argument of Venice::Receipt.verify!. With this change, we can also pass it from Venice::Receipt.verify!.
Venice::Receipt.verify!(data, shared_secret: 'value')

[bugfix] Deal latest_receipt_info as an Array (not Hash) Ignore obsolete attribute latest_receipt_info when its format is unexpected.

As of now, latest_receipt_info is an Array like in_app, but the current implementation expects it is a Hash.So I've fixed. 0c6efa19d8063801d430cc141fb80dc839d7a144
I've tested my app with Apple's sandbox and disappointed that the sandbox returns unexpected latest_receipt_info... Its format is not Hash but Array, so Receipt.new here always fail. So I made latest_receipt_info would be ignored when the format is not Hash.

[bugfix] Use not expires_date but expires_date_ms to calculate date.

Now venice considers expires_date in in_app as milliseconds but its format is a string like 2016-05-19 11:45:59 Etc/GMT. We must use expires_date_ms.

[improvement] Enable to refer an original JSON response via a Receipt instance

Sometimes I'd like to get an original JSON response via a Receipt instance like below. So I enabled it. 54edd6fd448717a473049099720fa0b3c26b6f83
receipt = Venice::Receipt.verify! encoded_receipt, opts
case receipt.original_json_response['status'].to_i
when 0     then foo
when 21006 then bar
end

These changes worked well with my app and I believe it could help other users of venice.
I'm in favor of that you review this PR and merge, thank you!

Hi @ohbarye, these changes look good, and I'd like to pull them into a major release. Are you still making further changes? The only blocker would be updating the documentation.

Hi @kattrali thank you for your review!
Now I'm testing those changes work well with my app on production environment.
If I find other issues or problems, I might make further change. So I temporary lablled this PR [WIP].
After all tests have done, I'll update the documentation and will mention you again, thank you.

+1 thanks @ohbarye

@kattrali
Sorry for late. At last I've done my test and my changes worked well.
And I updated the initial comment (fix No.2's description / add No.4 improvement) and part of README.md related to this PR simply. 7272f9c
(Please let me know if the documentation is not enough or it's not what you expected.)
So now I believe it's time to merge, thanks!

@kattrali
Sorry to disturb you, but I would appreciate it if you could look at https://github.com/nomad/venice/pull/30#issuecomment-226932921.

I hope this PR will be merged and released soon.

Released in 0.3.0, thanks again, @ohbarye.

@kattrali

Released in 0.3.0, thanks again

I'm glad to hear that. I truly appreciate you, too!


See announcement + release notes here:
http://maven.apache.org/docs/history.html

Sorry first pr was bogus :/

Maven 3.8.2 has some nasty issues (see https://issues.apache.org/jira/browse/MNG-7216), so I'd rather skip that one and defer the upgrade to 3.8.3.


Update README.md for release version 0.1.0

Update README.md for release version 0.1.0

@dvandra are you using PR#386 or this one for merging the change log. I do not see the changes that I asked for in this PR.

@dvandra are you using PR#386 or this one for merging the change log. I do not see the changes that I asked for in this PR.

@prashbnair Both are different PR, once CHANGELOGs PR is Merged, i will rebase it and push the same PR, so there will not be any other change for this PR.

Just observed, File size of all Gif images are too high when comparing with the previous images. Probably you should consider using aggressive compression methods while creating gif images.

@arajkumar updated with resized new GIFs.


Found no contents

There is no content in the project, please add some immediately.

Ok, will take care.


Adds CodeQL

Adds CodeQL
Adds test_main_integration.py

Codecov Report
Patch and project coverage have no change.

Comparison is base (ecef903) 83.22% compared to head (918f802) 83.22%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@           Coverage Diff           @@
##             main       #6   +/-   ##
=======================================
  Coverage   83.22%   83.22%
=======================================
  Files           5        5
  Lines         155      155
=======================================
  Hits          129      129
  Misses         26       26

Flag
Coverage Δ

unittests
83.22% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Dynamic add/remove demo hangs on window resize

After adding an item resizing the window causes the browser to hang on Chrome, Firefox and Safari.

Can you be a little more specific? I tried the demo just now in Chrome and adding an item and resizing the browser window worked just fine.

Sometimes I can't reproduce it myself. Try adding an item and then resizing the window a couple of items. Repeating this eventually causes the issue to appear for me.

I'll confirm, I've seen it too.
Working through some oddities right now with the new versions of draggable and resizable. Coming to terms with how stateful dragging is, and how awful it can be to work with if you hide the state. I'll come back around to these issues soon. Until then stick with 0.9.1.

Has this issue been fixed?

Fixed in 0.10.


[HOLD for payment 2023-01-11] IOS - Workspace -Units under Reimbursement-hidden by keyboard after tap on it (small phones)

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Launch the app
Log in with any account
Go to Setting - Workspace
Tap on Reimbursable expenses
Tap on Units to change it

Expected Result:
Units under Reimbursement should be visible after tap on it
Actual Result:
Units under Reimbursement-hidden by keyboard after tap on it
Workaround:
Unknow
Platform:

Where is this issue occurring?

iOS

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: Yes
Email or phone of affected tester (no customers): any
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/93399543/192888345-9a5d8c1e-91cd-4e3a-b548-4348b3dac811.MP4
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
View all open jobs on GitHub

Putting a hold on this and filing with our larger keyboard initiative.

Moved to weekly while issue is on hold pending larger keyboard updates.

Issue not reproducible during KI retests. (First week)

Ok two weeks of not being able to reproduce means I think we should close, reopen if you disagree!

@JmillsExpensify @AndrewGable QA team is discovered the same issue in Android on build <IP_ADDRESS>
https://user-images.githubusercontent.com/93399543/196445157-1d5f16b6-780d-483d-982b-c45e041fd044.mp4

Still on hold for the larger keyboard issue mentioned in the title.

@tgolen Let's take this one off hold right?

It looks like the next step here is to get some proposals for the fix.

Yes indeed! Upwork job is here: https://www.upwork.com/jobs/~01ff57d54ca13f4541.

PROPOSAL:
This can be solved by using the KeyboardAvoidingView with the 'behaviour' setting in BlockingView component https://github.com/Expensify/App/blob/main/src/components/BlockingViews/BlockingView.js#L29

@priyeshshah11 This is an incomplete proposal. Please mention:

root cause of the issue.
How your proposal fix the issue?

PROPOSAL:
Cause: This is the default behaviour of react-native to pull the keyboard up (over the actual view)
Solution: This can be solved by using the KeyboardAvoidingView with the behaviour prop in BlockingView component https://github.com/Expensify/App/blob/main/src/components/BlockingViews/BlockingView.js#L29
The problem will be fixed as KeyboardAvoidingView will push the input above in the actual view and the keyboard will appear just beneath it. Thus, the user will be able to see the input clearly while interacting with and having the keyboard open.
@parasharrajat My apologies!

It still does not explain how this change solves the issue on Reimbursable page. Were you able to reproduce this issue? What is the relation of BlockingView with the issue?

It still does not explain how this change solves the issue on Reimbursable page. Were you able to reproduce this issue? What is the relation of BlockingView with the issue?

This is the WorkspaceReimburseView page which uses FullPageNotFoundView which in turn uses BlockingView
I hope this explains the relation

Thanks. It makes sense. But we are already have KeyboardAvoidingView in ScreenWrapper https://github.com/Expensify/App/blob/3bba09a7898354378d5162ffd1fa0d5d66bf05b8/src/pages/workspace/WorkspacePageWithSections.js#L100

@parasharrajat any updates on the above?

I just checked. This is working fine for me on Android.
I am facing some issues with my Mac ATM. I will share an update as soon as possible.

however it is using the default props which is currently set to padding for the behaviour prop in ScreenWrapper which adds a paddingBottom to the main view and not the scrollView which is being used inside WorkspacePageWithSections. Thus, the content inside the scrollView stays as it is and doesn't move up, we need to scroll the content up as well inside the ScrollView.

Based on this, you are saying that KeyboardAvoindingView is not working. I don't think this is correct. It is working for the Rate field.

Waiting for proposals.

Still waiting for an approved proposal.

Same as above. Increasing the price to $500.

Ideally hoping for Margelo or an internal engineer to take this over. I'm holding on raising the price for the time being.

I'm going to take this over and start digging into it

I'm not able to reproduce this on either iOS or Android.

@tgolen Did you test the Unit field? This issue focuses on that. Rate is used for comparison only.

Maybe I'm confused on the reproduction steps. On Android, if I just go into the settings and tap on the units, I see this with no keyboard:

So... it's not really a valid test?

This issue is only occurring at iOS.

Oh ok. So we need to update the title/reproduction steps then for clarity.

Yeah, sure. I think it was iOS some days back.

Are we keeping it close? I saw you updated the title @JmillsExpensify. So I am unclear.

Digging into this, I found that this is a bug in the picker library we are using. There is an open issue about it here: https://github.com/lawnstarter/react-native-picker-select/issues/273. The library looks to be unmaintained and hasn't had any real changes merged in several years. We also have our own fork of the library.
@hannojg This might be a good one for you to look into and investigate. Maybe you can find the cause of the issue in the library and we can fix it in our fork, as well as submit a PR to the original library to fix it also. It looks like there might be a workaround posted in https://github.com/lawnstarter/react-native-picker-select/issues/273 but I don't think we want to use that.

Or maybe there is a better picker component we should be using?

Oh yeah sure, will add that to my list! Will look into it this week. How urgent is this?

I'd say it's on the low end of urgency. These pages aren't used very much and the impact of this bug is very little (ie. you can  still use the form perfectly fine).

Agree with adding this as a weekly for now.

Still a low priority, though on the list.

Though this is still low on the priority list, @hannojg this is a good one to pick up this week so I'm going to assign you.

He's out sick so expect him to action on this in the coming days.

Here i am, GitHub. :-)

Thank you! Assigned.

Proposal
Problem
The problem with KeyboardAvoidingView and react-native-picker-select is, that the Picker is not perceived as a Keyboard in react native's ScrollView component.
ScrollView reacts to Keyboard open/close events and scrolls the content up/down by the minimum height thats needed to show the focused TextInput component.
The Picker internally is just a custom Modal that gets opened when you click on the TextInput. The workaround here is trying to add this functionality, by adding a onShowKeyboard and onCloseKeyboard callback, measure the view itself and then use scrollTo on the corresponding ScrollView manually.
This is not necessarily a bug in the react-native-picker-select library, it's just a missing feature.
Solution
Pass ScrollView ref to Picker component and scroll to input directly in react-native-picker-select component.
I have implemented such a behaviour here:
react-native-picker-select
Expensify/App

Result:
https://user-images.githubusercontent.com/20173411/205634114-ffc884f6-d21d-4d1c-b516-d8f37c084a16.mp4

In this screen recording, the modal is opening kinda buggy the first time, but that's just the video

@tgolen thoughts on @chrispader's findings and proposal?

The findings make sense. Thanks for looking into it @chrispader! There are a few things that I don't really like about the solution, but I'm not sure if there is any choice if we want this fixed.

It feels brittle that we have to pass a scrollview ref to the picker. Someone can easily forget to do that, and then this isn't working. It looks like the ref has to be passed through a couple of layers too, which makes it even easier to miss.
I see the fix is really being implemented in our fork of react-native-picker-select and so I would also like to see a plan that includes getting it into the upstream and original repo, rather than us having to fight to maintain it forever in our fork

Is it maybe possible to implement the scrolling completely in App and in our own picker?

Thanks for your input @tgolen !

We can either handle this behaviour over emitting events or by using the ref of the ScrollView. A way to prevent passing down the ref (through possibly multiple layers) would be use create a ScrollViewContext and use it in expensify's custom Picker component.

If we want to completely have this change in the Expensify/App repo, we would essentially be using the workaround you mentioned earlier, but still we'd need a ref to the ScrollView.

I'll definitely set up a PR in the original repo, still gonna make some changes to the code

To the second point, i'll definitely set up a PR in the original repo, still gonna make some changes to the code though

👍

We could also wrap both RNSelectPicker and ScrollView with HOCs and handle all the logic around scrollTo in that HOC. Still, we'll need to add some sort of wrapper/reference to the ScrollView

Yeah, I think if we could hide the implementation details (eg. passing the scrollview ref) inside an HOC or a custom component, then I think that would be a little more ideal.
Another consideration might be to use render-props and create a component like <ScrollViewWithPickers> that provides a ref that can be passed to the children. We could add some comments at the top of the <ScrollViewWithPickers> with instructions and an example that show how it should be used.

Awesome convo! Are we squared away to start working on the PR?

I'd still like to get a better idea of what the proposal would look like, but if @chrispader just wants to work in the PR to iron out the details, that's fine with me too.

@JmillsExpensify @tgolen added a PR for this. in Expensify/App
The changes in react-native-picker-select i would like to submit to the general library, once it got reviewed here

I wanted to give everyone a quick heads up that I'm OOO this week, though I intend to check in every couple of days. @tgolen if you need anything quickly on the Bug Zero side of things, it'd be great if you can handle it or raise it #bug-zero in Slack for help. Thanks!

There will be three PRs for this issue:

A PR to the Expensify fork of react-native-picker-select
A PR to App to implement the new features of the picker
A PR to the official react-native-picker-select upstream library

It sounds like 3 will be done after we have completed 1 and 2, is that right @chrispader ?

Yes, exactly! @tgolen
Working on both of these PRs (1 & 2) right now

Circling back on 3, do we have a separate issue for that, or we're going to hold off closing this issue until all three PRs are merged (either in this repo or upstream)?

Looks like we are still working through https://github.com/Expensify/App/pull/13514, which @parasharrajat was able to review today. Woo! That said, most everyone on this issue is out for the holidays, so I'm moving this issue to weekly and we can resume daily updates next week.

I think this issue is already fixed, right? @tgolen @JmillsExpensify

For the most part, yes. Did we ever do this?

A PR to the official react-native-picker-select upstream library.

I added a PR in the upstream library. You can find it here

Great point. So I think in that case, we need to:

Add the BugZero checklist to this issue ✅
Create an issue to revert our rn-picker fork when the PR is merged upstream
So at this point we just need to close out the checklist and then issue payments.

BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

[ ] [@parasharrajat / @tgolen] The PR that introduced the bug has been identified. Link to the PR:
[ ] [@parasharrajat / @tgolen] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
[ ] [@parasharrajat / @tgolen] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
[ ] [@JmillsExpensify] A regression test has been added or updated so that the same bug will not reach production again. Link to the GH issue for creating the test here:

Circling back to payments, this is where I think we landed.

Issue reporter: N/A
Contributor: @chrispader $1,000
Contributor+: @parasharrajat $1,000

@parasharrajat the upwork job is here: https://www.upwork.com/jobs/~014479aca2e5c69cc7. @chrispader I think Margelo is adding these to the monthly invoice, so make sure you pass the word along.

@parasharrajat @tgolen Do both of you mind giving us a head start on the BZ checklist above?

Sure, this one is easy since it wasn't a regression. It was just something missing from the original implementation (so technically we added a feature).

you can solve the issue by wrapping the Textinput in KeyboardAvoidingView.
`import { KeyboardAvoidingView } from 'react-native'
import { useHeaderHeight } from '@react-navigation/elements'
const height = useHeaderHeight()
<KeyboardAvoidingView
keyboardVerticalOffset={height + 47}
behavior="padding"
style={{ flex: 1 }}
enabled>
<TextInput
placeholdertext="Enter Rate"
 />
</KeyboardAvoidingView>

`

@tayyabHussain7860 thanks for the proposal, but this has already been worked on and fixed. Please read the issue history closer in the future.

@parasharrajat Let's close the loop on this one. I've gone ahead and invited you to the Upwork job.

P.S. Regression issue is created, so we'll be ready to close this out as soon as Rajat is able to accept.

@parasharrajat has been paid out, so we should be done here. Thanks!


[SPARK-44433] Terminate foreach batch runner when streaming query terminates

What changes were proposed in this pull request?
This terminates Python worker created for foreachBatch when the streaming query terminate.
All of the tracking is done inside connect server (inside StreamingForeachBatchHelper). How this works:

(A) The helper class returns a cleaner (an AutoCloseable) to connect server when foreachBatch function is set up (happens before starting the query).
(B) If the query fails to start, server directly invokes the cleaner.
(C) If the query starts up, the server registers the cleaner with streamingRunnerCleanerCache in the SessionHolder.
(D) The cache keeps a mapping of query to cleaner.
It registers a streaming listener (only once per session), which invokes the cleaner when a query terminates.
There is also finally cleanup when SessionHolder expires.

Why are the changes needed?
This ensures Python process created for a streaming query is properly terminated when a query terminates.
Does this PR introduce any user-facing change?
No
How was this patch tested?

Unit tests are added for CleanerCache
Existing unit tests for foreachBatch.
Manual test to verify python process is terminated (How ca we test this in a unit test?)

cc: @WweiL @bogao007


Got MSVC error C2248 when I use unique_function with boost::callable_traits::is_invocable

@Naios

When I use fu2::unique_function with boost::callable_traits::is_invocable on msvc v19.33 or older (on godbolt) , then I got C2248 error.
It doesn't happen with std::function.
When I test it on msvc latest (on godbolt), no error happens.
When I test it on g++ and clang++, no error happens.
It might be msvc issue, but msvc v19.33 is not so old. If fu2::unique_function could avoid the issue, it is very helpful.

Commit Hash
2d3a878ef19dd5d2fb188898513610fac0a48621
Expected Behavior
Build finished without the error.
Actual Behavior
Got C2248 (cannot access private member) error.
Steps to Reproduce
#include <function2/function2.hpp>
#include <boost/callable_traits.hpp>
#include <type_traits>

using std_func_t = std::function<void()>;
using unique_func_t = fu2::unique_function<void()>;

int main() {
    // std::function : no error
    static_assert(boost::callable_traits::is_invocable<std_func_t>::value);
    // fu2::unique_function : error C2248 on msvc v19.33 and older
    static_assert(boost::callable_traits::is_invocable<unique_func_t>::value);
}

Godbolt link

Compiler
Link
Result

msvc v19.33
https://godbolt.org/z/PxMa4q3oo
error C2248

msvc latest
https://godbolt.org/z/bbrxb6nTe
no error

clang++ 15.0.0
https://godbolt.org/z/zPEGqbjsn
no error

g++ 12.2
https://godbolt.org/z/7Eb1hs8KW
no error

Your Environment

OS: Windows
Compiler and version: MSVC v19.33 (godbolt)

I noticed that when I replace boost::callable_traits::is_invocable with std::is_invocable (since C++17), then the error is disappeared.
https://godbolt.org/z/vM19nhfv7
It seems that the issue is caused by boost::callable_traits.
But still unclear for me.

I would not count on boost::callable_traits::is_invocable, they even specialize for std::function for whichever reason:
template<typename F>
    struct test_invoke<function<F>, true /*abominable*/> {
        auto operator()(...) const -> substitution_failure;
    };

https://github.com/boostorg/callable_traits/blob/master/include/boost/callable_traits/detail/is_invocable_impl.hpp
My guess is that they try to access the operator() to the function2 object by member function pointer or similar to trigger the issue. The issue goes away if we inherit the operator_impl with public.
However, this won't be changed because it is critical to prevent artificial padding to the function object by inheritence.
If you can show that this is a MSVC compiler issue I might add a workaround (if it is zero cost),
otherwise this issue is out of scope for this library and you could use an is_invocable implementation polyfill other than boost.

Thanks you the response.
I will use std::invocable on C++17 and use some workaround on C++14.
My project requires C++14 or later, so it is enough for me.
Also I've checked _MSC_FULL_VER.

_MSC_VER
_MSC_FULL_VER
result

1934
193431921
success

1933
193331631
C2248 error

I will check the release note and developper community. If I would find the compiler bug fix that is related to the issue, I will report here.

I would not count on boost::callable_traits::is_invocable, they even specialize for std::function for whichever reason:
This is simply not correct for a callable trait to specialize on a particular implementation.

For the record, it's definitely not specializing for std::function. That's something in the private details namespace.

My guess (without further looking into it) is that they try to access the operator() to the function2 object by member function pointer

That is correct.
Interestingly, the case in question works for GCC and Clang, and ICEs an older version of MSVC. I haven't seen this case before. Anyway,  yes, definitely use std::is_invocable when possible.

@badair Thank you for pointing this out.
Sadly it is impossible to work around this issue in this library.
For multiple function signatures me must inherit from multiple objects. Also the inheritence must be private in order to make empty object optimization work.
When possible this could be removed in the boost callable trait by just testing the expression decltype(callable(args...)) as std::is_invoceable is doing it.
Because of above reasons I'm closing this issue.


chore(deps): upgrade configuration

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-configuration-k8s-29-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 4489

Questions ?
Please refer to the Backport tool documentation


Plains biome spawns in Nether, creating MASSIVE gaping holes everywhere

For some reason, NetherEx is generating a "plains.json" file in its minecraft biomes folder (config>netherex>biomes>minecraft). This causes actual overworld plains biomes to spawn in the nether, which produces HUGE gaping holes in the world.
Screenshot: (https://cdn.discordapp.com/attachments/362322551684464643/630564828565471242/2019-10-06_16.59.13.png)
It looks really ugly, and I haven't found a fix for it. Deleting the json file doesn't work, because a new one will generate in its place. Replacing the text of the json file with a different biome doesn't work either.
(For reference, I'm using version 1.12.2)

If the plains biome is being generated that means that there is an issue with another biome. Did it suddenly occur? Is this in a new world or an old world? Did you update any mods recently?

The problem occurred only on the second world I created with NetherEx. I was testing a modpack, and installed NetherEx to see if it was compatible with my pack. Everything generated perfectly fine for the first world, and then I generated another one (same session, no new mods or anything), and I started seeing plains biomes everywhere. That should hopefully answer most of your questions.
Here's the plains.json (I converted it to .txt so I could upload it to GitHub).
Also, here's my modlist, in case it might be helpful.

If you remove Biome O' Plenty, does the issue still occur?

@TheVisionaryOne Could you also include your Forge version? I just tossed NetherEx/LibEx into a testing instance with forge 2838 and I don't have a plains.json anywhere in the NetherEx config folder. I also threw BoP in there and ran it again - still no plains.json.

Minecraft version: 1.12.2
Forge version: forge-1.12.2-<IP_ADDRESS>38-universal
Mod versions: NetherEx-1.12.2-2.0.15, LibraryEx-1.12.2-1.0.12, BiomesOPlenty-1.12.2-<IP_ADDRESS>1-universal

@LogicTechCorp I thought I had already tested Biomes O' Plenty, but I guess not! I removed it from my modpack, and the Nether looks fine now. It's interesting that katubug was able to run both Biomes O' Plenty and NetherEx together without any problems.
@katubug I tried both changing "isEnabled" to false in the plains.json, and copy-pasting the contents of hell.json into plains.json. Neither worked, and the plains.json file was reset to its default contents once I created the second world since updating the file. I am using a newer Forge version, but that shouldn't matter much, right?
I tested worldtypes (and disabled Climatic Biomes 2, which provided the main worldtype I was using for testing), but all of them had these broken plains biomes in the nether. Even the default worldtype had them, which doesn't spawn Biomes O' Plenty blocks/biomes. I think I'm even more confused than before.

If you create a new instance with just NetherEx/LibEx, does the plains.json still generate? That's such a bizarre error, I can't imagine what else could be interfering with it. I would assume that Forge hasn't changed enough from 2838 to 2847 to cause a bug on that scale, but if I know anything about technology, I wouldn't rule it out.

@TheVisionaryOne Which versions of LibraryEx, NetherEx, and BOP are you using?

@katubug I tried creating a test environment in Forge 2847, and no plains.json file generated. Some other mod must be causing the problem...but it's absolutely bizarre that another mod is generating files in NetherEx's folders. Unless NetherEx has some sort of broken compatibility integration with another mod, it seems like NetherEx is completely unrelated?
@LogicTechCorp I'm using the most recent versions of all mods in question for 1.12.2. Biomes O' Plenty <IP_ADDRESS>1, LibraryEx 1.0.12, and NetherEx 2.0.15.
I'm really not sure where to go from here. Like I said, I already tried disabling Climatic Biomes 2 (which is the only other biome-generating mod in my pack that I can think of), and nothing changed.

I am not sure where the issue lies. The plains biome generating is purposeful on my end, but it is to signify that there is an issue.

@TheVisionaryOne You mentioned you had one of the BoP nether biomes disabled, right? Does the issue still occur if you re-enable it?
I guess at this point, troubleshooting wise, the best option is to do the half-and-half method until you find the mod that's causing it.
If you can get me a modlist with version numbers (via screenshot, maybe) I can help you nail it down.

So it is an intended part of the program. That makes a little more sense than it just randomly showing up. Still weird that there's an...issue? The biggest issue is the plains biome itself. xD
@katubug I did disable a BoP biome, and at first, I thought that was the cause. I tested re-enabling the biome, but it didn't fix anything. I'm really confused about what's causing this, and I would like to get to the bottom of it, but I just don't have the time to go mod-by-mod.
@LogicTechCorp If the plains biome json is programmed to mark an issue, is there any sort of log or copy/paste text I could send you that would help you nail down what the issue might be?

@TheVisionaryOne Try re-enabling the BOP biome, delete the NEX biome config folder, start the game to regenerate the configs, and then disable the BOP biome via the NEX biome config for the biome.

I know you said you disabled climatic biomes - what about Geographicraft? Could that be affecting it?

 Originally, I didn't realize that biomes could be disabled through NetherEx, so I went straight to BoP instead. Re-enabling the biome through BoP and then disabling the biome through NetherEx fixed the problem completely.

@katubug Thanks for your help troubleshooting the problem as well!


middleware/file: reloading

I don't trust the fsnotify - it seems to work in tests, but then fails to pick up newly signed zone on my running CoreDNS instance.
We might want to add a backup walker that picks up newly changed zones (and remove the fsnotify?). Anyway we need to look into this and make it more solid.
I'll will try to get some debugging going with my local CoreDNS instance and see why it stubbornly refuses to reload.

We were forgetting to check for the Create event. Fixed with #365


zj-office-hour-table

@QianQianJian You need to get this passing on CI before it can be merged.  If you need help with that, please ask during section today, and/or during office hours, or on Slack.


bugs in forms select

hei, i found bugs in form select option, when click and in date input

Hi, reinstall the latest pip. I think it should be fixed

Closed, because it's pretty old


Allow watching parts of the data directory (e.g. listed subdirectories)

Hi,
This is a very handy tool, so thanks very much for putting the time into it.
Feature suggestion; currently it seems only possible to watch the entire data directory. A nice feature would be to allow watching (a list of) subdirectories, so that a more limited selection of files are watched. In my case, I just want to create an "Inbox" watch-style folder, so watching the entire hierarchy is excessive.
Perhaps I might try adding it also if I find time
Thanks

Thanks for the suggestion. I think it makes a lot of sense. You are very welcome to make a PR.

Will try to, if I can find time!


Environment Variable support?

Thanks for building this!
Would you be open to a contribution expanding support for the username, password and url arguments as environment variables?
For our use case, it would simplify using mark in a continuous integration context.
Unfortunately it looks like docopt.go doesn't seem to support environment variables in its configuration: https://github.com/docopt/docopt.go/issues/48
A cursory pass at the code looks like this might be a good spot for some of the os.Getenv calls.

hi, it's actually implemented already, not documented tho
https://github.com/kovetskiy/mark/blob/master/config.go#L10-L12

Can I get an example of using env vars for the username, password and base url. I have them set in my shell but when running the command below I get the the message below
mark -u $MARK_USERNAME -p $MARK_PASSWORD -k --base-url $MARK_BASE_URL -f alb/README.md --trace
2022-09-17 14:22:10.857 FATAL Confluence API returned unexpected status: 403 Forbidden, output: "{\"statusCode\":403,\"data\":{\"authorized\":false,\"valid\":false,\"errors\":[{\"message\":{\"translation\":\"Not enough permissions to alter ContentRestrictions on a content with ContentId <REDACTED>\",\"args\":[]}}],\"successful\":false},\"message\":\"com.atlassian.confluence.api.service.exceptions.PermissionException: Not enough permissions to alter ContentRestrictions on a content with ContentId <REDACTED>\"}"
When I run with the command below it works fine:
mark -u my_username -p my_api_token --base-url https://catapult-catalyst.atlassian.net/wiki/ -f alb/README.md --trace`

Environment variables are supported now.

Is there documentation on how to use Environment variables?

https://github.com/kovetskiy/mark#usage see the variables in the brackets