-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Documentation for grunt/gulp tasks #47
Comments
One thing that would definitely need to be clarified in ckeditor5-design is what we encountered while working on #43. Like a more high-level description of the situation. Without it the behaviour of our tools may seem to be weird. PS. We need to link to npm/npm#7742 (comment) |
For now, I will put tasks description here. Later on we can move them to more suitable place. Development workflowInitializing CKEditor 5 repositoryTo start developing CKEditor 5 packages, first step is to clone CKEditor 5 GitHub repository. It can be done by calling:
Next, install all project dependencies:
At this point all packages are installed inside
Package development modePutting package in development mode means that it is present in
In this example both NoteThere is a problem with this approach: each package in development mode has its own
In this situation Developing packagesSelecting one package for developmentInitial state is described in initializing CKEditor 5 repository. To use development version of a chosen package use
After the task is executed,
Package is now ready for further development and at the same time will be used for building CKEditor 5. Using all CKEditor 5 packages in development modeIf there is a need to put all CKEditor 5 packages in the development mode, it can be done by using
Creating new packageTask that simplifies process of creating new CKEditor 5 packages can be run by:
Task will ask for package name, initial version and GitHub URL. It will initialize package repository and put it in development mode. Tasks operating on all packages in development modeThese task operate on all packages that are currently in development mode. This means they will be executed on packages that are present as dependencies inside Tasks Git statusTo get short Git status from all repositories:
Sample output for two packages in development mode:
Updating packagesTo update Git repositories of packages in development mode:
This task will checkout package to desired branch and call
Tasks descriptioninstall --package < path|GitHub URL|name >Task descriptionInstalls selected dependency in development mode. Dependency will be cloned into Examples
Task steps
initTask descriptionInstalls all CKEditor 5 dependencies in development mode. All dependencies from Examples
Task steps
update [--npm-update]Task descriptionUpdates all dependencies that are currently in development mode. Checks them out to branch provided in Examples
Task steps
statusTask descriptionPrints repository information using Examples
Task steps
create-packageTask descriptionCreates new package in development mode with provided information. Example
Task steps
relinkTask descriptionRecreates symbolic links for packages in development mode. Examples
Task steps
|
Important note: you use the term "Plugin development mode" and later use the word "plugin" many times. The thing you're referring to is a "package" (aka "node module"). The important of a correct naming is well visible e.g. when you work on Relevant discussion is here: ckeditor/ckeditor5-design#92 |
PS. #66 |
Updated my comment to use gulp tasks, also replaced "plugin" with "package". |
Published on https://github.com/ckeditor/ckeditor5/wiki/Development-Workflow. Great job. |
Followup for #43 and #36.
I'm not sure yet where we want to keep it (in the README or in ckeditor5-design and later copy somewhere... dunno). But we definitely need to have a list of them with short descriptions what they are needed for.
Second part is a documentation of a typical workflow (based on #43).
The text was updated successfully, but these errors were encountered: