Skip to content
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

Reorganisation of the ckeditor5 repository #215

Closed
Reinmar opened this issue Jun 22, 2016 · 5 comments
Closed

Reorganisation of the ckeditor5 repository #215

Reinmar opened this issue Jun 22, 2016 · 5 comments
Labels
type:task This issue reports a chore (non-production change) and other types of "todos".
Milestone

Comments

@Reinmar
Copy link
Member

Reinmar commented Jun 22, 2016

The idea is to:

  1. Move CKEditor 5 core to ckeditor5-core. In general – there should be no src/ directory in ckeditor5.
  2. Extract all gulp tasks to separate packages.
  3. Reorganise dependencies: Reorganise dependencies and devDependencies #74 and Gulp tasks refactoring #170.
  4. Ultimately, ckeditor5 should only keep configuration such as bender.js and gulpfile.js.
@Reinmar Reinmar added the type:task This issue reports a chore (non-production change) and other types of "todos". label Jun 22, 2016
@Reinmar Reinmar added this to the 0.2.0 milestone Jun 22, 2016
@Reinmar
Copy link
Member Author

Reinmar commented Jul 6, 2016

I've talked with @jodator and @pjasiun about their requirements for this task. Two main points are:

  1. After including those tools in your project (in our case this is ckeditor5 package, but it may be any package in which you use CKEditor 5) it'd be nice if not only compiling and bundling worked but also relinking, gulp update, etc.
  2. And once we got that far we could also think about making some of those things configurable so other projects (not CKEditor 5 related) could use them.

The second point is optional and should not be treated as critical to have. The first is a critical requirement.

@Reinmar
Copy link
Member Author

Reinmar commented Jul 20, 2016

It seems that we'll need the following packages:

  • ckeditor5-dev-utils – base utils for all the dev code,
  • ckeditor5-dev-lint – this package will be installed in all ckeditor5-* packages (see Extract linting tasks to a separate package #216),
  • ckeditor5-dev-envexec and all dev tasks (install, init, update, etc.) and whatever else we need in ckeditor5 and to manage the whole project (so these can be understood as management tasks).
  • ckeditor5-dev-builder – contains gulp build (for JS and SASS),
  • ckeditor5-dev-bundler-rollup – contains the current gulp bundle.

@Reinmar
Copy link
Member Author

Reinmar commented Jul 25, 2016

For now we'll be using ckeditor5-dev-* deps as links to GH ("ckeditor/ckeditor5-dev-utils"), but as soon as all packages are exported and published on npm we should switch to versions.

@szymonkups
Copy link
Contributor

New repositories were created and code was moved there.

  1. Move CKEditor 5 core to ckeditor5-core. In general – there should be no src/ directory in ckeditor5.
  2. Extract all gulp tasks to separate packages.
  3. Reorganise dependencies: Reorganise dependencies and devDependencies #74 and Gulp tasks refactoring #170.
  4. Ultimately, ckeditor5 should only keep configuration such as bender.js and gulpfile.js.

Ad 1. Code was moved to ckeditor5-core, there is no src/ inside ckeditor5 repository.
Ad 2. Tasks are extracted to separate packages.
Ad 3. Dependencies are updated according to changes that were made.
Ad 4. Currently there is only one follow-up: #281

  1. After including those tools in your project (in our case this is ckeditor5 package, but it may be any package in which you use CKEditor 5) it'd be nice if not only compiling and bundling worked but also relinking, gulp update, etc.
  2. And once we got that far we could also think about making some of those things configurable so other projects (not CKEditor 5 related) could use them.

Ad 1. You can include tools in any project that uses CKEditor 5, after closing #287 there will be a option to configure builder and bundler paths. Also CKEditor workspace path can be configured, for now it's a relative path but there is a follow-up to change this: https://github.com/ckeditor/ckeditor5-dev-env/issues/10.
All packages have their own configuration now, there is a follow-up discussion about task configuration: #288.
Ad 2. As for the projects that are not related to CKEditor 5, currently it will be hard to use our tools there, as they are quite tightly connected to our project structure. I think we can think about it when there will be a real need for that.

@szymonkups
Copy link
Contributor

I've described output of this issue in my previous comment. I think we can close this one, there are follow up issues in related repositories.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:task This issue reports a chore (non-production change) and other types of "todos".
Projects
None yet
Development

No branches or pull requests

2 participants