This is an automated email from the ASF dual-hosted git repository.
skrawcz pushed a change to branch stefan/promote_script
in repository https://gitbox.apache.org/repos/asf/hamilton.git
omit 7b66ce41 Apply suggestions from code review
omit 58ad3c49 Update scripts/promote_rc.sh
omit fe46aece Update scripts/apache_release_helper.py
omit 11249cc8 Adds downloads to docs
omit 49d07d6b Changes copy to mv
omit 092ff943 Removes some README links that shouldn't be there
omit c78e3a19 Updates package to be apache-hamilton
omit 8a4370b0 Adds script to help promote RC artifacts
add 343291bb Fixes badging on docs
add a24c94f5 Fix typo in parallel-task documentation
add 45feeafe Drops support for 3.9, adds support for 3.13 (#1411)
add 10d1e529 Bump urllib3 from 2.5.0 to 2.6.0 in /ui/backend/server
add 61f5bb74 Bump django from 4.2.24 to 4.2.27 in /ui/backend/server
add 82ef0c9a Bump node-forge from 1.3.1 to 1.3.2 in /ui/frontend
add 39f1235b Bump js-yaml from 3.14.1 to 3.14.2 in /ui/frontend
add 77b7d97f Removes reference to contrib -- that will go in contrib
LICENSE file
add dd457ea8 Adds license header to template files
add 9fd1bda2 Fixes #1421 and adds disclaimer
add b0f71a54 Adds more licenses and utilities for license checking (#1425)
add f3ff0120 Adds eco-system page (#1428)
add 4203b4da Various Unit Test Fixes (#1429)
add 687d10ca Adds missing .md header & makes license check run for docs
builds too (#1437)
add 38ad70a3 Expand to python 3.13
add fbb92f45 Remove Pythono 3.8 and 3.9
add a9cfd66e Enforce Ruff B905
add af69af26 Add NDJSON support in polars (#1431)
add 7e35d83d Update copyright year in NOTICE file
add 553f0e9f Enhance visualization with display_name tag support
add c607262e Updates the assertion in the graph visualization test to
ensure that special characters are properly escaped in the label.
add 7daca045 adjusting the formatting of the header.
add 5669d8e2 Enhance display_name handling in graph visualizations
add 3c298906 Refactor display_name imports in graph visualization tests
add 57a01ccf Update visualization documentation to clarify usage of
display_name decorator
add d570d3ff Refactor display_name imports in test_graph.py to streamline
test dependencies
add 783b2e8d Add support for Python 3.14
add 45c12892 Add conditional installs
add de50378f Linting
add 5b1af5ef Update supported python versions in front page badge
add 9c16b638 Add collaborator 'Dev-iL' to .asf.yaml
add dd2fdd63 Replace `pre-commit` with `prek` (#1453)
add ac349407 Fix failing unit tests for pandas and mlflow compatibility
(#1463)
add 3c758593 Add missing dependency group for async SQLAlchemy tests
(#1474)
add bb1dee89 chore: Bump Ruff to 0.15.0 (#1455)
add 3bb44b9d Enable the UP006 and UP045 inspections
add 357a43ac Remove tests for pre-3.9 types (Dict, Tuple)
add 846cc74b Standardize `@pytest.mark.parametrize` parameters (PT006,
PT007)
add a2d0f205 Skip ray tests on Python 3.14 and fix ruff.toml config
add 157ecd60 Address various test failures
add 5d57508c Remove outdated numpy<2 version pins
add f0b80121 Fix spark failures on py3.14
add d4319d5f Add the sphinx-llms-txt docs plugin for better LLM
integration (#1482)
add 2f74f493 Adds script to help promote RC artifacts
add febd54c0 Updates package to be apache-hamilton
add 765cb9a8 Removes some README links that shouldn't be there
add 49b8e16b Changes copy to mv
add 48ffd278 Adds downloads to docs
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (7b66ce41)
\
N -- N -- N refs/heads/stefan/promote_script (48ffd278)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
.asf.yaml | 2 +
.github/workflows/hamilton-lsp.yml | 5 +-
.github/workflows/hamilton-main.yml | 51 +-
.github/workflows/hamilton-sdk.yml | 6 +-
.github/workflows/hamilton-ui-backend.yml | 5 +-
.github/workflows/hamilton-ui-frontend.yml | 3 +
.github/workflows/sphinx-docs.yml | 4 +
.pre-commit-config.yaml | 12 +-
LICENSE | 27 -
NOTICE | 2 +-
README.md | 29 +-
contrib/README.md | 27 +
contrib/docs/DEV_SETUP.md | 19 +
contrib/docs/README.md | 19 +
contrib/docs/blog/2023-11-13-welcome/index.md | 19 +
contrib/docs/compile_docs.py | 12 +-
contrib/docs/docs/README.md | 19 +
contrib/docs/src/components/example_code.tsx | 19 +
contrib/docs/src/pages/leaderboard.md | 19 +
contrib/docs/src/pages/markdown-page.md | 19 +
contrib/hamilton/contrib/dagworks/author.md | 19 +
.../contrib/dagworks/conversational_rag/README.md | 19 +
.../hamilton/contrib/dagworks/faiss_rag/README.md | 19 +
.../contrib/dagworks/simple_eval_grader/README.md | 19 +
.../contrib/dagworks/sphinx_doc_chunking/README.md | 19 +
.../dagworks/sphinx_doc_chunking/test.ipynb | 26 +-
.../contrib/dagworks/text_summarization/README.md | 19 +
.../dagworks/text_summarization/__init__.py | 7 +-
.../contrib/dagworks/text_summarization/test.ipynb | 8 +-
.../dagworks/translate_to_hamilton/README.md | 19 +
.../dagworks/translate_to_hamilton/test.ipynb | 9 +-
.../contrib/dagworks/translate_to_hamilton/test.py | 4 +-
.../hamilton/contrib/user/elijahbenizzy/author.md | 19 +
.../user/elijahbenizzy/caption_images/README.md | 19 +
.../user/elijahbenizzy/caption_images/__init__.py | 19 +-
.../user/elijahbenizzy/convert_images_s3/README.md | 19 +
.../elijahbenizzy/convert_images_s3/__init__.py | 4 +-
.../user/elijahbenizzy/generate_images/README.md | 19 +
.../generate_images/generate_images.ipynb | 7 +
.../parallel_load_dataframes_s3/README.md | 19 +
.../parallel_load_dataframes_s3/__init__.py | 4 +-
.../user/example_dataflow_template/author.md | 19 +
.../dataflow_template/README.md | 19 +
.../user/skrawcz/air_quality_analysis/README.md | 19 +
contrib/hamilton/contrib/user/skrawcz/author.md | 19 +
.../user/skrawcz/customize_embeddings/README.md | 19 +
.../user/skrawcz/customize_embeddings/__init__.py | 15 +-
.../skrawcz/customize_embeddings/notebook.ipynb | 21 +-
.../contrib/user/skrawcz/fine_tuning/Dockerfile | 17 +
.../contrib/user/skrawcz/fine_tuning/README.md | 19 +
.../contrib/user/skrawcz/fine_tuning/__init__.py | 4 +-
.../contrib/user/skrawcz/hello_world/README.md | 19 +
contrib/hamilton/contrib/user/zilto/author.md | 19 +
.../contrib/user/zilto/lancedb_vdb/README.md | 19 +
.../contrib/user/zilto/lancedb_vdb/__init__.py | 25 +-
.../contrib/user/zilto/lancedb_vdb/run.ipynb | 40 +-
.../contrib/user/zilto/llm_generate_code/README.md | 19 +
.../user/zilto/llm_generate_code/__init__.py | 2 +-
.../contrib/user/zilto/nixtla_mlforecast/README.md | 19 +
.../user/zilto/nixtla_mlforecast/__init__.py | 51 +-
.../contrib/user/zilto/nixtla_mlforecast/run.ipynb | 25 +-
.../user/zilto/nixtla_statsforecast/README.md | 19 +
.../user/zilto/nixtla_statsforecast/__init__.py | 7 +-
.../user/zilto/nixtla_statsforecast/run.ipynb | 26 +-
.../user/zilto/text_summarization/README.md | 19 +
.../user/zilto/text_summarization/__init__.py | 7 +-
.../contrib/user/zilto/webscraper/README.md | 19 +
.../contrib/user/zilto/webscraper/__init__.py | 8 +-
.../contrib/user/zilto/webscraper/run.ipynb | 18 +-
.../contrib/user/zilto/xgboost_optuna/README.md | 19 +
.../contrib/user/zilto/xgboost_optuna/__init__.py | 15 +-
.../contrib/user/zilto/xgboost_optuna/run.ipynb | 39 +-
contrib/hamilton/contribute.py | 7 +-
contrib/setup.py | 6 +-
dev_tools/language_server/README.md | 27 +
dev_tools/language_server/hamilton_lsp/server.py | 12 +-
dev_tools/language_server/pyproject.toml | 4 +-
dev_tools/language_server/tests/ls_setup.py | 13 +-
dev_tools/vscode_extension/DEVELOPER_SETUP.md | 19 +
dev_tools/vscode_extension/README.md | 37 +-
.../walkthrough/1_extensionDependencies.md | 19 +
.../resources/walkthrough/2_pythonInterpreter.md | 19 +
.../resources/walkthrough/3_pythonDependencies.md | 19 +
.../resources/walkthrough/4_reloadVscode.md | 19 +
.../resources/walkthrough/4_visitLSP.md | 19 +
.../walkthrough/5_visitDataflowWebview.md | 19 +
.../resources/walkthrough/6_tips.md | 19 +
docs/README.md | 19 +
docs/_static/100k_downloads_month.png | Bin 0 -> 2099 bytes
docs/_static/1m_downloads.png | Bin 0 -> 1411 bytes
docs/_static/hamilton_os_follow.png | Bin 0 -> 1862 bytes
docs/_static/hamilton_slack.png | Bin 0 -> 1897 bytes
docs/_static/logos/airflow.png | Bin 0 -> 59053 bytes
docs/_static/logos/aws.svg | 38 ++
docs/_static/logos/dagster.png | Bin 0 -> 1534 bytes
docs/_static/logos/dask.svg | 25 +
docs/_static/logos/datadog.png | Bin 0 -> 2362 bytes
docs/_static/logos/dbt.png | Bin 0 -> 4598 bytes
docs/_static/logos/diskcache.png | Bin 0 -> 1562 bytes
docs/_static/logos/dlt.svg | 20 +
docs/_static/logos/fastapi.svg | 34 ++
docs/_static/logos/feast.png | Bin 0 -> 1534 bytes
docs/_static/logos/gcp.svg | 1 +
docs/_static/logos/geopandas.png | Bin 0 -> 1562 bytes
docs/_static/logos/huggingface.svg | 8 +
docs/_static/logos/ibis.png | Bin 0 -> 1569 bytes
docs/_static/logos/jupyter.png | Bin 0 -> 27296 bytes
docs/_static/logos/kedro.png | Bin 0 -> 1552 bytes
docs/_static/logos/lightgbm.svg | 39 ++
docs/_static/logos/matplotlib.png | Bin 0 -> 21903 bytes
docs/_static/logos/metaflow.png | Bin 0 -> 1570 bytes
docs/_static/logos/mlflow.png | Bin 0 -> 6518 bytes
docs/_static/logos/modal.png | Bin 0 -> 1583 bytes
docs/_static/logos/narwhals.png | Bin 0 -> 585110 bytes
docs/_static/logos/numpy.svg | 1 +
docs/_static/logos/openlineage.svg | 47 ++
docs/_static/logos/opentelemetry.png | Bin 0 -> 6343 bytes
docs/_static/logos/pandas.svg | 111 ++++
docs/_static/logos/pandera.png | Bin 0 -> 11536 bytes
docs/_static/logos/plotly.png | Bin 0 -> 4927 bytes
docs/_static/logos/polars.svg | 83 +++
docs/_static/logos/prefect.png | Bin 0 -> 3630 bytes
docs/_static/logos/pyarrow.png | Bin 0 -> 20583 bytes
docs/_static/logos/pydantic.svg | 5 +
docs/_static/logos/pyspark.svg | 13 +
docs/_static/logos/ray.svg | Bin 0 -> 34688 bytes
docs/_static/logos/rich.svg | 1 +
docs/_static/logos/scikit-learn.png | Bin 0 -> 10879 bytes
docs/_static/logos/slack.svg | 6 +
docs/_static/logos/streamlit.png | Bin 0 -> 5123 bytes
docs/_static/logos/tqdm.png | Bin 0 -> 9083 bytes
docs/_static/logos/vaex.png | Bin 0 -> 55045 bytes
docs/_static/logos/vscode.png | Bin 0 -> 640 bytes
docs/_static/logos/xgboost.png | Bin 0 -> 5065 bytes
docs/_static/logos/yaml.svg | 4 +
docs/asf/index.rst | 47 ++
docs/community/index.md | 34 +-
docs/concepts/driver.rst | 2 +-
docs/concepts/parallel-task.rst | 2 +-
docs/concepts/visualization.rst | 21 +
docs/conf.py | 25 +
docs/data_adapters_extension.py | 17 +
docs/ecosystem/index.md | 222 +++++++
docs/get-started/install.md | 21 +-
docs/get-started/learning-resources.md | 38 +-
docs/get-started/why-hamilton.md | 19 +
docs/how-tos/caching-tutorial.ipynb | 7 +
docs/how-tos/cli-reference.md | 19 +
docs/how-tos/llm-workflows.md | 19 +
docs/how-tos/pre-commit-hooks.md | 31 +-
docs/how-tos/use-hamilton-for-lineage.md | 19 +
docs/how-tos/use-in-jupyter-notebook.md | 19 +
docs/index.md | 34 +-
docs/integrations/dlt/index.md | 19 +
docs/integrations/fastapi.md | 19 +
docs/integrations/ibis/index.md | 19 +
docs/integrations/streamlit.md | 19 +
docs/main.md | 29 +-
docs/make_testimonials.py | 17 +
docs/reference/dataflows/index.rst | 4 +-
docs/reference/decorators/tag.rst | 25 +
docs/reference/disabling-telemetry.md | 19 +
docs/reference/result-builders/PyArrow.rst | 8 +
docs/reference/result-builders/index.rst | 1 +
examples/Dockerfile | 17 +
examples/LLM_Workflows/GraphRAG/README.md | 19 +
examples/LLM_Workflows/GraphRAG/application.py | 22 +-
examples/LLM_Workflows/GraphRAG/graph_schema.py | 17 +
examples/LLM_Workflows/GraphRAG/hamilton_ingest.py | 17 +
examples/LLM_Workflows/GraphRAG/ingest_fighters.py | 17 +
examples/LLM_Workflows/GraphRAG/ingest_fights.py | 17 +
.../LLM_Workflows/GraphRAG/ingest_notebook.ipynb | 13 +-
examples/LLM_Workflows/GraphRAG/notebook.ipynb | 87 +--
examples/LLM_Workflows/GraphRAG/utils.py | 17 +
examples/LLM_Workflows/NER_Example/README.md | 19 +
.../LLM_Workflows/NER_Example/lancedb_module.py | 20 +-
.../LLM_Workflows/NER_Example/ner_extraction.py | 20 +-
examples/LLM_Workflows/NER_Example/notebook.ipynb | 74 ++-
examples/LLM_Workflows/NER_Example/run.py | 17 +
.../RAG_document_extract_chunk_embed/README.md | 19 +
.../RAG_document_extract_chunk_embed/pipeline.py | 25 +-
.../simple_pipeline.ipynb | 34 +-
examples/LLM_Workflows/README.md | 19 +
examples/LLM_Workflows/image_telephone/README.md | 19 +
examples/LLM_Workflows/image_telephone/adapters.py | 32 +-
.../LLM_Workflows/image_telephone/application.py | 17 +
.../LLM_Workflows/image_telephone/notebook.ipynb | 48 +-
.../LLM_Workflows/image_telephone/streamlit.py | 29 +-
.../LLM_Workflows/knowledge_retrieval/README.md | 19 +
.../knowledge_retrieval/arxiv_articles.py | 24 +-
.../LLM_Workflows/knowledge_retrieval/functions.py | 17 +
.../LLM_Workflows/knowledge_retrieval/state.py | 17 +
.../knowledge_retrieval/summarize_text.py | 23 +-
.../LLM_Workflows/langchain_comparison/README.md | 19 +
.../langchain_comparison/hamilton_anthropic.py | 19 +-
.../langchain_comparison/hamilton_async.py | 22 +-
.../langchain_comparison/hamilton_batch.py | 24 +-
.../langchain_comparison/hamilton_completion.py | 22 +-
.../langchain_comparison/hamilton_fallbacks.py | 17 +
.../langchain_comparison/hamilton_invoke.py | 22 +-
.../langchain_comparison/hamilton_logging.py | 17 +
.../langchain_comparison/hamilton_streamed.py | 23 +-
.../langchain_comparison/lcel_anthropic.py | 17 +
.../langchain_comparison/lcel_async.py | 17 +
.../langchain_comparison/lcel_batch.py | 17 +
.../langchain_comparison/lcel_completion.py | 17 +
.../langchain_comparison/lcel_fallbacks.py | 17 +
.../langchain_comparison/lcel_invoke.py | 17 +
.../langchain_comparison/lcel_logging.py | 17 +
.../langchain_comparison/lcel_streamed.py | 17 +
.../langchain_comparison/vanilla_anthropic.py | 17 +
.../langchain_comparison/vanilla_async.py | 20 +-
.../langchain_comparison/vanilla_batch.py | 20 +-
.../langchain_comparison/vanilla_completion.py | 17 +
.../langchain_comparison/vanilla_fallbacks.py | 17 +
.../langchain_comparison/vanilla_invoke.py | 20 +-
.../langchain_comparison/vanilla_logging.py | 17 +
.../langchain_comparison/vanilla_streamed.py | 21 +-
.../LLM_Workflows/llm_logging/summarization.py | 21 +-
examples/LLM_Workflows/modular_llm_stack/README.md | 19 +
.../LLM_Workflows/modular_llm_stack/data_module.py | 17 +
.../modular_llm_stack/embedding_module.py | 17 +
.../modular_llm_stack/lancedb_module.py | 21 +-
.../modular_llm_stack/marqo_module.py | 25 +-
.../modular_llm_stack/pinecone_module.py | 19 +-
.../modular_llm_stack/qdrant_module.py | 19 +-
examples/LLM_Workflows/modular_llm_stack/run.py | 17 +
.../modular_llm_stack/weaviate_module.py | 19 +-
.../observability_openllmetry/README.md | 19 +
.../observability_openllmetry/notebook.ipynb | 11 +-
.../LLM_Workflows/observability_openllmetry/run.py | 17 +
examples/LLM_Workflows/pdf_summarizer/README.md | 19 +
.../pdf_summarizer/backend/Dockerfile | 17 +
.../backend/parallel_summarization.py | 21 +-
.../LLM_Workflows/pdf_summarizer/backend/server.py | 17 +
.../pdf_summarizer/backend/summarization.py | 21 +-
.../pdf_summarizer/frontend/Dockerfile | 17 +
.../LLM_Workflows/pdf_summarizer/frontend/app.py | 17 +
.../pdf_summarizer/run_on_spark/README.md | 19 +
.../pdf_summarizer/run_on_spark/run.ipynb | 27 +-
.../pdf_summarizer/run_on_spark/run.py | 17 +
.../run_on_spark/run_with_columns.py | 17 +
.../run_on_spark/spark_pdf_pipeline.py | 17 +
.../pdf_summarizer/run_on_spark/summarization.py | 21 +-
.../retrieval_augmented_generation/README.md | 19 +
.../backend/Dockerfile | 17 +
.../backend/ingestion.py | 25 +-
.../backend/retrieval.py | 17 +
.../backend/server.py | 17 +
.../backend/vector_db.py | 17 +
.../retrieval_augmented_generation/build_app.sh | 17 +
.../frontend/Dockerfile | 17 +
.../frontend/Information.py | 17 +
.../frontend/client.py | 17 +
.../frontend/pages/1_Ingestion.py | 17 +
.../frontend/pages/2_Retrieval.py | 17 +
.../LLM_Workflows/scraping_and_chunking/README.md | 19 +
.../scraping_and_chunking/doc_pipeline.py | 17 +
.../scraping_and_chunking/notebook.ipynb | 12 +-
.../LLM_Workflows/scraping_and_chunking/run.py | 17 +
.../scraping_and_chunking/run_dask.py | 17 +
.../LLM_Workflows/scraping_and_chunking/run_ray.py | 17 +
.../scraping_and_chunking/spark/README.md | 19 +
.../scraping_and_chunking/spark/doc_pipeline.py | 17 +
.../scraping_and_chunking/spark/notebook.ipynb | 19 +-
.../scraping_and_chunking/spark/spark_pipeline.py | 17 +
examples/README.md | 19 +
examples/airflow/Dockerfile | 17 +
examples/airflow/README.md | 19 +
.../dags/hamilton/absenteeism_prediction_dag.py | 17 +
.../airflow/dags/hamilton/hamilton_how_to_dag.py | 17 +
.../airflow/plugins/absenteeism/evaluate_model.py | 17 +
.../airflow/plugins/absenteeism/prepare_data.py | 20 +-
.../airflow/plugins/absenteeism/train_model.py | 26 +-
.../plugins/function_modules/data_loaders.py | 21 +-
.../plugins/function_modules/feature_logic.py | 17 +
examples/async/README.md | 19 +
examples/async/async_module.py | 17 +
examples/async/fastapi_example.py | 17 +
examples/aws/glue/README.md | 19 +
.../aws/glue/app/hamilton_functions/functions.py | 17 +
examples/aws/glue/app/setup.py | 17 +
examples/aws/glue/processing.py | 17 +
examples/aws/lambda/Dockerfile | 17 +
examples/aws/lambda/README.md | 19 +
examples/aws/lambda/app/functions.py | 17 +
examples/aws/lambda/app/lambda_handler.py | 17 +
examples/aws/sagemaker/README.md | 19 +
examples/aws/sagemaker/app/functions.py | 17 +
examples/aws/sagemaker/container/Dockerfile | 17 +
examples/aws/sagemaker/notebook.ipynb | 35 +-
examples/aws/sagemaker/processing.py | 17 +
examples/caching/README.md | 19 +
examples/caching/in_memory_tutorial.ipynb | 10 +-
examples/caching/materializer_tutorial.ipynb | 59 +-
examples/caching/tutorial.ipynb | 93 +--
examples/caching_nodes/README.md | 19 +
examples/caching_nodes/caching.ipynb | 23 +-
.../caching_nodes/caching_graph_adapter/README.md | 19 +
.../caching_graph_adapter/business_logic.py | 17 +
.../caching_graph_adapter/caching_nodes.ipynb | 37 +-
.../caching_graph_adapter/data_loaders.py | 17 +
.../caching_nodes/caching_graph_adapter/run.py | 17 +
examples/caching_nodes/diskcache_adapter/README.md | 19 +
.../caching_nodes/diskcache_adapter/functions.py | 18 +
.../caching_nodes/diskcache_adapter/notebook.ipynb | 20 +-
examples/caching_nodes/diskcache_adapter/run.py | 17 +
examples/cli/DOCS.md | 19 +
examples/cli/README.md | 19 +
examples/cli/config.py | 17 +
examples/cli/example_script.py | 17 +
examples/cli/module_v1.py | 17 +
examples/cli/watcher.py | 17 +
examples/contrib/README.md | 19 +
examples/contrib/notebook.ipynb | 27 +-
.../notebooks/dagworks-translate_to_hamilton.ipynb | 22 +-
examples/contrib/run.py | 17 +
examples/dagster/README.md | 19 +
examples/dagster/dagster_code/README.md | 19 +
examples/dagster/dagster_code/setup.py | 17 +
examples/dagster/dagster_code/tutorial/assets.py | 17 +
.../dagster_code/tutorial/resources/__init__.py | 5 +-
examples/dagster/hamilton_code/README.md | 19 +
examples/dagster/hamilton_code/dataflow.py | 17 +
examples/dagster/hamilton_code/mock_api.py | 21 +-
examples/dagster/hamilton_code/notebook.ipynb | 13 +-
examples/dagster/hamilton_code/run.py | 17 +
examples/dask/README.md | 19 +
examples/dask/community_demo/README.md | 19 +
.../dask/community_demo/demo_day_notebook.ipynb | 58 +-
examples/dask/community_demo/my_functions.py | 17 +
examples/dask/hello_world/README.md | 19 +
examples/dask/hello_world/data_loaders.py | 17 +
examples/dask/hello_world/notebook.ipynb | 11 +-
examples/dask/hello_world/run.py | 17 +
examples/dask/hello_world/run_with_delayed.py | 17 +
.../run_with_delayed_and_dask_objects.py | 17 +
examples/data_loaders/README.md | 19 +
examples/data_loaders/data_loaders.ipynb | 43 +-
examples/data_loaders/load_data_csv.py | 17 +
examples/data_loaders/load_data_duckdb.py | 17 +
examples/data_loaders/load_data_mock.py | 17 +
examples/data_loaders/prep_data.py | 17 +
examples/data_loaders/run.py | 17 +
examples/data_quality/pandera/README.md | 19 +
examples/data_quality/pandera/data_loaders.py | 21 +-
examples/data_quality/pandera/feature_logic.py | 17 +
.../data_quality/pandera/feature_logic_spark.py | 17 +
examples/data_quality/pandera/run.py | 17 +
examples/data_quality/pandera/run_dask.py | 17 +
examples/data_quality/pandera/run_ray.py | 17 +
examples/data_quality/pandera/run_spark.py | 17 +
examples/data_quality/simple/README.md | 19 +
examples/data_quality/simple/data_loaders.py | 21 +-
examples/data_quality/simple/feature_logic.py | 17 +
examples/data_quality/simple/run.py | 17 +
examples/data_quality/simple/run_dask.py | 17 +
examples/data_quality/simple/run_ray.py | 17 +
examples/data_quality/simple/run_spark.py | 17 +
examples/dbt/README.md | 19 +
examples/dbt/models/raw_passengers.sql | 17 +
examples/dbt/models/train_and_infer.py | 17 +
examples/dbt/python_transforms/data_loader.py | 21 +-
.../dbt/python_transforms/feature_transforms.py | 22 +-
examples/dbt/python_transforms/model_pipeline.py | 20 +-
examples/decoupling_io/README.md | 19 +
examples/decoupling_io/adapters.py | 36 +-
examples/decoupling_io/components/feature_data.py | 29 +-
.../decoupling_io/components/model_evaluation.py | 17 +
.../decoupling_io/components/model_training.py | 17 +
examples/decoupling_io/run.py | 20 +-
examples/dlt/README.md | 19 +
examples/dlt/dlt_plugin.ipynb | 23 +-
examples/dlt/notebook.ipynb | 18 +-
examples/dlt/run.py | 17 +
examples/dlt/slack/README.md | 19 +
examples/dlt/slack/__init__.py | 25 +-
examples/dlt/slack/helpers.py | 26 +-
examples/dlt/slack/settings.py | 17 +
examples/dlt/transform.py | 17 +
examples/due_date_probabilities/README.md | 19 +
examples/due_date_probabilities/base_dates.py | 17 +
examples/due_date_probabilities/notebook.ipynb | 76 ++-
examples/due_date_probabilities/probabilities.py | 20 +-
.../probability_estimation.py | 23 +-
examples/experiment_management/README.md | 19 +
examples/experiment_management/analysis.py | 17 +
examples/experiment_management/notebook.ipynb | 18 +-
examples/experiment_management/run.py | 17 +
examples/feast/README.md | 19 +
examples/feast/default_feature_store/README.md | 19 +
.../feature_repo/example_repo.py | 17 +
.../feature_repo/test_workflow.py | 17 +
.../feature_repo/demo_inputs.py | 17 +
.../feature_repo/feature_transformations.py | 17 +
.../feature_repo/retrieval.ipynb | 20 +-
.../integration_feature_store/feature_repo/run.py | 17 +
.../feature_repo/store_definitions.py | 17 +
.../feature_repo/store_operations.py | 17 +
.../feature_repo/demo_inputs.py | 17 +
.../feast/simple_feature_store/feature_repo/run.py | 17 +
.../feature_repo/store_definitions.py | 17 +
.../feature_repo/store_operations.py | 17 +
examples/feature_engineering/README.md | 19 +
.../README.md | 19 +
.../scenario_1/README.md | 19 +
.../scenario_1/etl.py | 17 +
.../scenario_1/fastapi_server.py | 19 +-
.../scenario_1/features.py | 17 +
.../scenario_1/named_model_feature_sets.py | 17 +
.../scenario_1/offline_loader.py | 21 +-
.../scenario_2/README.md | 19 +
.../scenario_2/etl.py | 17 +
.../scenario_2/fastapi_server.py | 17 +
.../scenario_2/features.py | 17 +
.../scenario_2/named_model_feature_sets.py | 17 +
.../scenario_2/offline_loader.py | 21 +-
.../scenario_2/online_loader.py | 23 +-
.../write_once_run_everywhere_blog_post/README.md | 19 +
.../components/aggregations.py | 17 +
.../components/data_loaders.py | 17 +
.../components/features.py | 17 +
.../components/joins.py | 17 +
.../components/model.py | 17 +
.../components/utils.py | 22 +-
.../contexts/batch.py | 17 +
.../contexts/online.py | 17 +
.../contexts/streaming.py | 17 +
.../mpg-translation/MPGSimple.ipynb | 18 +-
.../mpg-translation/MPGSimpleAdvancedTarget.ipynb | 13 +-
.../mpg-translation/MPGSimpleTarget.ipynb | 13 +-
.../mpg-translation/ProceduralMPGNotebook.ipynb | 17 +-
.../hamilton-tutorials/mpg-translation/README.md | 19 +
.../mpg-translation/mpg_pipeline.py | 17 +
.../mpg_pipeline_advanced_target.py | 17 +
.../mpg-translation/mpg_pipeline_target.py | 17 +
.../mpg-translation/mpg_script.py | 17 +
examples/hamilton_ui/README.md | 19 +
.../hamilton_ui/components/feature_transforms.py | 17 +
examples/hamilton_ui/components/iris_loader.py | 17 +
examples/hamilton_ui/components/model_fitting.py | 21 +-
examples/hamilton_ui/components/models.py | 17 +
examples/hamilton_ui/notebook.ipynb | 24 +-
examples/hamilton_ui/run.py | 17 +
examples/hello_world/README.md | 19 +
examples/hello_world/my_dag.png | Bin 68544 -> 69967 bytes
examples/hello_world/my_functions.py | 21 +
examples/hello_world/my_notebook.ipynb | 15 +-
examples/hello_world/my_script.py | 17 +
examples/ibis/feature_engineering/README.md | 19 +
.../ibis/feature_engineering/column_dataflow.py | 20 +-
examples/ibis/feature_engineering/run.py | 17 +
.../ibis/feature_engineering/table_dataflow.py | 20 +-
examples/ibis/jaffle_shop/README.md | 19 +
.../ibis/jaffle_shop/dataflows/customer_flow.py | 17 +
examples/ibis/jaffle_shop/dataflows/order_flow.py | 17 +
examples/ibis/jaffle_shop/dataflows/staging.py | 17 +
examples/ibis/jaffle_shop/run.py | 17 +
examples/ibisml/README.md | 19 +
examples/ibisml/model_training.py | 17 +
examples/ibisml/run.py | 17 +
examples/ibisml/table_dataflow.py | 20 +-
examples/jupyter_notebook_magic/README.md | 19 +
examples/jupyter_notebook_magic/example.ipynb | 15 +-
examples/kedro/README.md | 19 +
examples/kedro/hamilton-code/README.md | 19 +
.../hamilton-code/notebooks/interactive.ipynb | 8 +
.../src/hamilton_code/data_processing.py | 17 +
.../src/hamilton_code/data_science.py | 22 +-
.../kedro/hamilton-code/src/hamilton_code/run.py | 17 +
.../kedro/hamilton-code/tests/test_dataflow.py | 17 +
examples/kedro/kedro-code/README.md | 19 +
examples/kedro/kedro-code/conf/README.md | 19 +
.../kedro/kedro-code/src/kedro_code/__main__.py | 26 +-
.../kedro-code/src/kedro_code/pipeline_registry.py | 21 +-
.../kedro_code/pipelines/data_processing/nodes.py | 17 +
.../pipelines/data_processing/pipeline.py | 17 +
.../src/kedro_code/pipelines/data_science/nodes.py | 20 +-
.../kedro_code/pipelines/data_science/pipeline.py | 17 +
.../kedro/kedro-code/src/kedro_code/settings.py | 17 +
.../tests/pipelines/data_science/test_pipeline.py | 18 +
examples/kedro/kedro-code/tests/test_run.py | 17 +
examples/kedro/kedro-plugin/README.md | 19 +
.../kedro/kedro-plugin/kedro_to_hamilton.ipynb | 301 ++++-----
examples/lineage/README.md | 19 +
examples/lineage/data_loading.py | 22 +-
examples/lineage/features.py | 17 +
examples/lineage/lineage_commands.py | 29 +-
examples/lineage/lineage_script.py | 17 +
examples/lineage/lineage_snippets.ipynb | 68 ++-
examples/lineage/model_pipeline.py | 22 +-
examples/lineage/sets.py | 17 +
examples/make_python_virtualenv.sh | 17 +
examples/materialization/README.md | 19 +
examples/materialization/custom_materializers.py | 28 +-
examples/materialization/data_loaders.py | 17 +
.../datasaver_dataloader_example/README.md | 19 +
.../datasaver_dataloader_example/notebook.ipynb | 13 +-
.../datasaver_dataloader_example/run.py | 17 +
.../datasaver_dataloader_example/simple_etl.py | 17 +
examples/materialization/model_training.py | 20 +-
examples/materialization/notebook.ipynb | 84 ++-
examples/materialization/run.py | 17 +
examples/mlflow/README.md | 19 +
examples/mlflow/tutorial.ipynb | 27 +-
examples/model_examples/README.md | 19 +
examples/model_examples/modular_example/README.md | 19 +
.../model_examples/modular_example/features.py | 17 +
.../model_examples/modular_example/inference.py | 17 +
.../model_examples/modular_example/notebook.ipynb | 287 ++++-----
.../model_examples/modular_example/pipeline.py | 17 +
examples/model_examples/modular_example/run.py | 17 +
examples/model_examples/modular_example/train.py | 17 +
.../scikit-learn/Hamilton_for_ML_dataflows.ipynb | 19 +-
examples/model_examples/scikit-learn/README.md | 19 +
.../model_examples/scikit-learn/digit_loader.py | 17 +
.../model_examples/scikit-learn/iris_loader.py | 17 +
.../scikit-learn/my_train_evaluate_logic.py | 20 +-
examples/model_examples/scikit-learn/run.py | 17 +
.../time-series/Hamilton-TimeSeriesmodel.ipynb | 15 +-
examples/model_examples/time-series/README.md | 19 +
.../model_examples/time-series/data_loaders.py | 20 +-
.../model_examples/time-series/model_pipeline.py | 17 +
examples/model_examples/time-series/run.py | 17 +
examples/model_examples/time-series/transforms.py | 20 +-
examples/model_examples/time-series/utils.py | 17 +
examples/module_overrides/README.md | 19 +
examples/module_overrides/module_a.py | 18 +
examples/module_overrides/module_b.py | 18 +
examples/module_overrides/run.py | 17 +
.../mutate/abstract_functionality_blueprint/README | 19 +
.../abstract_functionality_blueprint/mutate.py | 21 +-
.../mutate_on_output.py | 23 +-
.../mutate_twice_the_same.py | 17 +
.../notebook.ipynb | 47 +-
.../pipe_output.py | 21 +-
.../pipe_output_on_output.py | 20 +-
.../abstract_functionality_blueprint/procedural.py | 21 +-
examples/narwhals/README.md | 19 +
examples/narwhals/example.py | 17 +
examples/narwhals/notebook.ipynb | 16 +-
examples/numpy/air-quality-analysis/README.md | 19 +
.../numpy/air-quality-analysis/analysis_flow.py | 17 +
.../air-quality-analysis/hamilton_notebook.ipynb | 49 +-
.../numpy/air-quality-analysis/run_analysis.py | 17 +
examples/openlineage/README.md | 19 +
examples/openlineage/fake_data.py | 17 +
examples/openlineage/notebook.ipynb | 14 +-
examples/openlineage/pipeline.py | 22 +-
examples/openlineage/run.py | 17 +
examples/opentelemetry/README.md | 19 +
examples/pandas/materialization/my_functions.py | 17 +
examples/pandas/materialization/my_script.py | 17 +
examples/pandas/materialization/notebook.ipynb | 10 +-
examples/pandas/split-apply-combine/README.md | 19 +
.../pandas/split-apply-combine/my_functions.py | 24 +-
examples/pandas/split-apply-combine/my_script.py | 17 +
examples/pandas/split-apply-combine/my_wrapper.py | 20 +-
examples/pandas/split-apply-combine/notebook.ipynb | 21 +-
examples/pandas/with_columns/README | 19 +
examples/pandas/with_columns/my_functions.py | 17 +
examples/pandas/with_columns/notebook.ipynb | 40 +-
examples/parallelism/README.md | 19 +
examples/parallelism/file_processing/README.md | 19 +
.../parallelism/file_processing/aggregate_data.py | 17 +
examples/parallelism/file_processing/list_data.py | 22 +-
.../parallelism/file_processing/notebook.ipynb | 50 +-
.../parallelism/file_processing/process_data.py | 17 +
examples/parallelism/file_processing/run.py | 17 +
examples/parallelism/graceful_running/README.md | 19 +
examples/parallelism/graceful_running/functions.py | 30 +-
examples/parallelism/graceful_running/run.py | 25 +-
.../lazy_threadpool_execution/README.md | 19 +
.../lazy_threadpool_execution/my_functions.py | 17 +
.../my_functions_async.py | 17 +
.../lazy_threadpool_execution/notebook.ipynb | 167 ++---
.../parallelism/lazy_threadpool_execution/run.py | 17 +
examples/parallelism/star_counting/README.md | 19 +
examples/parallelism/star_counting/functions.py | 26 +-
examples/parallelism/star_counting/notebook.ipynb | 53 +-
examples/parallelism/star_counting/run.py | 20 +-
examples/people_data_labs/README.md | 19 +
examples/people_data_labs/analysis.py | 17 +
examples/people_data_labs/download_data.py | 17 +
examples/people_data_labs/notebook.ipynb | 27 +-
examples/people_data_labs/run.py | 17 +
examples/plotly/README.md | 19 +
examples/plotly/model_training.py | 20 +-
examples/plotly/notebook.ipynb | 43 +-
examples/polars/README.md | 19 +
examples/polars/lazyframe/README.md | 19 +
examples/polars/lazyframe/my_functions.py | 17 +
examples/polars/lazyframe/my_script.py | 17 +
examples/polars/materialization/README.md | 19 +
examples/polars/materialization/my_functions.py | 17 +
examples/polars/materialization/my_script.py | 26 +
examples/polars/materialization/notebook.ipynb | 12 +-
examples/polars/my_functions.py | 17 +
examples/polars/my_script.py | 17 +
examples/polars/notebook.ipynb | 16 +-
examples/polars/with_columns/README | 19 +
examples/polars/with_columns/my_functions.py | 17 +
examples/polars/with_columns/my_functions_lazy.py | 17 +
examples/polars/with_columns/notebook.ipynb | 39 +-
examples/prefect/README.md | 19 +
examples/prefect/evaluate_model.py | 17 +
examples/prefect/hamilton_prefect_notebook.ipynb | 39 +-
examples/prefect/prepare_data.py | 20 +-
examples/prefect/run.py | 17 +
examples/prefect/train_model.py | 26 +-
examples/ray/README.md | 19 +
examples/ray/hello_world/README.md | 19 +
examples/ray/hello_world/data_loaders.py | 17 +
examples/ray/hello_world/notebook.ipynb | 19 +-
examples/ray/hello_world/run.py | 17 +
examples/ray/ray_Hamilton_UI_tracking/README | 19 +
.../hamilton_notebook.ipynb | 33 +-
.../ray/ray_Hamilton_UI_tracking/ray_lineage.py | 17 +
.../ray/ray_Hamilton_UI_tracking/run_lineage.py | 19 +-
examples/reusing_functions/README.md | 19 +
examples/reusing_functions/main.py | 21 +-
examples/reusing_functions/reusable_subdags.py | 17 +
examples/reusing_functions/reusing_functions.ipynb | 36 +-
examples/reusing_functions/unique_users.py | 17 +
examples/reverse_etl/README.md | 19 +
examples/reverse_etl/notebook.ipynb | 16 +-
examples/reverse_etl/upload_timesheet.py | 17 +
examples/schema/README.md | 19 +
examples/schema/dataflow.py | 17 +
examples/schema/multi_dataflow.py | 17 +
.../species_distribution_modeling/README.md | 19 +
.../species_distribution_modeling/grids.py | 28 +-
.../hamilton_notebook.ipynb | 74 ++-
.../species_distribution_modeling/load_data.py | 17 +
.../original_script.py | 19 +-
.../postprocessing_results.py | 23 +-
.../species_distribution_modeling/preprocessing.py | 26 +-
.../species_distribution_modeling/run.py | 17 +
.../train_and_predict.py | 17 +
.../train_and_predict_using_mutate.py | 17 +
examples/scikit-learn/transformer/README.md | 19 +
.../transformer/hamilton_notebook.ipynb | 52 +-
.../scikit-learn/transformer/my_functions_a.py | 17 +
.../scikit-learn/transformer/my_functions_b.py | 17 +
examples/scikit-learn/transformer/run.py | 25 +-
examples/slack/README.md | 19 +
examples/slack/notebook.ipynb | 10 +-
examples/slack/slack_notification_example.py | 63 +-
examples/snowflake/hamilton_ui/Dockerfile | 45 +-
examples/snowflake/hamilton_ui/README.md | 19 +
examples/snowflake/hamilton_ui/my_functions.py | 59 +-
.../snowflake/hamilton_ui/pipeline_endpoint.py | 17 +
examples/snowflake/hamilton_ui/snowflake.sql | 223 +++----
examples/spark/README.md | 19 +
examples/spark/pandas_on_spark/README.md | 19 +
examples/spark/pandas_on_spark/data_loaders.py | 17 +
examples/spark/pandas_on_spark/run.py | 17 +
examples/spark/pyspark/README.md | 19 +
examples/spark/pyspark/dataflow.py | 20 +-
examples/spark/pyspark/map_transforms.py | 17 +
examples/spark/pyspark/notebook.ipynb | 108 ++--
examples/spark/pyspark/run.py | 17 +
.../pyspark_feature_catalog/column_features.py | 17 +
.../pyspark_feature_catalog/example_usage.ipynb | 20 +-
examples/spark/pyspark_feature_catalog/features.py | 17 +
examples/spark/pyspark_udfs/README.md | 19 +
examples/spark/pyspark_udfs/pandas_udfs.py | 17 +
examples/spark/pyspark_udfs/run.py | 17 +
examples/spark/pyspark_udfs/vanilla_udfs.py | 17 +
examples/spark/tpc-h/README.md | 19 +
examples/spark/tpc-h/csv_data_loaders.py | 17 +
examples/spark/tpc-h/query_1.py | 19 +-
examples/spark/tpc-h/query_12.py | 17 +
examples/spark/tpc-h/query_8.py | 17 +
examples/spark/tpc-h/run.py | 17 +
examples/spark/world_of_warcraft/README.md | 19 +
.../world_of_warcraft__pandas.ipynb | 19 +-
.../world_of_warcraft__spark_v1.ipynb | 18 +-
.../world_of_warcraft__spark_v2.ipynb | 18 +-
.../world_of_warcraft/zone_features__common.py | 17 +
.../world_of_warcraft/zone_features__pandas.py | 17 +
.../world_of_warcraft/zone_features__spark_v1.py | 17 +
.../world_of_warcraft/zone_features__spark_v2.py | 17 +
examples/streamlit/README.md | 19 +
examples/streamlit/app.py | 22 +-
examples/streamlit/logic.py | 17 +
examples/styling_visualization/README.md | 19 +
examples/styling_visualization/dag.png | Bin 297452 -> 333312 bytes
examples/styling_visualization/data_loading.py | 22 +-
examples/styling_visualization/features.py | 17 +
examples/styling_visualization/model_pipeline.py | 22 +-
examples/styling_visualization/run.py | 17 +
examples/styling_visualization/sets.py | 17 +
examples/vaex/README.md | 19 +
examples/vaex/my_functions.py | 17 +
examples/vaex/my_script.py | 17 +
examples/vaex/notebook.ipynb | 9 +-
examples/validate_examples.py | 145 ++++-
examples/validation/static_validator/README.md | 19 +
examples/validation/static_validator/bad_module.py | 17 +
.../validation/static_validator/good_module.py | 17 +
.../validation/static_validator/notebook.ipynb | 31 +-
examples/validation/static_validator/run.py | 20 +-
hamilton/ad_hoc_utils.py | 6 +-
hamilton/async_driver.py | 44 +-
hamilton/base.py | 48 +-
hamilton/caching/adapter.py | 145 +++--
hamilton/caching/cache_key.py | 6 +-
hamilton/caching/fingerprinting.py | 3 +-
hamilton/caching/stores/base.py | 17 +-
hamilton/caching/stores/file.py | 10 +-
hamilton/caching/stores/memory.py | 29 +-
hamilton/caching/stores/sqlite.py | 11 +-
hamilton/cli/__main__.py | 25 +-
hamilton/cli/commands.py | 9 +-
hamilton/cli/logic.py | 37 +-
hamilton/common/__init__.py | 11 +-
hamilton/data_quality/base.py | 10 +-
hamilton/data_quality/default_validators.py | 53 +-
hamilton/data_quality/pandera_validators.py | 6 +-
hamilton/dataflows/__init__.py | 30 +-
hamilton/dataflows/template/README.md | 18 +
hamilton/dataflows/template/author.md | 19 +
hamilton/dev_utils/deprecation.py | 24 +-
hamilton/driver.py | 212 +++----
hamilton/execution/debugging_utils.py | 5 +-
hamilton/execution/executors.py | 7 +-
hamilton/execution/graph_functions.py | 23 +-
hamilton/execution/grouping.py | 60 +-
hamilton/execution/state.py | 64 +-
hamilton/experimental/databackend.py | 17 +
.../experimental/decorators/parameterize_frame.py | 9 +-
hamilton/experimental/h_cache.py | 15 +-
hamilton/experimental/h_databackends.py | 3 +-
hamilton/function_modifiers/README | 19 +
hamilton/function_modifiers/adapters.py | 53 +-
hamilton/function_modifiers/base.py | 59 +-
hamilton/function_modifiers/configuration.py | 29 +-
hamilton/function_modifiers/delayed.py | 11 +-
hamilton/function_modifiers/dependencies.py | 17 +-
hamilton/function_modifiers/expanders.py | 65 +-
hamilton/function_modifiers/macros.py | 82 ++-
hamilton/function_modifiers/metadata.py | 19 +-
hamilton/function_modifiers/recursive.py | 91 +--
hamilton/function_modifiers/validation.py | 13 +-
hamilton/graph.py | 130 ++--
hamilton/graph_types.py | 38 +-
hamilton/graph_utils.py | 4 +-
hamilton/htypes.py | 31 +-
hamilton/io/data_adapters.py | 19 +-
hamilton/io/default_data_loaders.py | 45 +-
hamilton/io/materialization.py | 44 +-
hamilton/io/utils.py | 10 +-
hamilton/lifecycle/api.py | 153 ++---
hamilton/lifecycle/base.py | 148 ++---
hamilton/lifecycle/default.py | 145 +++--
hamilton/models.py | 6 +-
hamilton/node.py | 50 +-
hamilton/plugins/README.md | 19 +
hamilton/plugins/dlt_extensions.py | 21 +-
hamilton/plugins/h_dask.py | 12 +-
hamilton/plugins/h_ddog.py | 50 +-
hamilton/plugins/h_diskcache.py | 16 +-
hamilton/plugins/h_experiments/data_model.py | 4 +-
hamilton/plugins/h_experiments/hook.py | 8 +-
hamilton/plugins/h_experiments/server.py | 9 +-
hamilton/plugins/h_kedro.py | 24 +-
hamilton/plugins/h_logging.py | 63 +-
hamilton/plugins/h_mlflow.py | 32 +-
hamilton/plugins/h_narwhals.py | 12 +-
hamilton/plugins/h_openlineage.py | 29 +-
hamilton/plugins/h_opentelemetry.py | 23 +-
hamilton/plugins/h_pandas.py | 21 +-
hamilton/plugins/h_pandera.py | 3 +-
hamilton/plugins/h_polars.py | 27 +-
hamilton/plugins/h_polars_lazyframe.py | 27 +-
hamilton/plugins/h_pyarrow.py | 4 +-
hamilton/plugins/h_pydantic.py | 3 +-
hamilton/plugins/h_ray.py | 16 +-
hamilton/plugins/h_rich.py | 11 +-
hamilton/plugins/h_schema.py | 21 +-
hamilton/plugins/h_slack.py | 14 +-
hamilton/plugins/h_spark.py | 126 ++--
hamilton/plugins/h_threadpool.py | 9 +-
hamilton/plugins/h_tqdm.py | 15 +-
hamilton/plugins/h_vaex.py | 12 +-
hamilton/plugins/huggingface_extensions.py | 66 +-
hamilton/plugins/ibis_extensions.py | 4 +-
hamilton/plugins/jupyter_magic.py | 14 +-
hamilton/plugins/kedro_extensions.py | 13 +-
hamilton/plugins/lightgbm_extensions.py | 19 +-
hamilton/plugins/matplotlib_extensions.py | 35 +-
hamilton/plugins/mlflow_extensions.py | 41 +-
hamilton/plugins/numpy_extensions.py | 41 +-
hamilton/plugins/pandas_extensions.py | 675 ++++++++++-----------
hamilton/plugins/plotly_extensions.py | 39 +-
hamilton/plugins/polars_extensions.py | 4 +-
hamilton/plugins/polars_lazyframe_extensions.py | 52 +-
hamilton/plugins/polars_post_1_0_0_extensions.py | 263 ++++----
hamilton/plugins/polars_pre_1_0_0_extension.py | 195 +++---
hamilton/plugins/pydantic_extensions.py | 6 +-
hamilton/plugins/sklearn_plot_extensions.py | 19 +-
hamilton/plugins/spark_extensions.py | 11 +-
hamilton/plugins/xgboost_extensions.py | 15 +-
hamilton/plugins/yaml_extensions.py | 15 +-
hamilton/registry.py | 32 +-
hamilton/telemetry.py | 17 +-
plugin_tests/README.md | 19 +
plugin_tests/h_dask/test_h_dask.py | 12 +-
plugin_tests/h_ray/conftest.py | 13 +
plugin_tests/h_spark/test_h_schema.py | 2 +-
plugin_tests/h_spark/test_h_spark.py | 19 +-
pyproject.toml | 80 +--
scripts/add_license_headers.py | 295 +++++++++
scripts/apache_release_helper.py | 4 +-
scripts/build_conda.sh | 19 +-
scripts/check_license_headers.py | 261 ++++++++
scripts/promote_rc.sh | 6 +-
scripts/test_memory.py | 17 +
scripts/update_blogs_in_learning_resources.py | 19 +-
tests/caching/metadata_store/test_base.py | 3 +-
tests/caching/result_store/test_file.py | 2 +-
tests/caching/test_fingerprinting.py | 4 +-
tests/caching/test_integration.py | 15 +-
tests/caching/test_result_store.py | 21 +-
tests/conftest.py | 27 +
tests/execution/test_executors.py | 2 +-
tests/execution/test_graph_functions.py | 10 +-
tests/function_modifiers/test_adapters.py | 67 +-
tests/function_modifiers/test_base.py | 12 +-
tests/function_modifiers/test_combined.py | 8 +-
tests/function_modifiers/test_delayed.py | 19 +-
tests/function_modifiers/test_dependencies.py | 8 +-
tests/function_modifiers/test_expanders.py | 172 +++---
tests/function_modifiers/test_macros.py | 13 +-
tests/function_modifiers/test_metadata.py | 2 +-
tests/function_modifiers/test_recursive.py | 43 +-
.../pandera/test_pandera_data_quality.py | 3 -
tests/io/test_data_adapters.py | 23 +-
tests/io/test_materialization.py | 27 +-
tests/lifecycle/lifecycle_adapters_for_testing.py | 73 +--
.../test_lifecycle_adapters_end_to_end.py | 53 +-
...est_lifecycle_adapters_end_to_end_task_based.py | 58 +-
tests/lifecycle/test_lifecycle_base.py | 36 +-
tests/nodes.py | 20 +-
tests/plugins/test_dlt_extensions.py | 19 +-
tests/plugins/test_huggingface_extensions.py | 40 +-
tests/plugins/test_lightgbm_extensions.py | 5 +-
tests/plugins/test_logging.py | 2 +-
tests/plugins/test_matplotlib_extensions.py | 2 +
tests/plugins/test_mlflow_extension.py | 16 +-
tests/plugins/test_pandas_extensions.py | 5 +-
tests/plugins/test_polars_extensions.py | 29 +-
tests/plugins/test_polars_lazyframe_extensions.py | 18 +
tests/plugins/test_pydantic_extensions.py | 22 +-
tests/plugins/test_sklearn_plot_extensions.py | 13 +-
tests/plugins/test_xgboost_extensions.py | 12 +-
tests/plugins/test_yaml_extension.py | 15 +-
tests/resources/compatible_input_types.py | 4 +-
tests/resources/display_name_functions.py | 52 ++
...n_collect.py => display_name_list_functions.py} | 29 +-
tests/resources/dq_dummy_examples.py | 7 +-
tests/resources/functions_with_generics.py | 8 +-
tests/resources/graceful_parallel.py | 7 +-
tests/resources/incompatible_input_types.py | 6 +-
tests/resources/nodes_with_future_annotation.py | 8 +-
tests/resources/optional_dependencies.py | 4 +-
tests/resources/simple_async_module.py | 3 +-
tests/resources/smoke_screen_module.py | 14 +-
.../spark/spark_dag_mixed_pyspark_pandas_udfs.py | 4 +-
tests/resources/spark/spark_dag_pyspark_udfs.py | 4 +-
tests/resources/test_driver_serde_mapper.py | 2 +-
tests/resources/typing_vs_not_typing.py | 6 +-
tests/test_base.py | 24 +-
tests/test_common.py | 2 +-
tests/test_default_data_quality.py | 10 +-
tests/test_dev_utils.py | 5 +-
tests/test_end_to_end.py | 217 ++++---
tests/test_graph.py | 185 +++++-
tests/test_graph_types.py | 7 -
tests/test_hamilton_driver.py | 128 ++--
tests/test_node.py | 15 +-
tests/test_parallel_graceful.py | 2 +-
tests/test_telemetry.py | 12 +-
tests/test_type_utils.py | 127 ++--
ui/README.md | 19 +
ui/backend/Dockerfile.backend | 17 +
ui/backend/Dockerfile.backend-prod | 17 +
ui/backend/server/commands.py | 3 +-
ui/backend/server/common/django_utils.py | 2 +-
ui/backend/server/entrypoint.sh | 17 +
ui/backend/server/requirements.txt | 6 +-
ui/backend/server/tests/conftest.py | 17 +
.../server/tests/test_db_methods/test_api_keys.py | 17 +
.../test_db_methods/test_auth_synchronization.py | 17 +
.../tests/test_db_methods/test_permissions.py | 36 +-
ui/backend/server/tests/test_db_methods/utils.py | 24 +-
.../server/tests/test_lifecycle/test_auth.py | 17 +
.../server/tests/test_lifecycle/test_projects.py | 23 +-
.../tests/test_lifecycle/test_run_tracking.py | 26 +-
.../server/tests/test_lifecycle/test_templates.py | 26 +-
ui/backend/server/trackingserver_auth/README.md | 19 +
ui/backend/server/trackingserver_auth/api.py | 5 +-
ui/backend/server/trackingserver_auth/schema.py | 15 +-
ui/backend/server/trackingserver_base/apps.py | 2 +-
.../server/trackingserver_base/auth/api_keys.py | 3 +-
.../server/trackingserver_base/auth/local.py | 5 +-
ui/backend/server/trackingserver_base/auth/sync.py | 5 +-
.../server/trackingserver_base/auth/testing.py | 3 +-
.../server/trackingserver_base/blob_storage.py | 7 +-
.../server/trackingserver_base/permissions/base.py | 8 +-
.../trackingserver_base/permissions/permissions.py | 18 +-
.../trackingserver_base/shared_types/attributes.py | 36 +-
ui/backend/server/trackingserver_base/tests.py | 17 +
ui/backend/server/trackingserver_projects/api.py | 29 +-
.../server/trackingserver_projects/schema.py | 65 +-
.../server/trackingserver_run_tracking/api.py | 22 +-
.../server/trackingserver_run_tracking/schema.py | 32 +-
ui/backend/server/trackingserver_template/api.py | 27 +-
.../server/trackingserver_template/schema.py | 21 +-
ui/backend/setup.py | 6 +-
ui/buildx_and_push.sh | 17 +
ui/common.sh | 17 +
ui/dev.sh | 17 +
ui/frontend/Dockerfile.frontend | 17 +
ui/frontend/Dockerfile.frontend-prod | 17 +
ui/frontend/README.md | 19 +
ui/frontend/package-lock.json | 75 ++-
ui/frontend/src/App.test.tsx | 19 +
ui/frontend/src/App.tsx | 19 +
ui/frontend/src/auth/LocalAccount.tsx | 19 +
ui/frontend/src/auth/Login.tsx | 19 +
ui/frontend/src/components/Home.tsx | 19 +
ui/frontend/src/components/common/Checkbox.tsx | 19 +
ui/frontend/src/components/common/CommonLinks.tsx | 19 +
ui/frontend/src/components/common/Datetime.tsx | 19 +
ui/frontend/src/components/common/DeleteButton.tsx | 19 +
ui/frontend/src/components/common/Dropdown.tsx | 19 +
ui/frontend/src/components/common/Error.tsx | 19 +
.../src/components/common/GenericTabbedView.tsx | 19 +
ui/frontend/src/components/common/GenericTable.tsx | 19 +
ui/frontend/src/components/common/HelpTooltip.tsx | 19 +
ui/frontend/src/components/common/Loading.tsx | 19 +
.../components/common/ProjectVersionSelector.tsx | 19 +
.../src/components/common/RunDurationChart.tsx | 19 +
ui/frontend/src/components/common/TagSelector.tsx | 19 +
ui/frontend/src/components/common/Tooltip.tsx | 19 +
ui/frontend/src/components/common/WithHelpIcon.tsx | 19 +
.../src/components/dashboard/Account/Account.tsx | 19 +
ui/frontend/src/components/dashboard/Alerts.tsx | 19 +
.../components/dashboard/Catalog/CatalogOutlet.tsx | 19 +
.../dashboard/Catalog/NodeRunExpansion.tsx | 19 +
.../components/dashboard/Catalog/SearchTable.tsx | 19 +
ui/frontend/src/components/dashboard/Code/Code.tsx | 19 +
.../src/components/dashboard/Code/CodeExplorer.tsx | 19 +
.../src/components/dashboard/Code/CodeOutlet.tsx | 19 +
.../components/dashboard/Code/CodeViewUtils.tsx | 19 +
.../src/components/dashboard/Code/Function.tsx | 19 +
.../dashboard/Code/FunctionGraphView.tsx | 19 +
ui/frontend/src/components/dashboard/Dashboard.tsx | 19 +
.../src/components/dashboard/NavBreadCrumb.tsx | 19 +
.../src/components/dashboard/Project/Project.tsx | 19 +
.../dashboard/Project/ProjectDocumentation.tsx | 19 +
.../dashboard/Project/ProjectLogInstructions.tsx | 19 +
.../src/components/dashboard/Project/Projects.tsx | 19 +
.../src/components/dashboard/Runs/Dashboarding.tsx | 19 +
.../components/dashboard/Runs/Run/DAGRunView.tsx | 19 +
.../src/components/dashboard/Runs/Run/Run.tsx | 19 +
.../components/dashboard/Runs/Run/TaskTable.tsx | 19 +
.../dashboard/Runs/Run/WaterfallChart.tsx | 19 +
.../src/components/dashboard/Runs/RunSummary.tsx | 19 +
ui/frontend/src/components/dashboard/Runs/Runs.tsx | 19 +
.../src/components/dashboard/Runs/RunsOutlet.tsx | 19 +
.../src/components/dashboard/Runs/RunsTable.tsx | 19 +
.../src/components/dashboard/Runs/Status.tsx | 19 +
.../components/dashboard/Runs/Task/CodeView.tsx | 19 +
.../components/dashboard/Runs/Task/ErrorView.tsx | 19 +
.../src/components/dashboard/Runs/Task/Task.tsx | 19 +
.../dashboard/Runs/Task/TaskRunOutlet.tsx | 19 +
.../Task/result-summaries/DAGWorksDescribe.tsx | 19 +
.../Task/result-summaries/DataObservability.tsx | 19 +
.../Runs/Task/result-summaries/DictView.tsx | 19 +
.../Runs/Task/result-summaries/HTMLView.tsx | 19 +
.../Runs/Task/result-summaries/PandasDescribe.tsx | 19 +
.../Runs/Task/result-summaries/SchemaView.tsx | 19 +
.../src/components/dashboard/Search/search.tsx | 19 +
.../src/components/dashboard/Settings/Account.tsx | 19 +
.../src/components/dashboard/Settings/ApiKeys.tsx | 19 +
.../src/components/dashboard/Settings/Settings.tsx | 19 +
.../src/components/dashboard/Versions/Versions.tsx | 19 +
.../dashboard/Versions/VersionsOutlet.tsx | 19 +
.../src/components/dashboard/Visualize/DAGRun.tsx | 19 +
.../src/components/dashboard/Visualize/DAGViz.tsx | 19 +
.../src/components/dashboard/Visualize/Legend.tsx | 19 +
.../dashboard/Visualize/NodeHierarchyManager.tsx | 19 +
.../dashboard/Visualize/VisualizeOutlet.tsx | 19 +
.../components/dashboard/Visualize/VizConsole.tsx | 19 +
ui/frontend/src/components/dashboard/Welcome.tsx | 19 +
.../components/notimplemented/NotImplemented.tsx | 19 +
ui/frontend/src/components/tutorial/HelpVideo.tsx | 19 +
ui/frontend/src/index.tsx | 19 +
ui/frontend/src/state/urlState.tsx | 19 +
ui/run.sh | 17 +
ui/sdk/.github/workflows/unit-tests.yml | 2 +-
ui/sdk/.pre-commit-config.yaml | 14 +-
ui/sdk/README.md | 27 +
ui/sdk/developer_setup.md | 27 +-
ui/sdk/pyproject.toml | 9 +-
ui/sdk/requirements-dev.txt | 2 +-
ui/sdk/requirements-test.txt | 4 +-
ui/sdk/ruff.toml | 2 +-
ui/sdk/src/hamilton_sdk/adapters.py | 60 +-
ui/sdk/src/hamilton_sdk/api/clients.py | 83 +--
ui/sdk/src/hamilton_sdk/cli/initialize.py | 4 +-
.../machine_learning/components/model_fitting.py | 4 +-
.../components/_run.py | 3 +-
ui/sdk/src/hamilton_sdk/driver.py | 75 ++-
.../src/hamilton_sdk/tracking/data_observation.py | 6 +-
.../src/hamilton_sdk/tracking/dataframe_stats.py | 12 +-
.../src/hamilton_sdk/tracking/example_tracking.py | 10 +-
ui/sdk/src/hamilton_sdk/tracking/ibis_stats.py | 6 +-
.../src/hamilton_sdk/tracking/langchain_stats.py | 6 +-
ui/sdk/src/hamilton_sdk/tracking/numpy_stats.py | 4 +-
.../src/hamilton_sdk/tracking/pandas_col_stats.py | 43 +-
ui/sdk/src/hamilton_sdk/tracking/pandas_stats.py | 10 +-
.../src/hamilton_sdk/tracking/polars_col_stats.py | 58 +-
ui/sdk/src/hamilton_sdk/tracking/polars_stats.py | 15 +-
ui/sdk/src/hamilton_sdk/tracking/pydantic_stats.py | 6 +-
ui/sdk/src/hamilton_sdk/tracking/pyspark_stats.py | 6 +-
ui/sdk/src/hamilton_sdk/tracking/runs.py | 32 +-
.../hamilton_sdk/tracking/scikit_learn_stats.py | 3 +-
ui/sdk/src/hamilton_sdk/tracking/trackingtypes.py | 8 +-
ui/sdk/src/hamilton_sdk/tracking/utils.py | 4 +-
ui/sdk/tests/conftest.py | 17 +
ui/sdk/tests/resources/basic_dag_with_config.py | 17 +
ui/sdk/tests/resources/parallel_dag.py | 22 +-
ui/sdk/tests/resources/parallel_dag_error.py | 22 +-
ui/sdk/tests/test_adapters.py | 23 +-
ui/sdk/tests/test_driver.py | 23 +-
ui/sdk/tests/test_package_to_hash/submodule1.py | 17 +
ui/sdk/tests/test_package_to_hash/submodule2.py | 17 +
ui/sdk/tests/test_tracking.py | 36 +-
ui/sdk/tests/tracking/test_constants.py | 17 +
ui/sdk/tests/tracking/test_dataframe_stats.py | 18 +-
ui/sdk/tests/tracking/test_ibis_stats.py | 19 +-
ui/sdk/tests/tracking/test_langchain_stats.py | 17 +
ui/sdk/tests/tracking/test_pandas_col_stats.py | 20 +-
ui/sdk/tests/tracking/test_pandas_stats.py | 23 +-
ui/sdk/tests/tracking/test_polars_col_stats.py | 17 +
ui/sdk/tests/tracking/test_polars_stats.py | 47 +-
ui/sdk/tests/tracking/test_pydantic_stats.py | 25 +-
ui/sdk/tests/tracking/test_pyspark_stats.py | 17 +
ui/sdk/tests/tracking/test_runs.py | 21 +-
ui/sdk/tests/tracking/test_stats.py | 17 +
ui/sdk/tests/tracking/test_utils.py | 32 +-
ui/stop.sh | 17 +
writeups/basics.md | 19 +
writeups/data_quality.md | 19 +
writeups/decorators.md | 19 +
writeups/developer_setup.md | 31 +-
writeups/garbage_collection/memory_test.py | 17 +
writeups/garbage_collection/post.md | 19 +
1062 files changed, 19676 insertions(+), 5526 deletions(-)
create mode 100644 docs/_static/100k_downloads_month.png
create mode 100644 docs/_static/1m_downloads.png
create mode 100644 docs/_static/hamilton_os_follow.png
create mode 100644 docs/_static/hamilton_slack.png
create mode 100644 docs/_static/logos/airflow.png
create mode 100644 docs/_static/logos/aws.svg
create mode 100644 docs/_static/logos/dagster.png
create mode 100644 docs/_static/logos/dask.svg
create mode 100644 docs/_static/logos/datadog.png
create mode 100644 docs/_static/logos/dbt.png
create mode 100644 docs/_static/logos/diskcache.png
create mode 100644 docs/_static/logos/dlt.svg
create mode 100644 docs/_static/logos/fastapi.svg
create mode 100644 docs/_static/logos/feast.png
create mode 100644 docs/_static/logos/gcp.svg
create mode 100644 docs/_static/logos/geopandas.png
create mode 100644 docs/_static/logos/huggingface.svg
create mode 100644 docs/_static/logos/ibis.png
create mode 100644 docs/_static/logos/jupyter.png
create mode 100644 docs/_static/logos/kedro.png
create mode 100644 docs/_static/logos/lightgbm.svg
create mode 100644 docs/_static/logos/matplotlib.png
create mode 100644 docs/_static/logos/metaflow.png
create mode 100644 docs/_static/logos/mlflow.png
create mode 100644 docs/_static/logos/modal.png
create mode 100644 docs/_static/logos/narwhals.png
create mode 100644 docs/_static/logos/numpy.svg
create mode 100644 docs/_static/logos/openlineage.svg
create mode 100644 docs/_static/logos/opentelemetry.png
create mode 100644 docs/_static/logos/pandas.svg
create mode 100644 docs/_static/logos/pandera.png
create mode 100644 docs/_static/logos/plotly.png
create mode 100644 docs/_static/logos/polars.svg
create mode 100644 docs/_static/logos/prefect.png
create mode 100644 docs/_static/logos/pyarrow.png
create mode 100644 docs/_static/logos/pydantic.svg
create mode 100644 docs/_static/logos/pyspark.svg
create mode 100644 docs/_static/logos/ray.svg
create mode 100644 docs/_static/logos/rich.svg
create mode 100644 docs/_static/logos/scikit-learn.png
create mode 100644 docs/_static/logos/slack.svg
create mode 100644 docs/_static/logos/streamlit.png
create mode 100644 docs/_static/logos/tqdm.png
create mode 100644 docs/_static/logos/vaex.png
create mode 100644 docs/_static/logos/vscode.png
create mode 100644 docs/_static/logos/xgboost.png
create mode 100644 docs/_static/logos/yaml.svg
create mode 100644 docs/ecosystem/index.md
create mode 100644 docs/reference/result-builders/PyArrow.rst
create mode 100755 scripts/add_license_headers.py
create mode 100755 scripts/check_license_headers.py
create mode 100644 tests/resources/display_name_functions.py
copy tests/resources/{dynamic_parallelism/inputs_in_collect.py =>
display_name_list_functions.py} (65%)