python3-cyberfusion-queue-support 2.6.2__tar.gz → 2.6.3__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 (48) hide show
  1. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/PKG-INFO +1 -1
  2. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/pyproject.toml +1 -1
  3. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/__init__.py +12 -19
  4. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/database.py +6 -1
  5. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/python3_cyberfusion_queue_support.egg-info/PKG-INFO +1 -1
  6. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/README.md +0 -0
  7. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/setup.cfg +0 -0
  8. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/encoders.py +0 -0
  9. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/exceptions/__init__.py +0 -0
  10. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/interfaces.py +0 -0
  11. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/__init__.py +0 -0
  12. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/chmod.py +0 -0
  13. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/chown.py +0 -0
  14. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/command.py +0 -0
  15. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/copy.py +0 -0
  16. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/database_create.py +0 -0
  17. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/database_drop.py +0 -0
  18. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/database_user_drop.py +0 -0
  19. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/database_user_ensure_state.py +0 -0
  20. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/database_user_grant_grant.py +0 -0
  21. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/database_user_grant_revoke.py +0 -0
  22. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/mkdir.py +0 -0
  23. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/move.py +0 -0
  24. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/rmtree.py +0 -0
  25. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/systemd_daemon_reload.py +0 -0
  26. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/systemd_tmp_files_create.py +0 -0
  27. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/systemd_unit_disable.py +0 -0
  28. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/systemd_unit_enable.py +0 -0
  29. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/systemd_unit_reload.py +0 -0
  30. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/systemd_unit_restart.py +0 -0
  31. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/systemd_unit_start.py +0 -0
  32. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/systemd_unit_stop.py +0 -0
  33. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/items/unlink.py +0 -0
  34. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/migrations/__init__.py +0 -0
  35. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/migrations/env.py +0 -0
  36. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/migrations/versions/571e55ab5ed5_initial_migration.py +0 -0
  37. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/migrations/versions/8023b9eecdd1_add_traceback_to_queue_items.py +0 -0
  38. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/migrations/versions/9ae29b5db790_add_string_to_queue_item_outcomes.py +0 -0
  39. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/migrations/versions/__init__.py +0 -0
  40. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/outcomes.py +0 -0
  41. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/sentinels.py +0 -0
  42. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/settings.py +0 -0
  43. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/cyberfusion/QueueSupport/utilities.py +0 -0
  44. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/python3_cyberfusion_queue_support.egg-info/SOURCES.txt +0 -0
  45. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/python3_cyberfusion_queue_support.egg-info/dependency_links.txt +0 -0
  46. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/python3_cyberfusion_queue_support.egg-info/entry_points.txt +0 -0
  47. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/python3_cyberfusion_queue_support.egg-info/requires.txt +0 -0
  48. {python3_cyberfusion_queue_support-2.6.2 → python3_cyberfusion_queue_support-2.6.3}/src/python3_cyberfusion_queue_support.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python3-cyberfusion-queue-support
3
- Version: 2.6.2
3
+ Version: 2.6.3
4
4
  Summary: Library to queue actions.
5
5
  Author-email: Cyberfusion <support@cyberfusion.io>
6
6
  Project-URL: Source, https://github.com/CyberfusionIO/python3-cyberfusion-queue-support
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "python3-cyberfusion-queue-support"
7
- version = "2.6.2"
7
+ version = "2.6.3"
8
8
  description = "Library to queue actions."
9
9
  readme = "README.md"
10
10
  authors = [
@@ -47,22 +47,18 @@ class Queue:
47
47
  """Add item to queue."""
48
48
  deduplicated = False
49
49
 
50
- existing_item_index = next(
51
- (
52
- index
53
- for index, item_mapping in enumerate(self.item_mappings)
54
- if item_mapping.item == item
55
- ),
56
- None,
57
- )
50
+ existing_items_indexes = [
51
+ index
52
+ for index, item_mapping in enumerate(self.item_mappings)
53
+ if item_mapping.item == item
54
+ ]
58
55
 
59
- if existing_item_index is not None:
56
+ if existing_items_indexes:
60
57
  if run_duplicate_last:
61
- self.item_mappings[
62
- existing_item_index
63
- ].database_object.deduplicated = True
64
-
65
- self._database_session.commit()
58
+ for existing_item_index in existing_items_indexes:
59
+ self.item_mappings[
60
+ existing_item_index
61
+ ].database_object.deduplicated = True
66
62
  else:
67
63
  deduplicated = True
68
64
 
@@ -82,7 +78,6 @@ class Queue:
82
78
  )
83
79
 
84
80
  self._database_session.add(object_)
85
- self._database_session.commit()
86
81
 
87
82
  self.item_mappings.append(QueueItemMapping(item, object_))
88
83
 
@@ -96,7 +91,6 @@ class Queue:
96
91
  )
97
92
 
98
93
  self._database_session.add(process_object)
99
- self._database_session.commit()
100
94
 
101
95
  outcomes = []
102
96
 
@@ -134,7 +128,6 @@ class Queue:
134
128
  item_mapping.database_object.traceback = traceback.format_exc()
135
129
 
136
130
  self._database_session.add(item_mapping.database_object)
137
- self._database_session.commit()
138
131
 
139
132
  # Don't fulfill other queue items
140
133
 
@@ -153,10 +146,10 @@ class Queue:
153
146
  )
154
147
  )
155
148
 
156
- self._database_session.commit()
157
-
158
149
  logger.debug("Processed item with ID '%s'", item_mapping.database_object.id)
159
150
 
160
151
  logger.debug("Processed items")
161
152
 
153
+ self._database_session.commit()
154
+
162
155
  return outcomes
@@ -1,5 +1,6 @@
1
1
  from alembic.config import Config
2
2
  import os
3
+ import functools
3
4
  from alembic import command
4
5
  import sqlite3
5
6
  from datetime import datetime, timezone
@@ -28,6 +29,8 @@ def set_sqlite_pragma(
28
29
  cursor = dbapi_connection.cursor()
29
30
 
30
31
  cursor.execute("PRAGMA foreign_keys=ON")
32
+ cursor.execute("PRAGMA journal_mode=WAL")
33
+ cursor.execute("PRAGMA synchronous=NORMAL")
31
34
 
32
35
  cursor.close()
33
36
 
@@ -75,7 +78,9 @@ class BaseModel(Base): # type: ignore[misc, valid-type]
75
78
  __abstract__ = True
76
79
 
77
80
  id = Column(Integer, primary_key=True)
78
- created_at = Column(DateTime, default=datetime.now(timezone.utc), nullable=False)
81
+ created_at = Column(
82
+ DateTime, default=functools.partial(datetime.now, timezone.utc), nullable=False
83
+ )
79
84
 
80
85
 
81
86
  class Queue(BaseModel):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python3-cyberfusion-queue-support
3
- Version: 2.6.2
3
+ Version: 2.6.3
4
4
  Summary: Library to queue actions.
5
5
  Author-email: Cyberfusion <support@cyberfusion.io>
6
6
  Project-URL: Source, https://github.com/CyberfusionIO/python3-cyberfusion-queue-support