Update MANIFEST.in (#4894)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
pull/4913/head
Glenn Jocher 1 year ago committed by GitHub
parent 32f7c522b5
commit daf16ecf31
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 5
      .github/workflows/publish.yml
  2. 3
      MANIFEST.in
  3. 2
      docs/hub/index.md
  4. 34
      setup.py
  5. 2
      ultralytics/engine/trainer.py
  6. 4
      ultralytics/trackers/README.md
  7. 13
      ultralytics/utils/callbacks/dvc.py
  8. 8
      ultralytics/utils/checks.py

@ -38,12 +38,11 @@ jobs:
shell: python
run: |
import os
import pkg_resources as pkg
import ultralytics
from ultralytics.utils.checks import check_latest_pypi_version
v_local = pkg.parse_version(ultralytics.__version__).release
v_pypi = pkg.parse_version(check_latest_pypi_version()).release
v_local = tuple(map(int, ultralytics.__version__.split('.')))
v_pypi = tuple(map(int, check_latest_pypi_version().split('.')))
print(f'Local version is {v_local}')
print(f'PyPI version is {v_pypi}')
d = [a - b for a, b in zip(v_local, v_pypi)] # diff

@ -2,7 +2,4 @@ include *.md
include requirements.txt
include LICENSE
include setup.py
include ultralytics/assets/bus.jpg
include ultralytics/assets/zidane.jpg
recursive-include ultralytics *.yaml
recursive-exclude __pycache__ *

@ -1,6 +1,6 @@
---
comments: true
description: Gain seamless experience in training and deploying your YOLOv5 and YOLOv8 models with Ultralytics HUB. Explore pre-trained models, templates and various integrations.
description: Gain insights into training and deploying your YOLOv5 and YOLOv8 models with Ultralytics HUB. Explore pre-trained models, templates and various integrations.
keywords: Ultralytics HUB, YOLOv5, YOLOv8, model training, model deployment, pretrained models, model integrations
---

@ -3,7 +3,7 @@
import re
from pathlib import Path
from setuptools import setup
from setuptools import find_packages, setup
# Settings
FILE = Path(__file__).resolve()
@ -36,33 +36,6 @@ def parse_requirements(file_path: Path):
return requirements
def find_packages(start_dir, exclude=()):
"""
Custom implementation of setuptools.find_packages(). Finds all Python packages in a directory.
Args:
start_dir (str | Path, optional): The directory where the search will start. Defaults to the current directory.
exclude (list | tuple, optional): List of package names to exclude. Defaults to None.
Returns:
List[str]: List of package names.
"""
packages = []
start_dir = Path(start_dir)
root_package = start_dir.name
if '__init__.py' in [child.name for child in start_dir.iterdir()]:
packages.append(root_package)
for package in start_dir.rglob('*'):
if package.is_dir() and '__init__.py' in [child.name for child in package.iterdir()]:
package_name = f"{root_package}.{package.relative_to(start_dir).as_posix().replace('/', '.')}"
if package_name not in exclude:
packages.append(package_name)
return packages
setup(
name='ultralytics', # name of pypi package
version=get_version(), # version of pypi package
@ -79,7 +52,10 @@ setup(
'Source': 'https://github.com/ultralytics/ultralytics'},
author='Ultralytics',
author_email='hello@ultralytics.com',
packages=find_packages(start_dir='ultralytics'), # required
packages=find_packages(), # required
package_data={
'': ['*.yaml'],
'ultralytics.assets': ['*.jpg']},
include_package_data=True,
install_requires=parse_requirements(PARENT / 'requirements.txt'),
extras_require={

@ -426,7 +426,7 @@ class BaseTrainer:
"""Save model training checkpoints with additional metadata."""
import pandas as pd # scope for faster startup
metrics = {**self.metrics, **{'fitness': self.fitness}}
results = {k.strip(): v for k, v in pd.read_csv(self.save_dir / 'results.csv').to_dict(orient='list').items()}
results = {k.strip(): v for k, v in pd.read_csv(self.csv).to_dict(orient='list').items()}
ckpt = {
'epoch': self.epoch,
'best_fitness': self.best_fitness,

@ -1,7 +1,3 @@
______________________________________________________________________
## comments: true description: Learn how to use Ultralytics YOLO for object tracking in video streams. Guides to use different trackers and customise tracker configurations. keywords: Ultralytics, YOLO, object tracking, video streams, BoT-SORT, ByteTrack, Python guide, CLI guide
# Multi-Object Tracking with Ultralytics YOLO
<img width="1024" src="https://user-images.githubusercontent.com/26833433/243418637-1d6250fd-1515-4c10-a844-a32818ae6d46.png">

@ -11,15 +11,12 @@ try:
import os
import re
from importlib.metadata import version
from pathlib import Path
import pkg_resources as pkg
from ultralytics.utils.checks import check_version
ver = version('dvclive')
if pkg.parse_version(ver) < pkg.parse_version('2.11.0'):
LOGGER.debug(f'DVCLive is detected but version {ver} is incompatible (>=2.11 required).')
dvclive = None # noqa: F811
if not check_version(dvclive.__version__, '2.11.0', name='dvclive', verbose=True):
dvclive = None
# DVCLive logger instance
live = None
@ -74,9 +71,7 @@ def on_pretrain_routine_start(trainer):
try:
global live
live = dvclive.Live(save_dvc_exp=True, cache_images=True)
LOGGER.info(
f'DVCLive is detected and auto logging is enabled (can be disabled in the {SETTINGS.file} with `dvc: false`).'
)
LOGGER.info("DVCLive is detected and auto logging is enabled (run 'yolo settings dvc=False' to disable).")
except Exception as e:
LOGGER.warning(f'WARNING ⚠ DVCLive installed but not initialized correctly, not logging this run. {e}')

@ -1,4 +1,5 @@
# Ultralytics YOLO 🚀, AGPL-3.0 license
import contextlib
import glob
import inspect
@ -15,7 +16,6 @@ from typing import Optional
import cv2
import numpy as np
import pkg_resources as pkg
import psutil
import requests
import torch
from matplotlib import font_manager
@ -141,7 +141,7 @@ def check_version(current: str = '0.0.0',
elif op == '<' and not (current < version):
result = False
if not result:
warning_message = f'WARNING ⚠ {name}{required} is required, but {name}{current} is currently installed'
warning_message = f'WARNING ⚠ {name}{op}{required} is required, but {name}=={current} is currently installed'
if hard:
raise ModuleNotFoundError(emojis(warning_message)) # assert version requirements met
if verbose:
@ -321,7 +321,7 @@ def check_torchvision():
if v_torch in compatibility_table:
compatible_versions = compatibility_table[v_torch]
if all(pkg.parse_version(v_torchvision) != pkg.parse_version(v) for v in compatible_versions):
if all(v_torchvision != v for v in compatible_versions):
print(f'WARNING ⚠ torchvision=={v_torchvision} is incompatible with torch=={v_torch}.\n'
f"Run 'pip install torchvision=={compatible_versions[0]}' to fix torchvision or "
"'pip install -U torch torchvision' to update both.\n"
@ -404,6 +404,8 @@ def check_imshow(warn=False):
def check_yolo(verbose=True, device=''):
"""Return a human-readable YOLO software and hardware summary."""
import psutil
from ultralytics.utils.torch_utils import select_device
if is_jupyter():

Loading…
Cancel
Save