AttributeError: module 'google._upb._message' has no attribute 'Message' - protocol-buffers

https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates
Google has made some changes in Python language support in Protocol Buffers so one bug that occurs is the title of this question, the solution was just to downgrade to an earlier version

Had this error, solution was to downgrade protobuf
just added protobuf==3.20.1 to requirements.txt

Related

Terraform Provider-specify version of SDK to pull / Cannot use validation.StringInSlice type schema.SchemaValidateFunc as type SchemaValidateDiagFunc

Due to this problem it looks like for providers you have to get a current version of the SDK (2.4.4 at time of post). This post has a lot of info on how to import a specific version of a package but surely every single provider writer isn't manually pulling the most recent version of the SDK (or are they)?
I'm new to Go/Terraform so maybe I'm missing something obvious but the providers I've found (including the official example) have something like:
import(
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation"
)
The current version is not 2 - it is 2.4.4. Now I know those are local paths but what confuses me is when I run something like go get it goes and pulls those down for me. I tried doing:
"github.com/hashicorp/terraform-plugin-sdk/v2.4.4/helper/schema"
but go get very much doesn't like that. How is go get finding those package versions? Is there an import syntax that just gets me the latest build or allows me more granularity? I haven't found a good way to tell what version of the SDK I have after running go get but based on this error message:
it looks like I have 2.0 because that error is, as I understand it, fixed in newer versions of the SDK.
I figured it out. The behavior is controlled by the go.mod file.
In there you'll find:
require (
github.com/hashicorp/terraform-plugin-sdk v1.14.0 // indirect
github.com/hashicorp/terraform-plugin-sdk/v2 v2.0.1
As mentioned by #JimB the v2 is the major version for the plugin. v2.0.1 are GitHub tags. Changing this to v2.4.4 obtains the desired behavior.

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.

'Word2Vec' object has no attribute 'compute_loss'

I want to know the loss for my w2v model and I upgrade gensim to the latest version, but still can't use the argument compute_loss, am I miss something??
No released version of gensim (through 2.2.0 of June 2017) yet has that feature. It is a work-in-progress in the develop branch, which should appear in a future release.

Checking PhoneGap version in xCode

I have a problem with my phonegap-based project, and I'm suspecting I'm running a different version than I think. the config.xml file I'm using states it's 2.0.0, while I thought it's 2.9.
Is there a way to actually check the phonegap version in xcode, and not relay on a comment in a single file?
Thank you!
you can use device object's cordova(device.cordova) property to get the version of phonegap.
Below link provides more information for same.
http://docs.phonegap.com/en/3.0.0/cordova_device_device.md.html#Device
I thought I would add to #user1279357's answer, which demonstrates how to acquire the version of Cordova from the JavaScript side. However, on the Objective-C side, if you add #import <Cordova/CDVAvailability.h> you can call the constant: CORDOVA_VERSION_MIN_REQUIRED.
This constant is an int that will provide you with the version of Cordova you are using. The value is in the form of: 20000 = 2.0, 20800 = 2.8 e.t.c.
If you need to do checks against this value, there are other constants defined in this file for each of the versions, e.g. __CORDOVA_2_0_0 = 2.0.
Look here to see the source file for CDVAvailability.h.
Look in your cordova.js file at the top in the comments.
If you're using a really old version of cordova, it will be in the listed in the filename like "Cordova2.7.js"

getting error after ugrading to sass-3.1.8

after upgrading to sass-3.1.8 form sass-3.1.7 I get this error:
Functions may only be defined at the root of a document.
any Idea how I can solve this?
I'm using some of bourbon's mixins and it's imported at the top of my stylesheets, that's all.
I have the same problem and could not solve it by modifying code.
The way I solved was to use an older version:
gem uninstall sass
gem install sass -v 3.1.1
Ok Here is what I come up with:
SASS team decided to make a change (in this case "Functions may only be defined at the root of a document.") that made some plugins incompatible. in my case it was bourbon library. I made a ticket on github homepage of the bourbon and the owner updated the code and released a new version that's working with latest api.
I think this change should have got a bigger version bump to indicate the api change.
Sass developer here. Mixins and functions were never meant to be allowed in a scoped context. A bug was fixed recently that caused them to be caught when in an imported file (before this fix they were only caught if defined in the primary sass file).
That said, it's not a feature we're explicitly opposed to, but we'd would need to properly test it, document it, and support it as an official feature.

Resources