Metadata-Version: 2.4
Name: application_file_scanner
Version: 0.6.3
Summary: A small package to deal with the headaches of scanning for files for an application to execute on.
Home-page: https://github.com/jackdewinter/application_file_scanner
Author: Jack De Winter
Author-email: jack.de.winter@outlook.com
Maintainer: Jack De Winter
Maintainer-email: jack.de.winter@outlook.com
License: MIT
Project-URL: Documentation, https://application_file_scanner.readthedocs.io/
Project-URL: Change Log, https://application_file_scanner.readthedocs.io/en/latest/changelog/
Keywords: properties
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Natural Language :: English
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Requires-Python: >=3.10.0
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: typing-extensions>=4.5.0
Requires-Dist: py-walk>=0.3.3
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: maintainer
Dynamic: maintainer-email
Dynamic: project-url
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# Library Package: application_file_scanner

|   |   |
|---|---|
|Project|[![Version](https://img.shields.io/pypi/v/application_file_scanner.svg)](https://pypi.org/project/application_file_scanner)  [![Python Versions](https://img.shields.io/pypi/pyversions/application_file_scanner.svg)](https://pypi.org/project/application_file_scanner)  ![platforms](https://img.shields.io/badge/platform-windows%20%7C%20macos%20%7C%20linux-lightgrey)  [![License](https://img.shields.io/github/license/jackdewinter/application_file_scanner.svg)](https://github.com/jackdewinter/application_file_scanner/blob/main/LICENSE.txt)  [![GitHub top language](https://img.shields.io/github/languages/top/jackdewinter/application_file_scanner)](https://github.com/jackdewinter/application_file_scanner)|
|Quality|[![GitHub Workflow Status (event)](https://img.shields.io/github/actions/workflow/status/jackdewinter/application_file_scanner/main.yml)](https://github.com/jackdewinter/application_file_scanner/actions/workflows/main.yml)  [![Issues](https://img.shields.io/github/issues/jackdewinter/application_file_scanner.svg)](https://github.com/jackdewinter/application_file_scanner/issues)  [![codecov](https://codecov.io/gh/jackdewinter/application_file_scanner/branch/main/graph/badge.svg?token=PD5TKS8NQQ)](https://codecov.io/gh/jackdewinter/application_file_scanner)  [![Sourcery](https://img.shields.io/badge/Sourcery-enabled-brightgreen)](https://sourcery.ai) ![Dynamic JSON Badge](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjackdewinter%2Fapplication_file_scanner%2Fmain%2Fpublish%2Fdependencies.json&query=%24.mkdocs&label=MkDocs) |
|  | ![Dynamic JSON Badge](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjackdewinter%2Fapplication_file_scanner%2Fmain%2Fpublish%2Fdependencies.json&query=%24.black&label=Black)  ![Dynamic JSON Badge](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjackdewinter%2Fapplication_file_scanner%2Fmain%2Fpublish%2Fdependencies.json&query=%24.flake8&label=Flake8) ![Dynamic JSON Badge](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjackdewinter%2Fapplication_file_scanner%2Fmain%2Fpublish%2Fdependencies.json&query=%24.pylint&label=PyLint) ![Dynamic JSON Badge](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjackdewinter%2Fapplication_file_scanner%2Fmain%2Fpublish%2Fdependencies.json&query=%24.mirrors-mypy&label=MyPy) ![Dynamic JSON Badge](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjackdewinter%2Fapplication_file_scanner%2Fmain%2Fpublish%2Fdependencies.json&query=%24.pyroma&label=PyRoma) ![Dynamic JSON Badge](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjackdewinter%2Fapplication_file_scanner%2Fmain%2Fpublish%2Fdependencies.json&query=%24.pre-commit&label=Pre-Commit) ![Dynamic JSON Badge](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjackdewinter%2Fapplication_file_scanner%2Fmain%2Fpublish%2Fdependencies.json&query=%24.sourcery&label=Sourcery) |
|Community|[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/jackdewinter/application_file_scanner/graphs/commit-activity) [![Stars](https://img.shields.io/github/stars/jackdewinter/application_file_scanner.svg)](https://github.com/jackdewinter/application_file_scanner/stargazers)  [![Forks](https://img.shields.io/github/forks/jackdewinter/application_file_scanner.svg)](https://github.com/jackdewinter/application_file_scanner/network/members)  [![Contributors](https://img.shields.io/github/contributors/jackdewinter/application_file_scanner.svg)](https://github.com/jackdewinter/application_file_scanner/graphs/contributors)  [![Downloads](https://img.shields.io/pypi/dm/application_file_scanner.svg)](https://pypistats.org/packages/application_file_scanner)|
|Maintainers|[![LinkedIn](https://img.shields.io/badge/-LinkedIn-black.svg?logo=linkedin&colorB=555)](https://www.linkedin.com/in/jackdewinter/)|

**NOTE:** This project has just recently been updated, and we have plans to update this
documentation by 2026Mar30.

The `application_file_scanner` package was born out of necessity.
During the creation of the [PyMarkdown](https://github.com/jackdewinter/pymarkdown) project,
there was a clear need for a robust manner of specifying which files the PyMarkdown
project needed to scan.  After fiddling with it over the course of many months,
it just made sense to move all that hard work into its own project.

The `application_file_scanner` library has the following advnatages:

- Thoroughly tested
  - The project currently has over XX tests and coverage percentages over XX%.
- Simple... With Examples
  - The package was created with the intention of being as easy to use as possbile.
  - To that extent, there are X basic usage examples and over XX advanced usage examples.

## Requirements

This project required Python 3.10 or later to function.

## Installation

```sh
pip install application_file_scanner
```

## How To Use This Package

The primary goal of this package is to provide a thoroughly tested package that
handles the hard work of specifying the files that a given application will process.

### Examples

For concrete examples that show the power of this library package, please consult
the [Examples Document](./docs/examples.md).  If you come up with a normal example
of how to use our package that we have missed, or come up with a novel example of
how to use our package, please file an issue using the process below and let us
know. From our experience, one example can often paint a picture of how to use our
project that is difficult to explain clearly with just words.

## Issues and Future Plans

If you would like to report an issue with the library or the documentation, please
file an issue [using GitHub](https://github.com/jackdewinter/application_file_scanner/issues).
Please remember to fill in as much information as possible including a good, repeatable
pattern for reproducing the issue.  Do not overflow us with too much information,
but provide us with enough information to make the problem evident to us.

If you would like to us to implement a feature that you believe is important, please
file an issue [using GitHub](https://github.com/jackdewinter/application_file_scanner/issues)
that includes what you want to add, why you want to add it, and why it is important
to you, and how you think it will help others.  We truly want to listen to what
you see as a good feature, so please do not be upset if we say "no" or "let me
think about it".

Please note that the issue you file will usually be the start of a conversation,
so be ready for more questions.  If you have any Python developer skills, please
mention that as well.  The conversations about "hey, can you..." is a lot different
than "if I do... can I add it to the project?".

## When Did Things Change?

The changelog for this project is maintained [at this location](/changelog.md).

## Still Have Questions?

If you still have questions, please consult our
[Frequently Asked Questions](/docs/faq.md) document.

## Instructions For Contributing

Developer notes on various topics are kept in the the
[Developer Notes](/docs/developer.md) document.

If you attempting to contribute something to this project,
please follow the steps outlined in the
[CONTRIBUTING.md](/CONTRIBUTING.md) file.
