plain.api 0.26.0__tar.gz → 0.26.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. {plain_api-0.26.0 → plain_api-0.26.2}/.gitignore +1 -1
  2. {plain_api-0.26.0 → plain_api-0.26.2}/PKG-INFO +10 -1
  3. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/CHANGELOG.md +20 -0
  4. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/README.md +9 -0
  5. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/models.py +2 -0
  6. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/schemas.py +2 -0
  7. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/versioning.py +5 -0
  8. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/views.py +5 -0
  9. {plain_api-0.26.0 → plain_api-0.26.2}/pyproject.toml +1 -1
  10. {plain_api-0.26.0 → plain_api-0.26.2}/LICENSE +0 -0
  11. {plain_api-0.26.0 → plain_api-0.26.2}/README.md +0 -0
  12. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/__init__.py +0 -0
  13. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/admin.py +0 -0
  14. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/cli.py +0 -0
  15. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/config.py +0 -0
  16. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/default_settings.py +0 -0
  17. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/migrations/0001_initial.py +0 -0
  18. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/migrations/__init__.py +0 -0
  19. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/openapi/__init__.py +0 -0
  20. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/openapi/decorators.py +0 -0
  21. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/openapi/generator.py +0 -0
  22. {plain_api-0.26.0 → plain_api-0.26.2}/plain/api/openapi/utils.py +0 -0
  23. {plain_api-0.26.0 → plain_api-0.26.2}/tests/app/settings.py +0 -0
  24. {plain_api-0.26.0 → plain_api-0.26.2}/tests/app/urls.py +0 -0
  25. {plain_api-0.26.0 → plain_api-0.26.2}/tests/test_api.py +0 -0
@@ -17,5 +17,5 @@ plain*/tests/.plain
17
17
  .plain
18
18
 
19
19
  .vscode
20
- /.claude/skills/plain-*
20
+ /.claude/settings.local.json
21
21
  /.benchmarks
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: plain.api
3
- Version: 0.26.0
3
+ Version: 0.26.2
4
4
  Summary: Build APIs using class-based views.
5
5
  Author-email: Dave Gaeddert <dave.gaeddert@dropseed.dev>
6
6
  License-Expression: BSD-3-Clause
@@ -20,6 +20,7 @@ Description-Content-Type: text/markdown
20
20
  - [API keys](#api-keys)
21
21
  - [OpenAPI](#openapi)
22
22
  - [Deploying](#deploying)
23
+ - [Settings](#settings)
23
24
  - [FAQs](#faqs)
24
25
  - [Installation](#installation)
25
26
 
@@ -435,6 +436,14 @@ class APIRouter(Router):
435
436
  ]
436
437
  ```
437
438
 
439
+ ## Settings
440
+
441
+ | Setting | Default | Env var |
442
+ | -------------------- | ------- | -------------------------- |
443
+ | `API_OPENAPI_ROUTER` | `""` | `PLAIN_API_OPENAPI_ROUTER` |
444
+
445
+ See [`default_settings.py`](./default_settings.py) for more details.
446
+
438
447
  ## FAQs
439
448
 
440
449
  #### How do I make an API key optional?
@@ -1,5 +1,25 @@
1
1
  # plain-api changelog
2
2
 
3
+ ## [0.26.2](https://github.com/dropseed/plain/releases/plain-api@0.26.2) (2026-02-04)
4
+
5
+ ### What's changed
6
+
7
+ - Added `__all__` exports to `models`, `schemas`, `versioning`, and `views` modules for explicit public API boundaries ([f26a63a5c941](https://github.com/dropseed/plain/commit/f26a63a5c941))
8
+
9
+ ### Upgrade instructions
10
+
11
+ - No changes required.
12
+
13
+ ## [0.26.1](https://github.com/dropseed/plain/releases/plain-api@0.26.1) (2026-01-28)
14
+
15
+ ### What's changed
16
+
17
+ - Added Settings section to README ([803fee1ad5](https://github.com/dropseed/plain/commit/803fee1ad5))
18
+
19
+ ### Upgrade instructions
20
+
21
+ - No changes required.
22
+
3
23
  ## [0.26.0](https://github.com/dropseed/plain/releases/plain-api@0.26.0) (2026-01-15)
4
24
 
5
25
  ### What's changed
@@ -9,6 +9,7 @@
9
9
  - [API keys](#api-keys)
10
10
  - [OpenAPI](#openapi)
11
11
  - [Deploying](#deploying)
12
+ - [Settings](#settings)
12
13
  - [FAQs](#faqs)
13
14
  - [Installation](#installation)
14
15
 
@@ -424,6 +425,14 @@ class APIRouter(Router):
424
425
  ]
425
426
  ```
426
427
 
428
+ ## Settings
429
+
430
+ | Setting | Default | Env var |
431
+ | -------------------- | ------- | -------------------------- |
432
+ | `API_OPENAPI_ROUTER` | `""` | `PLAIN_API_OPENAPI_ROUTER` |
433
+
434
+ See [`default_settings.py`](./default_settings.py) for more details.
435
+
427
436
  ## FAQs
428
437
 
429
438
  #### How do I make an API key optional?
@@ -9,6 +9,8 @@ from uuid import UUID
9
9
  from plain import models
10
10
  from plain.models import types
11
11
 
12
+ __all__ = ["APIKey"]
13
+
12
14
 
13
15
  def generate_token() -> str:
14
16
  return binascii.hexlify(os.urandom(20)).decode()
@@ -1,5 +1,7 @@
1
1
  from typing import TypedDict
2
2
 
3
+ __all__ = ["ErrorSchema"]
4
+
3
5
 
4
6
  class ErrorSchema(TypedDict):
5
7
  id: str
@@ -6,6 +6,11 @@ from plain.http import Request, Response, ResponseBase
6
6
  from plain.views import View
7
7
  from plain.views.exceptions import ResponseException
8
8
 
9
+ __all__ = [
10
+ "APIVersionChange",
11
+ "VersionedAPIView",
12
+ ]
13
+
9
14
 
10
15
  class APIVersionChange:
11
16
  description: str = ""
@@ -20,6 +20,11 @@ try:
20
20
  except ImportError:
21
21
  APIKey = None # type: ignore[misc, assignment]
22
22
 
23
+ __all__ = [
24
+ "APIKeyView",
25
+ "APIView",
26
+ ]
27
+
23
28
  logger = logging.getLogger("plain.api")
24
29
 
25
30
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "plain.api"
3
- version = "0.26.0"
3
+ version = "0.26.2"
4
4
  description = "Build APIs using class-based views."
5
5
  authors = [{name = "Dave Gaeddert", email = "dave.gaeddert@dropseed.dev"}]
6
6
  readme = "README.md"
File without changes
File without changes
File without changes
File without changes
File without changes