diff --git a/README.md b/README.md index 3733d2f1..b73ae8fb 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,9 @@ virtual dom, integrates beautifully with hooks, and the rendering is asynchronou **Try it online!** An online playground is available at [https://odoo.github.io/owl/playground](https://odoo.github.io/owl/playground) to let you experiment with the Owl framework. There are some code examples to showcase some interesting features. +Owl is currently mostly stable. Possible future changes are explained in the +[roadmap](roadmap.md). + ## Example Here is a short example to illustrate interactive components: diff --git a/doc/component.md b/doc/component.md index c2966f9a..9108dea4 100644 --- a/doc/component.md +++ b/doc/component.md @@ -1138,7 +1138,7 @@ Here are a few tips on how to work with asynchronous components: synchronous renderings 3. Lazy loading external libraries is a good use case for async rendering. This is mostly fine, because we can assume that it will only takes a fraction of a - second, and only once (see `owl.utils.loadJS`) + second, and only once (see [`owl.utils.loadJS`](utils.md#loadjs)) 4. For all the other cases, the `t-asyncroot` directive (to use alongside `t-component`) is there to help you. When this directive is met, a new rendering sub tree is created, such that the rendering of that component (and its diff --git a/roadmap.md b/roadmap.md new file mode 100644 index 00000000..e547e74d --- /dev/null +++ b/roadmap.md @@ -0,0 +1,47 @@ +# 🦉 OWL Roadmap 🦉 + +- Current version: 0.23.0 +- Status: mostly stable + +This roadmap is only an attempt at predicting Owl's future. Everything may +change! + +### October 2019 + +We plan to complete the following tasks: + +- make owl asynchronous rendering rock solid (issue #330), +- improve API for root widgets (issue #306), +- replace `t-keepalive`, `t-asyncroot` and maybe `t-transition` by components (issue #295). + +### November 2019 + +Once the previous tasks are done, release version 1.0alpha. This means that the +API should be stable. But it could change a little bit if we need it for our +work on Odoo. + +### End of 2019 + +Release v1.0 + +- API should be stable, +- we will use semantic versioning, +- we will maintain a changelog and an upgrade guide. + +### 1.x + +- add chrome and firefox devtools, +- add support for single file components, +- fix every bugs, +- improve documentation, +- small backward compatible improvements. + +### 2.x (2021? 2022?) + +Maybe: + +- reimplement vdom to use *block* system, like Vue 3, +- refactor `QWeb` to use an intermediate representation (some kind of AST) to + allow additional optimisations. + + diff --git a/tests/doc_link_checker.test.ts b/tests/doc_link_checker.test.ts index e6a1591d..81edb9bb 100644 --- a/tests/doc_link_checker.test.ts +++ b/tests/doc_link_checker.test.ts @@ -13,7 +13,8 @@ const HEADING_REGEXP = /\n(#+\s*)(.*)/g; function getFiles(): string[] { const DOCFILES = fs.readdirSync("doc").map(f => `doc/${f}`); const MAINREADME = "README.md"; - return DOCFILES.concat(MAINREADME); + DOCFILES.push('roadmap.md', MAINREADME) + return DOCFILES; } test("All markdown links work", () => {