I'm trying to use Mosaic in 2022 on Plone 6 classic but coming upon the following error
File "/home/code/my.site/eggs/zope.configuration-4.4.1-py3.9.egg/zope/configuration/config.py", line 872, in finish
args = toargs(context, *self.argdata)
File "/home/code/my.site/eggs/zope.configuration-4.4.1-py3.9.egg/zope/configuration/config.py", line 1702, in toargs
args[str(name)] = field.fromUnicode(s)
File "/home/code/my.site/eggs/zope.configuration-4.4.1-py3.9.egg/zope/configuration/fields.py", line 173, in fromUnicode
value = self.context.resolve(name)
File "/home/code/my.site/eggs/zope.configuration-4.4.1-py3.9.egg/zope/configuration/config.py", line 225, in resolve
__import__(mname)
File "/home/code/my.site/eggs/plone.app.standardtiles-2.4.2-py3.9.egg/plone/app/standardtiles/navigation.py", line 5, in <module>
from plone.app.layout.navigation.defaultpage import isDefaultPage
zope.configuration.xmlconfig.ZopeXMLConfigurationError: File "/home/code/my.site/eggs/plone.app.standardtiles-2.4.2-py3.9.egg/plone/app/standardtiles/layout.zcml", line 8.4-17.10
File "/home/code/my.site/parts/instance/etc/site.zcml", line 16.2-16.23
File "/home/code/my.site/eggs/Products.CMFPlone-6.0.0b2-py3.9.egg/Products/CMFPlone/configure.zcml", line 118.2-122.8
File "/home/code/my.site/eggs/plone.app.mosaic-2.2.5-py3.9.egg/plone/app/mosaic/configure.zcml", line 10.2-10.47
File "/home/code/my.site/eggs/plone.app.standardtiles-2.4.2-py3.9.egg/plone/app/standardtiles/configure.zcml", line 35.4-35.34
ModuleNotFoundError: No module named 'plone.app.layout.navigation.defaultpage'
I checked on plone.app.layout.navigation and definitely no longer includes defaultpage, but it seems the standardtiles still believe that it should be there.
What's the protocol? Do I just say hey @mauritsvanrees please release a new version of plone.app.standardtiles in the next Plone 6 release...
??
Open an issue?
Since my Dockerfile is based on a pip-based install. I created a requirements.txt file from the versions-ecosystem.cfg file.
This is what my Dockerfile looks like now:
I stuffed all the ecosystem and extras into a requirements.txt
(@mauritsvanrees a ecosystem-requirements.txt to complement the ecosystem.cfg file would be helpful, I think.)
@jensens I have a question...
What if I want to use a package on the filessystem as a custom source?
I get that, by convention, mxdev expects to find a requirements.txt and a constraints.txt and relies on a special .ini file to override the configuration with custom packages, the result is a single requirements-mxdev.txt with all needed packages.
The example in the docs shows adding a custom package from a git source....
You have those in filesystem only? I usually put those in git repositories too.
If in FS only, it is enough to add -e src/my.package to the requirements.txt no additional magic needed.
I have a monolithic setup (all project code in one repo), on purpose (it fits the current use case).
I have a semi automated process which builds everything each time I commit my monolithic repo.
The customisations are stored in a src/ folder.
For this reason I'll be using the -e src/my.package approach.