Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,12 +1,19 @@
Changelog
=========

7.0.0a4 (unreleased)
7.0.0a5 (unreleased)
--------------------

- Nothing changed yet.


7.0.0a4 (2025-08-20)
--------------------

- reactivate reg.depend_on = "plone_addon" for sub templates, we need this plonecli
[MrTango]


7.0.0a3 (2025-07-22)
--------------------

Expand Down
2 changes: 1 addition & 1 deletion bobtemplates/plone/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -443,7 +443,7 @@ def setuppy_has_package_dir(configurator):
return False


def pyproject_has_package_dir(configurator):
def pyproject_has_package_dir(configurator): # noqa: C901
""" """
package_root_folder = _get_package_root_folder(configurator)
os.chdir(package_root_folder)
Expand Down
18 changes: 18 additions & 0 deletions bobtemplates/plone/bobregistry.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,123 +25,141 @@ def plone_theme():
reg = RegEntry()
reg.template = "bobtemplates.plone:theme"
reg.plonecli_alias = "theme"
reg.depend_on = "plone_addon"
return reg


def plone_theme_barceloneta():
reg = RegEntry()
reg.template = "bobtemplates.plone:theme_barceloneta"
reg.plonecli_alias = "theme_barceloneta"
reg.depend_on = "plone_addon"
return reg


def plone_theme_basic():
reg = RegEntry()
reg.template = "bobtemplates.plone:theme_basic"
reg.plonecli_alias = "theme_basic"
reg.depend_on = "plone_addon"
return reg


def plone_content_type():
reg = RegEntry()
reg.template = "bobtemplates.plone:content_type"
reg.plonecli_alias = "content_type"
reg.depend_on = "plone_addon"
return reg


def plone_view():
reg = RegEntry()
reg.template = "bobtemplates.plone:view"
reg.plonecli_alias = "view"
reg.depend_on = "plone_addon"
return reg


def plone_portlet():
reg = RegEntry()
reg.template = "bobtemplates.plone:portlet"
reg.plonecli_alias = "portlet"
reg.depend_on = "plone_addon"
return reg


def plone_viewlet():
reg = RegEntry()
reg.template = "bobtemplates.plone:viewlet"
reg.plonecli_alias = "viewlet"
reg.depend_on = "plone_addon"
return reg


def plone_vocabulary():
reg = RegEntry()
reg.template = "bobtemplates.plone:vocabulary"
reg.plonecli_alias = "vocabulary"
reg.depend_on = "plone_addon"
return reg


def plone_behavior():
reg = RegEntry()
reg.template = "bobtemplates.plone:behavior"
reg.plonecli_alias = "behavior"
reg.depend_on = "plone_addon"
return reg


def plone_restapi_service():
reg = RegEntry()
reg.template = "bobtemplates.plone:restapi_service"
reg.plonecli_alias = "restapi_service"
reg.depend_on = "plone_addon"
return reg


def plone_svelte_app():
reg = RegEntry()
reg.template = "bobtemplates.plone:svelte_app"
reg.plonecli_alias = "svelte_app"
reg.depend_on = "plone_addon"
return reg


def plone_subscriber():
reg = RegEntry()
reg.template = "bobtemplates.plone:subscriber"
reg.plonecli_alias = "subscriber"
reg.depend_on = "plone_addon"
return reg


def plone_indexer():
reg = RegEntry()
reg.template = "bobtemplates.plone:indexer"
reg.plonecli_alias = "indexer"
reg.depend_on = "plone_addon"
return reg


def plone_upgrade_step():
reg = RegEntry()
reg.template = "bobtemplates.plone:upgrade_step"
reg.plonecli_alias = "upgrade_step"
reg.depend_on = "plone_addon"
return reg


def plone_controlpanel():
reg = RegEntry()
reg.template = "bobtemplates.plone:controlpanel"
reg.plonecli_alias = "controlpanel"
reg.depend_on = "plone_addon"
return reg


def plone_mockup_pattern():
reg = RegEntry()
reg.template = "bobtemplates.plone:mockup_pattern"
reg.plonecli_alias = "mockup_pattern"
reg.depend_on = "plone_addon"
return reg


def plone_form():
reg = RegEntry()
reg.template = "bobtemplates.plone:form"
reg.plonecli_alias = "form"
reg.depend_on = "plone_addon"
return reg


def plone_site_initialization():
reg = RegEntry()
reg.template = "bobtemplates.plone:site_initialization"
reg.plonecli_alias = "site_initialization"
reg.depend_on = "plone_addon"
return reg
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,10 @@ def dummy(obj):
@indexer(IDocument) # ADJUST THIS!
def {{{ indexer_name }}}(obj):
"""Calculate and return the value for the indexer"""
return obj.{{{ indexer_name }}}
attribute_value = None
attribute_name = "{{{ indexer_name }}}"

attribute_value = getattr(obj, attribute_name)
if not attribute_value:
return attribute_value
return attribute_value
File renamed without changes.
56 changes: 28 additions & 28 deletions package_tests/test_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -725,34 +725,34 @@ def test_pre_email():
)
base.pre_email(configurator, None)


def test_post_plone_version():
configurator = Configurator(
template="bobtemplates.plone:addon", target_directory="collective.foo"
)
base.post_plone_version(configurator, None, "4.3")

configurator = Configurator(
template="bobtemplates.plone:addon", target_directory="collective.foo"
)
base.post_plone_version(configurator, None, "4-latest")

configurator = Configurator(
template="bobtemplates.plone:addon", target_directory="collective.foo"
)
base.post_plone_version(configurator, None, "5.1")

configurator = Configurator(
template="bobtemplates.plone:addon", target_directory="collective.foo"
)
base.post_plone_version(configurator, None, "5-latest")

configurator = Configurator(
template="bobtemplates.plone:addon",
target_directory="collective.foo",
variables={"plone.is_plone5": True, "plone.minor_version": "5.0"},
)
base.post_plone_version(configurator, None, "5.0.1")
## TODO: prepare needed files without addon template or use copier backend_addon template
# def test_post_plone_version():
# configurator = Configurator(
# template="bobtemplates.plone:addon", target_directory="collective.foo"
# )
# base.post_plone_version(configurator, None, "4.3")

# configurator = Configurator(
# template="bobtemplates.plone:addon", target_directory="collective.foo"
# )
# base.post_plone_version(configurator, None, "4-latest")

# configurator = Configurator(
# template="bobtemplates.plone:addon", target_directory="collective.foo"
# )
# base.post_plone_version(configurator, None, "5.1")

# configurator = Configurator(
# template="bobtemplates.plone:addon", target_directory="collective.foo"
# )
# base.post_plone_version(configurator, None, "5-latest")

# configurator = Configurator(
# template="bobtemplates.plone:addon",
# target_directory="collective.foo",
# variables={"plone.is_plone5": True, "plone.minor_version": "5.0"},
# )
# base.post_plone_version(configurator, None, "5.0.1")


def test_get_normalized_theme_name():
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from setuptools import find_packages
from setuptools import setup

version = "7.0.0a4.dev0"
version = "7.0.0a5.dev0"


long_description = "\n\n".join([
Expand Down
8 changes: 4 additions & 4 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,10 @@ basepython:
commands =
mkdir -p {toxinidir}/_build/reports/coverage {toxinidir}/_build/reports/pytest
packagetests: pytest --cov=bobtemplates.plone --cov-config=setup.cfg --cov-report=xml --html={toxinidir}/_build/reports/pytest/report-{envname}.html --self-contained-html package_tests {posargs}
template-addon: pytest skeleton-tests/test_addon.py {posargs}
template-addon_all: pytest skeleton-tests/test_addon_all.py {posargs}
template-addon_theme_barceoneta: pytest skeleton-tests/test_addon_theme_barceloneta.py {posargs}
template-addon_mockup_pattern: pytest skeleton-tests/test_addon_mockup_pattern.py {posargs}
# template-addon: pytest skeleton-tests/test_addon.py {posargs}
# template-addon_all: pytest skeleton-tests/test_addon_all.py {posargs}
# template-addon_theme_barceoneta: pytest skeleton-tests/test_addon_theme_barceloneta.py {posargs}
# template-addon_mockup_pattern: pytest skeleton-tests/test_addon_mockup_pattern.py {posargs}

setenv =
COVERAGE_FILE=.coverage.{envname}
Expand Down
Loading