text:
ImportAction cannot be used in combination with an async queue driver

Package
filament/filament
Package Version
v3.1.0
Laravel Version
10.34.2
Livewire Version
3.2.1
PHP Version
8.2.12
Problem description
When using the new CSV import action in combination with an async queue driver (in the example repository I'm using Laravel Horizon), the import action fails / enters an infinite loop.
The problem is app(Authenticatable::class) revolves to NULL using an async driver. Thereby the import user could not be resolved.
A workaround for now is to add the following code to a service provider. It would be better if the importer uses the defined authGuard at panel level. I'm not sure if this is possible.
$this->app->bind(Authenticatable::class, User::class);

Expected behavior
It should be possible to use the CSV import action with an async queue driver.
Steps to reproduce
Clone example repo (it's based on the demo) and try to import a CSV. See the job failing and entering a infinite loop.
Reproduction repository
https://github.com/maartenpaauw/filament-demo/tree/bug/csv-import-with-horizon-queue
Relevant log output
[2023-12-01 14:58:27] local.ERROR: Cannot use "::class" on value of type null {"exception":"[object] (TypeError(code: 0): Cannot use \"::class\" on value of type null at /Users/mpaauw/Personal/filament-demo/vendor/filament/actions/src/Imports/Models/Import.php:43)
[stacktrace]
#0 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(802): Filament\\Actions\\Imports\\Models\\Import->user()
#1 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(110): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#2 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(800): Illuminate\\Database\\Eloquent\\Relations\\Relation::noConstraints(Object(Closure))
#3 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(774): Illuminate\\Database\\Eloquent\\Builder->getRelation('user')
#4 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(754): Illuminate\\Database\\Eloquent\\Builder->eagerLoadRelation(Array, 'user', Object(Closure))
#5 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(704): Illuminate\\Database\\Eloquent\\Builder->eagerLoadRelations(Array)
#6 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/SerializesAndRestoresModelIdentifiers.php(109): Illuminate\\Database\\Eloquent\\Model->load(Array)
#7 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/SerializesAndRestoresModelIdentifiers.php(62): Filament\\Actions\\Imports\\Jobs\\ImportCsv->restoreModel(Object(Illuminate\\Contracts\\Database\\ModelIdentifier))
#8 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/SerializesModels.php(93): Filament\\Actions\\Imports\\Jobs\\ImportCsv->getRestoredPropertyValue(Object(Illuminate\\Contracts\\Database\\ModelIdentifier))
#9 [internal function]: Filament\\Actions\\Imports\\Jobs\\ImportCsv->__unserialize(Array)
#10 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php(97): unserialize('O:39:\"Filament\\\\...')
#11 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php(60): Illuminate\\Queue\\CallQueuedHandler->getCommand(Array)
#12 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php(102): Illuminate\\Queue\\CallQueuedHandler->call(Object(Illuminate\\Queue\\Jobs\\RedisJob), Array)
#13 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(439): Illuminate\\Queue\\Jobs\\Job->fire()
#14 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(389): Illuminate\\Queue\\Worker->process('redis', Object(Illuminate\\Queue\\Jobs\\RedisJob), Object(Illuminate\\Queue\\WorkerOptions))
#15 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(176): Illuminate\\Queue\\Worker->runJob(Object(Illuminate\\Queue\\Jobs\\RedisJob), 'redis', Object(Illuminate\\Queue\\WorkerOptions))
#16 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(137): Illuminate\\Queue\\Worker->daemon('redis', 'default', Object(Illuminate\\Queue\\WorkerOptions))
#17 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(120): Illuminate\\Queue\\Console\\WorkCommand->runWorker('redis', 'default')
#18 /Users/mpaauw/Personal/filament-demo/vendor/laravel/horizon/src/Console/WorkCommand.php(51): Illuminate\\Queue\\Console\\WorkCommand->handle()
#19 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel\\Horizon\\Console\\WorkCommand->handle()
#20 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#21 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#22 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#23 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#24 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call(Array)
#25 /Users/mpaauw/Personal/filament-demo/vendor/symfony/console/Command/Command.php(326): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#26 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#27 /Users/mpaauw/Personal/filament-demo/vendor/symfony/console/Application.php(1096): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#28 /Users/mpaauw/Personal/filament-demo/vendor/symfony/console/Application.php(324): Symfony\\Component\\Console\\Application->doRunCommand(Object(Laravel\\Horizon\\Console\\WorkCommand), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#29 /Users/mpaauw/Personal/filament-demo/vendor/symfony/console/Application.php(175): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#30 /Users/mpaauw/Personal/filament-demo/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(201): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#31 /Users/mpaauw/Personal/filament-demo/artisan(35): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#32 {main}
"}

@maartenpaauw Thanks for creating this bug report, documenting the issue, and highlighting how the issue intersects with redis and horizon.

https://github.com/filamentphp/filament/pull/10024/files#diff-8b6f3f18b24c285db463eb4310b5a42ee8e3f3801d798ac4696ce5883af38800

That's incredibly weird...

Did some further debugging:
I noticed the league/csv package, used for the import CSV action, got updated from v9.11.0 to v.9.12.0. After rolling back to v9.11.0 the CSV import action, using Redis queue driver, works. I'm not entirely sure what changed.

Locked, if you could work out the exact problem with 9.12 and report to league/csv that would be very helpful

I think I found something, but I'm not entirely sure but, v9.11 yields from combineHeader method and v9.12 returns it. Filament has a custom chunkIterator, which also uses yields. I think this change broke the ChunkIterator. I never used yield before, so that's the reason why I'm not entirely sure this is the causing issue.
https://github.com/thephpleague/csv/commit/3e0c482a7cf9c36508e6ccfe2a9ec9122ac19310#diff-63e150e70c3f2253f8ab94c5a8fe06190bbfee264c842f2c7fb51f9920dd0f2eL219

I think we could. A return type changed from Generator to MapIterator. I'm not completely familiar with the CSV package, if ->getRecords() is not an internal method then this feels like a breaking change.

I can confirm that using filament 3.1.8 and downloading and requiring
composer require league/csv:9.11.0
Works for my tests. I am now able to use the ImportAction using Redis queue driver without error.

Can confirm this is a valid fix for things on my end too.

Adding a quick dd(iterator_to_array($importChunkIterator->get())); after this line: https://github.com/filamentphp/filament/blob/3.x/packages/actions/src/Concerns/CanImportRecords.php#L183
v9.11.0 output is a filled array. v9.12.0 output is an empty array.

I quickly did the same dd at version v.9.14.0 (using redis + Horizon as queue) and the array is not empty anymore. The latest league/csv version seems to fix the problem and we could lock the version at ^9.14.

@rossbearman I've opened up a PR #10990

@maartenpaauw I've had a report that it's still broken with 9.14 but 9.11 works, can you do another test please?

I'm releasing a fix to the behaviour in the next version, but I'm annoyed that the breaking change was made on their end in the first place

I see you've figured it out what was going wrong 💪
Reference: https://github.com/filamentphp/filament/commit/c74af1f2cbcb9fffae509b24855f151824f80dbe

The whole day I’ve been trying to make filament native importer to work at the end I discovered this 😍 I waiting for the next patch tonight hhhh

It's released

Thank you, I’ll figure out how to help in this amazing project ! Really thank you @danharrin  and thanks to every contributed <3

authors: ccc-developer danharrin indygill maartenpaauw meliani

repo: filamentphp/filament


text:
Draft: Allow multiple table sorts

This PR is intended to add the ability to use multiple defaultSort columns on Tables.

[x] Basic change to data structure
[ ] Actually test it

Unfortunately, there are many breaking changes in this PR

Unfortunately, there are many breaking changes in this PR

Yeah i figured half way trought that this might not be the way to go with what i originally intended

source: gharchive/pull-request

license: MIT

license_type: permissive

license_source: github-api


text:
Revert "MGMT-820  - support platform none nd platform baremetal for i…

…gnition generation based on the Openshift Version"
Installation with 4.5 baremetal installer  and 4.4 override image fail during bootkube render phase
This reverts commit 03d0733d5061eca922164b07b7c5dfa04d989300.

bootkube log:
May 20 21:17:33 test-infra-cluster-master-1 bootkube.sh[2165]: Rendering CCO manifests... May 20 21:17:33 test-infra-cluster-master-1 podman[5951]: 2020-05-20 21:17:33.619607881 +0000 UTC m=+0.264064861 container cleanup d76ec0db49045186491c179362a673d9e6705a9c06b332e0a6ca2f4c2bb1e18d (image=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:aacb0898f50bf1b3107abfae3776de924feb8d88aae9a05c276ea84f995142b2, name=upbeat_herschel) May 20 21:17:40 test-infra-cluster-master-1 podman[5971]: 2020-05-20 21:17:40.550255266 +0000 UTC m=+7.051205772 image pull   May 20 21:17:40 test-infra-cluster-master-1 podman[5971]: 2020-05-20 21:17:40.631505276 +0000 UTC m=+7.132455637 container create a6e2210c6094e83d069520d7fb142f0aa75493684a2b29f18d9f6eb3c283a93a (image=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:145919b035e060fb6e5e18143b1e0da615359ccc1199fabb0193873100b9fe60, name=youthful_shtern) May 20 21:17:41 test-infra-cluster-master-1 podman[5971]: 2020-05-20 21:17:41.244333921 +0000 UTC m=+7.745284276 container init a6e2210c6094e83d069520d7fb142f0aa75493684a2b29f18d9f6eb3c283a93a (image=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:145919b035e060fb6e5e18143b1e0da615359ccc1199fabb0193873100b9fe60, name=youthful_shtern) May 20 21:17:41 test-infra-cluster-master-1 podman[5971]: 2020-05-20 21:17:41.255904662 +0000 UTC m=+7.756854949 container start a6e2210c6094e83d069520d7fb142f0aa75493684a2b29f18d9f6eb3c283a93a (image=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:145919b035e060fb6e5e18143b1e0da615359ccc1199fabb0193873100b9fe60, name=youthful_shtern) May 20 21:17:41 test-infra-cluster-master-1 podman[5971]: 2020-05-20 21:17:41.263096132 +0000 UTC m=+7.764046598 container attach a6e2210c6094e83d069520d7fb142f0aa75493684a2b29f18d9f6eb3c283a93a (image=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:145919b035e060fb6e5e18143b1e0da615359ccc1199fabb0193873100b9fe60, name=youthful_shtern) May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]: Error: unknown flag: --manifests-dir May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]: Usage: May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:   manager render [flags] May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]: Flags: May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --cloud-credential-operator-image string   Image for Cloud Credential Operator. May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --dest-dir string                          The destination directory where CCO writes the manifests. May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:   -h, --help                                     help for render May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]: Global Flags: May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --alsologtostderr                  log to standard error as well as files May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --kubeconfig string                Paths to a kubeconfig. Only required if out-of-cluster. May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --log-level string                 Log level (debug,info,warn,error,fatal) (default "info") May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --log_backtrace_at traceLocation   when logging hits line file:N, emit a stack trace (default :0) May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --log_dir string                   If non-empty, write log files in this directory May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --logtostderr                      log to standard error instead of files (default false) May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --master --kubeconfig              (Deprecated: switch to --kubeconfig) The address of the Kubernetes API server. Overrides any value in kubeconfig. Only required if out-of-cluster. May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --stderrthreshold severity         logs at or above this threshold go to stderr (default 2) May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:   -v, --v Level                          log level for V logs May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]:       --vmodule moduleSpec               comma-separated list of pattern=N settings for file-filtered logging May 20 21:17:41 test-infra-cluster-master-1 bootkube.sh[2165]: time="2020-05-20T21:17:41Z" level=fatal msg="unknown flag: --manifests-dir"

repo: filanov/bm-inventory


text:
Fix running locally docs to use binary name

Instructions say to build the binary so we should use that for following examples

LGTM, seems that go build indeed places the binary in .

authors: iand lukemarsden

repo: filecoin-project/bacalhau


text:
Don't run Docker tests on Windows or Mac

Fixes #1064

Is disabling the tests in Mac the right action? The tests are passing in my Mac, but failing in CircleCI

It's the pattern that all of the other tests have followed. I don't believe that CircleCI supports Docker on macs. The issue with Windows is that CircleCI is running Docker in Windows containers mode rather than Linux containers.

I see. This actually doesn't affect running the tests in my IDE, so we are good. Thanks

authors: wdbaruni wjam


text:
Run With Powershell does not always work if files is run as small window

Description
If you run files as a small window(like quarter of a fullhd screen or less) the "run with powershell" command is not clickable and does also not react to a mouse hover.
Normal behavior is immediately restored as soon as the window is enlarged.
Steps To Reproduce

open files
reduce window size with drag and drop
right click on some script
click "show more options"

Requirements

it should always be possible to click the command
the size should not matter

Files Version
2.4.61.0
Windows Version
10.0.19044.2846
Log file
debug.log

Is this option on the title bar? #10823

if its not working: yes, the option overlaps the title bar.
but if you resize the window to be more like a "portrait mode" it works again despite overlapping. not shure if its 100% related to the overlapping but seems to be an duplicate of the linked Bug.

source: gharchive/issue

repo: files-community/Files


text:
Right-Click Context Menu is sluggish and causes click registration & rendering delays

Description
I apologise for the title, the problem is difficult to describe. But I have attached a video capture!
When I open the Right Click Context Menu and click on a menu entry, an unrelated menu entry is triggered instead.
https://github.com/files-community/Files/assets/553816/257aa64e-7f0f-4779-8141-d92d0c47b25e
If you look at my video capture, you can see I was attempting to click on "Pin to Favorites".
Instead, the result is that Windows Terminal and VLC Player are randomly launched.
If I wait a few seconds for the Context Menu to fully render, the location where "Pin to Favorites" is, gets rerendered with Windows Terminal and VLC Player menu entries instead. So there is a click registration and rendering delay there.
Steps To Reproduce

Ensure your context menu has many entries and does not use the "Move extensions to submenu" feature
Right Click to open the Context Menu, and quickly click on a specific entry
Notice a sudden menu flicker as the expanded context menu rerenders, followed by the wrong menu entry being activated by your prior mouse click

Requirements

There should not be rendering delays and menu flickerings
The menu I activated should be the menu I saw, not the menu that was later rerendered.

Files Version
2.5.10.0
Windows Version
10.0.22621.1928
Log File
No log files were generated by Files for this issue.

Thanks for the feedback, Merging with #11112. You can check there or click subscribe in the right sidebar for updates.
Currently the best way to deal with this is to enable Files settings > Genral > Move shell extensions into a sub menu

@cardin is this an issue if you turn off the option to show shell extensions in the main menu?

The default is to put them in the sub menu, I understand the appeal of having them in the main menu which is why the option is available but it's just not reliable or performant this way.

It really depends on the device and how many shell extensions are installed. In general I agree that we shouldn't provide "bad" options but in this case we got a lot of requests, so we let users decide for themselves.


text:
Bug: JumpList Not Populating

Description
Right clicking of Files on the taskbar does not show favorites in the jump list.

Steps To Reproduce

Install Files (either from Store or classic installer)
Right click on Files in the taskbar
Don't see favorites because the jump list didn't populate

(I'm experiencing this on 3 different machines (2 Win10, 1 Win11) and trying both Store and Classic install methods)
Requirements
Right clicking in taskbar should show favorites in jump list
Files Version
3.1.1.0
Windows Version
10.0.19045.3930
Log File
debug.log

Thanks for the report

There's an option to hide them in Windows Settings. Does FE show your favorites in the jump list?

FE jump list works as expected, favorites are showing

It seems to only happen when there are many recent items in the list, removing them and reopening the context menu shows them.

@Josh65-2201 Do you remember how many items were shown at maximum?

https://www.tenforums.com/tutorials/45535-change-maximum-number-items-jump-lists-windows-10-a.html
https://www.makeuseof.com/windows-11-increase-jump-list-items/#:~:text=A Jump List in Windows,have that built-in setting.

Before populating, we should check registry values.

I don't know the specific number as the list is always bigger then what's shown. But I can constantly remove a number of items shown then add them back to reproduce.

Thank you for the info.

Hi, I encounter the same issue, the windows explorer works just fine. But the Files app doesn't show them. I tried removing pinned folders, but even with 1 item left, the jump list still not showing for me

debug.log

I don't see anything in the log file, but I think it's the same issue as this #15604.


text:
Freezes after rearranging tabs

Description
If tab dropped on top the another tab, it just freezes the tabs movement, you can click on tab but can't move them.
A few times Files stuked at "Not Responding" state, after moving new tab to before a few opened already tabs.
Steps To Reproduce
Drag any tab on top of the another open tab.
Requirements
Probably moving tabs freely without crushes and freezes
Files Version
3.4.0.0
Windows Version
Edition	Windows 11 Pro Version	23H2 Installed on	08/11/22 OS build	22631.3527 Experience	Windows Feature Experience Pack 1000.22700.1003.0
Log File
debug.log

Uploading files freeze - Made with Clipchamp.mp4…

Thanks for the feedback, We're tracking this in #14726. You can check there or click subscribe in the right sidebar for updates.


text:
splitted windows

Your app is one of the best for Windows and looks really awesome. But it'll be great to improve one feature to make it even better. When I open two windows at the same time it feels like I use two different apps to solve one problem. Is there a way to gather it in splitted one? Like a modernized total commander, something similar to a Linux file manager called Nemo:
https://user-images.githubusercontent.com/31940713/47256700-2bad8900-d452-11e8-82a5-920343b325e8.png
https://i.imgur.com/BTjhRXT.png
🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨
I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING:

If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement.
If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement.
If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number).
If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement.
If I file something completely blank in the body, the core team may close my issue without further explanation or engagement.

All good? Then proceed!
-->
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here. Ex: What device type/UI layout and app version?

That's the best news in file managers' history! Can't wait for the next release. Happy New Year!

But will a second window have an own independent tabs panel?

Nope there will be a single tabs panel, inside each tab you can have one or two panes open

Your approach is good too. Probably enough for all my wishes. Thanks!

That's the best news in file managers' history!

Thank you and happy new year ;)


text:
Smooth Scrolling

Is your feature request related to a problem? Please describe.
Nope.
Describe the solution you'd like
I think it would be a nice polish to the fluent design system if the app had smooth scrolling, just like Microsoft Word has.
Describe alternatives you've considered
None.
Additional context
Version 1.1.0.0
Video: https://user-images.githubusercontent.com/76794507/105916687-51e20c00-5fff-11eb-87e3-84f22481ebd2.mp4

@Tech-How Thank you for opening this feature request, I would like to point out that the grid view layouts already have smooth scrolling. The details layout doesn't have smooth scrolling because of some limitations with the DataGrid control used in Files, the good news is that WinUI is going to be building a new DataGrid control. I am linking the proposal here so you can add your request for smooth scrolling, and hopefully increase the priority for Microsoft. https://github.com/microsoft/microsoft-ui-xaml/issues/1500

@Tech-How Thank you for opening this feature request, I would like to point out that the grid view layouts already have smooth scrolling. The details layout doesn't have smooth scrolling because of some limitations with the DataGrid control used in Files, the good news is that WinUI is going to be building a new DataGrid control. I am linking the proposal here so you can add your request for smooth scrolling, and hopefully increase the priority for Microsoft. https://github.com/microsoft/microsoft-ui-xaml/issues/1500

authors: Tech-How yaichenbaum


text:
Keyboard shortcuts vs other Windows/macOS/Linux file managers

What's the Problem?
This file manager seems like one of the most promising choices available to get a modern experience in Windows, comparable to the Finder in macOS and a number of the better GUI file managers in Linux.
I use the Kinto.sh project by Ben Reaves, which remaps the keyboard in Windows or Linux to behave like macOS. I wanted Linux file managers to respond to keyboard shortcuts like the Finder in macOS, so I implemented a shortcut remap overlay that "modded" the shortcuts of all the Linux GUI file managers I could find (the ten variations in the list below). It was eventually merged into the base Kinto config file as part of the defaults.
https://github.com/rbreaves/kinto/pull/463
https://github.com/rbreaves/kinto/pull/594
The Linux file managers supported by these remaps are:
# Caja File Browser (MATE file manager, fork of Nautilus)
# DDE File Manager (Deepin Linux file manager)
# Dolphin (KDE file manager)
# Nautilus (GNOME file manager, may be named "Files")
# Nemo (Cinnamon file manager, fork of Nautilus, may be named "Files")
# Pantheon Files (elementary OS file manager, may be named "Files")
# PCManFM (LXDE file manager)
# PCManFM-Qt (LXQt file manager)
# SpaceFM (Fork of PCManFM file manager)
# Thunar File Manager (Xfce file manager)

I'm trying to port these remaps over to some file managers in Windows, where Kinto uses AutoHotKey to do the remaps. This is working OK for Windows Explorer (explorer.exe). But when I try to figure out the executable name for this "Files" application, I see things like this in the Task Manager properties:
49306atecsolution.FilesUWP_2.1.0.0_x64__et10x9a9vyk8t

So that's the first problem. Without a standard, simple executable name like files.exe, I'm not sure how to apply AutoHotKey remaps. And I can't even seem to find where this application is installed, either when I installed it from the release file downloaded from GitHub or when I reinstalled it from the Microsoft Store. I've never actually seen anything like this before. Is there a chance Files would eventually wind up with a more standard "real" executable name and location?
Anyway, there is an issue here (#1660) asking for a page in the preferences to list all the keyboard shortcuts, and I would also like to see that implemented. But at the moment what I need is just a reference to the currently implemented keyboard shortcuts. So if someone could point me to a file here somewhere that might list all of the current shortcuts, that would be helpful. I tried to search for "shortcuts" in the repo, but a lot of different things came up and it was not immediately obvious if any of the results would contain anything like a complete list of shortcuts.
Solution/Idea
My work on remapping keyboard shortcuts for file managers between macOS and Linux showed that there were a number of shortcuts that were common to both platforms and didn't therefore even need to be remapped, and that there were some other shortcuts that were just minor variations using a different modifier key, and then some that were sort of standard but one or more of the Linux file managers had chosen different shortcuts which needed to be accounted for.
So my remaps for Linux file managers consist of a "general" block and then a few "overrides" for some of the individual file managers. I'd like to possibly converse with the devs here and see if it might be possible to get Files to conform as closely as possible to some of the established "standard" shortcuts commonly used by other file managers. Without seeing a list I don't know for sure yet exactly how close the current shortcuts for Files are to the most common shortcuts I've seen in other file managers.
I happen to like macOS and the Finder, so I made remaps that made Linux file managers act like the Finder for all sorts of common functions like navigation, tab switching, and so on. But Windows shortcuts often most closely resemble Linux shortcuts, and vice versa.
In short, I would like to participate in discussions about Files having a keyboard shortcut scheme that is as closely aligned as possible with the most standardized keyboard shortcuts in other file managers. So that the transition is smoother for users who need to move between Windows, Linux and/or macOS.
For instance, the shortcut for "preferences" in macOS apps has always been standardized on Command+comma. In Linux, it is becoming fairly common for newer apps that don't have a traditional menu bar (where the Preferences shortcut might have been Alt+E to open the Edit menu, then P or E or N) to use the equivalent of Ctrl+comma (which with Kinto's remapping ends up in the same physical position on the keyboard). I notice Files doesn't have a traditional menu bar, so it's a lot like a modern GTK app in Linux in that respect.
Here is a spreadsheet of what I needed to remap to get the GUI Linux file managers to behave (mostly) as I expected:
Finder_keyboard_shortcut_mapping_project_2021-12-25.xlsx
The thing to pay attention to here is not the shortcut I was implementing (from macOS) but rather the shortcut(s) they were being remapped to in order to work with each file manager application. A number of them were actually standard across all the file managers I was testing.
Feedback/discussion on this entire matter is appreciated.
Alternatives
[Nothing to put here.]
Priorities
No response
Files Version
Version: 2.0.34.0 OS Version: 10.0.19043.1466
Windows Version
Windows 10 21H1 (Build 19043.1466)
Comments
No response

@RedBearAK https://files.community/docs/configuring/keyboard-shortcuts

@yaichenbaum

@RedBearAK https://files.community/docs/configuring/keyboard-shortcuts. The executable name is files.exe.

Silly me, I always search in the wrong places.
Do I need to reboot or something, because I'm definitely not seeing that as the executable name in my Task Manager.

@yaichenbaum

Task manager might not display the name, but it should work. You can test by opening a cmd window and typing Files.

I'll have to try again and see if I can get the remapping to work. Maybe reboot if it doesn't. I'm still kind of new at trying to use AHK.
These shortcuts mostly look pretty standard and logical already, as expected. But, can I ask about the logic of using Ctrl+D to delete? This is a shortcut that web browsers use for bookmarking, and I've noticed file browsers, especially in Linux, have evolved to behave substantially similar to web browsers. So much so that using Ctrl+D to delete files seems like it might be problematic. Muscle memory can easily cross over between file managers and web browsers. Ctrl+L does the same thing in both, basically, intuitively letting you change the "location".

@RedBearAK ctrl + d was for consistency with File Explorer but this shortcut can be removed for reasons you mentioned. Can you open a feature request for this?

@yaichenbaum
Rebooted and started from the search field as "files.exe", but in Task Manager I still see something like this as the main application name:
Files_2.0.34.0_x64__1y0xx7n9077q4

I still can't seem to get the remapping working using the executable name of files.exe, the way I was able to get it to work with explorer.exe.
Is this perhaps happening because I started using Files several months ago, around version 1.5? Do I need to try and completely wipe it from my system and reinstall from the Microsoft Store?

@RedBearAK ctrl + d was for consistency with File Explorer but this shortcut can be removed for reasons you mentioned. Can you open a feature request for this?

@yaichenbaum
Sure, not a problem. I guess that one was so standard I actually left it off my spreadsheet, but all the Linux file managers I was working with used the Delete key. I assume you have no issue with this?

@RedBearAK ctrl + d was for consistency with File Explorer but this shortcut can be removed for reasons you mentioned. Can you open a feature request for this?

@yaichenbaum
Sure, not a problem. I guess that one was so standard I actually left it off my spreadsheet, but all the Linux file managers I was working with used the Delete key. I assume you have no issue with this?

I agree, delete is the more natural shortcut.

Is this perhaps happening because I started using Files several months ago, around version 1.5? Do I need to try and completely wipe it from my system and reinstall from the Microsoft Store?

It shouldn't make a difference when you downloaded Files, I know that people have successfully configured Files with AutoHotKey https://github.com/files-community/Files/issues/2355#issuecomment-927377572

@yaichenbaum
An example of what I would like to see added to supported keyboard shortcuts is Ctrl+PgUp/PgDn for tab navigation. The Ctrl+Tab/Ctrl+Shift+Tab shortcuts as currently implemented are also fairly common, but Ctrl+PgUp/PgDn is even more common, at least in Linux, but also in Windows and Linux web browsers. Importantly, this is a link between file managers and web browsers, and it works in Windows web browsers for tab navigation.
This works for me in Chrome, Edge and Firefox on Windows. It would be an intuitive tab nav shortcut for anyone used to using it in any of those web browsers.
To be clear, I would not want the Ctrl+Tab/Ctrl+Shift+Tab shortcuts to be removed. Lots of users are very used to those, and they are also intuitive and easy to remember, and also work the same way in web browsers. These would be alternate shortcuts for tab nav, for those who find Ctrl+PgUp/PgDn less awkward or easier to remember.

Full path of the executable: %LocalAppData%\Microsoft\WindowsApps\files.exe. Could be that the app execution alias is disabled under Windows Settings > Apps > App execution alias?

Presuming you still want to remap keyboard shortcuts il merge this with #9559

@RedBearAK This feature will be included in the next release. Please see #9559 for more details.


text:
Files crashes when i right click on empty area

Description

Steps To Reproduce
right click on empty space in Files
Files crashes
Expected behavior
Files should not crash when right click
Files Version
2.1.5.0
Windows Version
Window 11 21H2 22000.469
Relevant Assets/Logs

You will need to upload the logs files. You can get them in files settings > about > open log folder.

debug.log
debug_fulltrust.log

@Pratham-Galaxy is this still an issue in v2.1.13?

authors: Josh-65 Pratham-Galaxy yaichenbaum


text:
opening folders is slow an lagging

Description
When opening a folder (by double left-clicking it) in Files it looks like it is lagging and it is slower compared to explorer.exe
Steps To Reproduce

Open a drive in Files
Double left-click a folder to open it
Open the same drive in explorer.exe
Double left-click the same folder
the difference should be noticable

Expected behavior
Files should not be lagging and it shouldn't be that slow compared to explorer.exe
Files Version
Version: 2.3.11.0 OS Version: 10.0.25158.1000
Windows Version
Version: 2.3.11.0 OS Version: 10.0.25158.1000
Relevant Assets/Logs
explorer.exe:

Files:

Merging with #4180. There are current performace updates beeing made in the preview version https://files.community/download/preview but are not ready for release but you can try it.


text:
Code Quality: Introduced IWindowsWallpaperService

Summary

Removal of Vanara reference (1 out of 35 files):

[x] WallpaperHelper

Removal of Utils namespace (1 out of 132 files):

[x] Utils/Global/WallpaperHelper

Resolved / Related Issues

https://github.com/files-community/Files/issues/14572
https://github.com/files-community/Files/issues/15000

Steps used to test these changes

Open Files
Set image as desktop wallpaper, slideshow and lock screen

Actually I thought this also can be in WindowsShellService since this is shell features (except Lock Screen). This is about just like or dislike. Whatever opinion is welcome.

Actually I thought this also can be in WindowsShellService since this is shell features (except Lock Screen). This is about just like or dislike. Whatever opinion is welcome.

WallpaperService is more specific, but either one works.

Alright, ready for review.
confirmed working.


text:
Update file

test pr

comment for pr closing step

repo: finkinfridom/git-merge-conflict


text:
thirty five thousand is coming back as 5030

With impliedHundreds set to false, i am getting the below translated wrong:
thirty five thousand is coming back as 5030
forty three thousand as 3040
This is pretty standard expression all over the world. Not working!

one hundred and fifty thousand dollars is coming back as 50100

@vnaganathan-conga hi, I have the same problem. did you find solution?

authors: atabachyn vnaganathan-conga

repo: finnfiddle/words-to-numbers

license: mit

license_source: bigquery


text:
Backstage Working Group - DevOps Automation - Dec 21, 2023

Date
Thursday, Dec 21, 2023 - 11am ET; 3pm UK
Untracked attendees

Name
Firm
Comment

Meeting notices

FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact legal@finos.org with any questions.

FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

[ ] Convene, roll call, welcome new people
[ ] Approve previous meeting minutes
[ ] Review DevOps SIG project board
[ ] Guest speaker, Christophe Fargette, RedHat
[ ] AOB, Q&A & Adjourn (5mins)

Decisions Made

[ ] Decision 1
[ ] Decision 2
[ ] ...

Action Items

[ ] Action 1
[ ] Action 2
[ ] ...

Zoom info
Join Zoom Meeting

https://zoom.us/j/94904595244
Meeting ID: 949 0459 5244
Passcode: 545224
Find your local number: https://zoom.us/u/aesEqmNODb

Github Repo: https://github.com/finos/devops-automation/
Project Board: https://github.com/orgs/finos/projects/33
Mailing List: Email devops-mutualization+subscribe@finos.org to subscribe to our mailing list

Mimi Flynn / Morgan Stanley

Matthew Bain / Morgan Stanley

Carl Nygard / Thoughtworks

Karl Moll / FINOS

authors: cnygardtw karlmoll mimiflynn rocketstack-matt

repo: finos/devops-automation


text:
How to get started ?

Support Question
I am interested to learn about glue and also contribute.
Looking at the README or other available documentation, it is not clear how to deploy it ?
It is also not clear what other tools can you integrate this with or how to use it ?
Can you please give some pointers to get started ?
Thanks,
-- Hemant

Thanks Ana !! This is helpful.
So, what type of contribution are you looking for in the project ?
Thanks,
-- Hemant

Any type of contribution is welcome. It can be either suggesting optimization of the model, adding new domains, or clarifying definitions that are covered by the model.
Best,
Ana

authors: AnaAntonova hemantbaxi

repo: finos/glue


text:
2024-01-08 - KDB Project Call Meeting Agenda

Date
Monday, January 1, 2024 - 9:30am ET / 2:30pm UK
// Second Monday of every month
Attendees

Fullname
Affiliation
GitHub Username

Meeting notices

FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact legal@finos.org with any questions.

FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

(5 min) Convene, roll call, welcome new people.
[ ] Display FINOS Antitrust Policy summary slide
[ ] Review Meeting Notices (see above)
(5 min) Approve previous meeting minutes.
(15 min) PyKX best practices.

Performance considerations for pykx.SecureQConnection, pykx.SyncQConnection, etc.
https://code.kx.com/pykx/2.2/api/ipc.html#pykx.ipc.SecureQConnection
https://code.kx.com/pykx/2.2/api/ipc.html#pykx.ipc.SyncQConnection

(10 min) KDB.AI-related topics.

Follow up questions on RAG (Retrieval Augmented Generation) concepts?
"Large Language Models Are Zero-Shot Time Series Forecasters"

https://arxiv.org/abs/2310.07820

Time Series Library (TSlib)

https://github.com/thuml/Time-Series-Library
https://github.com/thuml/iTransformer

(10 min) Updates from Jo?  :-)
(5 min) AOB, Q&A, Adjourn.

Decisions Made

Decision 1
Decision 2
...

Action Items

Action 1
Action 2
...

Join Zoom Meeting

https://zoom.us/j/94523415326?pwd=NkJDaUtUUlZTcHVwcUJHdG0yRFJUdz09
Meeting ID: 945 2341 5326
Passcode: 361990
Find your local number: https://zoom.us/u/abTtYRZ0B6

Péter Györök/KX

Gary Data Intellect

Ross Duffy/ Morgan Stanley

Karl Moll / FINOS

Rian Ó Cuinneagáin/KX

Aaron Davies/Morgan Stanley

Alvin Shih / Morgan Stanley

authors: adavies42 alvin-c-shih drgdavies gyorokpeter karlmoll rdffy rianoc-kx

repo: finos/kdb


text:
XMLHttpRequest实现为什么要把ArrayBuffer转化为text?

three.js fbxloader以arrayuffer为responseType调用XMLHttpRequest，期望拿到arraybuffer数据，但是这里实现的XMLHttpRequest最后一定要把arraybuffer转化为text，不知道原因? 我有想改的冲动，想先听听前辈的实现想法。。。

因为XMLHttpRequest 规范里就是这么规定的.

具体来说 是这样的:
当responseType=arraybuffer时, 你要通过 xhr.response 获得arraybuffer数据.
当responseType=text/json/""/xml时,  你才可以通过xhr.responseText来取数据.
如果three.js 内部如果用了responseType=arraybuffer , 那么它一定是用的xhr.response来取数据.
其实要不要存一份 arraybuffer对应的字符串到responseText里确实有待商榷的问题.
最新的规范好像是说 如果responseType=arraybuffer , 那么用户读取xhr.responseText时, 是要抛出异常的.
从这个角度来看, 也许确实没必要转.转了还影响性能 耗费内存.

@caochao , 我更新了一个新版本, 你看一下. 现在当 data 是arraybuffer时,  你再用 responseText 会抛出异常.
参考:  https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/responseText

感谢前辈那么晚还回复问题。重新追踪了源码，fbxloader确实是拿xhr.response来获得arraybuffer数据的。
因为我加载的是本地fbx，所以走的是readFile流程，这里判断判断responseType=arraybuffer时会将encoding参数设置为binary，然后onSuccess回调里返回的data是string类型。所以我碰到的总是是出瑞在这里。

谢谢你报告的新问题. 我看一下.

@caochao 我又更新了一个版本, 麻烦测试一下. 谢谢了

authors: caochao finscn

repo: finscn/weapp-adapter


text:
Class not found when unmarshalling: com.firebase.ui.auth.ui.FlowParameters

When using FirebaseUI Auth with Facebook, it crashes immediately after launching the Activity. The google-services.json file is updated.
The Facebook app ID is set in strings.xml:
<string name="facebook_application_id" translatable="false">appid</string>
<string name="facebook_login_protocol_scheme" translatable="false">fb_appid</string>

Have tried versions of google play services, facebook sdk, firebase, firebase ui, to no avail.
When removing Facebook as provider, and only using Google Sign-in/Phone/Email, it works without any issues.
Problem persists in debug and release APK.
Any suggestions on whats going on?
 startActivityForResult(
                AuthUI.getInstance().createSignInIntentBuilder()
                        .setTheme(getTheme())
                        .setLogo(R.drawable.logo)
                        .setAvailableProviders(getProviders())
                        .setTosUrl(getTosUrl())
                        .setPrivacyPolicyUrl(getPrivacyPolicyUrl())
                        .setIsSmartLockEnabled(false)
                        .setAllowNewEmailAccounts(false)
                        .build(),
                RC_SIGN_IN);

Log output:
Class not found when unmarshalling: com.firebase.ui.auth.ui.FlowParameters
                                         java.lang.ClassNotFoundException: com.firebase.ui.auth.ui.FlowParameters
                                             at java.lang.Class.classForName(Native Method)
                                             at java.lang.Class.forName(Class.java:400)
                                             at android.os.Parcel.readParcelableCreator(Parcel.java:2517)
                                             at android.os.Parcel.readParcelable(Parcel.java:2471)
                                             at android.os.Parcel.readValue(Parcel.java:2374)
                                             at android.os.Parcel.readArrayMapInternal(Parcel.java:2727)
                                             at android.os.BaseBundle.unparcel(BaseBundle.java:269)
                                             at android.os.BaseBundle.getString(BaseBundle.java:992)
                                             at android.content.Intent.getStringExtra(Intent.java:6702)
                                             at com.android.server.am.ActivityStarter.startActivityLocked(ActivityStarter.java:336)
                                             at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1094)
                                             at com.android.server.am.ActivityManagerService.startActivityAsUser(ActivityManagerService.java:5836)
                                             at com.android.server.am.ActivityManagerService.startActivity(ActivityManagerService.java:5641)
                                             at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:176)
                                             at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:3611)
                                             at android.os.Binder.execTransact(Binder.java:573)
                                          Caused by: java.lang.ClassNotFoundException: com.firebase.ui.auth.ui.FlowParameters
                                             at java.lang.Class.classForName(Native Method)
                                             at java.lang.BootClassLoader.findClass(ClassLoader.java:1346)
                                             at java.lang.BootClassLoader.loadClass(ClassLoader.java:1406)
                                             at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
                                             at java.lang.Class.classForName(Native Method)
                                             at java.lang.Class.forName(Class.java:400)
                                             at android.os.Parcel.readParcelableCreator(Parcel.java:2517)
                                             at android.os.Parcel.readParcelable(Parcel.java:2471)
                                             at android.os.Parcel.readValue(Parcel.java:2374)
                                             at android.os.Parcel.readArrayMapInternal(Parcel.java:2727)
                                             at android.os.BaseBundle.unparcel(BaseBundle.java:269)
                                             at android.os.BaseBundle.getString(BaseBundle.java:992)
                                             at android.content.Intent.getStringExtra(Intent.java:6702)
                                             at com.android.server.am.ActivityStarter.startActivityLocked(ActivityStarter.java:336)
                                             at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1094)
                                             at com.android.server.am.ActivityManagerService.startActivityAsUser(ActivityManagerService.java:5836)
                                             at com.android.server.am.ActivityManagerService.startActivity(ActivityManagerService.java:5641)
                                             at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:176)
                                             at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:3611)
                                             at android.os.Binder.execTransact(Binder.java:573)
                                          Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available

======================================================
builde.gradle (app)
apply plugin: 'com.android.application'
apply plugin: 'com.google.firebase.firebase-crash'

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    defaultConfig {
        applicationId "com.lemon.wave"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
        resConfigs "auto" // FirebaseUI translations for all string resources
    }
    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

configurations.all {
    resolutionStrategy.eachDependency { details ->
        def requested = details.requested
        if (requested.group == 'com.android.support') {
            if (!requested.name.startsWith("multidex")) {
                details.useVersion '26.0.2'
            }
        }
    }
}

configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
       //exclude group: 'com.google.android.gms'
        //exclude group: 'com.google.firebase'
    })

    testCompile 'junit:junit:4.12'

    // support libs
    compile 'com.android.support:design:26.0.2'
    compile 'com.android.support:support-v4:26.0.2'
    compile 'com.android.support:mediarouter-v7:26.0.2'
    compile 'com.android.support:support-v13:26.0.2'
    compile 'com.android.support:recyclerview-v7:26.0.2'
    compile 'com.android.support:cardview-v7:26.0.2'
    compile 'com.android.support:palette-v7:26.0.2'
    compile 'com.android.support:customtabs:26.0.2'
    compile 'com.android.support:support-fragment:26.0.2'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support:multidex:1.0.1'

    // google play services
    compile 'com.google.android.gms:play-services-base:11.4.0'
    compile 'com.google.android.gms:play-services-auth:11.4.0'

    // firebase
    compile 'com.google.firebase:firebase-auth:11.4.0'
    compile 'com.google.firebase:firebase-database:11.4.0'
    compile 'com.google.firebase:firebase-core:11.4.0'
    compile 'com.google.firebase:firebase-storage:11.4.0'
    compile 'com.google.firebase:firebase-crash:11.4.0'
    compile 'com.google.firebase:firebase-messaging:11.4.0'

    // firebase ui
    compile 'com.firebaseui:firebase-ui-database:2.3.0'
    compile 'com.firebaseui:firebase-ui-auth:2.3.0'
    compile('com.facebook.android:facebook-android-sdk:4.22.1')

    // div
    compile 'com.squareup.okhttp3:okhttp:3.9.0'
    compile 'codelight.studios:android-smart-login:1.2'
    compile 'me.leolin:ShortcutBadger:1.1.18@aar'
    compile 'de.hdodenhof:circleimageview:2.1.0'
    compile 'com.jakewharton:butterknife:8.8.1'
    compile 'com.google.code.gson:gson:2.8.2'
    compile 'com.afollestad:material-camera:0.4.4'
    compile 'com.afollestad:easyvideoplayer:0.3.0'
    compile 'com.cleveroad:audiovisualization:1.0.0'
    compile 'com.mikepenz:iconics-core:2.9.3@aar'
    compile 'com.github.bumptech.glide:glide:3.8.0'
    compile 'com.mikepenz:fastadapter-commons:2.6.3@aar'
    compile 'com.mikepenz:itemanimators:1.0.0@aar'
    compile 'com.mikepenz:google-material-typeface:2.2.0.1@aar'
    compile 'com.mikepenz:fontawesome-typeface:4.7.0.0@aar'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

    compile('com.mikepenz:materialdrawer:5.9.5@aar') {
        transitive = true
    }
    compile('com.mikepenz:aboutlibraries:5.9.5@aar') {
        transitive = true
        exclude module: "fastadapter"
    }
}
apply plugin: 'com.google.gms.google-services'

======================================================
build.gradle (Project)
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'
        classpath 'com.google.gms:google-services:3.1.1'
        classpath 'com.google.firebase:firebase-plugins:1.1.1'

    }
}

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }

        maven { url "https://dl.bintray.com/drummer-aidan/maven" }

        mavenCentral()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

======================================================

My app is having the same issue.  I am able to solve the missing FlowParameters class by adding to my AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" android:protectionLevel="signature" />

However, I still see this FirebaseUI and Facebook related problem in the logs:
09-28 00:46:58.577 2519-8255/com.google.android.gms V/FA-SVC: Logging event: origin=auto,name=user_engagement(_e),params=Bundle[{firebase_event_origin(_o)=auto, engagement_time_msec(_et)=9603, firebase_screen_class(_sc)=LoginActivity, firebase_screen_id(_si)=4654341430752817376}]
09-28 00:46:58.586 7991-8248/com.harlie.myapplication V/FA: Activity resumed, time: 4997508
09-28 00:46:58.587 2519-8255/com.google.android.gms V/FA-SVC: Saving event, name, data size: user_engagement(_e), 68
09-28 00:46:58.590 7991-8248/com.harlie.myapplication V/FA: Screen exposed for less than 1000 ms. Event not sent. time: 10
09-28 00:46:58.591 7991-8248/com.harlie.myapplication V/FA: Activity paused, time: 4997510
09-28 00:46:58.592 2519-8255/com.google.android.gms V/FA-SVC: Event recorded: Event{appId='com.harlie.myapplication', name='user_engagement(_e)', params=Bundle[{firebase_event_origin(_o)=auto, engagement_time_msec(_et)=9603, firebase_screen_class(_sc)=LoginActivity, firebase_screen_id(_si)=4654341430752817376}]}
09-28 00:46:58.595 7991-7991/com.harlie.myapplication V/FA: onActivityCreated
09-28 00:46:58.600 7991-8248/com.harlie.myapplication D/FA: Logging event (FE): screen_view(_vs), Bundle[{firebase_event_origin(_o)=auto, firebase_previous_class(_pc)=LoginActivity, firebase_previous_id(_pi)=4654341430752817376, firebase_screen_class(_sc)=KickoffActivity, firebase_screen_id(_si)=4654341430752817377}]
09-28 00:46:58.602 2519-8255/com.google.android.gms V/FA-SVC: Upload scheduled in approximately ms: 2252520
09-28 00:46:58.604 2519-8255/com.google.android.gms V/FA-SVC: Cancelling job. JobID: 812057698
09-28 00:46:58.604 2519-8255/com.google.android.gms V/FA-SVC: Scheduling upload with AlarmManager
09-28 00:46:58.604 2519-8255/com.google.android.gms V/FA-SVC: Background event processing time, ms: 27
09-28 00:46:58.631 7991-7991/com.harlie.myapplication D/AndroidRuntime: Shutting down VM
                                                                          --------- beginning of crash

09-28 00:46:58.632 7991-7991/com.harlie.myapplication E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.harlie.myapplication, PID: 7991
java.lang.NoSuchMethodError: No static method setWebDialogTheme(I)V in class Lcom/facebook/FacebookSdk; or its super classes (declaration of 'com.facebook.FacebookSdk' appears in /data/app/com.harlie.myapplication-2/base.apk)
at com.firebase.ui.auth.provider.FacebookProvider.(FacebookProvider.java:67)
at com.firebase.ui.auth.ui.idp.AuthMethodPickerActivity.populateIdpList(AuthMethodPickerActivity.java:108)
at com.firebase.ui.auth.ui.idp.AuthMethodPickerActivity.onCreate(AuthMethodPickerActivity.java:81)
at android.app.Activity.performCreate(Activity.java:6679)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2618)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6119)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
09-28 00:46:58.636 2519-8255/com.google.android.gms V/FA-SVC: Logging event: origin=auto,name=screen_view(_vs),params=Bundle[{firebase_event_origin(_o)=auto, firebase_previous_class(_pc)=LoginActivity, firebase_previous_id(_pi)=4654341430752817376, firebase_screen_class(_sc)=KickoffActivity, firebase_screen_id(_si)=4654341430752817377}]
09-28 00:46:58.639 2519-8255/com.google.android.gms V/FA-SVC: Saving event, name, data size: screen_view(_vs), 99
09-28 00:46:58.640 2519-8255/com.google.android.gms V/FA-SVC: Event recorded: Event{appId='com.harlie.myapplication', name='screen_view(_vs)', params=Bundle[{firebase_event_origin(_o)=auto, firebase_previous_class(_pc)=LoginActivity, firebase_previous_id(_pi)=4654341430752817376, firebase_screen_class(_sc)=KickoffActivity, firebase_screen_id(_si)=4654341430752817377}]}
09-28 00:46:58.644 2519-8255/com.google.android.gms V/FA-SVC: Upload scheduled in approximately ms: 2252474
09-28 00:46:58.645 1674-1686/system_process W/ActivityManager:   Force finishing activity com.harlie.myapplication/com.firebase.ui.auth.ui.idp.AuthMethodPickerActivity
09-28 00:46:58.648 1674-1686/system_process W/ActivityManager:   Force finishing activity com.harlie.myapplication/com.firebase.ui.auth.KickoffActivity
09-28 00:46:58.651 2519-8255/com.google.android.gms V/FA-SVC: Cancelling job. JobID: 812057698
09-28 00:46:58.654 2519-8255/com.google.android.gms V/FA-SVC: Scheduling upload with AlarmManager

@LeeHounshell you've been using FirebaseUI for a while, when did this issue start for you?

I just noticed this problem for the first time today.  I am wondering if the FacebookSdk has changed?
My build.gradle has:
implementation 'com.facebook.android:facebook-android-sdk:[4,5)'

@LeeHounshell Oh yeah, using free flowing versioning is usually a bad idea exactly for this reason. Facebook just released v4.27 and it looks like

updates proguard files

is probably what's tripping us up.
For now, you can downgrade to v4.26 until we can sort this out. Thanks for the tip! 😄

I can confirm that downgrading to the old Facebook Sdk works.
Use this in your build.gradle:
implementation 'com.facebook.android:facebook-android-sdk:4.26.0'

Thanks everybody!

Here's the ProGuard from the new SDK:
-keepclassmembers class * implements java.io.Serializable {
    private static final java.io.ObjectStreamField[] serialPersistentFields;
    private void writeObject(java.io.ObjectOutputStream);
    private void readObject(java.io.ObjectInputStream);
    java.lang.Object writeReplace();
    java.lang.Object readResolve();
}

-keepnames class com.facebook.FacebookActivity
-keepnames class com.facebook.CustomTabActivity

-keep class com.facebook.all.All

-keep public class com.android.vending.billing.IInAppBillingService {
    public static com.android.vending.billing.IInAppBillingService asInterface(android.os.IBinder);
    public android.os.Bundle getSkuDetails(int, java.lang.String, java.lang.String, android.os.Bundle);
}

@samtstern Ok, so it actually has nothing to do with proguard. It turns out Facebook literally moved methods around in a minor release. Not cool Facebook! 👿😆 Anyway, see #929.

For me, downgrading fbSdk or adding that weird permission didn't change anything. Still same

@thailemon yeah, that's a separate issue. Somehow, your proguard config is stripping out firebase classes. Just to make sure, the crash only happens in release mode, right? If so, could you show me your proguard config?

@SUPERCILEX no, it happens in both debug and release.

@thailemon Hmmm, OK. That's weird. Try deleting the .gradle folder in your project's root directory and running a ./gradlew clean cleanBuildCache before running the app.

@SUPERCILEX Yes, it's very weird indeed. clean/cleanBuildCache doesn't change anything either - not in debug nor release :/

This issue is pretty old (x months) and I have not seen any additional reports, going to close it for now.  @thailemon if you are still seeing this or if you fixed it please let us know!  Happy to continue the discussion.

authors: LeeHounshell SUPERCILEX samtstern thailemon

repo: firebase/FirebaseUI-Android


text:
Remove password from connection-uri's err msg

We don't support passwords here, they need to be in the smtp_password field

Properly fixed w/ https://github.com/firebase/extensions/pull/909/files

repo: firebase/extensions


text:
TS2688: Cannot find type definition file for 'mime'

[READ] Step 1: Are you in the right place?

For issues related to the code in this repository file a Github issue.

[REQUIRED] Step 2: Describe your environment
  System:
    OS: macOS 14.3.1
    CPU: (11) arm64 Apple M3 Pro
    Memory: 789.16 MB / 18.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.10.0 - /usr/local/bin/node
    Yarn: 1.22.21 - /usr/local/bin/yarn
    npm: 10.2.5 - /usr/local/bin/npm
    bun: 1.0.36 - ~/.bun/bin/bun
  Browsers:
    Chrome: 123.0.6312.87
    Edge: 123.0.2420.65
    Safari: 17.3.1
  npmPackages:
    @aws-sdk/client-cloudwatch-logs: ^3.540.0 => 3.540.0
    @aws-sdk/client-ecs: ^3.540.0 => 3.542.0
    @aws-sdk/client-lambda: ^3.540.0 => 3.540.0
    @aws-sdk/client-s3: ^3.540.0 => 3.540.0
    @aws-sdk/s3-request-presigner: ^3.540.0 => 3.540.0
    @bloxtax/extras: ^1.0.7 => 1.0.7
    @graphql-yoga/plugin-response-cache: ^3.4.0 => 3.5.0
    @pothos/core: ^3.41.0 => 3.41.0
    @pothos/plugin-dataloader: ^3.18.1 => 3.18.1
    @pothos/plugin-prisma: ^3.65.0 => 3.65.0
    @prisma/client: ^5.11.0 => 5.11.0
    @sendgrid/mail: ^8.1.1 => 8.1.1
    @solana/web3.js: ^1.91.1 => 1.91.2
    @types/crypto-js: ^4.2.2 => 4.2.2
    @types/node: ^20.11.30 => 20.12.2
    @types/pg: ^8.11.4 => 8.11.4
    @types/uuid: ^9.0.8 => 9.0.8
    @whatwg-node/server-plugin-cookies: ^1.0.2 => 1.0.2
    axios: ^1.6.8 => 1.6.8
    crypto-js: ^4.2.0 => 4.2.0
    dataloader: ^2.2.2 => 2.2.2
    dayjs: ^1.11.10 => 1.11.10
    dotenv: ^16.4.5 => 16.4.5
    firebase-admin: ^12.0.0 => 12.0.0
    form-data: ^4.0.0 => 4.0.0
    graphql: ^16.8.1 => 16.8.1
    graphql-middleware: ^6.1.35 => 6.1.35
    graphql-request: ^6.1.0 => 6.1.0
    graphql-scalars: ^1.23.0 => 1.23.0
    graphql-shield: ^7.6.5 => 7.6.5
    graphql-yoga: ^5.2.0 => 5.3.0
    knex: ^3.1.0 => 3.1.0
    libphonenumber-js: ^1.10.58 => 1.10.59
    node-object-hash: ^3.0.0 => 3.0.0
    pg: ^8.11.3 => 8.11.4
    prisma: ^5.11.0 => 5.11.0
    query-string: ^9.0.0 => 9.0.0
    redis: ^4.6.13 => 4.6.13
    ts-node: ^10.9.2 => 10.9.2
    ts-node-dev: ^2.0.0 => 2.0.0
    typescript: ^5.4.3 => 5.4.3
    uuid: ^9.0.1 => 9.0.1
    web3-validator: ^2.0.4 => 2.0.5
    xlsx: https://cdn.sheetjs.com/xlsx-0.20.1/xlsx-0.20.1.tgz => 0.20.1

[REQUIRED] Step 3: Describe the problem
Steps to reproduce:

Install firebase-admin@latest in node typescript project.
Run "tsc" (build).

error TS2688: Cannot find type definition file for 'mime'.
  The file is in the program because:
    Entry point for implicit type library 'mime'

When I remove "firebase-admin" - there is no type error.

Update to @types/mime@4.0.0 caused the issue for me, you can resolve by forcing resolution of @3.0.1.

Update to @types/mime@4.0.0 caused the issue for me, you can resolve by forcing resolution of @3.0.4.

How to force it. Because i not install @types/mime@4.0.0

Check your preferred node package manager docs.
Mark Crawshaw
Founder & General Manager
Mob +61 409 976 575
aplas.com
Level 17/31 Queen Street
Melbourne VIC 3000
Australia
This email contains confidential information and may be legally privileged.
If you are not the intended recipient or have received this email in error,
please notify the sender immediately and destroy this email. You may not
use, disclose or copy this email or its attachments in any way. Any
opinions expressed in this email are those of the author and are not
necessarily those of Aplas Pty Ltd.
On Mon, 1 Apr 2024 at 2:09 pm, tbtrung-1768 @.***>
wrote:

Update to @@.*** caused the issue for me, you can resolve by
forcing resolution of @3.0.4.
How to force it. Because i not install @@.***
—
Reply to this email directly, view it on GitHub
https://github.com/firebase/firebase-admin-node/issues/2512#issuecomment-2029081347,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADBSKXQ2MMINGI7JQMOS2HTY3DFX3AVCNFSM6AAAAABFQMWYQGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRZGA4DCMZUG4
.
You are receiving this because you commented.Message ID:
@.***>

just download an older version of @types/mime

just download an older version of @types/mime

Because i don't have install @types/mime. I just use
@apollo/server > @types/express > @types/serve-static > @types/mime@4.0.0
I can't not know hot to force to version 3.2. Please help me. It very important for me

I am not sure what the issue with @types/mime is yet. But to get around this temporariliy add the following to package json
"overrides": {
"@types/mime": "3.0.4"
}

更新@types/mime@4.0.0 导致了我的问题，您可以通过强制解析@3.0.4 来解决。

怎么强行呢。因为我没有安装@types/mime@4.0.0

add to package.json :
"resolutions": {
"@types/mime": "3.0.4"
}

更新@types/mime@4.0.0 导致了我的问题，您可以通过强制解析@3.0.4 来解决。

怎么强行呢。因为我没有安装@types/mime@4.0.0

add to package.json :
"resolutions": {
"@types/mime": "3.0.4"
}

更新@types/mime@4.0.0 导致了我的问题，您可以通过强制解析@3.0.4 来解决。

怎么强行呢。因为我没有安装@types/mime@4.0.0

add to package.json :
"resolutions": { "@types/mime": "3.0.4" }

Somehow it is working for me ...
"overrides": {
"@types/mime": "3.0.4"
}
overrides didn't work for me, can anyone explain why?

更新@types/mime@4.0.0 导致了我的问题，您可以通过强制解析@3.0.4 来解决。

怎么强行呢。因为我没有安装@types/mime@4.0.0

add to package.json :
"resolutions": { "@types/mime": "3.0.4" }

Thank you so much, you save my life.

更新@types/mime@4.0.0 导致了我的问题，您可以通过强制解析@3.0.4 来解决。

怎么强行呢。因为我没有安装@types/mime@4.0.0

add to package.json :
"resolutions": { "@types/mime": "3.0.4" }

This working fine to me, Thank you so much

更新@types/mime@4.0.0 导致了我的问题，您可以通过强制解析@3.0.4 来解决。

怎么强行呢。因为我没有安装@types/mime@4.0.0

add to package.json :
"resolutions": { "@types/mime": "3.0.4" }

This solution has made my day! Thank you so much.

If you check @types/mime: 4.0.0 in your node_modules. It's just empty.
Thanks @thaoula

更新@types/mime@4.0.0 导致了我的问题，您可以通过强制解析@3.0.4 来解决。

怎么强行呢。因为我没有安装@types/mime@4.0.0

add to package.json :
"resolutions": { "@types/mime": "3.0.4" }
Thanks.

I guess @types/mime v4.0.0 is broken?

Here's how v3.x looks like:

I guess @types/mime v4.0.0 is broken or something?

Here's how v3.x looks like:

It's not broken. It's depreciated.
mime@4 already include types, so you don't need @types/mime anymore

Works here very well, thanks!

 "resolutions": {
    "@types/mime": "3.0.4"
}

Not working for me, any other solution?

yarn add @types/mime@3 worked for me.

This issue is discussed in the following issue.
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/69213
A PR has already been submitted. However, I'm not certain the change that refers to v4 is the proper solution.

"resolutions": {
"@types/mime": "3.0.4"
}

Its done with two properties in package.json, express broken this type

yarn
"resolutions": { "@types/mime": "3.0.4" }
npm
"overrides": { "@types/mime": "3.0.4" }

This works for me. Thanks for the solution.

Thanks folks for flagging this issue. I believe https://github.com/DefinitelyTyped/DefinitelyTyped/pull/69231 should fix it, and from what I understand there no fix to be made in this repository.

https://github.com/DefinitelyTyped/DefinitelyTyped/pull/69231 - Already fixed

had the same issue "overrides": { "@types/mime": "3.0.4" } fixed it for me

Update to @types/mime@4.0.0 caused the issue for me, you can resolve by forcing resolution of @3.0.4.

This was also the issue for me. Thanks

authors: Almasemilius Haru-Kazumoto HossamMarey RathiAnkxrx arcaela dtduong30 hansajayathilaka hozeeee jadilson12 kirankrish792 lahirumaramba maanoel mcrawshaw micalevisk mjnothing2021 nekoya shadoworion sovattha tbtrung-1768 thaoula thebiltheory xNOVA2

repo: firebase/firebase-admin-node


text:
[FIR configure]. why  we  use this method called in Main Thread. is it possible to run Background Thread.?.

Description
[FIR configure]. why  this method called in Main Thread. is it possible to run Background Thread.
when i run it in Main Thread it freezes the UI some times. so is it any way or any chances to move to Back ground thread.
please help me.
Reproducing the issue
No response
Firebase SDK Version
10.16
Xcode Version
15.2
Installation Method
Swift Package Manager
Firebase Product(s)
All
Targeted Platforms
iOS
Relevant Log Output
No response
If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet

Replace this line with the contents of your Package.resolved.

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet

Replace this line with the contents of your Podfile.lock!

using my Firebase Version: 7.4.0

The Firebase products are designed for configure to run on the main thread at start up.
However, it's an issue if there's a lag. If you can share a reproducible test case of a laggy startup or an Instruments log, we can investigate.

Thanks for the Instruments log.
The delay looks related to Crashlytics start up or reporting. Assigning to the Crashlytics team to determine if this is expected or not and if it's something that could be done off of the main thread.

@shravanteegala the version of Firebase you're using is very old. Is this reproducible on the latest Firebase version (10.x)?

@morganchen12 ,  i will check and confirm after updating latest version.

repo: firebase/firebase-ios-sdk


text:
Failed to get document because the client is offline.

Description
Can't login to the app, because I'm getting this issue Failed to get document because the client is offline.
RegisterView doesn't work too, because the button doesn't do anything.
There is problem with login, but password reseting works fine.
App is coded in SwiftUI.
Reproducing the issue
Try to login to the app with email and password, which is in the database.
Firebase SDK Version
10.29
Xcode Version
16.1
Installation Method
Swift Package Manager
Firebase Product(s)
Authentication, Firestore, Storage
Targeted Platforms
iOS
Relevant Log Output
//  LoginView.swift
//  opensocial
//
//  Created by Filip Bukovina on 21.06.2024.
//

import SwiftUI
import Firebase
import FirebaseFirestore
import FirebaseStorage
import FirebaseCore
import FirebaseAuth

struct LoginView: View {
    // MARK: User Details
    @State var emailID: String = ""
    @State var password: String = ""
    // MARK: View Properties
    @State var createAccount: Bool = false
    @State var showError: Bool = false
    @State var errorMessage: String = ""
    @State var isLoading: Bool = false
    // MARK: User Defaults
    @AppStorage("user_profile_url") var profileURL: URL?
    @AppStorage("user_name") var userNameStored: String = ""
    @AppStorage("user_UID") var userUID: String = ""
    @AppStorage("log_status") var logStatus: Bool = false
    var body: some View {
        VStack(spacing: 10){
            Text("Hello again!")
                .font(.largeTitle.bold())
                .hAlign(.leading)

            Text("Welcome Back,\nWe're happy, that you are back.")
                .font(.title3)
                .hAlign(.leading)

            Text("Version 0.1(9)")
                .font(.caption)
                .hAlign(.leading)

            VStack(spacing: 12){
                TextField("Email", text: $emailID)
                    .textContentType(.emailAddress)
                    .border(1, .gray.opacity(0.5))
                    .padding(.top,25)

                SecureField("Password", text: $password)
                    .textContentType(.emailAddress)
                    .border(1, .gray.opacity(0.5))

                Button("Reset password?", action: resetPassword)
                    .font(.callout)
                    .fontWeight(.medium)
                    .tint(.black)
                    .hAlign(.trailing)

                Button(action: loginUser){
                    // MARK: Login Button
                    Text("Sign in")
                        .foregroundColor(.white)
                        .hAlign(.center)
                        .fillView(.black)
                }
                .padding(.top,10)
            }

            // MARK: Register Button
            HStack{
                Text("Ready to use secure social?")
                    .foregroundColor(.gray)

                Button("Register Now"){
                    createAccount.toggle()
                }
                .fontWeight(.bold)
                .foregroundColor(.black)
            }
            .font(.callout)
            .vAlign(.bottom)
        }
        .vAlign(.top)
        .padding(15)
        .overlay(content: {
            LoadingView(show: $isLoading)
        })
        // MARK: Register View VIA Sheets
        .fullScreenCover(isPresented: $createAccount) {
            RegisterView()
        }
        // MARK: Displaying Alert
        .alert(errorMessage, isPresented: $showError, actions: {})
    }

    func loginUser(){
        isLoading = true
        closeKeyboard()
        Task{
            do{
                // With the help of Swift Concurrency Auth can be done with Single Line
                try await Auth.auth().signIn(withEmail: emailID, password: password)
                print("User Found")
                }catch{
                await setError(error)
                 }
            }
        }

        // MARK: If User if Found then Fetching User Data From Firestore
        func fetchUser()async throws{
            guard let userID = Auth.auth().currentUser?.uid else{return}
            let user = try await Firestore.firestore().collection("Users").document(userID).getDocument(as: User.self)
            // MARK: UI Updating Must be Run On Main Thread
            await MainActor.run(body: {
                // Setting UserDefaults data and Changing App's Auth Status
                userUID = userID
                userNameStored = user.username
                profileURL = user.userProfileURL
                logStatus = true
            })
        }

        func resetPassword(){
            Task{
                do{
                    // With the help of Swift Concurrency Auth can be done with Single Line
                    try await Auth.auth().sendPasswordReset(withEmail: emailID)
                    print("Link Sent")
                }catch{
                    await setError(error)
                }
            }
        }

        // MARK: Displaying Errors VIA Alert
        func setError(_ error: Error)async{
            // MARK: UI Must be Updated on Main Thread
            await MainActor.run(body: {
                errorMessage = error.localizedDescription
                showError.toggle()
                isLoading = false
            })
        }
    }

    struct LoginView_Previews: PreviewProvider {
        static var previews: some View {
            LoginView()
        }
    }

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet

Replace this line with the contents of your Package.resolved.

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet

Replace this line with the contents of your Podfile.lock!

Thanks for reporting @FBukovina. Your application seems to be doing a simple getDocument call and getting an UNAVAILABLE response
https://github.com/firebase/firebase-ios-sdk/blob/b91dfda0264195cfa47c0dea3b08f2184327c4d0/Firestore/core/src/api/document_reference.cc#L156-L158
Are you consistently getting this error?

It happens all the time.
So I should this to my code?
Thanks!

So I should this to my code?

No, I was just highlighting the fact that the error you're seeing is a result of getting an "unavailable" error code.
Are you able to perform any Firestore operation?
Can your device reach the network?
Are you targeting the Firestore backend or emulator?
Do your security rules allow access to the document you are trying to access?

I can reset password, I get the email with link and everything works fine. I tried it in iOS simulator, physical iPhone 13 and 16 Plus with same error.
Firebase is set in production mod.
Device can reach network.

Hello, what do you mean with Firestore operation?

By Firestore operation, I mean reads, writes, updates, and deletes.

I can restore password via the app, but registration and login doesn't work. I can create a user account in Firebase dashboard, but I can't login with it.

authors: FBukovina ehsannas