GithubHelp home page GithubHelp logo

Comments (6)

colemanw avatar colemanw commented on July 20, 2024

@totten I'm confused about this. I don't see hardcoded references to specific mixins in civix. Doesn't it just scan civicrm-core/mixin for those? Why isn't this working?

from civix.

totten avatar totten commented on July 20, 2024

This issue should be fixed by d8e980e / v22.06.2.

@colemanw The list is mixin-backports.php. You may recall - the testing+metadata+requirements for backports are more fiddly/stringent than for regular code updates, and it's easier on my brain if that responsibility is split (ie civicrm-core drives new iterations of the mixins per SemVer; then civix decides backports).

The bit that might be surprising - civix currently wants mixin-backports.php to have a full list (even if you don't intend to use backports). It's easy to update. It would be nice to work better with non-backported mixins, though I'm not sure how easy it is to support both.

Question/aside: afform-entity-php@1 is provided by 5.50. Is that also the minimum to use it? Or does it also work on prior versions?

from civix.

colemanw avatar colemanw commented on July 20, 2024

@totten this mixin has a bit of a weird upgrade path:

  • < 5.50 the mixin is not needed because core does the file scanning automatically
  • >= 5.50 the mixin is required if you want to keep doing the file scanning

So for an extension to be compatible with all versions, it should add the mixin tag to info.xml and then provide an empty shim that does nothing, like this: https://github.com/eileenmcnaughton/deduper/pull/26/files

from civix.

totten avatar totten commented on July 20, 2024

@colemanw Re-reading, perhaps d8e980e wasn't the correct revision?

Additional question: for systems <5.50, how far back does it go? Like it's meaningful to use 1.0.0-null on, say, 5.30?

from civix.

totten avatar totten commented on July 20, 2024

There appears to be some afformEntity scanning code as far back as civicrm/civicrm-core@0406c8f#diff-b700bdf29c94b8c86727852b07277f33787500b5af297c2fc5c86105ec0edc50R191. So maybe the minimum is 5.31

from civix.

totten avatar totten commented on July 20, 2024

Aah, wait. The only behavior of v1.0.0-real is to subscribe to civi.afform_admin.metadata -- which won't be emitted on 5.31-5.49. v1.0.0-real and v1.0.0-null are both nullops. It shouldn't matter which variant we use for backport purposes.

The only difference is that v1.0.0-null provides better comments. We could add more comments to v1.0.0-real -- and then we don't need two versions of the file?

from civix.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.