Skip to content
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

Improve handling of setuptools MANIFEST.in #647

Closed
manuq opened this issue Jun 20, 2023 · 0 comments · Fixed by #662
Closed

Improve handling of setuptools MANIFEST.in #647

manuq opened this issue Jun 20, 2023 · 0 comments · Fixed by #662
Assignees
Labels
keep the lights on Maintenance work

Comments

@manuq
Copy link
Collaborator

manuq commented Jun 20, 2023

kolibri-explore-plugin has a MANIFEST.in that currently has to be edited each time the source code adds a new directory. This has bit us a couple times already:

Ideally we should be able to setup the project correctly and not have to maintain the MANIFEST.in file.

@manuq manuq added the keep the lights on Maintenance work label Jun 20, 2023
@pwithnall pwithnall self-assigned this Jun 23, 2023
pwithnall added a commit that referenced this issue Jun 23, 2023
Using `setuptools_scm` allows us to reliably ensure that all files in
git are in the sdist, which avoids problems caused by occasionally
forgetting to update `MANIFEST.in` when adding a new directory.

`MANIFEST.in` still needs to be kept (in a reduced form) because there
are a few files needed by webpack and by kolibri-installer-android which
are only created at dist time, and exist outside setuptools.

References:
 - https:/pypa/setuptools_scm#readme
 - https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
 - pypa/setuptools-scm#190
 - https://packaging.python.org/en/latest/guides/using-manifest-in/

Signed-off-by: Philip Withnall <[email protected]>

#647
pwithnall added a commit that referenced this issue Jun 23, 2023
Using `setuptools_scm` allows us to reliably ensure that all files in
git are in the sdist, which avoids problems caused by occasionally
forgetting to update `MANIFEST.in` when adding a new directory.

`MANIFEST.in` still needs to be kept (in a reduced form) because there
are a few files needed by webpack and by kolibri-installer-android which
are only created at dist time, and exist outside setuptools.

References:
 - https:/pypa/setuptools_scm#readme
 - https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
 - pypa/setuptools-scm#190
 - https://packaging.python.org/en/latest/guides/using-manifest-in/

Signed-off-by: Philip Withnall <[email protected]>

#647
pwithnall added a commit that referenced this issue Jun 27, 2023
Using `setuptools_scm` allows us to reliably ensure that all files in
git are in the sdist, which avoids problems caused by occasionally
forgetting to update `MANIFEST.in` when adding a new directory.

`MANIFEST.in` still needs to be kept (in a reduced form) because there
are a few files needed by webpack and by kolibri-installer-android which
are only created at dist time, and exist outside setuptools.

References:
 - https:/pypa/setuptools_scm#readme
 - https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
 - pypa/setuptools-scm#190
 - https://packaging.python.org/en/latest/guides/using-manifest-in/

Signed-off-by: Philip Withnall <[email protected]>

#647
pwithnall added a commit that referenced this issue Jun 27, 2023
kolibri-tools needs to be able to load the `kolibri_explore_plugin`
Python module at build time, as part of building the frontend. If the
`_version.py` for it has not been generated by then, this will fail.

Manually invoke `setuptools_scm` to generate `_version.py`. This
requires having `setuptools_scm` installed first.

Signed-off-by: Philip Withnall <[email protected]>

#647
pwithnall added a commit that referenced this issue Jun 27, 2023
Using `setuptools_scm` allows us to reliably ensure that all files in
git are in the sdist, which avoids problems caused by occasionally
forgetting to update `MANIFEST.in` when adding a new directory.

`MANIFEST.in` still needs to be kept (in a reduced form) because there
are a few files needed by webpack and by kolibri-installer-android which
are only created at dist time, and exist outside setuptools.

References:
 - https:/pypa/setuptools_scm#readme
 - https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
 - pypa/setuptools-scm#190
 - https://packaging.python.org/en/latest/guides/using-manifest-in/

Signed-off-by: Philip Withnall <[email protected]>

#647
pwithnall added a commit that referenced this issue Jun 27, 2023
kolibri-tools needs to be able to load the `kolibri_explore_plugin`
Python module at build time, as part of building the frontend. If the
`_version.py` for it has not been generated by then, this will fail.

Manually invoke `setuptools_scm` to generate `_version.py`. This
requires having `setuptools_scm` installed first.

Signed-off-by: Philip Withnall <[email protected]>

#647
pwithnall added a commit that referenced this issue Jun 29, 2023
Using `setuptools_scm` allows us to reliably ensure that all files in
git are in the sdist, which avoids problems caused by occasionally
forgetting to update `MANIFEST.in` when adding a new directory.

`MANIFEST.in` still needs to be kept (in a reduced form) because there
are a few files needed by webpack and by kolibri-installer-android which
are only created at dist time, and exist outside setuptools.

References:
 - https:/pypa/setuptools_scm#readme
 - https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
 - pypa/setuptools-scm#190
 - https://packaging.python.org/en/latest/guides/using-manifest-in/

Signed-off-by: Philip Withnall <[email protected]>

#647
pwithnall added a commit that referenced this issue Jun 29, 2023
kolibri-tools needs to be able to load the `kolibri_explore_plugin`
Python module at build time, as part of building the frontend. If the
`_version.py` for it has not been generated by then, this will fail.

Manually invoke `setuptools_scm` to generate `_version.py`. This
requires having `setuptools_scm` installed first.

Signed-off-by: Philip Withnall <[email protected]>

#647
dbnicholson pushed a commit that referenced this issue Jul 7, 2023
Using `setuptools_scm` allows us to reliably ensure that all files in
git are in the sdist, which avoids problems caused by occasionally
forgetting to update `MANIFEST.in` when adding a new directory.

`MANIFEST.in` still needs to be kept (in a reduced form) because there
are a few files needed by webpack and by kolibri-installer-android which
are only created at dist time, and exist outside setuptools.

References:
 - https:/pypa/setuptools_scm#readme
 - https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
 - pypa/setuptools-scm#190
 - https://packaging.python.org/en/latest/guides/using-manifest-in/

Signed-off-by: Philip Withnall <[email protected]>

#647
dbnicholson pushed a commit that referenced this issue Jul 7, 2023
kolibri-tools needs to be able to load the `kolibri_explore_plugin`
Python module at build time, as part of building the frontend. If the
`_version.py` for it has not been generated by then, this will fail.

Manually invoke `setuptools_scm` to generate `_version.py`. This
requires having `setuptools_scm` installed first.

Signed-off-by: Philip Withnall <[email protected]>

#647
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
keep the lights on Maintenance work
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants