plain.redirection 0.35.2__tar.gz → 0.35.4__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 (19) hide show
  1. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/PKG-INFO +2 -2
  2. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/CHANGELOG.md +20 -0
  3. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/migrations/0001_initial.py +7 -4
  4. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/models.py +4 -4
  5. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/templates/admin/plainredirection/redirect_form.html +1 -5
  6. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/pyproject.toml +2 -2
  7. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/.gitignore +0 -0
  8. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/LICENSE +0 -0
  9. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/README.md +0 -0
  10. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/README.md +0 -0
  11. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/__init__.py +0 -0
  12. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/admin.py +0 -0
  13. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/chores.py +0 -0
  14. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/config.py +0 -0
  15. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/default_settings.py +0 -0
  16. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/middleware.py +0 -0
  17. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/migrations/0002_rename_plainredire_created_d5f0c7_idx_plainredirection_notfoundlog_created_at_idx_and_more.py +0 -0
  18. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/migrations/0003_redirectlog_plainredirection_redirectlog_redirect_id_idx.py +0 -0
  19. {plain_redirection-0.35.2 → plain_redirection-0.35.4}/plain/redirection/migrations/__init__.py +0 -0
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: plain.redirection
3
- Version: 0.35.2
3
+ Version: 0.35.4
4
4
  Summary: A flexible URL redirection system with admin interface and logging.
5
5
  Author-email: Dave Gaeddert <dave.gaeddert@dropseed.dev>
6
6
  License-Expression: BSD-3-Clause
7
7
  License-File: LICENSE
8
8
  Requires-Python: >=3.13
9
- Requires-Dist: plain-postgres<1.0.0,>=0.95.0
9
+ Requires-Dist: plain-postgres<1.0.0,>=0.96.0
10
10
  Requires-Dist: plain<1.0.0,>=0.123.0
11
11
  Description-Content-Type: text/markdown
12
12
 
@@ -1,5 +1,25 @@
1
1
  # plain-redirection changelog
2
2
 
3
+ ## [0.35.4](https://github.com/dropseed/plain/releases/plain-redirection@0.35.4) (2026-04-30)
4
+
5
+ ### What's changed
6
+
7
+ - **Switched the redirect admin form to use `<admin.Submit>`** so the Save button picks up the new `admin-btn admin-btn-primary` styling under plain-admin 0.81.0's namespaced classes. ([5f86c86fb7e9](https://github.com/dropseed/plain/commit/5f86c86fb7e9))
8
+
9
+ ### Upgrade instructions
10
+
11
+ - If you use `plain.admin`, upgrade it to `>=0.81.0` alongside this release for the namespaced `admin-` CSS classes referenced by the redirect template.
12
+
13
+ ## [0.35.3](https://github.com/dropseed/plain/releases/plain-redirection@0.35.3) (2026-04-17)
14
+
15
+ ### What's changed
16
+
17
+ - Updated `Redirect`, `RedirectLog`, and `NotFoundLog` timestamps to the new `create_now` / `update_now` kwargs for plain-postgres 0.96.0. ([5d145e4](https://github.com/dropseed/plain/commit/5d145e4), [a44e5ec](https://github.com/dropseed/plain/commit/a44e5ec), [091bac7](https://github.com/dropseed/plain/commit/091bac7))
18
+
19
+ ### Upgrade instructions
20
+
21
+ - Requires `plain-postgres>=0.96.0`. Run `plain postgres sync` after upgrading to reconcile column defaults.
22
+
3
23
  ## [0.35.2](https://github.com/dropseed/plain/releases/plain-redirection@0.35.2) (2026-04-14)
4
24
 
5
25
  ### What's changed
@@ -18,8 +18,11 @@ class Migration(migrations.Migration):
18
18
  ("from_pattern", postgres.TextField(max_length=255)),
19
19
  ("to_pattern", postgres.TextField(max_length=255)),
20
20
  ("http_status", postgres.SmallIntegerField(default=301)),
21
- ("created_at", postgres.DateTimeField(auto_now_add=True)),
22
- ("updated_at", postgres.DateTimeField(auto_now=True)),
21
+ ("created_at", postgres.DateTimeField(create_now=True)),
22
+ (
23
+ "updated_at",
24
+ postgres.DateTimeField(create_now=True, update_now=True),
25
+ ),
23
26
  ("order", postgres.SmallIntegerField(default=0)),
24
27
  ("enabled", postgres.BooleanField(default=True)),
25
28
  ("is_regex", postgres.BooleanField(default=False)),
@@ -38,7 +41,7 @@ class Migration(migrations.Migration):
38
41
  ("ip_address", postgres.GenericIPAddressField()),
39
42
  ("user_agent", postgres.TextField(max_length=512, required=False)),
40
43
  ("referrer", postgres.TextField(max_length=512, required=False)),
41
- ("created_at", postgres.DateTimeField(auto_now_add=True)),
44
+ ("created_at", postgres.DateTimeField(create_now=True)),
42
45
  ],
43
46
  options={
44
47
  "ordering": ["-created_at"],
@@ -52,7 +55,7 @@ class Migration(migrations.Migration):
52
55
  ("ip_address", postgres.GenericIPAddressField()),
53
56
  ("user_agent", postgres.TextField(max_length=512, required=False)),
54
57
  ("referrer", postgres.TextField(max_length=512, required=False)),
55
- ("created_at", postgres.DateTimeField(auto_now_add=True)),
58
+ ("created_at", postgres.DateTimeField(create_now=True)),
56
59
  ],
57
60
  options={
58
61
  "ordering": ["-created_at"],
@@ -20,8 +20,8 @@ class Redirect(postgres.Model):
20
20
  http_status: int = types.SmallIntegerField(
21
21
  default=301
22
22
  ) # Default to permanent - could be choices?
23
- created_at: datetime = types.DateTimeField(auto_now_add=True)
24
- updated_at: datetime = types.DateTimeField(auto_now=True)
23
+ created_at: datetime = types.DateTimeField(create_now=True)
24
+ updated_at: datetime = types.DateTimeField(create_now=True, update_now=True)
25
25
  order: int = types.SmallIntegerField(default=0)
26
26
  enabled: bool = types.BooleanField(default=True)
27
27
  is_regex: bool = types.BooleanField(default=False)
@@ -106,7 +106,7 @@ class RedirectLog(postgres.Model):
106
106
  user_agent: str = types.TextField(required=False, max_length=512)
107
107
  referrer: str = types.TextField(required=False, max_length=512)
108
108
 
109
- created_at: datetime = types.DateTimeField(auto_now_add=True)
109
+ created_at: datetime = types.DateTimeField(create_now=True)
110
110
 
111
111
  query: postgres.QuerySet[RedirectLog] = postgres.QuerySet()
112
112
 
@@ -161,7 +161,7 @@ class NotFoundLog(postgres.Model):
161
161
  user_agent: str = types.TextField(required=False, max_length=512)
162
162
  referrer: str = types.TextField(required=False, max_length=512)
163
163
 
164
- created_at: datetime = types.DateTimeField(auto_now_add=True)
164
+ created_at: datetime = types.DateTimeField(create_now=True)
165
165
 
166
166
  query: postgres.QuerySet[NotFoundLog] = postgres.QuerySet()
167
167
 
@@ -11,10 +11,6 @@
11
11
  <admin.InputField label="Order" field={form.order} />
12
12
  <admin.CheckboxField label="Enabled" field={form.enabled} />
13
13
 
14
- <div class="flex justify-end">
15
- <button class="mt-5" type="submit">
16
- Save
17
- </button>
18
- </div>
14
+ <admin.Submit>Save</admin.Submit>
19
15
  </form>
20
16
  {% endblock %}
@@ -1,12 +1,12 @@
1
1
  [project]
2
2
  name = "plain.redirection"
3
- version = "0.35.2"
3
+ version = "0.35.4"
4
4
  description = "A flexible URL redirection system with admin interface and logging."
5
5
  authors = [{ name = "Dave Gaeddert", email = "dave.gaeddert@dropseed.dev" }]
6
6
  readme = "README.md"
7
7
  license = "BSD-3-Clause"
8
8
  requires-python = ">=3.13"
9
- dependencies = ["plain>=0.123.0,<1.0.0", "plain.postgres>=0.95.0,<1.0.0"]
9
+ dependencies = ["plain>=0.123.0,<1.0.0", "plain.postgres>=0.96.0,<1.0.0"]
10
10
 
11
11
  [tool.hatch.build.targets.wheel]
12
12
  packages = ["plain"]