├── .gitignore ├── .tox.sh ├── .travis.yml ├── COPYING ├── MANIFEST.in ├── Makefile ├── README.rst ├── curdling ├── __init__.py ├── __main__.py ├── database.py ├── exceptions.py ├── freeze.py ├── index.py ├── install.py ├── mapping.py ├── services │ ├── __init__.py │ ├── base.py │ ├── curdler.py │ ├── dependencer.py │ ├── downloader.py │ ├── installer.py │ └── uploader.py ├── signal.py ├── tool │ └── __init__.py ├── uninstall.py ├── util.py ├── version.py ├── web │ ├── __init__.py │ ├── __main__.py │ └── templates │ │ └── index.html └── wheel.py ├── development.txt ├── docs ├── Makefile ├── _static │ ├── error1.png │ └── pnet.svg ├── _templates │ └── sidebarintro.html ├── _themes │ └── curdling │ │ ├── layout.html │ │ ├── static │ │ └── curdling.css_t │ │ └── theme.conf ├── conf.py ├── design-and-implementation.rst ├── distributed-cache.rst ├── error-handling.rst ├── index.rst ├── make.bat ├── next-steps.rst └── usage.rst ├── requirements-server.txt ├── requirements.txt ├── setup.py ├── tests ├── __init__.py ├── dummypypi │ └── simple │ │ ├── broken-package │ │ ├── broken-package-0.0.1.tar.gz │ │ └── index.html │ │ ├── fake-pkg │ │ ├── fake-pkg-0.0.0.tar.gz │ │ └── index.html │ │ ├── forbiddenfruit │ │ ├── forbiddenfruit-0.1.0.tar.gz │ │ └── index.html │ │ ├── gherkin │ │ ├── gherkin-0.1.0.tar.gz │ │ └── index.html │ │ ├── index.html │ │ ├── sure │ │ ├── index.html │ │ └── sure-1.2.2.tar.gz │ │ └── test-dependency-failure │ │ ├── index.html │ │ └── test-dependency-failure-0.1.0.tar.gz ├── functional │ ├── __init__.py │ ├── fixtures │ │ ├── codebase1 │ │ │ └── codebase1 │ │ │ │ ├── __init__.py │ │ │ │ └── hello.py │ │ ├── project1 │ │ │ ├── development.txt │ │ │ └── requirements.txt │ │ ├── project2 │ │ │ └── requirements.txt │ │ ├── storage1 │ │ │ └── gherkin-0.1.0.tar.gz │ │ └── storage2 │ │ │ └── gherkin-0.1.0-py27-none-any.whl │ ├── test_freeze.py │ ├── test_index.py │ ├── test_main.py │ └── test_wheel.py └── unit │ ├── __init__.py │ ├── test_command_install.py │ ├── test_database.py │ ├── test_freeze.py │ ├── test_index.py │ ├── test_mapping.py │ ├── test_services.py │ ├── test_services_curdler.py │ ├── test_services_dependencer.py │ ├── test_services_downloader.py │ ├── test_signals.py │ ├── test_tool.py │ ├── test_util.py │ └── test_wheel.py └── tox.ini /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/.gitignore -------------------------------------------------------------------------------- /.tox.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/.tox.sh -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/.travis.yml -------------------------------------------------------------------------------- /COPYING: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/COPYING -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/MANIFEST.in -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/Makefile -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/README.rst -------------------------------------------------------------------------------- /curdling/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/__init__.py -------------------------------------------------------------------------------- /curdling/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/__main__.py -------------------------------------------------------------------------------- /curdling/database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/database.py -------------------------------------------------------------------------------- /curdling/exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/exceptions.py -------------------------------------------------------------------------------- /curdling/freeze.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/freeze.py -------------------------------------------------------------------------------- /curdling/index.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/index.py -------------------------------------------------------------------------------- /curdling/install.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/install.py -------------------------------------------------------------------------------- /curdling/mapping.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/mapping.py -------------------------------------------------------------------------------- /curdling/services/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /curdling/services/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/services/base.py -------------------------------------------------------------------------------- /curdling/services/curdler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/services/curdler.py -------------------------------------------------------------------------------- /curdling/services/dependencer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/services/dependencer.py -------------------------------------------------------------------------------- /curdling/services/downloader.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/services/downloader.py -------------------------------------------------------------------------------- /curdling/services/installer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/services/installer.py -------------------------------------------------------------------------------- /curdling/services/uploader.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/services/uploader.py -------------------------------------------------------------------------------- /curdling/signal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/signal.py -------------------------------------------------------------------------------- /curdling/tool/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/tool/__init__.py -------------------------------------------------------------------------------- /curdling/uninstall.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/uninstall.py -------------------------------------------------------------------------------- /curdling/util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/util.py -------------------------------------------------------------------------------- /curdling/version.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/version.py -------------------------------------------------------------------------------- /curdling/web/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/web/__init__.py -------------------------------------------------------------------------------- /curdling/web/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/web/__main__.py -------------------------------------------------------------------------------- /curdling/web/templates/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/web/templates/index.html -------------------------------------------------------------------------------- /curdling/wheel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/curdling/wheel.py -------------------------------------------------------------------------------- /development.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/development.txt -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/_static/error1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/_static/error1.png -------------------------------------------------------------------------------- /docs/_static/pnet.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/_static/pnet.svg -------------------------------------------------------------------------------- /docs/_templates/sidebarintro.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/_templates/sidebarintro.html -------------------------------------------------------------------------------- /docs/_themes/curdling/layout.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/_themes/curdling/layout.html -------------------------------------------------------------------------------- /docs/_themes/curdling/static/curdling.css_t: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/_themes/curdling/static/curdling.css_t -------------------------------------------------------------------------------- /docs/_themes/curdling/theme.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/_themes/curdling/theme.conf -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/conf.py -------------------------------------------------------------------------------- /docs/design-and-implementation.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/design-and-implementation.rst -------------------------------------------------------------------------------- /docs/distributed-cache.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/distributed-cache.rst -------------------------------------------------------------------------------- /docs/error-handling.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/error-handling.rst -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/index.rst -------------------------------------------------------------------------------- /docs/make.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/make.bat -------------------------------------------------------------------------------- /docs/next-steps.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/next-steps.rst -------------------------------------------------------------------------------- /docs/usage.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/docs/usage.rst -------------------------------------------------------------------------------- /requirements-server.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/requirements-server.txt -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/requirements.txt -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/setup.py -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | import sure 2 | -------------------------------------------------------------------------------- /tests/dummypypi/simple/broken-package/broken-package-0.0.1.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/broken-package/broken-package-0.0.1.tar.gz -------------------------------------------------------------------------------- /tests/dummypypi/simple/broken-package/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/broken-package/index.html -------------------------------------------------------------------------------- /tests/dummypypi/simple/fake-pkg/fake-pkg-0.0.0.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/fake-pkg/fake-pkg-0.0.0.tar.gz -------------------------------------------------------------------------------- /tests/dummypypi/simple/fake-pkg/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/fake-pkg/index.html -------------------------------------------------------------------------------- /tests/dummypypi/simple/forbiddenfruit/forbiddenfruit-0.1.0.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/forbiddenfruit/forbiddenfruit-0.1.0.tar.gz -------------------------------------------------------------------------------- /tests/dummypypi/simple/forbiddenfruit/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/forbiddenfruit/index.html -------------------------------------------------------------------------------- /tests/dummypypi/simple/gherkin/gherkin-0.1.0.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/gherkin/gherkin-0.1.0.tar.gz -------------------------------------------------------------------------------- /tests/dummypypi/simple/gherkin/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/gherkin/index.html -------------------------------------------------------------------------------- /tests/dummypypi/simple/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/index.html -------------------------------------------------------------------------------- /tests/dummypypi/simple/sure/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/sure/index.html -------------------------------------------------------------------------------- /tests/dummypypi/simple/sure/sure-1.2.2.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/sure/sure-1.2.2.tar.gz -------------------------------------------------------------------------------- /tests/dummypypi/simple/test-dependency-failure/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/test-dependency-failure/index.html -------------------------------------------------------------------------------- /tests/dummypypi/simple/test-dependency-failure/test-dependency-failure-0.1.0.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/dummypypi/simple/test-dependency-failure/test-dependency-failure-0.1.0.tar.gz -------------------------------------------------------------------------------- /tests/functional/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/functional/__init__.py -------------------------------------------------------------------------------- /tests/functional/fixtures/codebase1/codebase1/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/functional/fixtures/codebase1/codebase1/hello.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/functional/fixtures/codebase1/codebase1/hello.py -------------------------------------------------------------------------------- /tests/functional/fixtures/project1/development.txt: -------------------------------------------------------------------------------- 1 | -r requirements.txt 2 | forbiddenfruit==0.1.0 3 | -------------------------------------------------------------------------------- /tests/functional/fixtures/project1/requirements.txt: -------------------------------------------------------------------------------- 1 | gherkin==0.1.0 2 | -------------------------------------------------------------------------------- /tests/functional/fixtures/project2/requirements.txt: -------------------------------------------------------------------------------- 1 | gherkin==0.1.0 2 | -------------------------------------------------------------------------------- /tests/functional/fixtures/storage1/gherkin-0.1.0.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/functional/fixtures/storage1/gherkin-0.1.0.tar.gz -------------------------------------------------------------------------------- /tests/functional/fixtures/storage2/gherkin-0.1.0-py27-none-any.whl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/functional/fixtures/storage2/gherkin-0.1.0-py27-none-any.whl -------------------------------------------------------------------------------- /tests/functional/test_freeze.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/functional/test_freeze.py -------------------------------------------------------------------------------- /tests/functional/test_index.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/functional/test_index.py -------------------------------------------------------------------------------- /tests/functional/test_main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/functional/test_main.py -------------------------------------------------------------------------------- /tests/functional/test_wheel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/functional/test_wheel.py -------------------------------------------------------------------------------- /tests/unit/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/test_command_install.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_command_install.py -------------------------------------------------------------------------------- /tests/unit/test_database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_database.py -------------------------------------------------------------------------------- /tests/unit/test_freeze.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_freeze.py -------------------------------------------------------------------------------- /tests/unit/test_index.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_index.py -------------------------------------------------------------------------------- /tests/unit/test_mapping.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_mapping.py -------------------------------------------------------------------------------- /tests/unit/test_services.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_services.py -------------------------------------------------------------------------------- /tests/unit/test_services_curdler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_services_curdler.py -------------------------------------------------------------------------------- /tests/unit/test_services_dependencer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_services_dependencer.py -------------------------------------------------------------------------------- /tests/unit/test_services_downloader.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_services_downloader.py -------------------------------------------------------------------------------- /tests/unit/test_signals.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_signals.py -------------------------------------------------------------------------------- /tests/unit/test_tool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_tool.py -------------------------------------------------------------------------------- /tests/unit/test_util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_util.py -------------------------------------------------------------------------------- /tests/unit/test_wheel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tests/unit/test_wheel.py -------------------------------------------------------------------------------- /tox.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clarete/curdling/HEAD/tox.ini --------------------------------------------------------------------------------