Skip to content

Inconsistent namespace packaging approach #44

@shiviser

Description

@shiviser

Observation
This package uses the native namespace packaging approach (no init file in fs folder). Also, this package depends on pyfilesystem2 and shares this namespace folder 'fs' with pyfilesystem2.

However, pyfilesystem2 uses the pkg_resources-style namespace approach to declare its namespace folder 'fs' (see fs/init.py).

As a result, this package is inconsistent with the recommendation in pkg_resources-style 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 in a project.

Suggestion
Please use the consistent namespace packaging convention as suggested in the link above.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions