plain 0.1.0__py3-none-any.whl → 0.1.2__py3-none-any.whl

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.
plain/cli/cli.py CHANGED
@@ -3,6 +3,7 @@ import json
3
3
  import os
4
4
  import subprocess
5
5
  import sys
6
+ import traceback
6
7
  from importlib.util import find_spec
7
8
  from pathlib import Path
8
9
 
@@ -308,7 +309,12 @@ def compile(ctx):
308
309
  @plain_cli.command()
309
310
  @click.argument("package_name")
310
311
  def create(package_name):
311
- """Create a new local package"""
312
+ """
313
+ Create a new local package.
314
+
315
+ The PACKAGE_NAME is typically a plural noun, like "users" or "posts",
316
+ where you might create a "User" or "Post" model inside of the package.
317
+ """
312
318
  package_dir = plain.runtime.APP_PATH / package_name
313
319
  package_dir.mkdir(exist_ok=True)
314
320
 
@@ -417,6 +423,9 @@ class PlainCommandCollection(click.CommandCollection):
417
423
  fg="red",
418
424
  err=True,
419
425
  )
426
+ print("---")
427
+ print(traceback.format_exc())
428
+ print("---")
420
429
 
421
430
  sources = [
422
431
  EntryPointGroup(),
plain/csrf/README.md CHANGED
@@ -1,3 +1,15 @@
1
1
  # CSRF
2
2
 
3
3
  Cross-Site Request Forgery (CSRF) protection.
4
+
5
+ ## What is CSRF protection?
6
+
7
+ TODO
8
+
9
+ ## Using CSRF in forms
10
+
11
+ TODO
12
+
13
+ ## Using CSRF in JavaScript requests
14
+
15
+ TODO
plain/runtime/__init__.py CHANGED
@@ -8,7 +8,7 @@ from dotenv import load_dotenv
8
8
  from .user_settings import LazySettings
9
9
 
10
10
  try:
11
- __version__ = importlib.metadata.version("plainframework")
11
+ __version__ = importlib.metadata.version("plain")
12
12
  except importlib.metadata.PackageNotFoundError:
13
13
  __version__ = "dev"
14
14
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: plain
3
- Version: 0.1.0
3
+ Version: 0.1.2
4
4
  Summary: A web framework for building products with Python.
5
5
  Author: Dave Gaeddert
6
6
  Author-email: dave.gaeddert@dropseed.dev
@@ -16,12 +16,12 @@ plain/assets/whitenoise/storage.py,sha256=r2L_xM5_m4qcCUmAYhYst3wL8ZFOq5txoOJQbZ
16
16
  plain/assets/whitenoise/string_utils.py,sha256=wUqhuc_3CFAu5VPg03IPSnUe4SBdILoP9cmKzBH-2zA,489
17
17
  plain/cli/README.md,sha256=bEp9B9C92YEa44wN2IywTmNZsYBv_uGq9AS_bBiAGdY,2580
18
18
  plain/cli/__init__.py,sha256=9ByBOIdM8DebChjNz-RH2atdz4vWe8somlwNEsbhwh4,40
19
- plain/cli/cli.py,sha256=wYpvA2DQ1G43OCUU7Q7CRjVBju4IljON2fafyTxhLWQ,12744
19
+ plain/cli/cli.py,sha256=3jbK8Z1WzsahwDo2bQkRsjO8UQIR03YDbHzLBo6wbjs,13014
20
20
  plain/cli/formatting.py,sha256=1hZH13y1qwHcU2K2_Na388nw9uvoeQH8LrWL-O9h8Yc,2207
21
21
  plain/cli/packages.py,sha256=69VH1bIi1-5N5l2jlBcR5EP0pt-v16sPar9arO3gCSE,2052
22
22
  plain/cli/print.py,sha256=XraUYrgODOJquIiEv78wSCYGRBplHXtXSS9QtFG5hqY,217
23
23
  plain/cli/startup.py,sha256=PJYA-tNWGia-QbTlT0e5HvC8C7yDSq8wkAkIxgfKkvw,680
24
- plain/csrf/README.md,sha256=GHHMf4KEtGebU1nyg5Vk5Dti5SHJIGwc-J2hU5UEF7w,54
24
+ plain/csrf/README.md,sha256=RXMWMtHmzf30gVVNOfj0kD4xlSqFIPgJh-n7dIciaEM,163
25
25
  plain/csrf/middleware.py,sha256=I7Ev-Y-VaR-Fgs_arVYNePt4qjwF_PozFBCqER2UMIY,18642
26
26
  plain/csrf/views.py,sha256=YDgT451X16iUdCxpQ6rcHIy7nD0u7DAvCQl5-Mx5i9Y,219
27
27
  plain/debug.py,sha256=j9HDzue5BXC-Ax__Gg9KvJCFrHjwtydvcZz3PhWgAOM,530
@@ -90,7 +90,7 @@ plain/preflight/security/base.py,sha256=MjY1HXfUD4fsGz1kGs0eI2hpoSmD57x_30CMbLpw
90
90
  plain/preflight/security/csrf.py,sha256=EZy_DkVqc1kUmBA-UbNmhVsKhRINfmqgWSRlatKy5AA,1237
91
91
  plain/preflight/urls.py,sha256=AsY2Y-IrHUSJBvS7NLOQaACMmxuoysEqklv12Py_Vdk,3273
92
92
  plain/runtime/README.md,sha256=l83rCKSmfYsUXyxTLM5r22qtzXT6Hwn5nl_r79p3_uQ,2333
93
- plain/runtime/__init__.py,sha256=qn55uY3uY83Mp0gaJRd33gy9ETC-wjhu5PHnBb0uQOk,1401
93
+ plain/runtime/__init__.py,sha256=jKak9tK8MfcGNYOzqCOEmwSRAGOoji8r7e2IAwOymzE,1392
94
94
  plain/runtime/global_settings.py,sha256=gzgxH0a-jzct6_pLt0Fz-UumtnvcmM6erN28EGMtPng,6552
95
95
  plain/runtime/user_settings.py,sha256=1PQuPgO-D91Gf4mqiqS06NWwNVIfjnGw9sBam-5trtc,12862
96
96
  plain/signals/README.md,sha256=cd3tKEgH-xc88CUWyDxl4-qv-HBXx8VT32BXVwA5azA,230
@@ -162,8 +162,8 @@ plain/views/objects.py,sha256=9QBYyb8PgkRirXCQ8-Pms4_yMzP37dfeL30hWRYmtZg,7909
162
162
  plain/views/redirect.py,sha256=KLnlktzK6ZNMTlaEiZpMKQMEP5zeTgGLJ9BIkIJfwBo,1733
163
163
  plain/views/templates.py,sha256=nF9CcdhhjAyp3LB0RrSYnBaHpHzMfPSw719RCdcXk7o,2007
164
164
  plain/wsgi.py,sha256=R6k5FiAElvGDApEbMPTT0MPqSD7n2e2Az5chQqJZU0I,236
165
- plain-0.1.0.dist-info/LICENSE,sha256=Dz4Dapr9r65LuCGJkZzCFbOVcr5hfzFkLRcjXFQq2qU,4327
166
- plain-0.1.0.dist-info/METADATA,sha256=JZuDEpdHB2_XCYUQZL10WQtIS_SH5AHJWz5X56y9Q7I,2716
167
- plain-0.1.0.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
168
- plain-0.1.0.dist-info/entry_points.txt,sha256=7O1RZTmMasKYB73bfqQcTwIhsXo7RjEIKv2WbtTtOIM,39
169
- plain-0.1.0.dist-info/RECORD,,
165
+ plain-0.1.2.dist-info/LICENSE,sha256=Dz4Dapr9r65LuCGJkZzCFbOVcr5hfzFkLRcjXFQq2qU,4327
166
+ plain-0.1.2.dist-info/METADATA,sha256=xCreNVwdpCt8QpnBH_cuPZeUlvL8hFoeHqdwm9Gzt7o,2716
167
+ plain-0.1.2.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
168
+ plain-0.1.2.dist-info/entry_points.txt,sha256=7O1RZTmMasKYB73bfqQcTwIhsXo7RjEIKv2WbtTtOIM,39
169
+ plain-0.1.2.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 1.8.1
2
+ Generator: poetry-core 1.9.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
File without changes