diff options
author | Kegan Dougal <kegan@matrix.org> | 2015-02-04 15:31:02 +0000 |
---|---|---|
committer | Kegan Dougal <kegan@matrix.org> | 2015-02-04 15:31:02 +0000 |
commit | ce8bc642ae7b0c9a2342b420e8a8177df512e517 (patch) | |
tree | 5422244592a5a9c1c9561c86b246691c9f103dcd /synapse/python_dependencies.py | |
parent | Fix bug in store defer. Add more unit tests. (diff) | |
parent | Merge pull request #46 from matrix-org/identicons (diff) | |
download | synapse-ce8bc642ae7b0c9a2342b420e8a8177df512e517.tar.xz |
Merge branch 'develop' into application-services
Diffstat (limited to 'synapse/python_dependencies.py')
-rw-r--r-- | synapse/python_dependencies.py | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/synapse/python_dependencies.py b/synapse/python_dependencies.py index 826a36f203..a89d618606 100644 --- a/synapse/python_dependencies.py +++ b/synapse/python_dependencies.py @@ -16,8 +16,30 @@ REQUIREMENTS = { "py-bcrypt": ["bcrypt"], "frozendict>=0.4": ["frozendict"], "pillow": ["PIL"], + "pydenticon": ["pydenticon"], } +def github_link(project, version, egg): + return "https://github.com/%s/tarball/%s/#egg=%s" % (project, version, egg) + +DEPENDENCY_LINKS=[ + github_link( + project="matrix-org/syutil", + version="v0.0.2", + egg="syutil-0.0.2", + ), + github_link( + project="matrix-org/matrix-angular-sdk", + version="v0.6.0", + egg="matrix_angular_sdk-0.6.0", + ), + github_link( + project="pyca/pynacl", + version="d4d3175589b892f6ea7c22f466e0e223853516fa", + egg="pynacl-0.3.0", + ) +] + class MissingRequirementError(Exception): pass @@ -78,3 +100,23 @@ def check_requirements(): "Unexpected version of %r in %r. %r != %r" % (dependency, file_path, version, required_version) ) + +def list_requirements(): + result = [] + linked = [] + for link in DEPENDENCY_LINKS: + egg = link.split("#egg=")[1] + linked.append(egg.split('-')[0]) + result.append(link) + for requirement in REQUIREMENTS: + is_linked = False + for link in linked: + if requirement.replace('-','_').startswith(link): + is_linked = True + if not is_linked: + result.append(requirement) + return result + +if __name__ == "__main__": + import sys + sys.stdout.writelines(req + "\n" for req in list_requirements()) |