plain.oauth 0.12.0__tar.gz → 0.14.0__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 (45) hide show
  1. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/PKG-INFO +1 -1
  2. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/migrations/0001_initial.py +4 -4
  3. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/migrations/0003_alter_oauthconnection_access_token_and_more.py +1 -1
  4. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/migrations/0004_alter_oauthconnection_access_token_and_more.py +1 -1
  5. plain_oauth-0.14.0/plain/oauth/migrations/0006_remove_oauthconnection_unique_oauth_provider_user_id_and_more.py +24 -0
  6. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/models.py +4 -4
  7. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/pyproject.toml +1 -1
  8. plain_oauth-0.14.0/tests/app/users/models.py +16 -0
  9. plain_oauth-0.12.0/tests/app/users/models.py +0 -10
  10. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/.gitignore +0 -0
  11. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/LICENSE +0 -0
  12. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/README.md +0 -0
  13. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/README.md +0 -0
  14. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/__init__.py +0 -0
  15. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/admin.py +0 -0
  16. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/config.py +0 -0
  17. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/default_settings.py +0 -0
  18. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/exceptions.py +0 -0
  19. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/migrations/0002_alter_oauthconnection_options_and_more.py +0 -0
  20. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/migrations/0005_alter_oauthconnection_unique_together_and_more.py +0 -0
  21. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/migrations/__init__.py +0 -0
  22. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/providers.py +0 -0
  23. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/templates/oauth/error.html +0 -0
  24. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/urls.py +0 -0
  25. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/plain/oauth/views.py +0 -0
  26. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/provider_examples/__init__.py +0 -0
  27. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/provider_examples/bitbucket.py +0 -0
  28. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/provider_examples/github.py +0 -0
  29. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/provider_examples/gitlab.py +0 -0
  30. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/app/settings.py +0 -0
  31. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/app/templates/base.html +0 -0
  32. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/app/templates/index.html +0 -0
  33. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/app/templates/login.html +0 -0
  34. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/app/urls.py +0 -0
  35. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/app/users/migrations/0001_initial.py +0 -0
  36. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/app/users/migrations/__init__.py +0 -0
  37. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/provider_tests/__init__.py +0 -0
  38. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/provider_tests/test_github.py +0 -0
  39. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/providers/__init__.py +0 -0
  40. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/providers/bitbucket.py +0 -0
  41. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/providers/github.py +0 -0
  42. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/providers/gitlab.py +0 -0
  43. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/test_backends.py +0 -0
  44. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/test_checks.py +0 -0
  45. {plain_oauth-0.12.0 → plain_oauth-0.14.0}/tests/test_providers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: plain.oauth
3
- Version: 0.12.0
3
+ Version: 0.14.0
4
4
  Summary: OAuth login and API access for Plain.
5
5
  Author-email: Dave Gaeddert <dave.gaeddert@dropseed.dev>
6
6
  License-Expression: BSD-3-Clause
@@ -28,15 +28,15 @@ class Migration(migrations.Migration):
28
28
  ("updated_at", models.DateTimeField(auto_now=True)),
29
29
  ("provider_key", models.CharField(db_index=True, max_length=100)),
30
30
  ("provider_user_id", models.CharField(db_index=True, max_length=100)),
31
- ("access_token", models.CharField(blank=True, max_length=100)),
32
- ("refresh_token", models.CharField(blank=True, max_length=100)),
31
+ ("access_token", models.CharField(required=False, max_length=100)),
32
+ ("refresh_token", models.CharField(required=False, max_length=100)),
33
33
  (
34
34
  "access_token_expires_at",
35
- models.DateTimeField(blank=True, null=True),
35
+ models.DateTimeField(required=False, allow_null=True),
36
36
  ),
37
37
  (
38
38
  "refresh_token_expires_at",
39
- models.DateTimeField(blank=True, null=True),
39
+ models.DateTimeField(required=False, allow_null=True),
40
40
  ),
41
41
  (
42
42
  "user",
@@ -18,6 +18,6 @@ class Migration(migrations.Migration):
18
18
  migrations.AlterField(
19
19
  model_name="oauthconnection",
20
20
  name="refresh_token",
21
- field=models.CharField(blank=True, max_length=300),
21
+ field=models.CharField(required=False, max_length=300),
22
22
  ),
23
23
  ]
@@ -18,6 +18,6 @@ class Migration(migrations.Migration):
18
18
  migrations.AlterField(
19
19
  model_name="oauthconnection",
20
20
  name="refresh_token",
21
- field=models.CharField(blank=True, max_length=2000),
21
+ field=models.CharField(required=False, max_length=2000),
22
22
  ),
23
23
  ]
@@ -0,0 +1,24 @@
1
+ # Generated by Plain 0.31.0 on 2025-03-08 21:33
2
+
3
+ from plain import models
4
+ from plain.models import migrations
5
+
6
+
7
+ class Migration(migrations.Migration):
8
+ dependencies = [
9
+ ("plainoauth", "0005_alter_oauthconnection_unique_together_and_more"),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.RemoveConstraint(
14
+ model_name="oauthconnection",
15
+ name="unique_oauth_provider_user_id",
16
+ ),
17
+ migrations.AddConstraint(
18
+ model_name="oauthconnection",
19
+ constraint=models.UniqueConstraint(
20
+ fields=("provider_key", "provider_user_id"),
21
+ name="plainoauth_oauthconnection_unique_provider_key_user_id",
22
+ ),
23
+ ),
24
+ ]
@@ -37,15 +37,15 @@ class OAuthConnection(models.Model):
37
37
 
38
38
  # Token data
39
39
  access_token = models.CharField(max_length=2000)
40
- refresh_token = models.CharField(max_length=2000, blank=True)
41
- access_token_expires_at = models.DateTimeField(blank=True, null=True)
42
- refresh_token_expires_at = models.DateTimeField(blank=True, null=True)
40
+ refresh_token = models.CharField(max_length=2000, required=False)
41
+ access_token_expires_at = models.DateTimeField(required=False, allow_null=True)
42
+ refresh_token_expires_at = models.DateTimeField(required=False, allow_null=True)
43
43
 
44
44
  class Meta:
45
45
  constraints = [
46
46
  models.UniqueConstraint(
47
47
  fields=["provider_key", "provider_user_id"],
48
- name="unique_oauth_provider_user_id",
48
+ name="plainoauth_oauthconnection_unique_provider_key_user_id",
49
49
  )
50
50
  ]
51
51
  ordering = ("provider_key",)
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "plain.oauth"
3
- version = "0.12.0"
3
+ version = "0.14.0"
4
4
  description = "OAuth login and API access for Plain."
5
5
  authors = [{name = "Dave Gaeddert", email = "dave.gaeddert@dropseed.dev"}]
6
6
  license = "BSD-3-Clause"
@@ -0,0 +1,16 @@
1
+ from plain import models
2
+
3
+
4
+ @models.register_model
5
+ class User(models.Model):
6
+ email = models.EmailField()
7
+ username = models.CharField(max_length=100)
8
+
9
+ class Meta:
10
+ constraints = [
11
+ models.UniqueConstraint(fields=["email"], name="user_unique_email"),
12
+ models.UniqueConstraint(fields=["username"], name="user_unique_username"),
13
+ ]
14
+
15
+ def __str__(self):
16
+ return self.username
@@ -1,10 +0,0 @@
1
- from plain import models
2
-
3
-
4
- @models.register_model
5
- class User(models.Model):
6
- email = models.EmailField(unique=True)
7
- username = models.CharField(max_length=100, unique=True)
8
-
9
- def __str__(self):
10
- return self.username
File without changes
File without changes
File without changes