Skip to content

Use virtualenv by default when running an ML project#6489

Merged
harupy merged 6 commits intomlflow:branch-2.0from
harupy:use-virtualenv-project
Aug 18, 2022
Merged

Use virtualenv by default when running an ML project#6489
harupy merged 6 commits intomlflow:branch-2.0from
harupy:use-virtualenv-project

Conversation

@harupy
Copy link
Copy Markdown
Member

@harupy harupy commented Aug 17, 2022

Signed-off-by: harupy [email protected]

Related Issues/PRs

#6459

What changes are proposed in this pull request?

Use virtualenv by default when running an ML project.

How is this patch tested?

  • I have written tests (not required for typo or doc fix) and confirmed the proposed feature/bug-fix/change works.

Does this PR change the documentation?

  • No. You can skip the rest of this section.
  • Yes. Make sure the changed pages / sections render correctly by following the steps below.
  1. Click the Details link on the Preview docs check.
  2. Find the changed pages / sections and make sure they render correctly.

Release Notes

Is this a user-facing change?

  • No. You can skip the rest of this section.
  • Yes. Give a description of this change to be included in the release notes for MLflow users.

(Details in 1-2 sentences. You can just refer to another PR with a description if this PR is part of a larger change.)

What component(s), interfaces, languages, and integrations does this PR affect?

Components

  • area/artifacts: Artifact stores and artifact logging
  • area/build: Build and test infrastructure for MLflow
  • area/docs: MLflow documentation pages
  • area/examples: Example code
  • area/model-registry: Model Registry service, APIs, and the fluent client calls for Model Registry
  • area/models: MLmodel format, model serialization/deserialization, flavors
  • area/pipelines: Pipelines, Pipeline APIs, Pipeline configs, Pipeline Templates
  • area/projects: MLproject format, project running backends
  • area/scoring: MLflow Model server, model deployment tools, Spark UDFs
  • area/server-infra: MLflow Tracking server backend
  • area/tracking: Tracking Service, tracking client APIs, autologging

Interface

  • area/uiux: Front-end, user experience, plotting, JavaScript, JavaScript dev server
  • area/docker: Docker use across MLflow's components, such as MLflow Projects and MLflow Models
  • area/sqlalchemy: Use of SQLAlchemy in the Tracking Service or Model Registry
  • area/windows: Windows support

Language

  • language/r: R APIs and clients
  • language/java: Java APIs and clients
  • language/new: Proposals for new client languages

Integrations

  • integrations/azure: Azure and Azure ML integrations
  • integrations/sagemaker: SageMaker integrations
  • integrations/databricks: Databricks integrations

How should the PR be classified in the release notes? Choose one:

  • rn/breaking-change - The PR will be mentioned in the "Breaking Changes" section
  • rn/none - No description will be included. The PR will be mentioned only by the PR number in the "Small Bugfixes and Documentation Updates" section
  • rn/feature - A new user-facing feature worth mentioning in the release notes
  • rn/bug-fix - A user-facing bug fix worth mentioning in the release notes
  • rn/documentation - A user-facing documentation change worth mentioning in the release notes

@github-actions github-actions bot added area/projects MLproject format, project running backends rn/none List under Small Changes in Changelogs. labels Aug 17, 2022
harupy added 2 commits August 17, 2022 10:56
Signed-off-by: harupy <[email protected]>
@harupy harupy requested a review from dbczumar August 17, 2022 02:41
harupy added 2 commits August 17, 2022 12:56
Signed-off-by: harupy <[email protected]>
Signed-off-by: harupy <[email protected]>

\b
- local: use the local environment
- conda: use conda
Copy link
Copy Markdown
Collaborator

@dbczumar dbczumar Aug 18, 2022

Choose a reason for hiding this comment

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

Can we document virtualenv first, ahead of conda? Can we also make this change for ENV_MANAGER used for models?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Fixed!

Copy link
Copy Markdown
Collaborator

@dbczumar dbczumar left a comment

Choose a reason for hiding this comment

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

LGTM! Thanks @harupy ! Can we also file & prioritize a ticket to convert our existing examples to using virtualenv instead of conda?

@harupy harupy merged commit 199d5a8 into mlflow:branch-2.0 Aug 18, 2022
@harupy harupy deleted the use-virtualenv-project branch August 18, 2022 02:43
BenWilson2 added a commit that referenced this pull request Oct 27, 2022
* Rebase `branch-2.0` on master (#6467)

* Fix java model server compatibility with models containing databricks_runtime conf (#6337)

* Javafix

Signed-off-by: dbczumar <[email protected]>

* Resource fix

Signed-off-by: dbczumar <[email protected]>

* Add run / model links to MLP train step card (#6294)

* One commit

Signed-off-by: dbczumar <[email protected]>

* Submodule revert

Signed-off-by: dbczumar <[email protected]>

* Fix client tests

Signed-off-by: dbczumar <[email protected]>

* fix ci

Signed-off-by: dbczumar <[email protected]>

* Remove unused / invalid import

Signed-off-by: dbczumar <[email protected]>

* Put run summary back to end, fix tests

Signed-off-by: dbczumar <[email protected]>

* Use mocks instead

Signed-off-by: dbczumar <[email protected]>

* Fix inefficient relative time computation for metric plot (#6341)

* compute minTimestamp only once

Signed-off-by: harupy <[email protected]>

* fix method name

Signed-off-by: harupy <[email protected]>

* fix lint

Signed-off-by: harupy <[email protected]>

* return empty array

Signed-off-by: harupy <[email protected]>

* fix test

Signed-off-by: harupy <[email protected]>

* Add `MLFLOW_SQLALCHEMYSTORE_POOL_RECYCLE` flag (#6344)

* Add pool_recycle option to SQLAlchemy create_engine

Signed-off-by: Michal Karzynski <[email protected]>

* Add new option to unit test

Signed-off-by: Michal Karzynski <[email protected]>

* Add note in documentation

Signed-off-by: Michal Karzynski <[email protected]>

* Add box plot in compare-runs page (#6308)

* Added BoxPlot

Signed-off-by: changyonglik <[email protected]>

* Fixed key error

Signed-off-by: changyonglik <[email protected]>

* Added default state

Signed-off-by: changyonglik <[email protected]>

* Fixed props passing

Signed-off-by: changyonglik <[email protected]>

* Fixed react hooks state

Signed-off-by: changyonglik <[email protected]>

* Added unit test

Signed-off-by: changyonglik <[email protected]>

* Added boxplot to CompareModelVersion

Signed-off-by: changyonglik <[email protected]>

* Changed keys numbering to reflect tab name

Signed-off-by: changyonglik <[email protected]>

* Made the ordering of tabs consistent accross CompareRunView and CompareModelVersion

Signed-off-by: changyonglik <[email protected]>

* Linted

Signed-off-by: changyonglik <[email protected]>

* Fixed FormattedMessage

Signed-off-by: changyonglik <[email protected]>

* refactoring

Signed-off-by: harupy <[email protected]>

* fix lint errors

Signed-off-by: harupy <[email protected]>

* i18n

Signed-off-by: harupy <[email protected]>

* minor comment fix

Signed-off-by: harupy <[email protected]>

Co-authored-by: harupy <[email protected]>

* Add script and workflow to update requirements.yaml specifications (#6287)

* add script to update requirements.yaml

Signed-off-by: harupy <[email protected]>

* update both skinny and core requirements

Signed-off-by: harupy <[email protected]>

* remove base

Signed-off-by: harupy <[email protected]>

* clean up

Signed-off-by: harupy <[email protected]>

* add MLFLOW_CONDA_HOME

Signed-off-by: harupy <[email protected]>

* create create-pr job

Signed-off-by: harupy <[email protected]>

* fix syntax

Signed-off-by: harupy <[email protected]>

* remove redundant if

Signed-off-by: harupy <[email protected]>

* clean up

Signed-off-by: harupy <[email protected]>

* doc

Signed-off-by: harupy <[email protected]>

* dynamically determine python version

Signed-off-by: harupy <[email protected]>

* remove python version mock

Signed-off-by: harupy <[email protected]>

* use setup-ssh.sh in master.yml

Signed-off-by: harupy <[email protected]>

* simplify

Signed-off-by: harupy <[email protected]>

* update both core and skinny requirements

Signed-off-by: harupy <[email protected]>

* use env

Signed-off-by: harupy <[email protected]>

* remove action version

Signed-off-by: harupy <[email protected]>

* fix pandas dtypes issue

Signed-off-by: harupy <[email protected]>

* check if PR already exists

Signed-off-by: harupy <[email protected]>

* add semicolons

Signed-off-by: harupy <[email protected]>

* test PR creation

Signed-off-by: harupy <[email protected]>

* set base

Signed-off-by: harupy <[email protected]>

* use run_number

Signed-off-by: harupy <[email protected]>

* set result-encoding

Signed-off-by: harupy <[email protected]>

* revert changes for test

Signed-off-by: harupy <[email protected]>

* fix more tests

Signed-off-by: harupy <[email protected]>

* fix run URL

Signed-off-by: harupy <[email protected]>

* add dot

Signed-off-by: harupy <[email protected]>

* remove minimum_version

Signed-off-by: harupy <[email protected]>

* remove create-pr job

Signed-off-by: harupy <[email protected]>

* rename workflow

Signed-off-by: harupy <[email protected]>

* mutate dict approach

Signed-off-by: harupy <[email protected]>

* use ruamel

Signed-off-by: harupy <[email protected]>

* remove PYTHON_VERSION patch

Signed-off-by: harupy <[email protected]>

* add ruamel.yaml to requirements

Signed-off-by: harupy <[email protected]>

* skip update-requirements on PR

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* print new version

Signed-off-by: harupy <[email protected]>

* preserve quotes

Signed-off-by: harupy <[email protected]>

* fix badge

Signed-off-by: harupy <[email protected]>

* fix README

Signed-off-by: harupy <[email protected]>

* run ci

Signed-off-by: harupy <[email protected]>

* remove validate-requirements.yml

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* fix test_dataframe_from_json

Signed-off-by: harupy <[email protected]>

* Make `model_uri` optional for `mlflow models build-docker` (#6302)

* Make model_uri optional for mlflow models build-docker

Signed-off-by: harupy <[email protected]>

* fix doc

Signed-off-by: harupy <[email protected]>

* Add generic

Signed-off-by: harupy <[email protected]>

* Add pythou_function flavor

Signed-off-by: harupy <[email protected]>

* fix doc

Signed-off-by: harupy <[email protected]>

* quotes

Signed-off-by: harupy <[email protected]>

* use longer options

Signed-off-by: harupy <[email protected]>

* add index (#6347)

Signed-off-by: harupy <[email protected]>

* fix badge link (#6349)

Signed-off-by: harupy <[email protected]>

* Enable consider-using-dict-items rule for pylint (#6351)

* Enable consider-using-dict-items

Signed-off-by: harupy <[email protected]>

* fix lint errors

Signed-off-by: harupy <[email protected]>

* Enable consider-merging-isinstance (#6350)

Signed-off-by: harupy <[email protected]>

* Enable consider-using-from-import rule for pylint (#6352)

* Enable consider-using-from-import

Signed-off-by: harupy <[email protected]>

* fix

Signed-off-by: harupy <[email protected]>

* fix datasets import

Signed-off-by: harupy <[email protected]>

* fix failed tests

Signed-off-by: harupy <[email protected]>

* Run model registry sqlalchemy tests in database job (#6353)

Signed-off-by: harupy <[email protected]>

* update to run profiles on the first 100 dataframe columns (#6297)

* update to run profiles on the first 100 dataframe columns

Signed-off-by: Sunish Sheth <[email protected]>

* Adding replace=True so we can sample rows twice

Signed-off-by: Sunish Sheth <[email protected]>

* Removing replace=true and fixing how the max_rows are calculated

Signed-off-by: Sunish Sheth <[email protected]>

* Fix sklearn autologging input example & signature mutation for models containing transformers (#6230)

* Fix with test case

Signed-off-by: dbczumar <[email protected]>

* Test fix

Signed-off-by: dbczumar <[email protected]>

* Fix and simplification

Signed-off-by: dbczumar <[email protected]>

* more fixes & better test coveragE

Signed-off-by: dbczumar <[email protected]>

* test

Signed-off-by: dbczumar <[email protected]>

* LGBM test

Signed-off-by: dbczumar <[email protected]>

* Format

Signed-off-by: dbczumar <[email protected]>

* Address comments

Signed-off-by: dbczumar <[email protected]>

* Fixes

Signed-off-by: dbczumar <[email protected]>

* Use py37-compatible call args syntax

Signed-off-by: dbczumar <[email protected]>

* use list (#6363)

Signed-off-by: harupy <[email protected]>

* Log runtime pipeline config to MLflow (#6359)

* Log runtime pipeline config to MLflow

Signed-off-by: Jin Zhang <[email protected]>

* Fixed lint

Signed-off-by: Jin Zhang <[email protected]>

* Add status badge for stale action (#6372)

Signed-off-by: harupy <[email protected]>

* Add stack trace section to bug report template (#6374)

Signed-off-by: harupy <[email protected]>

* Skipping the transform step by using Functional transformer (#6362)

Signed-off-by: Sunish Sheth <[email protected]>

* Series schema (#6361)

* Added in name for ColSpec of pandas datatype

infer panda series name for ColSpec

Signed-off-by: Ryan Fogle <[email protected]>

* Added test for Series name inference

added one more pytest condition in test_schema:test_schema_inference_on_pandas_series

Signed-off-by: Ryan Fogle <[email protected]>

* Update test_schema.py

Added in one more assertion to test schema inference.

Signed-off-by: Ryan Fogle <[email protected]>

* ran black

Signed-off-by: Ryan Fogle <[email protected]>

* added in requested changes in issue #6361

Signed-off-by: Ryan Fogle <[email protected]>

* fix typo. changed hasattr to getattr

Signed-off-by: Ryan Fogle <[email protected]>

* integrate mlflowdbfs (#6282)

Signed-off-by: Brian Barnes <[email protected]>

* Fix step card display breakage in Jupyter notebooks (#6378)

* remove

Signed-off-by: apurva-koti <[email protected]>

* fix

Signed-off-by: apurva-koti <[email protected]>

* Avoid using flask 2.2.0 (#6380)

Signed-off-by: harupy <[email protected]>

* Migrate GCS environment variables to `mlflow.environment_variables` module (#6375)

* Migrate GCS environment variables to mlflow.environment_variables

Signed-off-by: harupy <[email protected]>

* add default

Signed-off-by: harupy <[email protected]>

* improve comments

Signed-off-by: harupy <[email protected]>

* Avoid logging model signatures in pyspark ML autologging if model input/output dataframe contains unsupported data types (#6365)

* Avoid logging signatures

Signed-off-by: harupy <[email protected]>

* test

Signed-off-by: harupy <[email protected]>

* fix indent

Signed-off-by: harupy <[email protected]>

* check model output

Signed-off-by: harupy <[email protected]>

* fix warning message

Signed-off-by: harupy <[email protected]>

* todo

Signed-off-by: harupy <[email protected]>

* update test and doc

Signed-off-by: harupy <[email protected]>

* fix docstring

Signed-off-by: harupy <[email protected]>

* fix failed tests

Signed-off-by: harupy <[email protected]>

* improve _assert_autolog_infers_model_signature_correctly

Signed-off-by: harupy <[email protected]>

* Refactor `set_matrix.py` (#6373)

* refacor set_matrix.py

Signed-off-by: harupy <[email protected]>

* fix

Signed-off-by: harupy <[email protected]>

* fix tests

Signed-off-by: harupy <[email protected]>

* tset for --no-dev

Signed-off-by: harupy <[email protected]>

* install pytest and pytest-cov

Signed-off-by: harupy <[email protected]>

* test for --changed-files

Signed-off-by: harupy <[email protected]>

* add pyyaml to requirements

Signed-off-by: harupy <[email protected]>

* fix is_matrix_empty

Signed-off-by: harupy <[email protected]>

* use raw string and re.match

Signed-off-by: harupy <[email protected]>

* Fix is_matrix_empty (#6385)

Signed-off-by: harupy <[email protected]>

* Allow mlflow-skinny's autolog() to succeed when no scipy is installed (#5897)

* allow mlflow-skinny's autolog() to succeed when no scipy is installed

Signed-off-by: Hannes Schulz <[email protected]>

* optional pyfunc scipy dependency

Signed-off-by: Hannes Schulz <[email protected]>

* fix linter-discovered issues

Signed-off-by: Hannes Schulz <[email protected]>

* add test case, autolog() should pass w/o scipy installed

Signed-off-by: Hannes Schulz <[email protected]>

* minor cleanup

Signed-off-by: Hannes Schulz <[email protected]>

* test creating _Example with / without scipy present

Signed-off-by: Hannes Schulz <[email protected]>

* docs: do not warn about sparse matrix classes

Signed-off-by: Hannes Schulz <[email protected]>

* linting

Signed-off-by: Hannes Schulz <[email protected]>

* address review comment

Signed-off-by: Hannes Schulz <[email protected]>

* run black

Signed-off-by: Hannes Schulz <[email protected]>

* allow mlflow-skinny's autolog() to succeed when no scipy is installed

Signed-off-by: Hannes Schulz <[email protected]>

* optional pyfunc scipy dependency

Signed-off-by: Hannes Schulz <[email protected]>

* fix linter-discovered issues

Signed-off-by: Hannes Schulz <[email protected]>

* add test case, autolog() should pass w/o scipy installed

Signed-off-by: Hannes Schulz <[email protected]>

* minor cleanup

Signed-off-by: Hannes Schulz <[email protected]>

* test creating _Example with / without scipy present

Signed-off-by: Hannes Schulz <[email protected]>

* docs: do not warn about sparse matrix classes

Signed-off-by: Hannes Schulz <[email protected]>

* linting

Signed-off-by: Hannes Schulz <[email protected]>

* address review comment

Signed-off-by: Hannes Schulz <[email protected]>

* run black

Signed-off-by: Hannes Schulz <[email protected]>

* remove redundant None check after import

Signed-off-by: Hannes Schulz <[email protected]>

* delete comment

Signed-off-by: Hannes Schulz <[email protected]>

* Revert "remove redundant None check after import"

This reverts commit f2e198c944f41d9a96c20ae471d71bff39431b48.

Signed-off-by: Hannes Schulz <[email protected]>

* review comments

Signed-off-by: Hannes Schulz <[email protected]>

* remove redundant test

Signed-off-by: Hannes Schulz <[email protected]>

* Apply suggestions from code review

Co-authored-by: Harutaka Kawamura <[email protected]>
Signed-off-by: Hannes Schulz <[email protected]>

* Autoformat: https://github.com/mlflow/mlflow/actions/runs/2779791161

Signed-off-by: mlflow-automation <[email protected]>

Co-authored-by: Harutaka Kawamura <[email protected]>
Co-authored-by: dbczumar <[email protected]>
Co-authored-by: mlflow-automation <[email protected]>

* Fix extraneous warning about pyspark evaluation truncation (#6389)

* Revert #6380 (#6386)

* revert

Signed-off-by: harupy <[email protected]>

* workaround for test_prometheus_exporter

Signed-off-by: harupy <[email protected]>

* nit

Signed-off-by: harupy <[email protected]>

* Validate metric value in `FileStore.log_metric` (#6381)

* add failing test

Signed-off-by: harupy <[email protected]>

* use _validate_metric

Signed-off-by: harupy <[email protected]>

* fix invalid metric timestamp

Signed-off-by: harupy <[email protected]>

* fix docstring

Signed-off-by: harupy <[email protected]>

* fix java test

Signed-off-by: harupy <[email protected]>

* Make search experiment by tag key comparison case sensitive in MYSQL (#6333)

* init

Signed-off-by: Weichen Xu <[email protected]>

* add test

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* fix BINARY conditions in MySQL

Signed-off-by: harupy <[email protected]>

* fix attr error

Signed-off-by: harupy <[email protected]>

Co-authored-by: harupy <[email protected]>

* Run Model Registry SQLAlchemy tests in PostgreSQL, MySQL, and MSSQL (#6390)

* Run Model Registry SQLAlchemy tests in postgres, mysql, and mssql

Signed-off-by: harupy <[email protected]>

* fix failed tests

Signed-off-by: harupy <[email protected]>

* remove uuid

Signed-off-by: harupy <[email protected]>

* clean up

Signed-off-by: harupy <[email protected]>

* do not drop tables

Signed-off-by: harupy <[email protected]>

* Fix filestore data loss on failed write & mitigate read / write race condition (#6388)

* Fix

Signed-off-by: dbczumar <[email protected]>

* Fix

Signed-off-by: dbczumar <[email protected]>

* Format

Signed-off-by: dbczumar <[email protected]>

* Added a custom filter from_json to render_and_merge_yaml (#6368)

* Added a custom filter from_json to render_and_merge_yaml

Signed-off-by: Jin Zhang <[email protected]>

* Fixed test

Signed-off-by: Jin Zhang <[email protected]>

* Update tests/utils/test_file_utils.py

Co-authored-by: Siddharth Murching <[email protected]>

* Update tests/utils/test_file_utils.py

Co-authored-by: Siddharth Murching <[email protected]>

* Fixed test

Signed-off-by: Jin Zhang <[email protected]>

* Fixed windows test attempt

Signed-off-by: Jin Zhang <[email protected]>

* Fixed windows test

Signed-off-by: Jin Zhang <[email protected]>

Co-authored-by: Siddharth Murching <[email protected]>

* Fix `!=` operator for MySQL (#6397)

* fix ne operator and improve tests

Signed-off-by: harupy <[email protected]>

* add () to other operators

Signed-off-by: harupy <[email protected]>

* Simplify the documentation section in the PR template (#6398)

* Simplify the documentation section in the PR template

Signed-off-by: harupy <[email protected]>

* fix

Signed-off-by: harupy <[email protected]>

* Timebased gc (#6354)

* Added delete_time field to runs table

Signed-off-by: Jason Cheng <[email protected]>

* Updated latest_schema.sql to pass tests/store/tracking/test_sqlalchemy_store_schema.py

Signed-off-by: Jason Cheng <[email protected]>

* Added delete_time column into mlflow/store/tracking/dbmodels/initial_models.py

Signed-off-by: Jason Cheng <[email protected]>

* Moved the docstring to the end of the declaration instead of the start

Signed-off-by: Jason Cheng <[email protected]>

* Regenerated protobuf for RunInfo new schema, and passed pytest

Signed-off-by: Jason Cheng <[email protected]>

* Added --older-than flag in mlflow gc command, and added tests for that cli command

Signed-off-by: Jason Cheng <[email protected]>

* Removed delete_time from RunInfo proto

Signed-off-by: Jason Cheng <[email protected]>

* Set default older-than flag to None

Signed-off-by: Jason Cheng <[email protected]>

* Remove delete_time from RunInfo, add optional parameter older_than to store.get_deleted_runs(), and write delete_time into yaml file for file storage instead of adding it to RunInfo

Signed-off-by: Jason Cheng <[email protected]>

* Remove commented delete_time in RunInfo constructor in models.py

Signed-off-by: Jason Cheng <[email protected]>

* added INVALID_PARAMETER_VALUE error code in mlflow gc

Signed-off-by: Jason Cheng <[email protected]>

* Resolve case of delete time not in meta.yaml file, edited overwrite_run_info and gc

Signed-off-by: Jason Cheng <[email protected]>

* Rename delete_time to deleted_time

Signed-off-by: Jason Cheng <[email protected]>

* Rename delete_time to deleted_time, match error message in cli tests, filter SqlRuns by deleted_time, indicate float values accepted for gc --older-than flag

Signed-off-by: Jason Cheng <[email protected]>

* Rename delete_time to deleted_time, fixed assert statement in test_mlflow_gc, and fixed deleted_time queries in test_file_store.py and test_sqlalchemy_store.py

Signed-off-by: Jason Cheng <[email protected]>

* Only check if  is in meta after restoring run in test_delte_restore_run

Signed-off-by: Jason Cheng <[email protected]>

* Fixed lint errors

Signed-off-by: Jason Cheng <[email protected]>

* Install mlflow from repository root

Signed-off-by: harupy <[email protected]>

Co-authored-by: harupy <[email protected]>

* Separate protos job (#6399)

* Separate protos job

Signed-off-by: harupy <[email protected]>

* test

Signed-off-by: harupy <[email protected]>

* Add paths

Signed-off-by: harupy <[email protected]>

* Revert "test"

This reverts commit 5d04b02f55ec92e1e3ac18eb651ea989ca0d469a.

Signed-off-by: harupy <[email protected]>

* Fix flaky `TestFileStore.test_get_deleted_runs` (#6402)

* use gt operator

Signed-off-by: harupy <[email protected]>

* fix sqlalchemy store

Signed-off-by: harupy <[email protected]>

* Migrate environment variables for SQLAlchemy store (#6396)

Signed-off-by: harupy <[email protected]>

* Deduplicate MlflowClient in MLflow docs, move to mlflow.client module (#6405)

* Dedupe MlflowClient

Signed-off-by: dbczumar <[email protected]>

* Improvements

Signed-off-by: dbczumar <[email protected]>

* Add client

Signed-off-by: dbczumar <[email protected]>

* Remove unused functions in `mlflow.data` module (#6408)

* remove unused functions in data

Signed-off-by: harupy <[email protected]>

* Remove unused functions and variables

Signed-off-by: harupy <[email protected]>

* Tag based registered model search and model version search (#6320)

* init

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update tests

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* clean

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* add test

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* de-dup tag based search result

Signed-off-by: Weichen Xu <[email protected]>

* add () to fix case_sensitive_mysql_ne

Signed-off-by: Weichen Xu <[email protected]>

* fix

Signed-off-by: Weichen Xu <[email protected]>

* lint

Signed-off-by: Weichen Xu <[email protected]>

* fix

* fix test in TODO

Signed-off-by: Weichen Xu <[email protected]>

* support dup tag key filter

Signed-off-by: Weichen Xu <[email protected]>

* add mv order by

Signed-off-by: Weichen Xu <[email protected]>

* cmp res list in test

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* add doc

Signed-off-by: Weichen Xu <[email protected]>

* fix

Signed-off-by: Weichen Xu <[email protected]>

* fix lint

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* update doc

Signed-off-by: Weichen Xu <[email protected]>

* Increase maximum param value length to 500 (#6358)

* increase validation of maximum param value length from 250 to 500 (squashed)

Signed-off-by: Jan Sindlar <[email protected]>

* 1. added test for exceeding max length. 2. lint. 3. validation logic addresses null

Signed-off-by: Jan Sindlar <[email protected]>

* file store should test already stringified params

Signed-off-by: Jan Sindlar <[email protected]>

* update alembic chain

Signed-off-by: Jan Sindlar <[email protected]>

* Autoformat: https://github.com/mlflow/mlflow/actions/runs/2800398158

Signed-off-by: mlflow-automation <[email protected]>

* Update tests/store/tracking/test_file_store.py

Co-authored-by: Harutaka Kawamura <[email protected]>
Signed-off-by: Jan Sindlar <[email protected]>

Co-authored-by: Jan Sindlar <[email protected]>
Co-authored-by: mlflow-automation <[email protected]>
Co-authored-by: Harutaka Kawamura <[email protected]>

* Add workflow dispatch for requirements validation, remove duplicate file (#6418)

* Workflow dispatch

Signed-off-by: dbczumar <[email protected]>

* Remove unused

Signed-off-by: dbczumar <[email protected]>

* Prevent `pytest.raises` context manager from containing multiple statements (#6409)

* rename

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* Do not allow calling assert in pytest.raises

Signed-off-by: harupy <[email protected]>

* more strict rule

Signed-off-by: harupy <[email protected]>

* Improve error message

Signed-off-by: harupy <[email protected]>

* relax condition

Signed-off-by: harupy <[email protected]>

* fix lint errors

Signed-off-by: harupy <[email protected]>

* fix failed tests

Signed-off-by: harupy <[email protected]>

* clean up

Signed-off-by: harupy <[email protected]>

* rename _is_complex_pytest_raises

Signed-off-by: harupy <[email protected]>

* fix lint errors

Signed-off-by: harupy <[email protected]>

* fix failed tests

Signed-off-by: harupy <[email protected]>

* Fix regression in pandas type inference behavior for scoring server (#6417)

* Fix impl

Signed-off-by: dbczumar <[email protected]>

* Remove unused pandas import

Signed-off-by: dbczumar <[email protected]>

* Adjust client to use SearchExperiments POST method (#6415)

* POST

Signed-off-by: dbczumar <[email protected]>

* Generate protos

Signed-off-by: dbczumar <[email protected]>

* Fix test

Signed-off-by: dbczumar <[email protected]>

* update (#6420)

Signed-off-by: Weichen Xu <[email protected]>

* Check if artifacts are proxied in model_version_artifact_handler (#6355)

* Check if artifacts are proxied in model_version_artifact_handler

Signed-off-by: Mohammad Abbas <[email protected]>

* Use file prefix for artifact dest on windows

Signed-off-by: dbczumar <[email protected]>

* Fix application of prefix

Signed-off-by: dbczumar <[email protected]>

* Fixes

Signed-off-by: dbczumar <[email protected]>

Co-authored-by: dbczumar <[email protected]>

* Allow sql filter IN operator right-hand side values including whitespaces (#6413)

* support in rhs whitespace

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* Fix IN operator related issues in sql filter parser (#6411)

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* clean

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* address comment

Signed-off-by: Weichen Xu <[email protected]>

* Remove unused method `SearchUtils._get_comparison_for_model_registry` (#6412)

* init

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* Update MLflow UI (#6422)

* Project import generated by Copybara.

GitOrigin-RevId: 086b1200f4573559e37fcea6cb5472d52f166e42
Signed-off-by: dbczumar <[email protected]>

* Reconcile changes from universe with OSS

Signed-off-by: dbczumar <[email protected]>

* Fix test fails

Signed-off-by: dbczumar <[email protected]>

* Fix

Signed-off-by: dbczumar <[email protected]>

* Apply model search fix

Signed-off-by: dbczumar <[email protected]>

* Remove errant test line

Signed-off-by: dbczumar <[email protected]>

Co-authored-by: Richard Zang <[email protected]>

* remove near from deprecation msg (#6430)

Signed-off-by: ninabacc-db <[email protected]>

* Raise clear error message when pipeline path contains a space (#6426)

* Add unsupported

Signed-off-by: dbczumar <[email protected]>

* Fix

Signed-off-by: dbczumar <[email protected]>

* Exc

Signed-off-by: dbczumar <[email protected]>

* Test

Signed-off-by: dbczumar <[email protected]>

* Format

Signed-off-by: dbczumar <[email protected]>

* Test fix

Signed-off-by: dbczumar <[email protected]>

* Fix

Signed-off-by: dbczumar <[email protected]>

* [ALL TESTS] Changelog for MLflow 1.28.0 (#6433)

* Generating changelog for MLflow 1.27.1.dev0

Signed-off-by: Jenkins <[email protected]>

* Changelog

Signed-off-by: dbczumar <[email protected]>

* Add missing PR

Signed-off-by: dbczumar <[email protected]>

* Some fixes

Signed-off-by: dbczumar <[email protected]>

* More small fixes

Signed-off-by: dbczumar <[email protected]>

* Fix

Signed-off-by: dbczumar <[email protected]>

Signed-off-by: Jenkins <[email protected]>
Signed-off-by: dbczumar <[email protected]>
Co-authored-by: Jenkins <[email protected]>
Co-authored-by: dbczumar <[email protected]>

* Patch (#6440)

Signed-off-by: dbczumar <[email protected]>

Signed-off-by: dbczumar <[email protected]>

* [ALL TESTS] Update  (#6443)

* python dev/update_ml_package_versions.py

Signed-off-by: Jenkins <[email protected]>

* pyspark max ver 3.4

Signed-off-by: Weichen Xu <[email protected]>

Signed-off-by: Jenkins <[email protected]>
Signed-off-by: Weichen Xu <[email protected]>
Co-authored-by: Jenkins <[email protected]>
Co-authored-by: Weichen Xu <[email protected]>

* Update MLflow version to 1.28.1 (#6449)

Signed-off-by: Jenkins <[email protected]>

Signed-off-by: Jenkins <[email protected]>
Co-authored-by: Jenkins <[email protected]>

* Add data capture config to sagemaker (#6423)

Signed-off-by: jonwiggins <[email protected]>

Signed-off-by: jonwiggins <[email protected]>

* Fix small search_runs docs issues (#6452)

* Fix

Signed-off-by: dbczumar <[email protected]>

* Doc fix

Signed-off-by: dbczumar <[email protected]>

* Fix

Signed-off-by: dbczumar <[email protected]>

Signed-off-by: dbczumar <[email protected]>

* python dev/update_pypi_package_index.py (#6442)

Signed-off-by: Jenkins <[email protected]>

Signed-off-by: Jenkins <[email protected]>
Co-authored-by: Jenkins <[email protected]>

* use xgboost on pypi (#6461)

Signed-off-by: harupy <[email protected]>

Signed-off-by: harupy <[email protected]>

* Add environment variable for `echo` option in `create_engine` (#6460)

* Add environment variable for echo

Signed-off-by: harupy <[email protected]>

* use _BooleanEnvironmentVariable

Signed-off-by: harupy <[email protected]>

* address comments

Signed-off-by: harupy <[email protected]>

* address comments and add tests

Signed-off-by: harupy <[email protected]>

* fix comment

Signed-off-by: harupy <[email protected]>

Signed-off-by: harupy <[email protected]>

Signed-off-by: dbczumar <[email protected]>
Signed-off-by: harupy <[email protected]>
Signed-off-by: Michal Karzynski <[email protected]>
Signed-off-by: Sunish Sheth <[email protected]>
Signed-off-by: Jin Zhang <[email protected]>
Signed-off-by: Ryan Fogle <[email protected]>
Signed-off-by: Brian Barnes <[email protected]>
Signed-off-by: apurva-koti <[email protected]>
Signed-off-by: Weichen Xu <[email protected]>
Signed-off-by: ninabacc-db <[email protected]>
Signed-off-by: Jenkins <[email protected]>
Signed-off-by: jonwiggins <[email protected]>
Co-authored-by: Corey Zumar <[email protected]>
Co-authored-by: Michał Karzyński <[email protected]>
Co-authored-by: Chang Yong Lik <[email protected]>
Co-authored-by: Sunish Sheth <[email protected]>
Co-authored-by: jinzhang21 <[email protected]>
Co-authored-by: Ryan Fogle <[email protected]>
Co-authored-by: bbarnes52 <[email protected]>
Co-authored-by: apurva-koti <[email protected]>
Co-authored-by: Hannes Schulz <[email protected]>
Co-authored-by: dbczumar <[email protected]>
Co-authored-by: mlflow-automation <[email protected]>
Co-authored-by: WeichenXu <[email protected]>
Co-authored-by: Siddharth Murching <[email protected]>
Co-authored-by: Cheng Kuan Yong Jason <[email protected]>
Co-authored-by: johnyNJ <[email protected]>
Co-authored-by: Jan Sindlar <[email protected]>
Co-authored-by: Mohammad Abbas <[email protected]>
Co-authored-by: Richard Zang <[email protected]>
Co-authored-by: Nina Baccam <[email protected]>
Co-authored-by: mlflow-automation <[email protected]>
Co-authored-by: Jenkins <[email protected]>
Co-authored-by: Jon Wiggins <[email protected]>

* Use `virtualenv` by default when running an ML project (#6489)

* Use virtualenv by default when running an ML project

Signed-off-by: harupy <[email protected]>

* use _PYTHON_ENV_FILE_NAME

Signed-off-by: harupy <[email protected]>

* fix doc

Signed-off-by: harupy <[email protected]>

* fix env type

Signed-off-by: harupy <[email protected]>

* fix env_type

Signed-off-by: harupy <[email protected]>

* swap conda and virtualenv

Signed-off-by: harupy <[email protected]>

Signed-off-by: harupy <[email protected]>

* Use `virtualenv` by default when restoring a model environment (#6459)

* Use virtualenv by default when restoring a model environment

Signed-off-by: harupy <[email protected]>

* fix failed test

Signed-off-by: harupy <[email protected]>

* set up pyenv and virtualenv

Signed-off-by: harupy <[email protected]>

* get conda_env file path from MLmodel file

Signed-off-by: harupy <[email protected]>

* pyenv

Signed-off-by: harupy <[email protected]>

* use current python version

Signed-off-by: harupy <[email protected]>

* fix failed test

Signed-off-by: harupy <[email protected]>

* fix failed test

Signed-off-by: harupy <[email protected]>

* update default value of spark_udf

Signed-off-by: harupy <[email protected]>

* rename test

Signed-off-by: harupy <[email protected]>

* revert spark_udf change

Signed-off-by: harupy <[email protected]>

* revert

Signed-off-by: harupy <[email protected]>

* change default value to virtualenv

Signed-off-by: harupy <[email protected]>

* use local

Signed-off-by: harupy <[email protected]>

Signed-off-by: harupy <[email protected]>

* Remove `--no-conda` (#6501)

* remove --no-conda

Signed-off-by: harupy <[email protected]>

* update R docs

Signed-off-by: harupy <[email protected]>

* remove tests for --no-conda

Signed-off-by: harupy <[email protected]>

Signed-off-by: harupy <[email protected]>

* Sync `branch-2.0` with master (#6510)

* Fix java model server compatibility with models containing databricks_runtime conf (#6337)

* Javafix

Signed-off-by: dbczumar <[email protected]>

* Resource fix

Signed-off-by: dbczumar <[email protected]>

* Add run / model links to MLP train step card (#6294)

* One commit

Signed-off-by: dbczumar <[email protected]>

* Submodule revert

Signed-off-by: dbczumar <[email protected]>

* Fix client tests

Signed-off-by: dbczumar <[email protected]>

* fix ci

Signed-off-by: dbczumar <[email protected]>

* Remove unused / invalid import

Signed-off-by: dbczumar <[email protected]>

* Put run summary back to end, fix tests

Signed-off-by: dbczumar <[email protected]>

* Use mocks instead

Signed-off-by: dbczumar <[email protected]>

* Fix inefficient relative time computation for metric plot (#6341)

* compute minTimestamp only once

Signed-off-by: harupy <[email protected]>

* fix method name

Signed-off-by: harupy <[email protected]>

* fix lint

Signed-off-by: harupy <[email protected]>

* return empty array

Signed-off-by: harupy <[email protected]>

* fix test

Signed-off-by: harupy <[email protected]>

* Add `MLFLOW_SQLALCHEMYSTORE_POOL_RECYCLE` flag (#6344)

* Add pool_recycle option to SQLAlchemy create_engine

Signed-off-by: Michal Karzynski <[email protected]>

* Add new option to unit test

Signed-off-by: Michal Karzynski <[email protected]>

* Add note in documentation

Signed-off-by: Michal Karzynski <[email protected]>

* Add box plot in compare-runs page (#6308)

* Added BoxPlot

Signed-off-by: changyonglik <[email protected]>

* Fixed key error

Signed-off-by: changyonglik <[email protected]>

* Added default state

Signed-off-by: changyonglik <[email protected]>

* Fixed props passing

Signed-off-by: changyonglik <[email protected]>

* Fixed react hooks state

Signed-off-by: changyonglik <[email protected]>

* Added unit test

Signed-off-by: changyonglik <[email protected]>

* Added boxplot to CompareModelVersion

Signed-off-by: changyonglik <[email protected]>

* Changed keys numbering to reflect tab name

Signed-off-by: changyonglik <[email protected]>

* Made the ordering of tabs consistent accross CompareRunView and CompareModelVersion

Signed-off-by: changyonglik <[email protected]>

* Linted

Signed-off-by: changyonglik <[email protected]>

* Fixed FormattedMessage

Signed-off-by: changyonglik <[email protected]>

* refactoring

Signed-off-by: harupy <[email protected]>

* fix lint errors

Signed-off-by: harupy <[email protected]>

* i18n

Signed-off-by: harupy <[email protected]>

* minor comment fix

Signed-off-by: harupy <[email protected]>

Co-authored-by: harupy <[email protected]>

* Add script and workflow to update requirements.yaml specifications (#6287)

* add script to update requirements.yaml

Signed-off-by: harupy <[email protected]>

* update both skinny and core requirements

Signed-off-by: harupy <[email protected]>

* remove base

Signed-off-by: harupy <[email protected]>

* clean up

Signed-off-by: harupy <[email protected]>

* add MLFLOW_CONDA_HOME

Signed-off-by: harupy <[email protected]>

* create create-pr job

Signed-off-by: harupy <[email protected]>

* fix syntax

Signed-off-by: harupy <[email protected]>

* remove redundant if

Signed-off-by: harupy <[email protected]>

* clean up

Signed-off-by: harupy <[email protected]>

* doc

Signed-off-by: harupy <[email protected]>

* dynamically determine python version

Signed-off-by: harupy <[email protected]>

* remove python version mock

Signed-off-by: harupy <[email protected]>

* use setup-ssh.sh in master.yml

Signed-off-by: harupy <[email protected]>

* simplify

Signed-off-by: harupy <[email protected]>

* update both core and skinny requirements

Signed-off-by: harupy <[email protected]>

* use env

Signed-off-by: harupy <[email protected]>

* remove action version

Signed-off-by: harupy <[email protected]>

* fix pandas dtypes issue

Signed-off-by: harupy <[email protected]>

* check if PR already exists

Signed-off-by: harupy <[email protected]>

* add semicolons

Signed-off-by: harupy <[email protected]>

* test PR creation

Signed-off-by: harupy <[email protected]>

* set base

Signed-off-by: harupy <[email protected]>

* use run_number

Signed-off-by: harupy <[email protected]>

* set result-encoding

Signed-off-by: harupy <[email protected]>

* revert changes for test

Signed-off-by: harupy <[email protected]>

* fix more tests

Signed-off-by: harupy <[email protected]>

* fix run URL

Signed-off-by: harupy <[email protected]>

* add dot

Signed-off-by: harupy <[email protected]>

* remove minimum_version

Signed-off-by: harupy <[email protected]>

* remove create-pr job

Signed-off-by: harupy <[email protected]>

* rename workflow

Signed-off-by: harupy <[email protected]>

* mutate dict approach

Signed-off-by: harupy <[email protected]>

* use ruamel

Signed-off-by: harupy <[email protected]>

* remove PYTHON_VERSION patch

Signed-off-by: harupy <[email protected]>

* add ruamel.yaml to requirements

Signed-off-by: harupy <[email protected]>

* skip update-requirements on PR

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* print new version

Signed-off-by: harupy <[email protected]>

* preserve quotes

Signed-off-by: harupy <[email protected]>

* fix badge

Signed-off-by: harupy <[email protected]>

* fix README

Signed-off-by: harupy <[email protected]>

* run ci

Signed-off-by: harupy <[email protected]>

* remove validate-requirements.yml

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* rename

Signed-off-by: harupy <[email protected]>

* fix test_dataframe_from_json

Signed-off-by: harupy <[email protected]>

* Make `model_uri` optional for `mlflow models build-docker` (#6302)

* Make model_uri optional for mlflow models build-docker

Signed-off-by: harupy <[email protected]>

* fix doc

Signed-off-by: harupy <[email protected]>

* Add generic

Signed-off-by: harupy <[email protected]>

* Add pythou_function flavor

Signed-off-by: harupy <[email protected]>

* fix doc

Signed-off-by: harupy <[email protected]>

* quotes

Signed-off-by: harupy <[email protected]>

* use longer options

Signed-off-by: harupy <[email protected]>

* add index (#6347)

Signed-off-by: harupy <[email protected]>

* fix badge link (#6349)

Signed-off-by: harupy <[email protected]>

* Enable consider-using-dict-items rule for pylint (#6351)

* Enable consider-using-dict-items

Signed-off-by: harupy <[email protected]>

* fix lint errors

Signed-off-by: harupy <[email protected]>

* Enable consider-merging-isinstance (#6350)

Signed-off-by: harupy <[email protected]>

* Enable consider-using-from-import rule for pylint (#6352)

* Enable consider-using-from-import

Signed-off-by: harupy <[email protected]>

* fix

Signed-off-by: harupy <[email protected]>

* fix datasets import

Signed-off-by: harupy <[email protected]>

* fix failed tests

Signed-off-by: harupy <[email protected]>

* Run model registry sqlalchemy tests in database job (#6353)

Signed-off-by: harupy <[email protected]>

* update to run profiles on the first 100 dataframe columns (#6297)

* update to run profiles on the first 100 dataframe columns

Signed-off-by: Sunish Sheth <[email protected]>

* Adding replace=True so we can sample rows twice

Signed-off-by: Sunish Sheth <[email protected]>

* Removing replace=true and fixing how the max_rows are calculated

Signed-off-by: Sunish Sheth <[email protected]>

* Fix sklearn autologging input example & signature mutation for models containing transformers (#6230)

* Fix with test case

Signed-off-by: dbczumar <[email protected]>

* Test fix

Signed-off-by: dbczumar <[email protected]>

* Fix and simplification

Signed-off-by: dbczumar <[email protected]>

* more fixes & better test coveragE

Signed-off-by: dbczumar <[email protected]>

* test

Signed-off-by: dbczumar <[email protected]>

* LGBM test

Signed-off-by: dbczumar <[email protected]>

* Format

Signed-off-by: dbczumar <[email protected]>

* Address comments

Signed-off-by: dbczumar <[email protected]>

* Fixes

Signed-off-by: dbczumar <[email protected]>

* Use py37-compatible call args syntax

Signed-off-by: dbczumar <[email protected]>

* use list (#6363)

Signed-off-by: harupy <[email protected]>

* Log runtime pipeline config to MLflow (#6359)

* Log runtime pipeline config to MLflow

Signed-off-by: Jin Zhang <[email protected]>

* Fixed lint

Signed-off-by: Jin Zhang <[email protected]>

* Add status badge for stale action (#6372)

Signed-off-by: harupy <[email protected]>

* Add stack trace section to bug report template (#6374)

Signed-off-by: harupy <[email protected]>

* Skipping the transform step by using Functional transformer (#6362)

Signed-off-by: Sunish Sheth <[email protected]>

* Series schema (#6361)

* Added in name for ColSpec of pandas datatype

infer panda series name for ColSpec

Signed-off-by: Ryan Fogle <[email protected]>

* Added test for Series name inference

added one more pytest condition in test_schema:test_schema_inference_on_pandas_series

Signed-off-by: Ryan Fogle <[email protected]>

* Update test_schema.py

Added in one more assertion to test schema inference.

Signed-off-by: Ryan Fogle <[email protected]>

* ran black

Signed-off-by: Ryan Fogle <[email protected]>

* added in requested changes in issue #6361

Signed-off-by: Ryan Fogle <[email protected]>

* fix typo. changed hasattr to getattr

Signed-off-by: Ryan Fogle <[email protected]>

* integrate mlflowdbfs (#6282)

Signed-off-by: Brian Barnes <[email protected]>

* Fix step card display breakage in Jupyter notebooks (#6378)

* remove

Signed-off-by: apurva-koti <[email protected]>

* fix

Signed-off-by: apurva-koti <[email protected]>

* Avoid using flask 2.2.0 (#6380)

Signed-off-by: harupy <[email protected]>

* Migrate GCS environment variables to `mlflow.environment_variables` module (#6375)

* Migrate GCS environment variables to mlflow.environment_variables

Signed-off-by: harupy <[email protected]>

* add default

Signed-off-by: harupy <[email protected]>

* improve comments

Signed-off-by: harupy <[email protected]>

* Avoid logging model signatures in pyspark ML autologging if model input/output dataframe contains unsupported data types (#6365)

* Avoid logging signatures

Signed-off-by: harupy <[email protected]>

* test

Signed-off-by: harupy <[email protected]>

* fix indent

Signed-off-by: harupy <[email protected]>

* check model output

Signed-off-by: harupy <[email protected]>

* fix warning message

Signed-off-by: harupy <[email protected]>

* todo

Signed-off-by: harupy <[email protected]>

* update test and doc

Signed-off-by: harupy <[email protected]>

* fix docstring

Signed-off-by: harupy <[email protected]>

* fix failed tests

Signed-off-by: harupy <[email protected]>

* improve _assert_autolog_infers_model_signature_correctly

Signed-off-by: harupy <[email protected]>

* Refactor `set_matrix.py` (#6373)

* refacor set_matrix.py

Signed-off-by: harupy <[email protected]>

* fix

Signed-off-by: harupy <[email protected]>

* fix tests

Signed-off-by: harupy <[email protected]>

* tset for --no-dev

Signed-off-by: harupy <[email protected]>

* install pytest and pytest-cov

Signed-off-by: harupy <[email protected]>

* test for --changed-files

Signed-off-by: harupy <[email protected]>

* add pyyaml to requirements

Signed-off-by: harupy <[email protected]>

* fix is_matrix_empty

Signed-off-by: harupy <[email protected]>

* use raw string and re.match

Signed-off-by: harupy <[email protected]>

* Fix is_matrix_empty (#6385)

Signed-off-by: harupy <[email protected]>

* Allow mlflow-skinny's autolog() to succeed when no scipy is installed (#5897)

* allow mlflow-skinny's autolog() to succeed when no scipy is installed

Signed-off-by: Hannes Schulz <[email protected]>

* optional pyfunc scipy dependency

Signed-off-by: Hannes Schulz <[email protected]>

* fix linter-discovered issues

Signed-off-by: Hannes Schulz <[email protected]>

* add test case, autolog() should pass w/o scipy installed

Signed-off-by: Hannes Schulz <[email protected]>

* minor cleanup

Signed-off-by: Hannes Schulz <[email protected]>

* test creating _Example with / without scipy present

Signed-off-by: Hannes Schulz <[email protected]>

* docs: do not warn about sparse matrix classes

Signed-off-by: Hannes Schulz <[email protected]>

* linting

Signed-off-by: Hannes Schulz <[email protected]>

* address review comment

Signed-off-by: Hannes Schulz <[email protected]>

* run black

Signed-off-by: Hannes Schulz <[email protected]>

* allow mlflow-skinny's autolog() to succeed when no scipy is installed

Signed-off-by: Hannes Schulz <[email protected]>

* optional pyfunc scipy dependency

Signed-off-by: Hannes Schulz <[email protected]>

* fix linter-discovered issues

Signed-off-by: Hannes Schulz <[email protected]>

* add test case, autolog() should pass w/o scipy installed

Signed-off-by: Hannes Schulz <[email protected]>

* minor cleanup

Signed-off-by: Hannes Schulz <[email protected]>

* test creating _Example with / without scipy present

Signed-off-by: Hannes Schulz <[email protected]>

* docs: do not warn about sparse matrix classes

Signed-off-by: Hannes Schulz <[email protected]>

* linting

Signed-off-by: Hannes Schulz <[email protected]>

* address review comment

Signed-off-by: Hannes Schulz <[email protected]>

* run black

Signed-off-by: Hannes Schulz <[email protected]>

* remove redundant None check after import

Signed-off-by: Hannes Schulz <[email protected]>

* delete comment

Signed-off-by: Hannes Schulz <[email protected]>

* Revert "remove redundant None check after import"

This reverts commit f2e198c944f41d9a96c20ae471d71bff39431b48.

Signed-off-by: Hannes Schulz <[email protected]>

* review comments

Signed-off-by: Hannes Schulz <[email protected]>

* remove redundant test

Signed-off-by: Hannes Schulz <[email protected]>

* Apply suggestions from code review

Co-authored-by: Harutaka Kawamura <[email protected]>
Signed-off-by: Hannes Schulz <[email protected]>

* Autoformat: https://github.com/mlflow/mlflow/actions/runs/2779791161

Signed-off-by: mlflow-automation <[email protected]>

Co-authored-by: Harutaka Kawamura <[email protected]>
Co-authored-by: dbczumar <[email protected]>
Co-authored-by: mlflow-automation <[email protected]>

* Fix extraneous warning about pyspark evaluation truncation (#6389)

* Revert #6380 (#6386)

* revert

Signed-off-by: harupy <[email protected]>

* workaround for test_prometheus_exporter

Signed-off-by: harupy <[email protected]>

* nit

Signed-off-by: harupy <[email protected]>

* Validate metric value in `FileStore.log_metric` (#6381)

* add failing test

Signed-off-by: harupy <[email protected]>

* use _validate_metric

Signed-off-by: harupy <[email protected]>

* fix invalid metric timestamp

Signed-off-by: harupy <[email protected]>

* fix docstring

Signed-off-by: harupy <[email protected]>

* fix java test

Signed-off-by: harupy <[email protected]>

* Make search experiment by tag key comparison case sensitive in MYSQL (#6333)

* init

Signed-off-by: Weichen Xu <[email protected]>

* add test

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* fix BINARY conditions in MySQL

Signed-off-by: harupy <[email protected]>

* fix attr error

Signed-off-by: harupy <[email protected]>

Co-authored-by: harupy <[email protected]>

* Run Model Registry SQLAlchemy tests in PostgreSQL, MySQL, and MSSQL (#6390)

* Run Model Registry SQLAlchemy tests in postgres, mysql, and mssql

Signed-off-by: harupy <[email protected]>

* fix failed tests

Signed-off-by: harupy <[email protected]>

* remove uuid

Signed-off-by: harupy <[email protected]>

* clean up

Signed-off-by: harupy <[email protected]>

* do not drop tables

Signed-off-by: harupy <[email protected]>

* Fix filestore data loss on failed write & mitigate read / write race condition (#6388)

* Fix

Signed-off-by: dbczumar <[email protected]>

* Fix

Signed-off-by: dbczumar <[email protected]>

* Format

Signed-off-by: dbczumar <[email protected]>

* Added a custom filter from_json to render_and_merge_yaml (#6368)

* Added a custom filter from_json to render_and_merge_yaml

Signed-off-by: Jin Zhang <[email protected]>

* Fixed test

Signed-off-by: Jin Zhang <[email protected]>

* Update tests/utils/test_file_utils.py

Co-authored-by: Siddharth Murching <[email protected]>

* Update tests/utils/test_file_utils.py

Co-authored-by: Siddharth Murching <[email protected]>

* Fixed test

Signed-off-by: Jin Zhang <[email protected]>

* Fixed windows test attempt

Signed-off-by: Jin Zhang <[email protected]>

* Fixed windows test

Signed-off-by: Jin Zhang <[email protected]>

Co-authored-by: Siddharth Murching <[email protected]>

* Fix `!=` operator for MySQL (#6397)

* fix ne operator and improve tests

Signed-off-by: harupy <[email protected]>

* add () to other operators

Signed-off-by: harupy <[email protected]>

* Simplify the documentation section in the PR template (#6398)

* Simplify the documentation section in the PR template

Signed-off-by: harupy <[email protected]>

* fix

Signed-off-by: harupy <[email protected]>

* Timebased gc (#6354)

* Added delete_time field to runs table

Signed-off-by: Jason Cheng <[email protected]>

* Updated latest_schema.sql to pass tests/store/tracking/test_sqlalchemy_store_schema.py

Signed-off-by: Jason Cheng <[email protected]>

* Added delete_time column into mlflow/store/tracking/dbmodels/initial_models.py

Signed-off-by: Jason Cheng <[email protected]>

* Moved the docstring to the end of the declaration instead of the start

Signed-off-by: Jason Cheng <[email protected]>

* Regenerated protobuf for RunInfo new schema, and passed pytest

Signed-off-by: Jason Cheng <[email protected]>

* Added --older-than flag in mlflow gc command, and added tests for that cli command

Signed-off-by: Jason Cheng <[email protected]>

* Removed delete_time from RunInfo proto

Signed-off-by: Jason Cheng <[email protected]>

* Set default older-than flag to None

Signed-off-by: Jason Cheng <[email protected]>

* Remove delete_time from RunInfo, add optional parameter older_than to store.get_deleted_runs(), and write delete_time into yaml file for file storage instead of adding it to RunInfo

Signed-off-by: Jason Cheng <[email protected]>

* Remove commented delete_time in RunInfo constructor in models.py

Signed-off-by: Jason Cheng <[email protected]>

* added INVALID_PARAMETER_VALUE error code in mlflow gc

Signed-off-by: Jason Cheng <[email protected]>

* Resolve case of delete time not in meta.yaml file, edited overwrite_run_info and gc

Signed-off-by: Jason Cheng <[email protected]>

* Rename delete_time to deleted_time

Signed-off-by: Jason Cheng <[email protected]>

* Rename delete_time to deleted_time, match error message in cli tests, filter SqlRuns by deleted_time, indicate float values accepted for gc --older-than flag

Signed-off-by: Jason Cheng <[email protected]>

* Rename delete_time to deleted_time, fixed assert statement in test_mlflow_gc, and fixed deleted_time queries in test_file_store.py and test_sqlalchemy_store.py

Signed-off-by: Jason Cheng <[email protected]>

* Only check if  is in meta after restoring run in test_delte_restore_run

Signed-off-by: Jason Cheng <[email protected]>

* Fixed lint errors

Signed-off-by: Jason Cheng <[email protected]>

* Install mlflow from repository root

Signed-off-by: harupy <[email protected]>

Co-authored-by: harupy <[email protected]>

* Separate protos job (#6399)

* Separate protos job

Signed-off-by: harupy <[email protected]>

* test

Signed-off-by: harupy <[email protected]>

* Add paths

Signed-off-by: harupy <[email protected]>

* Revert "test"

This reverts commit 5d04b02f55ec92e1e3ac18eb651ea989ca0d469a.

Signed-off-by: harupy <[email protected]>

* Fix flaky `TestFileStore.test_get_deleted_runs` (#6402)

* use gt operator

Signed-off-by: harupy <[email protected]>

* fix sqlalchemy store

Signed-off-by: harupy <[email protected]>

* Migrate environment variables for SQLAlchemy store (#6396)

Signed-off-by: harupy <[email protected]>

* Deduplicate MlflowClient in MLflow docs, move to mlflow.client module (#6405)

* Dedupe MlflowClient

Signed-off-by: dbczumar <[email protected]>

* Improvements

Signed-off-by: dbczumar <[email protected]>

* Add client

Signed-off-by: dbczumar <[email protected]>

* Remove unused functions in `mlflow.data` module (#6408)

* remove unused functions in data

Signed-off-by: harupy <[email protected]>

* Remove unused functions and variables

Signed-off-by: harupy <[email protected]>

* Tag based registered model search and model version search (#6320)

* init

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update tests

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* clean

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* add test

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* update

Signed-off-by: Weichen Xu <[email protected]>

* de-dup tag based search result

Signed-off-by: Weichen Xu <[email protected]>

* add () to fix case_sensitive_mysql_ne

Signed-off-by: Weichen Xu <[email protected]>

* fix

Signed-off-by: Weichen Xu <[email protected]>

* lint

Signed-off-by: Weichen Xu <[email protected]>

* fix

* fix test in TODO

Signed-off-by: Weichen Xu <[email protected]>

* support dup tag key filter

Signed-off-by: Weichen Xu <[email protected]>

* add mv order by

Signed-off-by: Weichen Xu <[email protected]>

* cmp res list in test

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* add doc

Signed-off-by: Weichen Xu <[email protected]>

* fix

Signed-off-by: Weichen Xu <[email protected]>

* fix lint

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* address comments

Signed-off-by: Weichen Xu <[email protected]>

* update doc

Signed-off-by: Weichen Xu <[email protected]>

* Increase maximum param value length to 500 (#6358)

* increase validation of maximum param value length from 250 to 500 (squashed)

Signed-off-by: Jan Sindlar <[email protected]>

* 1. added test for exceed…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/projects MLproject format, project running backends rn/none List under Small Changes in Changelogs.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants