jaaql-middleware-python 4.30.8__tar.gz → 4.31.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 (76) hide show
  1. {jaaql-middleware-python-4.30.8/jaaql_middleware_python.egg-info → jaaql-middleware-python-4.31.0}/PKG-INFO +1 -1
  2. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/constants.py +1 -1
  3. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/exception_queries.py +1 -1
  4. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/generated_queries.py +34 -14
  5. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/model.py +3 -0
  6. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/01.install_domains.generated.sql +1 -0
  7. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/04.install_jaaql_data_structures.generated.sql +4 -0
  8. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0/jaaql_middleware_python.egg-info}/PKG-INFO +1 -1
  9. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/LICENSE.txt +0 -0
  10. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/README.md +0 -0
  11. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/__init__.py +0 -0
  12. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/config/__init__.py +0 -0
  13. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/config/config-docker.ini +0 -0
  14. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/config/config-test.ini +0 -0
  15. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/config/config.ini +0 -0
  16. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/config_constants.py +0 -0
  17. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/db/__init__.py +0 -0
  18. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/db/db_interface.py +0 -0
  19. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/db/db_pg_interface.py +0 -0
  20. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/db/db_utils.py +0 -0
  21. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/db/db_utils_no_circ.py +0 -0
  22. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/documentation/__init__.py +0 -0
  23. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/documentation/documentation_internal.py +0 -0
  24. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/documentation/documentation_public.py +0 -0
  25. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/documentation/documentation_shared.py +0 -0
  26. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/email/__init__.py +0 -0
  27. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/email/email_manager.py +0 -0
  28. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/email/email_manager_service.py +0 -0
  29. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/email/patch_ems.py +0 -0
  30. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/exceptions/__init__.py +0 -0
  31. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/exceptions/custom_http_status.py +0 -0
  32. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/exceptions/http_status_exception.py +0 -0
  33. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/exceptions/jaaql_interpretable_handled_errors.py +0 -0
  34. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/exceptions/not_yet_implement_exception.py +0 -0
  35. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/generated_constants.py +0 -0
  36. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/interpreter/__init__.py +0 -0
  37. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/interpreter/interpret_jaaql.py +0 -0
  38. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/jaaql.py +0 -0
  39. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/migrations/__init__.py +0 -0
  40. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/migrations/migrations.py +0 -0
  41. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/__init__.py +0 -0
  42. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/base_controller.py +0 -0
  43. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/base_model.py +0 -0
  44. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/controller.py +0 -0
  45. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/controller_interface.py +0 -0
  46. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/handmade_queries.py +0 -0
  47. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/model_interface.py +0 -0
  48. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/mvc/response.py +0 -0
  49. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/openapi/__init__.py +0 -0
  50. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/openapi/swagger_documentation.py +0 -0
  51. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/patch.py +0 -0
  52. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/02.install_super_user.exceptions.sql +0 -0
  53. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/03.install_super_user.handwritten.sql +0 -0
  54. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/05.install_static_data.generated.sql +0 -0
  55. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/06.install_jaaql.exceptions.sql +0 -0
  56. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/ZZZZ.generated_functions_views_and_permissions.sql +0 -0
  57. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/ZZZZ.reset_references.sql +0 -0
  58. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/scripts/swagger_template.html +0 -0
  59. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/services/__init__.py +0 -0
  60. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/services/cached_canned_query_service.py +0 -0
  61. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/services/migrations_manager_service.py +0 -0
  62. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/services/patch_mms.py +0 -0
  63. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/services/patch_shared_var_service.py +0 -0
  64. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/services/shared_var_service.py +0 -0
  65. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/utilities/__init__.py +0 -0
  66. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/utilities/crypt_utils.py +0 -0
  67. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/utilities/options.py +0 -0
  68. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/utilities/utils.py +0 -0
  69. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/utilities/utils_no_project_imports.py +0 -0
  70. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql/utilities/vault.py +0 -0
  71. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql_middleware_python.egg-info/SOURCES.txt +0 -0
  72. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql_middleware_python.egg-info/dependency_links.txt +0 -0
  73. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql_middleware_python.egg-info/requires.txt +0 -0
  74. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/jaaql_middleware_python.egg-info/top_level.txt +0 -0
  75. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/setup.cfg +0 -0
  76. {jaaql-middleware-python-4.30.8 → jaaql-middleware-python-4.31.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jaaql-middleware-python
3
- Version: 4.30.8
3
+ Version: 4.31.0
4
4
  Summary: The jaaql package, allowing for rapid development and deployment of RESTful HTTP applications
5
5
  Home-page: https://github.com/JAAQL/JAAQL-middleware-python
6
6
  Author: Software Quality Measurement and Improvement bv
@@ -183,5 +183,5 @@ ROLE__postgres = "postgres"
183
183
 
184
184
  PROTOCOL__postgres = "postgresql://"
185
185
 
186
- VERSION = "4.30.8"
186
+ VERSION = "4.31.0"
187
187
 
@@ -1,5 +1,5 @@
1
1
  """
2
- This script was generated from jaaql.exceptions.fxli at 2025-02-06, 11:10:33
2
+ This script was generated from jaaql.exceptions.fxli at 2025-04-14, 14:08:43
3
3
  """
4
4
 
5
5
  from jaaql.utilities.crypt_utils import get_repeatable_salt
@@ -1,5 +1,5 @@
1
1
  """
2
- This script was generated from build_and_run.fxls at 2025-02-06, 11:10:33
2
+ This script was generated from build_and_run.fxls at 2025-04-14, 14:08:43
3
3
  """
4
4
 
5
5
  from jaaql.db.db_interface import DBInterface
@@ -462,6 +462,7 @@ KG__email_template__dbms_user_column_name = "dbms_user_column_name"
462
462
  KG__email_template__permissions_view = "permissions_view"
463
463
  KG__email_template__data_view = "data_view"
464
464
  KG__email_template__dispatcher_domain_recipient = "dispatcher_domain_recipient"
465
+ KG__email_template__fixed_address = "fixed_address"
465
466
  KG__email_template__requires_confirmation = "requires_confirmation"
466
467
  KG__email_template__can_be_sent_anonymously = "can_be_sent_anonymously"
467
468
 
@@ -471,13 +472,13 @@ QG__email_template_insert = """
471
472
  INSERT INTO email_template (application, dispatcher, name,
472
473
  type, content_url, validation_schema,
473
474
  base_relation, dbms_user_column_name, permissions_view,
474
- data_view, dispatcher_domain_recipient, requires_confirmation,
475
- can_be_sent_anonymously)
475
+ data_view, dispatcher_domain_recipient, fixed_address,
476
+ requires_confirmation, can_be_sent_anonymously)
476
477
  VALUES (:application, :dispatcher, :name,
477
478
  :type, :content_url, :validation_schema,
478
479
  :base_relation, :dbms_user_column_name, :permissions_view,
479
- :data_view, :dispatcher_domain_recipient, :requires_confirmation,
480
- :can_be_sent_anonymously)
480
+ :data_view, :dispatcher_domain_recipient, :fixed_address,
481
+ :requires_confirmation, :can_be_sent_anonymously)
481
482
  """
482
483
  QG__email_template_select_all = "SELECT * FROM email_template"
483
484
  QG__email_template_select = "SELECT * FROM email_template WHERE application = :application AND name = :name"
@@ -494,6 +495,7 @@ QG__email_template_update = """
494
495
  permissions_view = COALESCE(:permissions_view, permissions_view),
495
496
  data_view = COALESCE(:data_view, data_view),
496
497
  dispatcher_domain_recipient = COALESCE(:dispatcher_domain_recipient, dispatcher_domain_recipient),
498
+ fixed_address = COALESCE(:fixed_address, fixed_address),
497
499
  requires_confirmation = COALESCE(:requires_confirmation, requires_confirmation),
498
500
  can_be_sent_anonymously = COALESCE(:can_be_sent_anonymously, can_be_sent_anonymously)
499
501
  WHERE
@@ -522,7 +524,7 @@ def email_template__update(
522
524
  dispatcher=None, type=None, content_url=None,
523
525
  validation_schema=None, base_relation=None, dbms_user_column_name=None,
524
526
  permissions_view=None, data_view=None, dispatcher_domain_recipient=None,
525
- requires_confirmation=None, can_be_sent_anonymously=None
527
+ fixed_address=None, requires_confirmation=None, can_be_sent_anonymously=None
526
528
  ):
527
529
  execute_supplied_statement(
528
530
  connection, QG__email_template_update,
@@ -541,6 +543,7 @@ def email_template__update(
541
543
  KG__email_template__permissions_view: permissions_view,
542
544
  KG__email_template__data_view: data_view,
543
545
  KG__email_template__dispatcher_domain_recipient: dispatcher_domain_recipient,
546
+ KG__email_template__fixed_address: fixed_address,
544
547
  KG__email_template__requires_confirmation: requires_confirmation,
545
548
  KG__email_template__can_be_sent_anonymously: can_be_sent_anonymously
546
549
  }
@@ -578,7 +581,7 @@ def email_template__insert(
578
581
  type, content_url,
579
582
  validation_schema=None, base_relation=None, dbms_user_column_name=None,
580
583
  permissions_view=None, data_view=None, dispatcher_domain_recipient=None,
581
- requires_confirmation=None, can_be_sent_anonymously=None
584
+ fixed_address=None, requires_confirmation=None, can_be_sent_anonymously=None
582
585
  ):
583
586
  execute_supplied_statement(
584
587
  connection, QG__email_template_insert,
@@ -594,6 +597,7 @@ def email_template__insert(
594
597
  KG__email_template__permissions_view: permissions_view,
595
598
  KG__email_template__data_view: data_view,
596
599
  KG__email_template__dispatcher_domain_recipient: dispatcher_domain_recipient,
600
+ KG__email_template__fixed_address: fixed_address,
597
601
  KG__email_template__requires_confirmation: requires_confirmation,
598
602
  KG__email_template__can_be_sent_anonymously: can_be_sent_anonymously
599
603
  }
@@ -710,14 +714,19 @@ KG__document_request__request_timestamp = "request_timestamp"
710
714
  KG__document_request__encrypted_access_token = "encrypted_access_token"
711
715
  KG__document_request__encrypted_parameters = "encrypted_parameters"
712
716
  KG__document_request__render_timestamp = "render_timestamp"
717
+ KG__document_request__create_file = "create_file"
718
+ KG__document_request__file_name = "file_name"
719
+ KG__document_request__content = "content"
713
720
 
714
721
  # Generated queries for table 'document_request'
715
722
  QG__document_request_delete = "DELETE FROM document_request WHERE uuid = :uuid"
716
723
  QG__document_request_insert = """
717
724
  INSERT INTO document_request (application, template, uuid,
718
- encrypted_access_token, encrypted_parameters, render_timestamp)
725
+ encrypted_access_token, encrypted_parameters, render_timestamp,
726
+ create_file, file_name, content)
719
727
  VALUES (:application, :template, :uuid,
720
- :encrypted_access_token, :encrypted_parameters, :render_timestamp)
728
+ :encrypted_access_token, :encrypted_parameters, :render_timestamp,
729
+ :create_file, :file_name, :content)
721
730
  RETURNING request_timestamp
722
731
  """
723
732
  QG__document_request_select_all = "SELECT * FROM document_request"
@@ -731,7 +740,10 @@ QG__document_request_update = """
731
740
  request_timestamp = COALESCE(:request_timestamp, request_timestamp),
732
741
  encrypted_access_token = COALESCE(:encrypted_access_token, encrypted_access_token),
733
742
  encrypted_parameters = COALESCE(:encrypted_parameters, encrypted_parameters),
734
- render_timestamp = COALESCE(:render_timestamp, render_timestamp)
743
+ render_timestamp = COALESCE(:render_timestamp, render_timestamp),
744
+ create_file = COALESCE(:create_file, create_file),
745
+ file_name = COALESCE(:file_name, file_name),
746
+ content = COALESCE(:content, content)
735
747
  WHERE
736
748
  uuid = :uuid
737
749
  """
@@ -756,6 +768,7 @@ def document_request__update(
756
768
  uuid,
757
769
  application=None, template=None, request_timestamp=None,
758
770
  encrypted_access_token=None, encrypted_parameters=None, render_timestamp=None,
771
+ create_file=None, file_name=None, content=None,
759
772
  encryption_salts=None
760
773
  ):
761
774
  execute_supplied_statement(
@@ -770,7 +783,10 @@ def document_request__update(
770
783
  KG__document_request__request_timestamp: request_timestamp,
771
784
  KG__document_request__encrypted_access_token: encrypted_access_token,
772
785
  KG__document_request__encrypted_parameters: encrypted_parameters,
773
- KG__document_request__render_timestamp: render_timestamp
786
+ KG__document_request__render_timestamp: render_timestamp,
787
+ KG__document_request__create_file: create_file,
788
+ KG__document_request__file_name: file_name,
789
+ KG__document_request__content: content
774
790
  }, encryption_key=encryption_key, encryption_salts=encryption_salts, encrypt_parameters=[
775
791
  KG__document_request__encrypted_access_token,
776
792
  KG__document_request__encrypted_parameters
@@ -811,8 +827,9 @@ def document_request__select_all(
811
827
  def document_request__insert(
812
828
  connection: DBInterface, encryption_key: bytes,
813
829
  application, template, uuid,
814
- encrypted_access_token,
815
- encrypted_parameters=None, render_timestamp=None,
830
+ encrypted_access_token, create_file,
831
+ encrypted_parameters=None, render_timestamp=None, file_name=None,
832
+ content=None,
816
833
  encryption_salts=None
817
834
  ):
818
835
  return execute_supplied_statement_singleton(
@@ -823,7 +840,10 @@ def document_request__insert(
823
840
  KG__document_request__uuid: uuid,
824
841
  KG__document_request__encrypted_access_token: encrypted_access_token,
825
842
  KG__document_request__encrypted_parameters: encrypted_parameters,
826
- KG__document_request__render_timestamp: render_timestamp
843
+ KG__document_request__render_timestamp: render_timestamp,
844
+ KG__document_request__create_file: create_file,
845
+ KG__document_request__file_name: file_name,
846
+ KG__document_request__content: content
827
847
  }, encryption_key=encryption_key, encryption_salts=encryption_salts, encrypt_parameters=[
828
848
  KG__document_request__encrypted_access_token,
829
849
  KG__document_request__encrypted_parameters
@@ -1262,6 +1262,9 @@ WHERE
1262
1262
  if is_the_anonymous_user and not fetched_template[KG__email_template__can_be_sent_anonymously]:
1263
1263
  raise HttpStatusException("Cannot send this template anonymously")
1264
1264
 
1265
+ if fetched_template[KG__email_template__fixed_address]:
1266
+ username = fetched_template[KG__email_template__fixed_address]
1267
+
1265
1268
  # [25/10/23] The below code is disabled as send email allows only for sending to the current email
1266
1269
  # Anonymous email templates must be sent to the domain recipient
1267
1270
  # if fetched_template[KG__email_template__can_be_sent_anonymously]:
@@ -24,6 +24,7 @@ CREATE DOMAIN build_time AS bigint;
24
24
  CREATE DOMAIN email_template_type AS character varying(1);
25
25
  CREATE DOMAIN safe_path AS character varying(255) CHECK (VALUE ~* '^[a-z$0-9_\-\/]+(\.[a-zA-Z0-9_\-]+)?$');
26
26
  CREATE DOMAIN email_account_username AS character varying(64) CHECK (VALUE ~* '^[a-zA-Z0-9_\-\.]+$');
27
+ CREATE DOMAIN file_name AS character varying(200);
27
28
  CREATE DOMAIN procedure_name AS character varying(127) CHECK (VALUE ~* '^[a-zA-Z_][a-zA-Z_0-9\.\$]*$');
28
29
  CREATE DOMAIN scope_name AS character varying(50) CHECK (VALUE ~* '^[A-Za-z0-9_\-.:]+$');
29
30
  CREATE DOMAIN provider_name AS character varying(63);
@@ -128,6 +128,7 @@ create table email_template (
128
128
  permissions_view object_name,
129
129
  data_view object_name,
130
130
  dispatcher_domain_recipient email_account_username,
131
+ fixed_address character varying(254),
131
132
  requires_confirmation bool,
132
133
  can_be_sent_anonymously bool,
133
134
  primary key (application, name) );
@@ -147,6 +148,9 @@ create table document_request (
147
148
  encrypted_access_token encrypted__access_token not null,
148
149
  encrypted_parameters text,
149
150
  render_timestamp timestamptz,
151
+ create_file bool not null,
152
+ file_name file_name,
153
+ content bytea,
150
154
  primary key (uuid) );
151
155
  -- federation_procedure...
152
156
  create table federation_procedure (
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jaaql-middleware-python
3
- Version: 4.30.8
3
+ Version: 4.31.0
4
4
  Summary: The jaaql package, allowing for rapid development and deployment of RESTful HTTP applications
5
5
  Home-page: https://github.com/JAAQL/JAAQL-middleware-python
6
6
  Author: Software Quality Measurement and Improvement bv