Skip to content

Commit 23f4226

Browse files
Merge pull request #1124 from planetlabs/main-3.0-dev
3.0.0 release.
2 parents 0dde753 + 43b13f5 commit 23f4226

File tree

83 files changed

+4231
-996
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+4231
-996
lines changed

.github/workflows/publish-pypi.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
restore-keys: |
2525
${{ runner.os }}-pip
2626
27-
- name: Build, verify, and upload to TestPyPI
27+
- name: Build, verify, and upload to PyPI
2828
run: |
2929
pip install --upgrade nox
3030
nox -s build publish_pypi

.github/workflows/release.yml

Lines changed: 0 additions & 51 deletions
This file was deleted.

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,9 @@ coverage.xml
2323
*.pyc
2424

2525
# Editors
26+
.idea/
2627
.vscode/
2728
# Docs build
2829
site
2930
.venv
31+
venv

CONTRIBUTING.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,15 @@ insofar as is practical within the scope of changes targeted to the next major r
1919
versioning, major releases do not guarantee backwards compatibility. Stability is not guaranteed
2020
during the development cycle.
2121

22-
During the development cycle of a new major release, `RELEASE-PLANNING-X.0.md` should be maintained
23-
with a brief summary of the major and breaking changes underpinning the reason for the upcoming
24-
major release version. Upon release, this content is expected to be folded into package documentation
25-
as appropriate, and this file should be removed.
26-
27-
When a new major release is ready, the development mainline branch will be renamed to `main`, and the
28-
old mainline branch will be renamed to `maint-X.0` and will be used as the base for maintenance releases.
22+
During the development cycle of a new major release, a GitHub Project and Milestone should be
23+
created to track changes targeted the release. A file such as `RELEASE-PLANNING-X.0.md` in the
24+
root of the source tree may be used for early development prior to the creation of a GitHub
25+
project, but should be retired when a new release becomes more formalized. Upon release,
26+
all content is expected to be folded into package documentation as appropriate (announcements,
27+
company blog posts, changelogs, migration guides, etc.).
28+
29+
When a new major release is ready, the old mainline branch will be copied to `maint-X.x` (e.g. `maint-2.x`),
30+
to be used as the base for maintenance releases, and the development mainline branch will be merged into to `main`
2931

3032
#### Development Branches
3133

README.md

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@ The [Planet](https://planet.com) Software Development Kit (SDK) for Python
77
provides both a Python API and a command-line interface (CLI)
88
to make use of [the Planet APIs](https://docs.planet.com/develop/apis/).
99
Everything you need to get started is found in our
10-
[online documentation](https://planet-sdk-for-python-v2.readthedocs.io/en/latest/).
10+
[online documentation](https://planet-sdk-for-python.readthedocs.io/en/latest/).
1111

1212
Version 2.0 includes support for the core workflows of the following APIs:
1313

1414
* [Data](https://docs.planet.com/develop/apis/data/) - Search for imagery from Planet's data catalog.
1515
* [Orders](https://docs.planet.com/develop/apis/orders/) - Process and download or deliver imagery.
1616
* [Subscriptions](https://docs.planet.com/develop/apis/subscriptions/) - Set up a search to auto-process and deliver imagery.
1717
* [Features](https://docs.planet.com/develop/apis/features/) - Upload areas of interest to the Planet platform.
18-
* [Destinations] (https://docs.planet.com/develop/apis/destinations/) - Create destinations to securely store cloud credentials.
18+
* [Destinations](https://docs.planet.com/develop/apis/destinations/) - Create destinations to securely store cloud credentials.
1919

2020
After the initial 2.0 release there will be additional work to support the
2121
remaining Planet APIs: [basemaps](https://docs.planet.com/develop/apis/basemaps/),
@@ -34,7 +34,7 @@ with semantic version identifiers that comply with [PEP 440](https://peps.python
3434
The Semantic Versioning stability scheme only applies to APIs that
3535
are considered part of the public API. This includes library APIs exported
3636
from the `planet` package and documented in our
37-
[SDK developer documentation](https://planet-sdk-for-python-v2.readthedocs.io/en/latest/),
37+
[SDK developer documentation](https://planet-sdk-for-python.readthedocs.io/en/latest/),
3838
and the `planet` CLI interface used for scripts. It does not include
3939
library interfaces below the top level `planet` Python package which are
4040
considered internal and subject to change without notice.
@@ -82,11 +82,11 @@ See [CONTRIBUTING.md](CONTRIBUTING.md#branches) for more information on branches
8282

8383
##### Current Mainline Versions and Branches
8484

85-
| Version | Status | Branch | Documentation | Initial Release | End of Active Development | End of Maintenance | Notes |
86-
|---------|---------------|----------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------|-----------------|---------------------------|--------------------|------------------------------------------------------------------------------------------------------------------------------|
87-
| 3.x | `development` | [`main-3.0-dev`](https://github.com/planetlabs/planet-client-python/tree/main-3.0-dev) | TBD | TBD | TBD | TBD | See [RELEASE-PLANNING-X.0.md](https://github.com/planetlabs/planet-client-python/tree/main-3.0-dev/RELEASE-PLANNING-3.0.md). |
88-
| 2.x | `active` | [`main`](https://github.com/planetlabs/planet-client-python/tree/main) | [Planet Labs Python Client v2 on Readthedocs.io](https://planet-sdk-for-python-v2.readthedocs.io/en/latest/) | April 2023 | TBD | TBD | |
89-
| 1.x | `end-of-life` | [`v1`](https://github.com/planetlabs/planet-client-python/tree/v1) | [Planet Labs Python Client v1 on Github.io](https://planetlabs.github.io/planet-client-python/) | April 2017 | April 2023 | TBD | |
85+
| Version | Status | Branch | Documentation | Initial Release | End of Active Development | End of Maintenance | Notes |
86+
|---------|---------------|----------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------|-----------------|---------------------------|--------------------|------------------------------------------------------------------------------------------------------------------------------|
87+
| 3.x | `active` | [`main`](https://github.com/planetlabs/planet-client-python/tree/main) | TBD | TBD | TBD | TBD | See [RELEASE-PLANNING-X.0.md](https://github.com/planetlabs/planet-client-python/tree/main-3.0-dev/RELEASE-PLANNING-3.0.md). |
88+
| 2.x | `maintenance` | [`maint-2.x`](https://github.com/planetlabs/planet-client-python/tree/maint-2.x) | [Planet Labs Python Client v2 on Readthedocs.io](https://planet-sdk-for-python-v2.readthedocs.io/en/latest/) | April 2023 | TBD | TBD | |
89+
| 1.x | `end-of-life` | [`v1`](https://github.com/planetlabs/planet-client-python/tree/v1) | [Planet Labs Python Client v1 on Github.io](https://planetlabs.github.io/planet-client-python/) | April 2017 | April 2023 | TBD | |
9090

9191
## Installation and Quick Start
9292

@@ -104,20 +104,19 @@ pip install .
104104

105105
Note that the above commands will install the Planet SDK into the global system Python unless a virtual environment is enabled. For more information on configuring a virtual environment from system Python, see the official Python [venv](https://docs.python.org/3/library/venv.html) documentation. For users who are running multiple versions of Python via [pyenv](https://github.com/pyenv/pyenv), see the [pyenv-virtualenv](https://github.com/pyenv/pyenv-virtualenv) extension documentation.
106106

107-
Detailed installation instructions for the Planet SDK can be found in the [Quick Start Guide](https://planet-sdk-for-python-v2.readthedocs.io/en/latest/get-started/quick-start-guide/) of the documentation.
107+
Detailed installation instructions for the Planet SDK can be found in the [Quick Start Guide](https://planet-sdk-for-python.readthedocs.io/en/latest/get-started/quick-start-guide/) of the documentation.
108108

109109
## Contributing and Development
110110

111111
To contribute or develop with this library, see [CONTRIBUTING.md](CONTRIBUTING.md).
112112

113113
## Documentation
114114

115-
Documentation is currently [hosted online](https://planet-sdk-for-python-v2.readthedocs.io/en/latest/)
115+
Documentation is currently [hosted online](https://planet-sdk-for-python.readthedocs.io/en/latest/)
116116
It should be considered 'in progress', with many updates to come. It can also
117117
be built and hosted locally (see [CONTRIBUTING.md](CONTRIBUTING.md)) or can be
118118
read from source in the [docs](/docs) directory.
119119

120120
## Authentication
121121

122-
Planet's APIs require an account for use. To get started you need to
123-
[Get a Planet Account](https://planet-sdk-for-python-v2.readthedocs.io/en/latest/get-started/get-your-planet-account/).
122+
Planet's APIs require an account for use. To learn how to authenticate, see the [client authentication overview](https://planet-sdk-for-python.readthedocs.io/en/latest/auth/auth-overview/)

RELEASE.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ The SDK follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html) and t
5454
* _`version`_: [https://planet-sdk-for-python-v2.readthedocs.io/en/X.YY.ZZ/](https://planet-sdk-for-python-v2.readthedocs.io/en/X.YY.ZZ/) - Should point to version `X.YY.ZZ`.
5555
* Pre-release versions should _not_ impact the default version of the documentation. Pre-release version may be published as the `latest` version.
5656

57-
5857
## Local publishing
5958

6059
Publishing to testpypi and pypi can also be performed locally with:
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Application Managed Sessions - Planet API Key
2+
3+
## Planet API Key Sessions
4+
Legacy applications that need to continue to support Planet API keys may do so
5+
until API keys are deprecated. This method should not be adopted for new
6+
development if possible.
7+
8+
### Examples - Planet API Keys
9+
10+
#### In Memory Session State
11+
Once provided with an API key, an application may operate with the API key
12+
in memory indefinitely without the need to prompt the user for re-authentication.
13+
```python linenums="1" title="Access APIs using Planet API keys in memory"
14+
{% include 'auth-session-management/app_managed_auth_state__in_memory__api_key.py' %}
15+
```
16+
17+
#### Version 2 Compatibility
18+
The SDK continues to support files written by version 2 of the SDK to save
19+
auth state.
20+
```python linenums="1" title="Access APIs using Planet API keys using the on disk file format used by older versions of the SDK"
21+
{% include 'auth-session-management/app_managed_auth_state__on_disk_legacy__api_key.py' %}
22+
```
23+
24+
```json linenums="1" title="Legacy API Key file example"
25+
{% include 'auth-session-management/legacy_api_key_file.json' %}
26+
```
27+
28+
#### Session State Shared with CLI
29+
```python linenums="1" title="Access APIs using Planet API keys with CLI managed shared state on disk"
30+
{% include 'auth-session-management/app_managed_auth_state__on_disk_cli_shared__api_key.py' %}
31+
```
32+
33+
#### Session State Saved to Application Storage
34+
35+
```python linenums="1" title="Access APIs using Planet API keys with sessions persisted to application provided storage"
36+
{% include 'auth-session-management/app_managed_auth_state__app_custom_storage__api_key.py' %}
37+
```
38+
39+
----

0 commit comments

Comments
 (0)