Skip to content

Staged Makefile Improvements#762

Merged
bpkroth merged 12 commits into
microsoft:mainfrom
bpkroth:makefile-improvements
Jul 1, 2024
Merged

Staged Makefile Improvements#762
bpkroth merged 12 commits into
microsoft:mainfrom
bpkroth:makefile-improvements

Conversation

@bpkroth

@bpkroth bpkroth commented Jun 28, 2024

Copy link
Copy Markdown
Contributor
  • Introduce a new make format target that currently only calls licenseheaders but will call isort and black in the future
  • Introduce new variables to help make dependency tracking easier
  • Simplify pytest rules and allow running only a single module at a time.

This PR is a precursor to pyproject.toml related build changes as well.

@bpkroth bpkroth requested a review from a team as a code owner June 28, 2024 16:14
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
@bpkroth

bpkroth commented Jun 28, 2024

Copy link
Copy Markdown
Contributor Author

Not sure why the Windows CI is failing atm. I think we fixed that issue in #757 and this PR doesn't touch anything particular to Windows.

Ignoring it for now - #768

@bpkroth bpkroth requested a review from amueller June 28, 2024 21:28
@bpkroth bpkroth requested review from motus and removed request for amueller June 28, 2024 21:28
@bpkroth bpkroth merged commit 7daf3fa into microsoft:main Jul 1, 2024
@bpkroth bpkroth deleted the makefile-improvements branch July 1, 2024 15:57
bpkroth added a commit that referenced this pull request Jul 2, 2024
This PR builds off of #762 and #763 

These are in part 
1. followup fixups for #746 (e.g., to allow setuptools-scm to be pulled
in at build time as a build dependency only when conda an pip have
mismatched version issues), and
2. Modernization improvements to allow us to make better use of other
tools (e.g., `black` that only accept `pyproject.toml` files as their
configuration files).

To do so, we move some configs from `setup.py` to `pyproject.toml` for
each module.
However, to retain the ability to rewrite URLs in published README.md
files on PyPi as well as consistent version dependencies across modules
without the need to manually specify version numbers (e.g., using
`setuptools-scm`) we mark a few dependencies as dynamic and leave our
existing logic inside the `setup.py` file.

Finally, we reorganize the `version.py` file to be inside the module and
fix a few previous omissions for `mlos_viz`.
bpkroth added a commit that referenced this pull request Jul 3, 2024
Builds off of #762, #763, and #764.

Prepares rules and configs to enable isort and black formatters and
checks but doesn't enable them yet.

After these are enabled (next PR) we will reformat all files and ignore
that revision in git blame configs.

Then, we can convert configs stored in `setup.cfg` and `.pylintrc` to
the top level `pyproject.toml` and remove the older configs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants