-
Notifications
You must be signed in to change notification settings - Fork 6
Closed
Description
Bug Report
Describe the bug
Starting with version 1.1, plaster get_loader() raises MultipleLoadersFound on stock installs.
To Reproduce
Steps to reproduce the behavior:
(Stock pyramid install from https://docs.pylonsproject.org/projects/pyramid/en/2.0-branch/narr/project.html#creating-the-project)
$ cookiecutter gh:Pylons/pyramid-cookiecutter-starter --checkout 2.0-branch
project_name [Pyramid Scaffold]:
repo_name [pyramid_scaffold]: breakplaster
... choose [1] template_langauge jinja2 and [1] no backend...
$ cd breakplaster/
$ python3 -m venv env
$ env/bin/pip install --upgrade pip setuptools
...
Successfully installed pip-22.3.1 setuptools-65.5.1
$ env/bin/pip install -e ".[testing]"
...
Successfully installed Mako-1.2.4 PasteDeploy-3.0.1 Pygments-2.13.0 WebTest-3.0.0 attrs-22.1.0 beautifulsoup4-4.11.1 breakplaster-0.0 coverage-6.5.0 exceptiongroup-1.0.4 hupper-1.10.3 iniconfig-1.1.1 jinja2-3.1.2 markupsafe-2.1.1 packaging-21.3 plaster-1.1 plaster_pastedeploy-1.0.1 pluggy-1.0.0 pyparsing-3.0.9 pyramid-2.0 pyramid-mako-1.1.0 pyramid_debugtoolbar-4.9 pyramid_jinja2-2.10 pytest-7.2.0 pytest-cov-4.0.0 repoze.lru-0.7 soupsieve-2.3.2.post1 tomli-2.0.1 translationstring-1.4 venusian-3.0.0 waitress-2.1.2 webob-1.8.7 zope.deprecation-4.4.0 zope.interface-5.5.1
$ env/bin/pserve development.ini
Traceback (most recent call last):
File "/home/bowe/breakplaster/env/bin/pserve", line 8, in <module>
sys.exit(main())
File "/home/bowe/breakplaster/env/lib64/python3.10/site-packages/pyramid/scripts/pserve.py", line 30, in main
return command.run()
File "/home/bowe/breakplaster/env/lib64/python3.10/site-packages/pyramid/scripts/pserve.py", line 189, in run
loader = self._get_config_loader(config_uri)
File "/home/bowe/breakplaster/env/lib64/python3.10/site-packages/pyramid/scripts/common.py", line 23, in get_config_loader
return plaster.get_loader(config_uri, protocols=['wsgi'])
File "/home/bowe/breakplaster/env/lib64/python3.10/site-packages/plaster/loaders.py", line 115, in get_loader
raise MultipleLoadersFound(
plaster.exceptions.MultipleLoadersFound: Multiple plaster loaders were found for scheme "file+ini", protocol "wsgi". Please specify a more specific config_uri. Matched loaders: plaster-pastedeploy+file+ini, plaster-pastedeploy+file+ini
Expected behavior
plaster properly loads development.ini and starts the web application.
Additional context
Not unique to pyramid, plaster 1.1 breaks similarly in my own project as well. Downgrading to plaster==1.0 resolves the problem.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels