Where is defined collection.getRawQuery and how?

How about having an AT-compatibility behaviour that can be enabled by users who need to use old APIs, that deprecates all the methods it provides?

1 Like

Sounds good. This behavior should then handle any Dexterity content type. E.g. by wrapping the content and generating for each property a getPropertyname/setPropertyname method and special methods for known incompatible methods (e.g. for the getRawQuery thing).

1 Like

We moved from AT to Dexterity. IMO, it's wrong to assume the API will be the same. You should use interfaces to provide different adapters/views/etc for the dexterity variants. Dexterity and plone.app.contenttypes have been around for a LONG time.

Developers knew things would change when we went from AT to DX.

@thet we're not talking about the core API, but Plone's default content types API.

I was reviewing the README of plone.app.contenttypes earlier and, even as it contains a lot of information (congratulations for that, BTW) it lacks some pretty important points for developers.

let's begin: the goal of the project was to replace Plone's default content types by using the new content type framework. now, go to Information for Addon-Developers and Differences to Products.ATContentTypes and try to find any information about API changes... not a single line.

the problem is not making changes to the API, but making changes and not tell anybody about it. we have to be more careful with those kind of things: we need deprecation warnings in Products.ATContentTypes and plone.app.contentypes, besides documentation.

also, if you want to change the behavior of some function, why using the same unpythonic name of a function that returns a different result? why not just fix the thing completely and not half bake a solution?

the problem is not that I can use Archetypes in Plone 5; I use both, Products.ATContentTypes and plone.app.contentypes, in my projects and I have to maintain compatibility on my add-ons. that's my main concern.

1 Like

and then we end up with just another way to make the same thing; no, please, don't do that; let's keep things simple.

@vangheem you're one of my favorite persons in the Plone community, but the next time you tell me that something has been there for around a long time, you will lose all the beers I've owe you. the president of my football team has been around also for a long time and he really sucks, so that's not a valid argument.

I was one of the earliest adopters of Dexterity, we were one of the earliest adopters of plone.ap.contenttypes; there are some issues that have been reported, and ignored, for years, like the lack of Location field... but at least that is documented.

IYO, it's wrong to assume the API will be the same; IMO, you're wrong; both are opinions.

yes, developers knew things would change, but not all developers, or integrators, know or remember all the details; changes have to be documented.

I'm not sure anyone ever sees any of those promised beers we all promise each other anyways so no loss! :wink:

1 Like