Skip to content

Commit 8bc46d7

Browse files
authored
Merge pull request #2254 from Esri/jy-sync-master-next
Update master branch with v241 changes
2 parents f00a161 + 85ec9c5 commit 8bc46d7

17 files changed

+26330
-1842
lines changed

guide/01-getting-started/system-requirements.ipynb

Lines changed: 46 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -22,65 +22,72 @@
2222
"metadata": {},
2323
"source": [
2424
"## Operating System \n",
25-
"The ArcGIS API for Python 2.4.0 release is compatible with 64-bit versions of Windows, macOS (M-Series and Intel), and Linux.\n",
25+
"The ArcGIS API for Python (2.4.0 and greater releases) is compatible with 64-bit versions of Windows, macOS (M-Series and Intel), and Linux.\n",
2626
"\n",
2727
"## Python Version\n",
2828
"Python 3.10.x to 3.12.x is required to use the ArcGIS API for Python 2.3.1 and greater releases.\n",
2929
"\n",
3030
"## Dependencies\n",
3131
"The full power of the ArcGIS API for Python is best experienced when all its dependencies are installed. However, specific tasks such as GIS administration and content management can be accomplished with a subset of dependencies installed. See [Install with minimum Dependencies](../install-and-set-up#install-with-minimum-dependencies) to install the `arcgis` package in this manner.\n",
3232
"\n",
33-
"It is recommended to install the `arcgis` package the default way of either `conda install -c esri arcgis arcgis-mapping` or `pipenv install arcgis arcgis-mapping`. When version 2.4.0 is installed in this manner, all the below dependencies are automatically installed. \n",
33+
"It is recommended to install the `arcgis` package the default way of either `conda install -c esri arcgis arcgis-mapping` or `pip install arcgis arcgis-mapping`. When installed in this manner, all the below dependencies are automatically installed.\n",
3434
"\n",
3535
"> __Note__ Most of these packages have dependencies of their own. For a full list of packages installed:\n",
3636
" > * conda environment, type `conda list -n <environment_name>`. \n",
37-
" > * pipenv virtual environment: See [`Pipfile` and `Pipfile.lock`](https://pipenv.pypa.io/en/latest/pipfile/) for details.\n",
37+
" > * pip environment, type `pip list`.\n",
3838
" \n",
3939
"\n",
40-
"* [pandas>=2.0.0,<2.2.0](https://anaconda.org/Esri/pandas) \n",
41-
"* [numpy>=1.21.6,<2](https://anaconda.org/Esri/numpy) \n",
42-
"* [pyshp>=2,<3](https://anaconda.org/conda-forge/pyshp/)\n",
43-
"* [pillow](https://python-pillow.github.io/)\n",
44-
"* [certifi](https://github.com/certifi/python-certifi) \n",
45-
"* [matplotlib](https://anaconda.org/esri/matplotlib)\n",
46-
"* [matplotlib-inline](https://anaconda.org/anaconda/matplotlib-inline/)\n",
47-
"* [notebook](https://anaconda.org/esri/notebook)\n",
48-
"* [ipywidgets >=7,<8](https://anaconda.org/esri/ipywidgets)\n",
49-
"* [widgetsnbextension >=3](https://anaconda.org/esri/widgetsnbextension)\n",
50-
"* [keyring>=23.3.0](https://anaconda.org/esri/keyring)\n",
51-
"* [urllib3>=1.26.1,<3](https://anaconda.org/conda-forge/urllib3/)\n",
52-
"* [cachetools](https://anaconda.org/conda-forge/cachetools)\n",
53-
"* [lxml](https://anaconda.org/esri/lxml)\n",
54-
"* [puremagic >=1.15,<2](https://github.com/cdgriffith/puremagic)\n",
55-
"* [cryptography](https://anaconda.org/esri/cryptography)\n",
56-
"* [jupyter-client<=6.1.12](https://anaconda.org/conda-forge/jupyter-client/)\n",
57-
"* [pylerc](https://anaconda.org/esri/pylerc)\n",
58-
"* [pyarrow>11.0.0](https://arrow.apache.org/)\n",
59-
"* [ujson>=3](https://anaconda.org/conda-forge/ujson/)\n",
60-
"* [geomet](https://anaconda.org/esri/geomet/)\n",
61-
"* [requests>=2.30.0,<2.32.0](https://anaconda.org/conda-forge/requests/)\n",
62-
"* [requests-oauthlib](https://anaconda.org/conda-forge/requests-oauthlib/)\n",
63-
"* [requests-toolbelt](https://anaconda.org/esri/requests-toolbelt/)\n",
64-
"* [requests_ntlm](https://anaconda.org/esri/requests_ntlm/)\n",
65-
"* [requests-gssapi](https://anaconda.org/esri/requests-gssapi/)\n",
66-
"* [requests-kerberos](https://anaconda.org/esri/requests-kerberos/)\n",
67-
"* [truststore](https://anaconda.org/esri/truststore/)\n",
68-
"* [dask>=2023.3.2](https://anaconda.org/esri/dask/)\n",
69-
"* [pyspnego>=0.8.0](https://anaconda.org/conda-forge/pyspnego/)\n",
70-
" * Python>=3.10\n",
40+
"* [anywidget](https://anaconda.org/Esri/anywidget)\n",
41+
"* [cachetools](https://anaconda.org/anaconda/cachetools)\n",
42+
"* [certifi](hhttps://anaconda.org/anaconda/certifi) \n",
43+
"* [cryptography](https://anaconda.org/Esri/cryptography)\n",
44+
"* [dask >=2024.12.1,<2025.1.0](https://anaconda.org/Esri/dask)\n",
45+
"* [geomet](https://anaconda.org/Esri/geomet)\n",
46+
"* [ipywidgets >=8](https://anaconda.org/Esri/ipywidgets)\n",
47+
"* [jupyterlab >=4.0.7,<5](https://anaconda.org/Esri/jupyterlab)\n",
48+
"* [keyring >=23.3.0](https://anaconda.org/Esri/keyring)\n",
49+
"* [lxml](https://anaconda.org/Esri/lxml)\n",
50+
"* [matplotlib](https://anaconda.org/Esri/matplotlib)\n",
51+
"* [matplotlib-inline](https://anaconda.org/Esri/matplotlib-inline)\n",
52+
"* [networkx](https://anaconda.org/Esri/networkx)\n",
53+
"* [numpy >=1.21.6,<2](https://anaconda.org/Esri/numpy) \n",
54+
"* [pandas >=2.0.0,<2.3.0](https://anaconda.org/Esri/pandas) \n",
55+
"* [pillow](https://anaconda.org/Esri/pillow)\n",
56+
"* [puremagic >=1.15,<2](https://anaconda.org/Esri/puremagic)\n",
57+
"* [pyarrow >=14,<17](https://anaconda.org/Esri/pyarrow)\n",
58+
"* [pydantic >=2.8.2,<3](https://anaconda.org/Esri/pydantic)\n",
59+
"* [pylerc](https://anaconda.org/Esri/pylerc)\n",
60+
"* [pyspnego >=0.8.0](https://anaconda.org/Esri/pyspnego)\n",
61+
"* [requests >=2.32.3,<3](https://anaconda.org/anaconda/requests)\n",
62+
"* [requests-gssapi](https://anaconda.org/Esri/requests-gssapi)\n",
63+
"* [requests-kerberos](https://anaconda.org/Esri/requests-kerberos)\n",
64+
"* [requests-oauthlib](https://anaconda.org/anaconda/requests-oauthlib)\n",
65+
"* [requests-toolbelt](https://anaconda.org/Esri/requests-toolbelt)\n",
66+
"* [truststore](https://anaconda.org/Esri/truststore)\n",
67+
"* [ujson >=3](https://anaconda.org/anaconda/ujson)\n",
68+
"* [urllib3 >=2.1.0,<3](https://anaconda.org/anaconda/urllib3)\n",
69+
"* [websocket-client >=1.2.3,<2](https://anaconda.org/anaconda/websocket-client)\n",
70+
"\n",
71+
"\n",
7172
"* **Windows only:**\n",
72-
" * [pywin32>=223](https://anaconda.org/conda-forge/pywin32/)\n",
73-
" * pywin-security\n",
74-
" * [requests-negotiate-sspi](https://anaconda.org/esri/requests-negotiate-sspi/)\n",
73+
" * [pywin32-security](https://anaconda.org/Esri/pywin32-security)\n",
74+
" * [requests-negotiate-sspi](https://anaconda.org/Esri/requests-negotiate-sspi)\n",
7575
"\n",
7676
"> Note: The dependencies above result from installing using `conda`. Versions may vary if `arcgis` is installed using `pip`.\n",
7777
"\n",
78-
"> Note: if `arcpy` is found in the current python environment, it may be used in various locations. Otherwise, `pyshp` will be used. See [Spatially Enabled DataFrame](https://developers.arcgis.com/python/api-reference/arcgis.features.toc.html?highlight=geoaccessor#arcgis.features.GeoAccessor) for more information.\n",
78+
"> Note: if `arcpy` is found in the current python environment, it may be used in various locations. Otherwise, `gdal` or `pyshp` will be used. See [Spatially Enabled DataFrame](https://developers.arcgis.com/python/api-reference/arcgis.features.toc.html?highlight=geoaccessor#arcgis.features.GeoAccessor) for more information.\n",
79+
"\n",
7980
"\n",
8081
"\n",
8182
"### Optional Dependencies\n",
8283
"\n",
83-
"There are some other python packages that may be required to use certain functionality in the API, but are __not__ automatically installed. To use that functionality, you must manually call `conda install {package_name}` or `pipenv install {package_name}` for such optional packages."
84+
"There are some other python packages that may be required to use certain functionality in the API, but are __not__ automatically installed. To use that functionality, you must manually call `conda install {package_name}` or `pip install {package_name}` for such optional packages.\n",
85+
"\n",
86+
"* [gdal](https://anaconda.org/Esri/gdal)\n",
87+
" - if installed, gdal may be used as a geometry engine for certain operations\n",
88+
" > Note: The gdal build on Esri anaconda channel is currently only compatible with environments configured with arcpy.\n",
89+
"* [pyshp](https://anaconda.org/anaconda/pyshp)\n",
90+
" - if installed, pyshp may be used as a geometry engine for certain operations"
8491
]
8592
}
8693
],

guide/02-api-overview/deprecation-notices.ipynb

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@
3030
"- `JournalStoryMap` - deprecated in **2.0.0** removed in **2.4.0**. Template was removed from the ArcGIS platform.\n",
3131
"- `Hub.initiatives` - deprecated in **2.4.0** removed in a future release. Use `Hub.sites` instead.\n",
3232
"\n",
33+
"### `arcgis.features.managers` Module\n",
34+
"- `UtilityNetworkManager.export_subnetwork` - deprecated the \"result_type\" parameter at **2.4.1**. Please use \"result_types\" instead.\n",
35+
"- `UtilityNetworkManager.trace` - deprecated the \"result_type\" parameter at **2.4.1**. Please use \"result_types\" instead.\n",
3336
"\n",
3437
"### `arcgis.learn` Module\n",
3538
"\n",
@@ -53,7 +56,9 @@
5356
"- `Item.share` - deprecated in **2.3.0** will be removed in a future major release (example: 2.x to 3.x). Use `Item.sharing` instead.\n",
5457
"- `Item.shared_with` - deprecated in **2.3.0** will be removed in a future major release (example: 2.x to 3.x). Use `Item.sharing` instead.\n",
5558
"- `Item.unshare` - deprecated in **2.3.0** will be removed in a future major release (example: 2.x to 3.x). Use `Item.sharing` instead.\n",
56-
"- `arcgis.gis.UserManager.create` - the `level` parameter is deprecated at **2.4.0** and will be removed from the method signature in a future release. \n",
59+
"- `arcgis.gis.UserManager.create` - the `level` parameter is deprecated at **2.4.0** and will be removed from the method signature in a future release.\n",
60+
"- `overwrite` item_property on `Folder.add` is deprecated and will be removed at **2.4.2**. Use `item.update` to update the source file for an `Item` instead.\n",
61+
" \n",
5762
"\n",
5863
"### `arcgis.mapping` Module\n",
5964
"\n",
@@ -153,8 +158,12 @@
153158
"- `path_distance` - deprecated in **1.8.1** removed in **2.4.0**. Please use arcgis.raster.functions.gbl.distance_accumulation instead.\n",
154159
"- `path_distance_back_link` - deprecated in **1.8.1** removed in **2.4.0**. Please use arcgis.raster.functions.gbl.distance_accumulation with value specified for output_back_direction_raster_name, instead..\n",
155160
"- `path_distance_allocation` - deprecated in **1.8.1** removed in **2.4.0**. Please use arcgis.raster.functions.gbl.distance_accumulation.\n",
161+
"- `Raster.cmap` - removed in **2.4.0**. Use `arcgis.raster.functions.colormap` to apply colormap on the Raster object before adding it to map.\n",
162+
"- `Raster.vmin` - removed in **2.4.0**. Use `arcgis.raster.functions.stretch` to apply colormap on the Raster object before adding it to map.\n",
163+
"- `Raster.vmax` - removed in **2.4.0**. Use `arcgis.raster.functions.stretch` to apply colormap on the Raster object before adding it to map.\n",
164+
"- `Raster.opacity` - removed in **2.4.0**. Please set the opacity in `options` parameter in the add method of the map widget.\n",
156165
"\n",
157-
"### `arcgis.features` Module\n",
166+
"### `arcgis.features.managers` Module\n",
158167
"\n",
159168
"- `UtilityNetworkManager.query_overrides` - deprecated in **2.1.0** removed in **2.4.0**. \n",
160169
"- `UtilityNetworkManager.apply_overrides` - deprecated in **2.1.0** removed in **2.4.0**. \n",
@@ -164,14 +173,6 @@
164173
"\n",
165174
"- `Group.invite_by_email` - deprecated in **1.5.1** removed in **2.4.0**. Use `Group.invite` instead."
166175
]
167-
},
168-
{
169-
"cell_type": "code",
170-
"execution_count": null,
171-
"id": "fd164b20-2b08-4aec-941e-176edd400cbd",
172-
"metadata": {},
173-
"outputs": [],
174-
"source": []
175176
}
176177
],
177178
"metadata": {
@@ -190,7 +191,7 @@
190191
"name": "python",
191192
"nbconvert_exporter": "python",
192193
"pygments_lexer": "ipython3",
193-
"version": "3.11.5"
194+
"version": "3.11.11"
194195
}
195196
},
196197
"nbformat": 4,
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "markdown",
5+
"id": "17574565-b2a1-4a25-96d0-6a2d2f56f684",
6+
"metadata": {},
7+
"source": [
8+
"## Summary\n",
9+
"\n",
10+
"The 2.4.1 Release contains changes that continue to build upon the Jupyter Lab and Notebook 7.0 architecture changes implemented at 2.4.0. \n",
11+
"\n",
12+
"These modifications change how some familiar functionality is accessed, and provides some new ways to work with your Web GIS organization. Let's take a look at some of these new updates."
13+
]
14+
},
15+
{
16+
"cell_type": "markdown",
17+
"id": "ea6769b7-0727-4afe-b5d0-c052726e4a46",
18+
"metadata": {},
19+
"source": [
20+
"Primary Python Support is for version 3.11. Secondary support is provided for Python 3.10 and 3.12. We have dropped Support for Python 3.9."
21+
]
22+
},
23+
{
24+
"cell_type": "markdown",
25+
"id": "ff163308-2526-4b3a-965b-5b430738c5f8",
26+
"metadata": {},
27+
"source": [
28+
"> **Note:** The ArcGIS API for Python 2.4.1 release is supported with:\n",
29+
"* ArcGIS Pro 3.5 and later default and cloned environments\n",
30+
"* ArcGIS Enterprise 11.4 and later\n",
31+
"* Stand-alone _conda_ and Python environments"
32+
]
33+
},
34+
{
35+
"cell_type": "markdown",
36+
"id": "f49067b4-26c2-498a-abae-02e5e904897d",
37+
"metadata": {},
38+
"source": [
39+
"## New processing option: [`Spatially Enabled DataFrame`](/python/api-reference/arcgis.features.toc.html#geoaccessor)\n",
40+
"We've provided an environment variable called _ARCGIS_GEOMETRY_ENGINE_ that allows you to explicitly set the library used for certain spatial spatial transformations, such as reading and/or writing of shapefiles and file geodatabases. See the API Reference for the [GeoAccessor](/python/api-reference/arcgis.features.toc.html#geoaccessor) for details. Methods to which this processing applies are noted in the Reference documentation.\n",
41+
"\n",
42+
"You can set the processing environment at the top a document with:"
43+
]
44+
},
45+
{
46+
"cell_type": "code",
47+
"execution_count": 1,
48+
"id": "e6414cca-8b53-43c2-bb31-4135db665621",
49+
"metadata": {},
50+
"outputs": [],
51+
"source": [
52+
"import os\n",
53+
"os.environ[\"ARCGIS_GEOMETRY_ENGINE\"] = \"Engine_of_Choice\""
54+
]
55+
},
56+
{
57+
"cell_type": "markdown",
58+
"id": "3da4c48b-3c82-490f-9b76-d2063307b56c",
59+
"metadata": {},
60+
"source": [
61+
"## New class: [`arcgis.gis.OfflineContentManager`](/python/api-reference/arcgis.gis.toc.html#offlinecontentmanager)"
62+
]
63+
},
64+
{
65+
"cell_type": "markdown",
66+
"id": "a3b59934-0694-41d2-8721-0a7bcdffa94b",
67+
"metadata": {},
68+
"source": [
69+
"The new [`OfflineContentManager`](/python//api-reference/arcgis.gis.toc.html#arcgis.gis.OfflineContentManager) provides functionality to package organizational content with options for defining a dependency tree, list the content of the resulting package, as well as import this content to another organization. In effect this allows cloning content in disconnected environments. This class utilizes the new _arcgis.apps.itemgraph_ module to create packages that can be used for downloading items and their dependencies for uploading items into other deployments in a disconnected environment. The [`export_items()`](/python/api-reference/arcgis.gis.toc.html#arcgis.gis.OfflineContentManager.export_items) method provides paramters to specify how items and thier dependencies are packaged and then exported to a desired location. The [`list_items()`](/python/api-reference/arcgis.gis.toc.html#arcgis.gis.OfflineContentManager.list_items) method provides access to explore the output pacakge, and the [`import_content()`](/python/api-reference/arcgis.gis.toc.html#arcgis.gis.OfflineContentManager.import_content) operation loads package contents into a desired deployment. See the API Reference for code examples."
70+
]
71+
},
72+
{
73+
"cell_type": "markdown",
74+
"id": "7f2716f6-cc9f-4fb6-a824-00831c01290f",
75+
"metadata": {},
76+
"source": [
77+
"## New capabilities: [`arcgis.gis.workflowmanager`](/python/api-reference/arcgis.gis.workflowmanager.html)\n",
78+
"The API includes new implementations for listening, receiving and sending workflow manager messages. These updates allow for step execution which allow users to run, stop and finish steps. The improved messaging allows easy viewing of progress and whether calls succeeded. See new classes:\n",
79+
" * [`ExecutionStatus`](/python/latest/api-reference/arcgis.gis.workflowmanager.html#arcgis.gis.workflowmanager.ExecutionStatus) \n",
80+
" * [`JobExecution`](/python/latest/api-reference/arcgis.gis.workflowmanager.html#arcgis.gis.workflowmanager.JobExecution)\n",
81+
" * [`MessageType`](/python/latest/api-reference/arcgis.gis.workflowmanager.html#arcgis.gis.workflowmanager.MessageType)\n",
82+
" * [`Notification`](/python/latest/api-reference/arcgis.gis.workflowmanager.html#arcgis.gis.workflowmanager.notification)"
83+
]
84+
},
85+
{
86+
"cell_type": "markdown",
87+
"id": "d236df3b-9f5f-4a7a-b1e4-ce23a28e2032",
88+
"metadata": {},
89+
"source": [
90+
"## New classes: [`arcgis.graph`](/python/api-reference/arcgis.graph.html)\n",
91+
"This module has added multiple new dataclasses to help with setting the correct syntax for functions so requests are all processed appropriately. The classes are strongly typed for input and outputs so all endpoints receive exactly what is expected. Check out the API Reference for details: \n",
92+
"* [Data Model Types](/python/api-reference/arcgis.graph.html#data-model-types)\n",
93+
"* [Graph Types](/python/api-reference/arcgis.graph.html#graph-types)\n",
94+
"* [Search Types](/python/api-reference/arcgis.graph.html#search-types)\n",
95+
"* [Response Types](/python/api-reference/arcgis.graph.html#response-types)"
96+
]
97+
},
98+
{
99+
"cell_type": "markdown",
100+
"id": "44159000-6f6b-473f-8243-8a2e809bc302",
101+
"metadata": {},
102+
"source": [
103+
"## New module: [`arcgis.apps.itemgraph`](/python/api-reference/arcgis.apps.itemgraph.html)\n",
104+
"The [`itemgraph`](/python/api-reference/arcgis.apps.itemgraph.html) submodule provides classes and functions for building a dependency graph for organizational [_Item_](/python/api-reference/arcgis.gis.toc.html#item) content. Module members can be used directly, or the [OfflineContentManager](/python/api-reference/arcgis.gis.toc.html#arcgis.gis.OfflineContentManager) can be used to utilize the functionality."
105+
]
106+
},
107+
{
108+
"cell_type": "markdown",
109+
"id": "10347e9f-b4b9-4dcf-855b-4cf2fc5f5426",
110+
"metadata": {},
111+
"source": [
112+
"### Functions\n",
113+
"\n",
114+
"* [create_dependency_graph()](/python/api-reference/arcgis.apps.itemgraph.html#arcgis.apps.itemgraph.create_dependency_graph)\n",
115+
"* [load_from_file()](/python/api-reference/arcgis.apps.itemgraph.html#arcgis.apps.itemgraph.load_from_file)"
116+
]
117+
},
118+
{
119+
"cell_type": "markdown",
120+
"id": "c7a09e11-2731-4b32-a260-12dceed86505",
121+
"metadata": {},
122+
"source": [
123+
"### Classes\n",
124+
"* [ItemGraph](/python/api-reference/arcgis.apps.itemgraph.html#arcgis.apps.itemgraph.ItemGraph)\n",
125+
"* [ItemNode](/python/api-reference/arcgis.apps.itemgraph.html#arcgis.apps.itemgraph.ItemNode)"
126+
]
127+
}
128+
],
129+
"metadata": {
130+
"kernelspec": {
131+
"display_name": "Python 3 (ipykernel)",
132+
"language": "python",
133+
"name": "python3"
134+
},
135+
"language_info": {
136+
"codemirror_mode": {
137+
"name": "ipython",
138+
"version": 3
139+
},
140+
"file_extension": ".py",
141+
"mimetype": "text/x-python",
142+
"name": "python",
143+
"nbconvert_exporter": "python",
144+
"pygments_lexer": "ipython3",
145+
"version": "3.11.11"
146+
}
147+
},
148+
"nbformat": 4,
149+
"nbformat_minor": 5
150+
}

guide/02-api-overview/release_notes_240.ipynb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -494,7 +494,7 @@
494494
"name": "python",
495495
"nbconvert_exporter": "python",
496496
"pygments_lexer": "ipython3",
497-
"version": "3.11.10"
497+
"version": "3.11.11"
498498
},
499499
"toc": {
500500
"base_numbering": 1,

0 commit comments

Comments
 (0)