Skip to content

Add CassandraMapper for internal Adapta data classes#569

Open
marcusforby wants to merge 4 commits intomainfrom
mapet/add_or_utils_cassandra
Open

Add CassandraMapper for internal Adapta data classes#569
marcusforby wants to merge 4 commits intomainfrom
mapet/add_or_utils_cassandra

Conversation

@marcusforby
Copy link
Copy Markdown
Contributor

@marcusforby marcusforby commented Feb 20, 2026

What

  • Added CassandraMapper for internal Adapta data classes
  • Fixed path for AstraProperties
  • Added unit tests for new CassandraMapper

Why

We want to use internal Adapta data classes for Astra in QES in OC and RO.

@marcusforby marcusforby changed the title Add CassandraMapper for OR utils data classes Add CassandraMapper for internal Adapta data classes Feb 20, 2026
@github-actions
Copy link
Copy Markdown

Coverage

Coverage Report
FileStmtsMissCoverMissing
adapta/connectors/service_bus
   __init__.py110%18
   _connector.py16160%19–60
adapta/dataclass_validation/dataclass
   dataclass_abstract.py311165%25–36, 44, 52–56, 81
   dataclass_core.py116794%91, 94, 97, 159, 321, 335–336
adapta/dataclass_validation/validation
   validation.py9456%20, 26–29
   validation_abstract.py1232282%28, 33, 38, 149–160, 235–249, 255–257
   validation_polars.py35294%76, 82
   validation_utils.py12283%26–27
adapta/logs
   _async_logger.py82693%56, 60–74, 89–90
   _base.py53689%35, 41, 44, 97–100
   _internal_logger.py1351291%172, 205, 239, 328–338, 356–372
adapta/logs/handlers
   datadog_api_handler.py1103271%93, 111–118, 129, 141–157, 166–200, 209, 215, 237, 243
adapta/metrics/providers
   datadog_provider.py53530%19–170
   void_provider.py18180%4–34
adapta/ml
   __init__.py110%19
   _model.py10100%17–42
adapta/ml/mlflow
   __init__.py220%17–18
   _client.py67670%19–275
   _functions.py53530%17–148
adapta/process_communication
   _models.py34682%91–97
adapta/security/clients
   __init__.py261254%27–28, 34–35, 41–42, 48–49, 53–54, 58–59
   _azure_client.py745032%43, 56–66, 76–79, 82, 85–87, 96–154, 157, 160–198
adapta/security/clients/aws
   _aws_client.py391756%38–41, 48, 58, 64, 76, 101–109, 115–118
   _aws_credentials.py723058%59–78, 82, 86, 90, 94, 98, 107–111, 115, 119, 123, 127, 131
adapta/security/clients/hashicorp_vault
   hashicorp_vault_client.py31487%46, 87, 91, 95
   kubernetes_client.py21576%45–48, 67–68
   oidc_client.py452056%33–62, 80–83, 92
   token_client.py17759%42–45, 52–53, 56, 59
adapta/storage/blob
   azure_storage_client.py1366552%73–94, 104, 111–112, 115–121, 143–144, 147–172, 175, 191–204, 212–216, 235, 256–258, 267, 283–287, 306–312, 322–324, 330–336, 339–358, 365
   local_storage_client.py55787%43, 68, 75, 88, 102, 105, 108
   s3_storage_client.py1187735%58, 62, 69–81, 92–97, 118–126, 134–135, 149–166, 182–186, 204–213, 223–244, 255–276
adapta/storage/cache
   redis_cache.py37370%19–107
adapta/storage/database/v2
   azure_sql.py33330%21–139
   odbc.py74740%21–220
   snowflake_sql.py69690%6–228
   trino_sql.py40400%21–128
adapta/storage/database/v2/models
   __init__.py110%19
   _models.py10100%20–53
adapta/storage/database/v3
   azure_sql.py312035%53, 68, 82–120, 130
   odbc.py731185%95–105, 115, 126–127, 141, 150–156, 183
   snowflake_sql.py772370%64–78, 93–95, 106–115, 142, 178, 193–196
   trino_sql.py471568%87, 104–117, 125–135, 138–139, 151
adapta/storage/delta_lake/v2
   _functions.py684534%73–106, 153–168, 210–294
adapta/storage/delta_lake/v3
   _functions.py741580%76, 81, 100, 117, 173, 178, 180, 182, 238, 248, 258–268, 274, 309
adapta/storage/distributed_object_store/v2/datastax_astra
   _models.py19953%54–59, 62, 65, 68
   astra_client.py19714029%41–44, 114–138, 144–185, 191–192, 198–199, 202, 212, 224–225, 234, 274–362, 370, 394–521, 531, 542–557, 580–595, 617–633, 657–674
adapta/storage/distributed_object_store/v3/datastax_astra
   _model_mappers.py1963184%64, 131, 137, 139, 143, 149, 153, 162–168, 180–183, 199–200, 231, 288–298, 385, 426–438, 492–500, 542
   _models.py453131%63–69, 72, 75, 78–122, 125
   astra_client.py1578049%38–41, 146–191, 197–200, 206–207, 210, 220, 232–233, 242, 288–395, 403, 415, 426–445, 468–485, 509–529, 555–567
adapta/storage/models
   astra.py351071%37, 40, 44, 59–61, 64, 70–73
   aws.py361169%36–39, 46–49, 57–59, 82, 91
   azure.py591771%31, 35–39, 46, 66, 69–70, 73–74, 88–92, 99, 112, 119, 122–123, 126
   filter_expression.py172697%57, 185–186, 240, 412, 443
   format.py16381%52, 60, 68
   hive.py562555%36, 40, 43, 91–98, 110, 113–114, 123–171, 174
   local.py21481%31, 35, 38, 50
   trino.py23578%38, 41, 45, 53, 56
adapta/storage/models/formatters
   unit.py6267%18, 26
adapta/storage/query_enabled_store
   __init__.py8275%26–27
   _models.py73297%182–183
   _qes_astra.py591378%70–71, 83, 93–108, 120–123
   _qes_delta.py41490%38, 65, 82, 92
   _qes_local.py29293%42, 81
   _qes_trino.py571868%57, 70, 88–101, 104, 122–133
adapta/storage/secrets
   azure_secret_client.py19190%19–65
adapta/utils
   _common.py981783%37–38, 72–88, 99, 127, 147, 167, 250
   _requests.py39587%38–40, 43, 53
   concurrent_task_runner.py28196%110
adapta/utils/data_structures
   _functions.py34197%134
adapta/utils/decorators
   _logging.py41198%32
   _rate_limit.py25196%58
tests
   test_filtering_api.py34294%230–231
   test_logs.py155299%345, 350
   test_utils.py166199%371
   test_vault_client.py801878%33–35, 40–42, 47–51, 56–57, 62–66
TOTAL5815150174% 

Tests Skipped Failures Errors Time
358 5 💤 0 ❌ 0 🔥 1m 3s ⏱️

@marcusforby marcusforby marked this pull request as ready for review February 20, 2026 14:39
Copy link
Copy Markdown
Contributor

@george-zubrienko george-zubrienko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

)
nicknames = Field(
display_name="Nicknames",
description="A list of nicknames for the individual.",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

xx_n00b_xx

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants