Ever since we released the public beta versions, your response to this API has been phenomenal. Since the last release of beta 3, the API went through a redesign phase. We took a critical look at the previous design and evaluated it against the ease of use, extensibility and our original goal of developing a Pythonic API for GIS. The result is this new design, a design that simply does not contour to the implementation logic, but efficiently abstracts it, ensuring the simplicity and beauty of the programming language prevails.
API design changes
The following are some of the high level changes you would notice in the version 1.0 of the API. You might have to update your notebooks and scripts and we apologize for this inconvenience.
- Various layer types in
arcgis.lyr
module are now in their own separate modules such asarcgis.features
,arcgis.raster
,arcgis.network
etc. arcgis.viz
is nowarcgis.mapping
with additional support for vector tiles, map image layers- Tools in
arcgis.tools
are accessible as functions in the corresponding layer modules. This allows a better grouping and presentation of tools making them available right alongside the layer types they process. For instance, the feature analysis tools available earlier asarcgis.tools.FeatureAnalysisTools
is nowarcgis.features.analyze_patterns
,arcgis.features.enrich_data
etc. - Big data analysis tools available earlier as
arcgis.tools.BigData
is now in a separate modulearcgis.geoanalytics
.
Enhancements and new features
This is by no means an exhaustive list. Below are some major enhancements you may notice in version 1.0 of the API
- ability to work with replicas for feature layers
- ability to manage user roles
- support for multiple outputs in GP tools
- support for stream layers
- added more big data analysis tools in the
arcgis.geoanalytics
module - extended support for web tools
- smart mapping improvements
- extended ability to publish package items such as vector tile, scene, tile
- enhanced support for login using ArcGIS Pro