fR d Z ddlmZ ddlZddlZddlmZ ddlmZ ddlm Z ddl
mZmZm
Z
mZ ddlZdd lmZ dd
lmZ ddlmZ e
e Zej j ZerddlmZ d4dZ G d d Z G d d Z G d de Z! G d de! Z" G d de Z# G d de" Z$ G d de# Z%d5d$Z& G d% d& Z'd6d(Z(d6d)Z)d7d.Z*d8d0Z+d9d3Z,dS ):u_ Automatic discovery of Python modules and packages (for inclusion in the
distribution) and other config values.
For the purposes of this module, the following nomenclature is used:
- "src-layout": a directory representing a Python project that contains a "src"
folder. Everything under the "src" folder is meant to be included in the
distribution when packaging the project. Example::
.
├── tox.ini
├── pyproject.toml
└── src/
└── mypkg/
├── __init__.py
├── mymodule.py
└── my_data_file.txt
- "flat-layout": a Python project that does not use "src-layout" but instead
have a directory under the project root for each package::
.
├── tox.ini
├── pyproject.toml
└── mypkg/
├── __init__.py
├── mymodule.py
└── my_data_file.txt
- "single-module": a project that contains a single Python script direct under
the project root (no directory used)::
.
├── tox.ini
├── pyproject.toml
└── mymodule.py
)annotationsNfnmatchcase)glob)Path)
TYPE_CHECKINGIterableIteratorMapping )StrPath)log)convert_path)Distributionpathr
returnboolc d t j | S N)osr basenameisidentifier)r s I/opt/cloudlinux/venv/lib/python3.11/site-packages/setuptools/discovery.py_valid_namer D s$
7D!!..000 c * e Zd ZdZddZddZdd Zd
S )
_Filterz
Given a list of patterns, create a callable that will be true only if
the input matches at least one of the patterns.
patternsstrc D t | | _ d S r )dictfromkeys _patterns)selfr s r __init__z_Filter.__init__O s x00r itemr r c D t fd| j D S )Nc 3 8 K | ]}t | V d S r r ).0patr&