Skip to content

Commit

Permalink
issue a warning if a static view is referencing a package that doesn'…
Browse files Browse the repository at this point in the history
…t exist
  • Loading branch information
mmerickel committed Feb 8, 2024
1 parent 0441e47 commit bd21568
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions src/pyramid/static.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import os
from os.path import exists, getmtime, getsize, isdir, join, normcase, normpath
from pkg_resources import resource_exists, resource_filename, resource_isdir
import warnings

from pyramid.asset import abspath_from_asset_spec, resolve_asset_spec
from pyramid.httpexceptions import HTTPMovedPermanently, HTTPNotFound
Expand Down Expand Up @@ -92,6 +93,19 @@ def __init__(
if package_name is None:
package_name = caller_package().__name__
package_name, docroot = resolve_asset_spec(root_dir, package_name)
if package_name:
try:
__import__(package_name)
except ImportError:
warnings.warn(
f'A "pyramid.static.static_view" is being created with an'
f' asset spec referencing a package "{package_name}" that'
f' does not exist. This will break in the future.'
f' If this is done to override an asset, you must adjust'
f' this to override a location inside a real package.',
DeprecationWarning,
stacklevel=1,
)
self.use_subpath = use_subpath
self.package_name = package_name
self.docroot = docroot
Expand Down

0 comments on commit bd21568

Please sign in to comment.