Skip to main content

zope.browserresource

Latest release Supported Python versions https://github.com/zopefoundation/zope.browserresource/actions/workflows/tests.yml/badge.svg https://coveralls.io/repos/github/zopefoundation/zope.browserresource/badge.svg?branch=master Documentation Status

This package provides an implementation of browser resources. It also provides directives for defining those resources using ZCML.

Resources are static files and directories that are served to the browser directly from the filesystem. The most common example are images, CSS style sheets, or JavaScript files.

Resources are be registered under a symbolic name and can later be referred to by that name, so their usage is independent from their physical location. Resources can also easily be internationalized.

Documentation is hosted at https://zopebrowserresource.readthedocs.io

Changes

6.0 (2025-09-12)

  • Replace pkg_resources namespace with PEP 420 native namespace.

5.2 (2025-02-14)

  • Add support for Python 3.12, 3.13.

  • Drop support for Python 3.7, 3.8.

5.1 (2023-08-28)

  • Make tests more resilient.

5.0 (2023-02-14)

  • Drop support for Python 2.7, 3.5, 3.6.

  • Add support for Python 3.9, 3.10, 3.11.

  • Drop support for python setup.py test.

4.4 (2019-12-10)

  • Make the registration of the FileETag adapter conditional on the environment as Zope 4 registers this adapter explicitly in Products.Five.browser. See #12.

  • Add support for Python 3.8.

  • Drop support for Python 3.4.

4.3 (2018-10-05)

4.2.1 (2017-09-01)

  • Fix dependencies of the zcml extra.

4.2.0 (2017-08-04)

  • Add support for Python 3.5 and 3.6.

  • Drop support for Python 2.6 and 3.3.

4.1.0 (2014-12-26)

4.0.2 (2014-11-04)

  • Return no ETag if no adapter is registered, disabling the requirement for applications that was introduced in 3.11.0 (GitHub #1)

4.0.1 (2013-04-03)

  • Fix some Python 3 string vs bytes issues.

4.0.0 (2013-02-20)

  • Replace deprecated zope.component.adapts usage with equivalent zope.component.adapter decorator.

  • Replace deprecated zope.interface.classProvides usage with equivalent zope.interface.provider decorator.

  • Replace deprecated zope.interface.implementsOnly usage with equivalent zope.interface.implementer_only decorator.

  • Replace deprecated zope.interface.implements usage with equivalent zope.interface.implementer decorator.

  • Drop support for Python 2.4 and 2.5.

  • Add support for Python 3.3.

3.12.0 (2010-12-14)

  • Add zcml extra dependencies and fixed dependencies of configure.zcml on other packages’ meta.zcml.

  • Add a test for including our own configure.zcml.

3.11.0 (2010-08-13)

  • Support the HTTP ETag header for file resources. ETag generation can be customized or disabled by providing an IETag multi-adapter on (IFileResource, your-application-skin).

3.10.3 (2010-04-30)

  • Prefer the standard libraries doctest module to the one from zope.testing.

3.10.2 (2009-11-25)

  • The previous release had a broken egg, sorry.

3.10.1 (2009-11-24)

  • Import hooks functionality from zope.component after it was moved there from zope.site. This lifts the dependency on zope.site and thereby, ZODB.

  • Import ISite and IPossibleSite from zope.component after they were moved there from zope.location.

3.10.0 (2009-09-25)

  • Add an ability to forbid publishing of some files in the resource directory, this is done by fnmatch’ing the wildcards in the forbidden_names``class attribute of ``DirectoryResource. By default, the .svn is in that attribute, so directories won’t publish subversion system directory that can contain private information.

3.9.0 (2009-08-27)

Initial release. This package was splitted off zope.app.publisher as a part of refactoring process.

Additional changes that are made during refactoring:

  • Resource class for file resources are now selected the pluggable way. The resource directory publisher and browser:resource ZCML directive now creating file resources using factory utility lookup based on the file extension, so it’s now possible to add new resource types without introducing new ZCML directives and they will work inside resource directories as well.

    NOTE: the “resource_factories” attribute from the DirectoryResource was removed, so if you were using this attribute for changing resource classes for some file extensions, you need to migrate your code to new utility-based mechanism.

    See zope.browserresource.interfaces.IResourceFactoryFactory interface.

  • The Image resource class was removed, as they are actually simple files. To migrate, simply rename the “image” argument in browser:resource and browser:i18n-resource directives to “file”, if you don’t do this, resouces will work, but you’ll get deprecation warnings.

    If you need custom behaviour for images, you can register a resource factory utility for needed file extensions.

  • The PageTemplateResource was moved into a separate package, “zope.ptresource”, which is a plugin for this package now. Because of that, the “template” argument of browser:resource directive was deprecated and you should rename it to “file” to migrate. The PageTemplateResource will be created for “pt”, “zpt” and “html” files automatically, if zope.ptresource package is included in your configuration.

  • Fix stripping the “I” from an interface name for icon title, if no title is specified.

  • When publishing a resource via Resources view, set resource parent to an ISite object, not to current site manager.

  • Clean up code and improve test coverage.

Release files for zope.browserresource 6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zope.browserresource 6.0
File Size Uploaded
zope_browserresource-6.0.tar.gz 36.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for zope.browserresource 6.0
File Interpreter ABI Platform
zope_browserresource-6.0-py3-none-any.whl Python 3 none any Details

Total release size: 76.9 kB

Release files / zope_browserresource-6.0.tar.gz

Download URL zope_browserresource-6.0.tar.gz
Size 36.9 kB
Tags Source
SHA-256 checksum
How to use checksums
bd7acda7ec111ddaf325b03c777d3bc2ed193319fcf760c4d258fd19f73b434b
BLAKE2b-256 checksum
How to use checksums
0b8ef49e76614888eb5f313bf7942f2218718194a30332ca4ec294bb19c2cf09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / zope_browserresource-6.0-py3-none-any.whl

Download URL zope_browserresource-6.0-py3-none-any.whl
Size 40.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3687f05ab66a4d4e9a6b70b3bed895c9ce64bf43020b4765e94dd2661fb7043a
BLAKE2b-256 checksum
How to use checksums
f3ab770ec1d6490ec827505374648629b7a4b14890ed1054cd73f5d0551cb9ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release history Release notifications | RSS feed

This release

6.0 This release

2 release files

5.2

2 release files

5.1

2 release files

5.0

2 release files

4.4

2 release files

4.3

2 release files

4.2.1

1 release file

4.2.0

2 release files

4.1.0

2 release files

4.0.2

1 release file

4.0.1

1 release file

4.0.0

1 release file

3.12.0

1 release file

3.11.0

1 release file

3.10.3

1 release file

3.10.2

1 release file

3.10.1

1 release file

3.10.0

1 release file

3.9.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page