content: [tool.poetry]
  name = "aligned"
  version = "0.0.133"
  description = "A data management and lineage tool for ML applications."
  authors = ["Mats E. Mollestad <mats@mollestad.no>"]
  license = "FSL-1.1-ALv2"
  readme = "README.md"
  homepage = "https://github.com/MatsMoll/aligned"
  repository = "https://github.com/MatsMoll/aligned"
  keywords = [
      'python',
      'typed',
      'ml',
      'prediction',
      'feature',
      'store',
      'feature-store',
      'mlops',
      'feast',
      'tecton',
      'dbt',
      'data',
      'lineage'
  ]
  classifiers = [
      'Development Status :: 3 - Alpha',
      'Environment :: Web Environment',
      'Intended Audience :: Developers',
      'License :: OSI Approved :: Apache Software License',
      'Operating System :: OS Independent',
      'Programming Language :: Python',
      'Programming Language :: Python :: 3.10',
      'Topic :: Internet :: WWW/HTTP',
      'Topic :: Internet :: WWW/HTTP :: Dynamic Content',
      'Topic :: Software Development',
      'Topic :: Software Development :: Libraries',
      'Topic :: Software Development :: Libraries :: Application Frameworks',
      'Topic :: Software Development :: Libraries :: Python Modules',
      'Topic :: Scientific/Engineering :: Artificial Intelligence',
  ]
  packages = [
      { include = "aligned" },
  ]
  
  [tool.poetry.dependencies]
  python = "^3.10"
  python-dotenv = "^0.21.0"
  click = "^8.1.3"
  httpx = "^0.27.0"
  mashumaro = "^3.0.1"
  dill = "^0.3.4"
  pydantic = "^2.0.0"
  polars = { version = "^1.10.0", extras = ["pyarrow"] }
  pyarrow = ">=17.0.0"
  numpy = "*"
  pytz = "^2024.2"
  sqlglot = "^22.5.0"
  
  openai = { version = "^1.52.0", optional = true }
  pandas = { version = "^2.0.0", optional = true }
  fastapi = { version = "^0.100.0", optional = true }
  uvicorn = { version = "^0.17.6", optional = true }
  redis = { version = "^4.3.1", optional = true }
  aioaws = { version = "^0.12", optional = true }
  asgi-correlation-id = { version = "^3.0.0", optional = true }
  pillow = { version = "^9.4.0", optional = true }
  kafka-python = { version= "^2.0.2", optional = true }
  connectorx = { version = "^0.3.2", optional = true }
  asyncpg = { version = "^0.29.0", optional = true }
  psycopg2 = { version = "^2.9.9", optional = true }
  ollama = { version = "^0.1.8", optional = true }
  mlflow = { version = "^2.11.3", optional = true }
  adlfs = { version = "^2024.4.1", optional = true }
  lancedb = { version = "^0.15.0", optional = true }
  deltalake = { version = "^1.0.0", optional = true }
  sentence-transformers = { version = "^3.2.0", optional = true }
  tiktoken = { version = "^0.8.0", optional = true }
  databricks-connect = { version = ">15.1.0", optional = true }
  pyiceberg = { version = "^0.10.0", optional = true }
  
  [tool.poetry.extras]
  aws = ["aioaws", "connectorx"]
  psql = ["connectorx", "asyncpg", "psycopg2"]
  redis = ["redis"]
  server = ["asgi-correlation-id", "fastapi", "uvicorn"]
  image = ["pillow"]
  kafka = ["kafka-python"]
  ollama = ["ollama"]
  mlflow = ["mlflow"]
  azure = ["adlfs"]
  deltalake = ["deltalake"]
  lancedb = ["lancedb"]
  pandas = ["pandas"]
  pyiceberg = ["pyiceberg"]
  sentence-transformers = ["sentence-transformers"]
  openai = ["openai", "tiktoken"]
  databricks = ["databricks-connect", "sqlglot"]
  
  [tool.poetry.group.dev.dependencies]
  types-redis = "^4.2.6"
  pytest-mock = "^3.8.1"
  freezegun = "^1.2.2"
  pytest-asyncio = "^0.20.1"
  fakeredis = "^2.10.0"
  sqlalchemy = "^2.0.19"
  printf-log-formatter = "^0.3.0"
  isort = "^5.12.0"
  black = "^23.7.0"
  pyright = "^1.1.375"
  ruff = "^0.9.7"
  
  [build-system]
  requires = ["poetry-core>=1.0.0"]
  build-backend = "poetry.core.masonry.api"
  
  [tool.poetry.scripts]
  aligned = 'aligned.cli:cli'
  
  [tool.black]
  line-length = 110
  skip-string-normalization = true
  
  
  [tool.isort]
  profile = "black"
  line_length = 110
  
  [tool.ruff]
  