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

Inferno Mega Refactor #1125

Merged
merged 37 commits into from
Jun 11, 2017
Merged

Inferno Mega Refactor #1125

merged 37 commits into from
Jun 11, 2017

Conversation

LukeSheard
Copy link
Contributor

Objectives

This PR addresses a number of long standing issues I've seen from comments / issues

  • Slow Build Times. I've refactored the rollup build to use flat bundles and parallelised the build process so that all bundles are built at once. I've also used rollup-bundle-typescript to avoid needing to run separate typescript processes for each bundle.

  • CI Timing. We run a fairly long CI process which includes building the source multiple times. I've used Travis Build Stages to parallelise the separate tests which we run and also cache node_modules directory so that the tests run within a couple of minutes now.

  • Inferno should use Jest. This has been spoken about for a long time but there were concerns about browser testing. I've addressed this by converting the tests to use only the core Jasmine APIs which means that the tests can be run in the browser with karma. See fixtures/browser for the Browser test. Currently I do not run with Sauce Labs.

  • Inferno should run tests replacing Inferno modules for React equivalents. The groundwork has been laid for this in fixtures/react, but I wasn't sure on the exact module functions that I needed to write. I've attempted to do this, poorly.

  • Inferno can use Prettier. I didn't want to address this in this PR due to the large changes already and the work going on for 3.4.3. But we can now introduce prettier in lint-staged which I will do in a separate PR.

  • Docs. The Inferno Website has been getting increasingly out of date. To address this I now generate a typdoc website from the modules. We can have this uploaded to Github pages every time we do a push to master to document all the functions. Note: I haven't managed to isolate only the exported functions and interfaces right now. I will work on this.

  • Typings. Similarly from the point above. Typings haven't not been working extremely well for a lot of people. I've tried to address this by building a separate typings file concatenated from the source and holding this in the modules.

Closes

This PR should hopefully close:

@LukeSheard LukeSheard added this to the 4.0 milestone Jun 10, 2017
@LukeSheard LukeSheard changed the base branch from master to dev June 10, 2017 23:40
@infernojs infernojs deleted a comment from coveralls Jun 11, 2017
@infernojs infernojs deleted a comment from coveralls Jun 11, 2017
@infernojs infernojs deleted a comment from coveralls Jun 11, 2017
@infernojs infernojs deleted a comment from coveralls Jun 11, 2017
@infernojs infernojs deleted a comment from coveralls Jun 11, 2017
@infernojs infernojs deleted a comment from coveralls Jun 11, 2017
@infernojs infernojs deleted a comment from coveralls Jun 11, 2017
@LukeSheard LukeSheard merged commit 38b09f0 into dev Jun 11, 2017
@LukeSheard LukeSheard deleted the mega-refactor branch June 11, 2017 14:06
LukeSheard added a commit that referenced this pull request Jun 14, 2017
* Even Dev and Master Branches (#1124)

* Bump version 3.4.3

* v3.4.3

* Inferno Mega Refactor (#1125)

* Mega refactor test

* Other files copied

* Update README.md

* Examples

* Update package.jsons

* Test different build process

* Fixed build

* Correct .travis.yml file

* Test against node 4,6,8

* Fix up karma

* Revert updates test

* Karma stuff

* Fix failing tests

* Change Travis and Coverage

* stuff

* Port 3.4.3

* Apply jestcodemods

* Jest fix

* Fix all tests

* fix merge

* Docs working

* Fix travis script

* Fix travis

* Fix travis script

* Remove custom travis script

* Fix package.json

* Set coverage minimums

* Remove inferno/test/utils

* Stupidly didn't test

* Remove lerna changelog

* prepublishOnly hook

* Testing github pages deploy

* Make fixture for packaging nicer

* Remove deploy

* Use npm@5

* Typedoc (#1126)

* Prepend module

* Prepend module files

* Lint precommit

* Add deploy targets on master branch

* Add npmignore into packages

* Activate prettier (#1130)

* Activate prettier

* Tidy

* Run prettier on travis

* Run prettier

* Remove write from prettier command

* prettier

* Remove prettier from travis

* Run prettier on all scripts

* Webpack fix

* Merge hydration fix

* Update and check scripts

* Update to 3.4.4

* Serialize prettier

* Fix odd versions

* Merge master (#1133)

* Inferno Redux @5  (#1131)

* Activate prettier

* Tidy

* Run prettier on travis

* Run prettier

* Remove write from prettier command

* prettier

* Remove prettier from travis

* Copy initial

* Tests nearly working

* Tests largely passing

* patch test utils

* patch test utils

* All tests passing

* Fix lint and tests

* remove old tests

* Fix karma tests

* imports

* Add docstring headers

* Merge master

* Fix update version

* Fix scripts

* v3.5.0
LukeSheard added a commit that referenced this pull request Jun 15, 2017
* Even Dev and Master Branches (#1124)

* Bump version 3.4.3

* v3.4.3

* Inferno Mega Refactor (#1125)

* Mega refactor test

* Other files copied

* Update README.md

* Examples

* Update package.jsons

* Test different build process

* Fixed build

* Correct .travis.yml file

* Test against node 4,6,8

* Fix up karma

* Revert updates test

* Karma stuff

* Fix failing tests

* Change Travis and Coverage

* stuff

* Port 3.4.3

* Apply jestcodemods

* Jest fix

* Fix all tests

* fix merge

* Docs working

* Fix travis script

* Fix travis

* Fix travis script

* Remove custom travis script

* Fix package.json

* Set coverage minimums

* Remove inferno/test/utils

* Stupidly didn't test

* Remove lerna changelog

* prepublishOnly hook

* Testing github pages deploy

* Make fixture for packaging nicer

* Remove deploy

* Use npm@5

* Typedoc (#1126)

* Prepend module

* Prepend module files

* Lint precommit

* Add deploy targets on master branch

* Add npmignore into packages

* Activate prettier (#1130)

* Activate prettier

* Tidy

* Run prettier on travis

* Run prettier

* Remove write from prettier command

* prettier

* Remove prettier from travis

* Run prettier on all scripts

* Webpack fix

* Merge hydration fix

* Update and check scripts

* Update to 3.4.4

* Serialize prettier

* Fix odd versions

* Merge master (#1133)

* Inferno Redux @5  (#1131)

* Activate prettier

* Tidy

* Run prettier on travis

* Run prettier

* Remove write from prettier command

* prettier

* Remove prettier from travis

* Copy initial

* Tests nearly working

* Tests largely passing

* patch test utils

* patch test utils

* All tests passing

* Fix lint and tests

* remove old tests

* Fix karma tests

* imports

* Add docstring headers

* Merge master

* Fix update version

* Fix scripts

* v3.5.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

1 participant