-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes to the User Guide's Data Files page #3335
Commits on May 24, 2022
-
Changes to the User Guide's Data Files page
- All code snippets were given for `setup.py`. Have added corresponding snippets for `setup.cfg` and `pyproject.toml`. - To avoid incentivizing multiple top-level packages, have modified all the package trees and code snippets to include only a single package `mypkg`. Have added a separate example to illustrate the functionality of using the empty string `""` / the asterisk `*` for capturing data files from multiple packages. Have also modified the `setup.py` code snippets and removed the `find_packages("src")` since there is only a single package in each case (except one); have opted to explicitly name the package instead. - Have added a package tree example for the first `package_data` snippet. Have also added a package tree / code snippet example to show how `package_data` patterns should include subdirectories, separating it from the example showing the empty string `""` / asterisk `*` functionality. - Tried to have consistent naming for all directories and data files used in the package trees and code snippets. All directories have been named `mypkg` and data files have been named `data1.txt`, `data2.rst` etc. - Have reformatted package tree examples. Reformatting has been done by replacing the only-indentation based directory structure diagram with a line-based tree layout; I think this looks neater. - Have added `.. note::` blocks for paragraphs that would be more appropriately phased as a Note. Other minor changes to text content have been made.
Configuration menu - View commit details
-
Copy full SHA for 3e0f691 - Browse repository at this point
Copy the full SHA 3e0f691View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9edfe7b - Browse repository at this point
Copy the full SHA 9edfe7bView commit details
Commits on May 25, 2022
-
Elaborated on first example involving
include_package_data
Have tried to make the working of the `include_package_data` option as clear as possible. - Added a package tree - Tried to clearly state that the data files must be either included in `MANIFEST.in`, or tracked by a VCS, in order for them to be included in the installation of the package, when `include_package_data=True`. - Added a `MANIFEST.in` snippet to make things more clear.
Configuration menu - View commit details
-
Copy full SHA for 6c469ee - Browse repository at this point
Copy the full SHA 6c469eeView commit details
Commits on May 31, 2022
-
Removed the statement within the parentheses, since the example which follows does not illustrate this specific example (of having documentation files that you may not want to include in the installation). Besides the `exclude_package_data` option covers this exact use case in a later example.
Configuration menu - View commit details
-
Copy full SHA for 24f4745 - Browse repository at this point
Copy the full SHA 24f4745View commit details -
Treating data subdirectories as namespace packages
Modified code snippets for `package_data` example with `data` subdirectory to treat the `data` subdirectory as a namespace package. Also modified a paragraph below these snippets.
Configuration menu - View commit details
-
Copy full SHA for 97e7993 - Browse repository at this point
Copy the full SHA 97e7993View commit details -
Modified code snippets for multiple top-level packages example
Made them consistent with the snippets given on the Package Discovery page. - Instead of enumerating a list of all the packages in `packages`, using `find_packages` or `find:` instead. The `find_packages` call in `setup.py` contains a `where` argument. In `setup.cfg`, included the section `options.packages.find` with a `where` option. - Instead of supplying the same `package_dir` for each package, using an empty string to indicate a `package_dir` for all packages. - In `pyproject.toml`, using the `where` option instead of `package-dir`. - Textual changes.
Configuration menu - View commit details
-
Copy full SHA for f2c5bd3 - Browse repository at this point
Copy the full SHA f2c5bd3View commit details -
Elaborated on example for
exclude_package_data
Tried to make why this option is useful more clear.
Configuration menu - View commit details
-
Copy full SHA for 0f0836b - Browse repository at this point
Copy the full SHA 0f0836bView commit details -
Modified code snippets for
exclude_package_data
exampleMade them consistent with the snippets given on the Package Discovery page. The changes made here are similar to the changes made to the previous example.
Configuration menu - View commit details
-
Copy full SHA for 20f393b - Browse repository at this point
Copy the full SHA 20f393bView commit details -
Added note to
package_data
optionIn the end of the document, in the summary section, there is a line stating that the files matched by `package_data` do not require a corresponding `MANIFEST.in` or a revision control system plugin. Have included this note higher up in the document because I felt it may be of interest to users and they might miss this line so far down the document.
Configuration menu - View commit details
-
Copy full SHA for 5703545 - Browse repository at this point
Copy the full SHA 5703545View commit details -
Elaborated on usage of
importlib.resources
- Added example package tree - Added snippet on how typically the `__file__` attribute would be used - Added snippet showing usage of `importlib.resources` with the `files()` API - Added notes on compatibility of this code with different Python versions along with references - Added snippet to show usage of `importlib_resources` backport
Configuration menu - View commit details
-
Copy full SHA for b169443 - Browse repository at this point
Copy the full SHA b169443View commit details -
I believe this footnote is outdated and not required in lieu of the added notes describing compatibility with different Python versions
Configuration menu - View commit details
-
Copy full SHA for bb9e256 - Browse repository at this point
Copy the full SHA bb9e256View commit details -
Added
packages
,package_dir
andwhere
options in all examplesFor consistency.
Configuration menu - View commit details
-
Copy full SHA for f0e4c8f - Browse repository at this point
Copy the full SHA f0e4c8fView commit details -
This footnote describes what Setuptools considers as a data file. This note is important and may be missed by the reader if it is kept as a footnote, hence I have copied its contents up ahead in the document, just after the `include_package_data` example.
Configuration menu - View commit details
-
Copy full SHA for 9d47a8f - Browse repository at this point
Copy the full SHA 9d47a8fView commit details -
- Added `include_package_data`, `package_data` and `exclude_package_data` sections to make clear the three options provided by Setuptools to manage data files. - Added a separate section illustrating the use of a `data` subdirectory, after these three sections. - Placed the summary of the three options under a Summary section. - Changed the levels of the last two sections to match the level of the five sections added. - Small changes. Changed the wording where appropriate to suit the new flow. Changed a paragraph on path separators in glob patterns to a Note.
Configuration menu - View commit details
-
Copy full SHA for 6c3c884 - Browse repository at this point
Copy the full SHA 6c3c884View commit details -
Added an
include_package_data
snippet to the subdirectory exampleJust to make it clear that we can use either one of `package_data` or `include_package_data` and not just the former.
Configuration menu - View commit details
-
Copy full SHA for 3854a8d - Browse repository at this point
Copy the full SHA 3854a8dView commit details
Commits on Jun 7, 2022
-
Configuration menu - View commit details
-
Copy full SHA for dfdc6d5 - Browse repository at this point
Copy the full SHA dfdc6d5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 10cbf95 - Browse repository at this point
Copy the full SHA 10cbf95View commit details -
Configuration menu - View commit details
-
Copy full SHA for 463b340 - Browse repository at this point
Copy the full SHA 463b340View commit details -
Merge pull request #2 from abravalheri/data-files-fix
Data files fix
Configuration menu - View commit details
-
Copy full SHA for 4de04f4 - Browse repository at this point
Copy the full SHA 4de04f4View commit details