Just a heads up/warning to ArcPy users, primarily, that arcgis.features.feature.FeatureSet does not equal arcpy.arcobjects.arcobjects.FeatureSet, and trying to use one in place of the other will generate errors all over the place. Silly me assumed that the ArcGIS API for Python team would at least make the two interoperable.
ArcPy and ArcGIS API for Python are two different packages that deal with related things. It would be unreasonable to expect to use classes from one package in place of those from another. Regarding interoperability, you could use FeatureSet.df and write it to a feature class, and load it unisg arcpy and get an arcpy FeatureSet.
I have to disagree with you on reasonableness.
Same name, same language, same company, similar purpose, and packaged together with ArcGIS Pro. Given those five factors, I do not think it is unreasonable to expect some level of interoperability. Clearly the ArcGIS API for Python development team feels differently, but now I know where to set my expectations when working with the product.
I do not believe it is unreasonable to expect a consistent "Definition" of a FeatureSet and all language abide by that consistent definition. An apple may be an apple in VB.net but you have to treat it like an Orange in Python...... In all other areas in the programming world I FULLY expect an object or class to return a a class/object that could be used in the same manner in any language or package. That is a reasonable expectation!
ArcPy and ArcGIS API for Python are in two different namespaces. The fully qualified name is not the same. Import statements can be used to resolve the differences - that's what they are for.
In case anyone else gets to this thread, looks like this was finally fixed in 2.0.1. https://developers.arcgis.com/python/guide/release-notes-201/ Same issue was raised here https://community.esri.com/t5/python-ideas/make-arcpy-featureset-interoperable-with-the/idi-p/115096...