Xamarin.Build.Download.targets - invalid Id - xamarin

I cannot build the project after adding Xamarin.Firebase.Functions nuget (v120.0.0) . The error message is:
Xamarin.Build.Download.targets(3,3): Error XBD020: Invalid item ID firebaseappcheckinterop-16.0.0-beta01
What can it be? I already tried the usual things like deleting the bin/obj folders, rebuilding, restarting, installing different versions of Xamarin.Build.Download. No idea where to even start investigating this issue.

I believe this is happening due to the Xamarin.Build.Download package doing some aggressive package id format checking. It doesn't like that -beta01 postfix.
More details at the issue I opened on GitHub: https://github.com/xamarin/XamarinComponents/issues/1293
For an immediate solution, I suggest either:
Downgrade to a version of Xamarin.Firebase.Functions that does not include a preview package as a transitive dependency
Fork the XamarinComponents repo and remove or modify the id check (as detailed in the above linked github issue). Ideally this would be a band-aid fix until a newer version of Xamarin.Build.Download allows for this situation or newer a version of Xamarin.Firebase.Functions doesn't depend on a preview dependency.

I am facing same issue with the -beta01 suffix, so I downgraded Xamarin.Firebase.Functions to 119.2.0 in order to use the package, which works.
I wonder why Google puts experimental feature dependencies in stable package...

Related

How do I manually remove a nuget package for .Net MAUI

I'm in the process of migration a XamarinForms 5 app to MAUI and the latest error I get is
The Java type `mono.android.support.v4.media.session.MediaSessionCompat_OnActiveChangeListenerImplementor` is generated by more than one managed type
Searching online, so far I think it is because the app is using Android.Support.V4 when it should only be using AndroidX, causing the duplicate to be generated as AndroidX replaces Support.V4.
However I cannot figure out how to remove the Support.v4 package because the only reference to it is an implicit reference by an SDK which I cannot remove ( see screenshot below)
The project file (MAUI) only has these package references
Any help greatly appreciated.
Thanks
I'll answer my own question as I managed to figure out the issue after a solid several hours long session.
No packages needed to be removed. Somehow I had managed to install a version of
Birdie.Plugin.FirebasePushNotification from 2020 , instead of `Plugin.FirebasePushNotification', the current version.
The solution was to remove that old package and install the correct once which made the error go away.

in Xcode12 beta the Swift package manager fails to load dependencies

Recently the SPM has started to give me errors. Was working before.
I'm trying to use the AlamofireImage library but xcode fails to resolve de dependency and doesn't give any good explanation.
Does anybody know why and how to make it work?
this was once happened to me, maybe you can try to go ahead to File > Swift Packages > Update to Latest Package Versions. Let's see if that works
I ran into a similar issue when I was trying to arrange the files inside the project folder, and when I put them back to their old position the problem was resolved and the app run successfully.
I found something that's not ideal, but works for now. In your main xCode project file, go under Project not Target and find Package Dependencies. After finding it, remove the SDK, and then right click on the name of your project and add a package. This time when adding Firebase, use Minor version. It should hopefully resolve and install.

Issue with using a modified version of a Go dependency

So here is the situation:
I have a fork of go-ipfs. It depends on go-ipfs-config. I need to modify go-ipfs-config and make go-ipfs depend on my modified version.
I forked the go-ipfs-config made my changes and made sure to update the path to be that of my forked version as can be seen here. I confirmed that this still builds successfully by running go build
Then I updated go.mod in go-ipfs to use my modified version. I used the replace directive to signify this intention which can be seen here
This is where things gets absolutely bunkers and I am no longer sure what is going on.
When i do go mod tidy to fetch the dependency i get the following output:
go: finding module for package github.com/dadepo/go-ipfs-config
go: found github.com/dadepo/go-ipfs-config in github.com/dadepo/go-ipfs-config v0.5.3
The crazy thing is that v0.5.3 does not exist in github.com/dadepo/go-ipfs-config!
Also the following line get added to go.mod :
github.com/dadepo/go-ipfs-config v0.5.3 // indirect
Which can even be seen here
I have run commands like go clean -modcache and go clean -r etc but does not seem to fix things!
Does anybody know what I am doing wrong? And also how to achieve the goal of making my version of a project depend on another modified version of its dependency?
Ok, so this is as a result of me not being aware of couple of things going on in the Go lang toolchain.
Apparently https://proxy.golang.org is a thing! It is a service operated by google that caches modules. So If you made a release, deleted it, chances are that the version is already cached in https://proxy.golang.org. This was exactly what happened in my case. I had made a 0.5.3 release, deleted it, but it is not really gone as the Google cache already got a hold of it.
So in case you are seeing versions that should not exist. This should be the first place you check. This documentation link also sheds some more light on the proxy and how it can be tweaked.
I found this out based on the conversation I had on the issue I opened reporting this behaviour. If you are curious, you can check it out here.

ZXing.Mobile.Net.Forms ZXing.Result Type Issue

I'm trying to get the result of a scan using a MobileBarcodeScanner. If I save the result as a var everything works fine, but as soon as I try to use ZXing.Result, I get the message The type 'Result' exists in both 'zxing, Version=0.16.5.0 ...' and 'zxing.portable, Version=0.16.2.0 ...'
I have these packages installed:
ZXing.Net.Mobile.Forms, Version 2.4.1
ZXing.Net.Mobile, Version 2.4.1
Zxing.Net, Version 0.16.5
I've seen other people use ZXing.Result, do I have an extra package installed? Am I missing one? Is there a way to mitigate this conflict?
Though removing Zxing.Net may work, but it could cause some issues when you release your project.
The proper solution should be:
- Look at the dependency of ZXing.Net.Mobile for the exact version it's using Zxing.Net.
- Install that version, there is a high chance that ZXing.net 0.16.5 is lower than the version it's expecting.
Removing ZXing.Net seems to have solved my issue.

The "User7ZipPath" parameter is not supported

Recently, I have been getting this error a lot and from some research, I got to know that the cause for it is the Xamarin.Build package.
The error text is as follows:
The "User7ZipPath" parameter is not supported by the "XamarinDownloadArchives" task. Verify the parameter exists on the task, and it is a settable public instance property.
I have tried the solution here and here but nothing helped.
My configuration is as follows:
Xamarin version: 4.7.10.38
Visual Studio 2015
The Error occurs when I update the xamarin build NuGet package, If anyone has a solution to this problem please help me.
Thanks.
At last after all this time I was able to solve this problem.
The problem was with Xamarin.Build.Download package.
Now this package had a problem in version 4.7 where it is unable to find the XamarinDownloadArchives task.
I checked a lot of places and for the answer but nothing seemed to help with this issue after that I removed the bin, obj folders for all my projects.
And Updated my Xamarin.Build.Download package to version 0.4.11 and everything started working.
I hope this helps someone else, In case of any queries related to this issue feel free to comment.
Finally! I've come with a solution. The problem was in the Xamarin.Build.Download package, v0.4.0. It was a annidated dependency (in iOS) of Xamarin.Forms.GoogleMaps v2.2.1.
Updating Xamarin.Forms.GoogleMaps to v2.3.0 (the most recent version as of today) solves the issue. Make sure to clean the solution after update NuGet dependencies, though.

Resources