How to correctly publish an extension? #892
-
I've made a little feature, which I'd like to publish. After a while I had all folders ❯ php yellow.php publish yellow-headinglink
Publishing extension files 100%... done
Yellow publish: 1 extension, 0 errors but nothing happened in the What am I doing wrong? |
Beta Was this translation helpful? Give feedback.
Replies: 5 comments 23 replies
-
PHP 8.2.9 is installed and publish still doesn't work. |
Beta Was this translation helpful? Give feedback.
-
As long as you have configured Se also: Supported status values. |
Beta Was this translation helpful? Give feedback.
-
The specific problem with the yellow-headinglink repository should have been solved by Steffen's answer. However the output of the publish command was really confusing in this case, you could also say it was completely wrong, it said that 1 extension was published despite the experimental status in the settings. As a rule of thumb we want to remove complexity from people's everyday lives and this doesn't strike me as particularly straightforward. I would like to get more feedback about making extensions from developers and designers. Maybe the existing tools are still too confusing and the existing documentation doesn't give enough explanation for beginners. Someone mentioned that a point-by-point guide is missing. What are the problems you encountered during the making of extensions? Can you describe what was missing from your point of view? Do you think we should document one additional step what you can do between "making an extension" and "publishing an extension"? Let us know what you think. Any comments are welcome. |
Beta Was this translation helpful? Give feedback.
-
For the curious, I've published my current local Yellow development environment. I am a Windows user, but perhaps this might help as an example to close the gap between developing and publishing an extension. |
Beta Was this translation helpful? Give feedback.
-
Let us know if you're stuck with making and publishing an extension. I think good starting points are the contribution guidelines and the experimental extension for developers by Steffen. Most extensions start as experimental. If extensions become more stable and more popular over time, they can switch from Two ideas for the future. We could improve our automatisms, for example let the publish command verify more requirements at run time and give helpful error messages. We could add clarifications to the checklist of what we expect, for example make a formal specification of the coding standard rather than pointing to example implementations of the coding standard. Yesterday I watched CCC presentations by Joscha Bach about how humans and machines learn. I personally prefer a hands-on approach and learning-by-doing, but I now understand better why some people prefer to read documentation and build mental models in their brain before diving into coding. There's value in having both good technology and good documentation. |
Beta Was this translation helpful? Give feedback.
Now there's a new way of publishing extensions. The publish command will take your meta information and modify the file
system/extensions/update-available.ini
in the main repository. This is the central place where we store the update settings for available extensions. Previously extensions were stored in the repositorydatenstrom/yellow-extensions
, but this will be no longer needed in favour of individual repositories. There are a few more things the publish command can do, but this is done more or less automatically to make your life easier, for example the publish command can extract version number and publication date from your source code.Here's what you do if you want to publish a …