Inconsistent namespace packaging approach
- Dominant language
- Python
- Stars
- 94
- Forks
- 32
- PR merge metrics
- No merged PRs in 30d
Description
**Observation**
This package uses the [native namespace](https://packaging.python.org/guides/packaging-namespace-packages/#native-namespace-packages) packaging approach (no init file in [fs](https://github.com/althonos/fs.sshfs/tree/master/fs) folder). Also, this package depends on [pyfilesystem2](https://github.com/PyFilesystem/pyfilesystem2) and shares this namespace folder 'fs' with pyfilesystem2.
However, pyfilesystem2 uses the [pkg_resources-style](https://packaging.python.org/guides/packaging-namespace-packages/#pkg-resources-style-namespace-packages) namespace approach to declare its namespace folder 'fs' (see [fs/__init__.py](https://github.com/PyFilesystem/pyfilesystem2/blob/master/fs/__init__.py#L4)).
As a result, this package is inconsistent with the recommendation in [pkg_resources-style](https://packaging.python.org/guides/packaging-namespace-packages/#pkg-resources-style-namespace-packages) namespace approach -
> If you are creating a new distribution within an existing namespace package that uses this method then it’s recommended to continue using this as the different methods are not cross-compatible and it’s not advisable to try to migrate an existing package.
**Problem**
In use cases where these two packages are downloaded in seperate directories and both of them are added to the python systempath, the package import does not work due to the aforementioned inconsistency. This is exactly the problem if one uses bazel to manage these [external dependencies](https://docs.bazel.build/versions/master/external.html) in a project.
**Suggestion**
Please use the consistent namespace packaging convention as suggested in the link above.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.