Skip to content

Commit

Permalink
Merge branch 'release/v0.7.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
Ed Morales authored and Ed Morales committed Sep 15, 2016
2 parents b8458d0 + 659baa5 commit c6f8c67
Show file tree
Hide file tree
Showing 272 changed files with 2,855 additions and 4,155 deletions.
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,9 @@ Covalent is a reusable UI platform from Teradata for building web applications w
## Setup

* Ensure you have Node 4.4 and NPM 3+ installed.
* Install Angular CLI `npm i -g angular-cli@1.0.0-beta.8`
* Install TSLint and Typescript `npm install -g tslint typescript typings`
* Install Angular CLI `npm i -g angular-cli@1.0.0-beta.10`
* Install Typescript 2.0 `npm i -g typescript@2.0.2`
* Install TSLint and Typings `npm install -g tslint typings`
* Install Protractor for e2e testing `npm install -g protractor`
* Install Node packages `npm i`
* Update Webdriver `webdriver-manager update` and `./node_modules/.bin/webdriver-manager update`
Expand Down
17 changes: 10 additions & 7 deletions angular-cli-build.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,22 @@ module.exports = function(defaults) {
'systemjs/dist/system-polyfills.js',
'systemjs/dist/system.src.js',
'zone.js/dist/*.js',
'es6-shim/es6-shim.js',
'reflect-metadata/*.js',
'core-js/client/core.js',
'rxjs/**/*.js',
'hammerjs/*.min.js',
'@angular/**/*.js',
'@angular2-material/**/*.js',
'showdown/dist/showdown.js'
'@angular2-material/**/*.+(js|css)',
'showdown/dist/showdown.js',
'highlight.js/lib/**'
],
polyfills: [
'vendor/es6-shim/es6-shim.js',
'vendor/reflect-metadata/Reflect.js',
'vendor/core-js/client/core.js',
'vendor/systemjs/dist/system.src.js',
'vendor/zone.js/dist/zone.js',
'vendor/showdown/dist/showdown.js'
'vendor/hammerjs/hammer.min.js',
'@angular2-material/**/*.css',
'vendor/showdown/dist/showdown.js',
'vendor/highlight.js/lib/**'
]
});
};
1 change: 1 addition & 0 deletions build.conf.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ module.exports = {
packagejson: [
'src/**/**/package.json'
],
deployed: 'deploy/platform/',
tsfiles: [
'src/typings.d.ts',
'!src/main.ts',
Expand Down
36 changes: 8 additions & 28 deletions config/karma-test-shim.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,42 +34,22 @@ System.import('system-config.js').then(function() {
// Load and configure the TestComponentBuilder.
return Promise.all([
System.import('@angular/core/testing'),
System.import('@angular/platform-browser-dynamic/testing'),
System.import('@angular/router'),
System.import('@angular/http'),
System.import('@angular/forms'),
System.import('@angular/core'),
System.import('@angular2-material/icon'),
System.import('@angular/platform-browser-dynamic/testing')
]).then(function (providers) {
var testing = providers[0];
var testingBrowser = providers[1];
var testingRouter = providers[2];
var testingHttp = providers[3];
var testingForms = providers[4];
var testingCore = providers[5];
var testingIcon = providers[6];
testing.setBaseTestProviders(testingBrowser.TEST_BROWSER_DYNAMIC_PLATFORM_PROVIDERS,
testingBrowser.TEST_BROWSER_DYNAMIC_APPLICATION_PROVIDERS
);
testing.beforeEach(function(){
testing.addProviders([
testingRouter.ROUTER_DIRECTIVES,
testingRouter.RouterOutletMap,
testingHttp.HTTP_PROVIDERS,
testingForms.disableDeprecatedForms(),
testingForms.provideForms(),
testingIcon.MdIconRegistry,
{ provide: testingRouter.Router, useValue: {} },
{ provide: testingRouter.ActivatedRoute, useValue: {} },
testingCore.ChangeDetectorRef,
]);
});

testing.TestBed.initTestEnvironment(
testingBrowser.BrowserDynamicTestingModule,
testingBrowser.platformBrowserDynamicTesting());
});
}).then(function() {
// Finally, load all spec files.
// This will run the tests directly.
return Promise.all(
allSpecFiles.map(function (moduleName) {
return System.import(moduleName);
return System.import(moduleName).then(function(module) {
return module;
});
}));
}).then(__karma__.start, __karma__.error);
16 changes: 10 additions & 6 deletions config/karma.conf.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,16 @@ module.exports = function (config) {
}
},
files: [
{ pattern: 'dist/vendor/es6-shim/es6-shim.js', included: true, watched: false },
{ pattern: 'dist/vendor/zone.js/dist/zone.js', included: true, watched: false },
{ pattern: 'dist/vendor/reflect-metadata/Reflect.js', included: true, watched: false },
{ pattern: 'dist/vendor/systemjs/dist/system-polyfills.js', included: true, watched: false },
{ pattern: 'dist/vendor/systemjs/dist/system.src.js', included: true, watched: false },
{ pattern: 'dist/vendor/zone.js/dist/async-test.js', included: true, watched: false },
{ pattern: 'dist/vendor/core-js/client/core.js', included: true, watched: false},
{ pattern: 'dist/vendor/systemjs/dist/system-polyfills.js', included: true, watched: false},
{ pattern: 'dist/vendor/systemjs/dist/system.src.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/zone.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/proxy.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/sync-test.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/jasmine-patch.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/async-test.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/fake-async-test.js', included: true, watched: false},
{ pattern: 'dist/vendor/hammerjs/hammer.min.js', included: true, watched: false},

{ pattern: 'config/karma-test-shim.js', included: true, watched: true },

Expand Down
16 changes: 10 additions & 6 deletions config/karma.travis.conf.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,16 @@ module.exports = function (config) {
require('karma-firefox-launcher')
],
files: [
{ pattern: 'dist/vendor/es6-shim/es6-shim.js', included: true, watched: false },
{ pattern: 'dist/vendor/zone.js/dist/zone.js', included: true, watched: false },
{ pattern: 'dist/vendor/reflect-metadata/Reflect.js', included: true, watched: false },
{ pattern: 'dist/vendor/systemjs/dist/system-polyfills.js', included: true, watched: false },
{ pattern: 'dist/vendor/systemjs/dist/system.src.js', included: true, watched: false },
{ pattern: 'dist/vendor/zone.js/dist/async-test.js', included: true, watched: false },
{ pattern: 'dist/vendor/core-js/client/core.js', included: true, watched: false},
{ pattern: 'dist/vendor/systemjs/dist/system-polyfills.js', included: true, watched: false},
{ pattern: 'dist/vendor/systemjs/dist/system.src.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/zone.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/proxy.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/sync-test.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/jasmine-patch.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/async-test.js', included: true, watched: false},
{ pattern: 'dist/vendor/zone.js/dist/fake-async-test.js', included: true, watched: false},
{ pattern: 'dist/vendor/hammerjs/hammer.min.js', included: true, watched: false},

{ pattern: 'config/karma-test-shim.js', included: true, watched: true },

Expand Down
148 changes: 147 additions & 1 deletion docs/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,151 @@
<a name="0.7.0"></a>
# [0.7.0 Beetlejuice Charizard](https://github.com/Teradata/covalent/tree/v0.7.0) (2016-09-14)


## Bug Fixes
* **loading:** Changed default duration to 150ms so it doesnt look like its delayed in IE/Firefox (they dont support animations). ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **file-upload:** Fixed file-upload select/drop events for Firefox and IE. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **http:** Fixed request pipeline for interceptors. ([91050c51fa32b6e57d711199997829d0f4fc4c62](https://github.com/Teradata/covalent/commit/91050c51fa32b6e57d711199997829d0f4fc4c62))
* **http:** Changes IQueryRest property type to `any`. ([91050c51fa32b6e57d711199997829d0f4fc4c62](https://github.com/Teradata/covalent/commit/91050c51fa32b6e57d711199997829d0f4fc4c62))
* **loading:** Added mode flag to switch modes so protractor doesnt timeout when circle is indeterminate (problem with md-progress-circle using setInterval()). ([2bbe223982df4deb2d3eca15cad9b4a230f66713](https://github.com/Teradata/covalent/commit/2bbe223982df4deb2d3eca15cad9b4a230f66713))
* **loading:** Allow to override Overlay components when used in a constructor. ([2bbe223982df4deb2d3eca15cad9b4a230f66713](https://github.com/Teradata/covalent/commit/2bbe223982df4deb2d3eca15cad9b4a230f66713))
* **docs:** Fixed example for td-layout-manage-list. ([b63bf5ff606792c3e16ec5a63682bef6fa89c503](https://github.com/Teradata/covalent/commit/b63bf5ff606792c3e16ec5a63682bef6fa89c503))


## Code Refactoring
* **docs-app:** Restructured imports in docs to remove the majority of the index.ts files and less explicit declarations in system-config.ts. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **loading:** Removed NgZone/ChangeDetectorRef usage from tdLoading. ([2bbe223982df4deb2d3eca15cad9b4a230f66713](https://github.com/Teradata/covalent/commit/2bbe223982df4deb2d3eca15cad9b4a230f66713))


## Features
* **loading:** Changed TdLoadingDirective's creation to be sync so it can be accessed in the ngAfterViewInit hook on page load. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **core:** Added tooltip, slider, button-toggle and menu from angular-material. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **docs:** Added resource docs with axure and sketch downloads for Covalent usage. ([13110bf701e3fdbfd487003b7c88f66b63c4642e](https://github.com/Teradata/covalent/commit/13110bf701e3fdbfd487003b7c88f66b63c4642e)), closes [#55](https://github.com/Teradata/covalent/issues/55)
* **docs:** Updated docs with ngModule usage. closes [#65](https://github.com/Teradata/covalent/issues/65)
* **release:** Inline html/css in compiled js files. ([23007cd7598a599539cc2e14d4f02735ff84a7a2](https://github.com/Teradata/covalent/commit/23007cd7598a599539cc2e14d4f02735ff84a7a2)), closes [#27](https://github.com/Teradata/covalent/issues/27)
* **release:** Bundle module code into a single `[module].umd.js` to match angular/angular2-material's. ([23007cd7598a599539cc2e14d4f02735ff84a7a2](https://github.com/Teradata/covalent/commit/23007cd7598a599539cc2e14d4f02735ff84a7a2)), closes [#56](https://github.com/Teradata/covalent/issues/56)
* **covalent-data:** Introducing `Covalent Data` mock server API endpoints for better prototyping. Visit our [repo](https://github.com/Teradata/covalent-data) for more information.
* **docs:** Added covalent-data docs for usage with `Covalent Quickstart`. ([c77d42c22d2c9e745431c12b9b19e803e44871c1](https://github.com/Teradata/covalent/commit/c77d42c22d2c9e745431c12b9b19e803e44871c1))


## Internal
* **loading:** Changed code in animations since the angular classes used are no longer public. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **code-health:** Unit test karma-test-shim changes to set up test environment using `rc7`. ([78f813c412ea42124e399edd7960b58d56139768](https://github.com/Teradata/covalent/commit/78f813c412ea42124e399edd7960b58d56139768))
* **code-health:** Removed all unit tests (gonna start from scratch with each one). ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **code-health:** Unit tests changes to use TestBed and remove imports describe/it/beforeEach since they are taken as global. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **docs-app:** Need to add angular2-material core.css and overlay.css as a workaround for ripple and menu into index.html angular/material2#972. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **code-health:** Fixed karma setup for rc7, updated travis CI config and added example test case as base. ([d11f0a9e75ee69509d7bce2ae186366052ce471a](https://github.com/Teradata/covalent/commit/d11f0a9e75ee69509d7bce2ae186366052ce471a)), closes [#57](https://github.com/Teradata/covalent/issues/57)
* **release:** Added dependency to rollup. ([23007cd7598a599539cc2e14d4f02735ff84a7a2](https://github.com/Teradata/covalent/commit/23007cd7598a599539cc2e14d4f02735ff84a7a2))
* **release:** Updated RELEASE.md and fixed bug on `finish-release` script.


## Breaking Changes
* **release:** Upgraded to RC7. ([78f813c412ea42124e399edd7960b58d56139768](https://github.com/Teradata/covalent/commit/78f813c412ea42124e399edd7960b58d56139768)), closes [#36](https://github.com/Teradata/covalent/issues/36)
* **release:** Upgrade material to alpha.8-1. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **release:** Updated rxjs to 5.0.0-beta.12 (@angular dependency). ([78f813c412ea42124e399edd7960b58d56139768](https://github.com/Teradata/covalent/commit/78f813c412ea42124e399edd7960b58d56139768))
* **release:** Updated zone.js to 0.6.21 (@angular dependency). ([78f813c412ea42124e399edd7960b58d56139768](https://github.com/Teradata/covalent/commit/78f813c412ea42124e399edd7960b58d56139768))
* **release:** Added hammerjs dependency (@angular2-material dependency). ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **release:** Removed bootstrap and implemented everything with NgModule decorator. ([6104b554376bb70d013e80d7b39d78a04dc4aa62](https://github.com/Teradata/covalent/commit/6104b554376bb70d013e80d7b39d78a04dc4aa62))
* **loading:** Removed tdLoadingDirective class from API. ([2bbe223982df4deb2d3eca15cad9b4a230f66713](https://github.com/Teradata/covalent/commit/2bbe223982df4deb2d3eca15cad9b4a230f66713))
* **highlight:** Removed static lib file and added npm dependency for highlight.js (see docs for more info on how to setup). ([e555bc438ab898c48a24f507204205db95c4dcbc](https://github.com/Teradata/covalent/commit/e555bc438ab898c48a24f507204205db95c4dcbc))
* **all:** Covalent now depends on TypeScript 2.0.

* **all:** Updated packaging to match angular/angular2-material's packaging creating a `[module].umd.js` file per module.

Example SystemJS config with UMD bundles:

```ts
'@covalent/core': {
format: 'cjs',
main: 'core.umd.js'
}
```

* **all:** Covalent modules must be included with `forRoot()` when bootstrapping. See the [ngModules guide](https://angular.io/docs/ts/latest/cookbook/ngmodule-faq.html#!#q-for-root) for
more information.

```ts
@NgModule({
imports: [
CovalentCoreModule.forRoot(),
CovalentHttpModule.forRoot()
]
...
});
```

* **http:** Use CovalentHttpModule.forRoot() to register interceptors. (provideInterceptors() is depricated and removed) ([91050c51fa32b6e57d711199997829d0f4fc4c62](https://github.com/Teradata/covalent/commit/91050c51fa32b6e57d711199997829d0f4fc4c62)), closes [#58](https://github.com/Teradata/covalent/issues/58)

Before:

```ts
bootstrap(AppComponent,[
provideInterceptors([ CustomInterceptor ]),
...
])
```

After:

```ts
imports: [
CovalentHttpModule.forRoot([ CustomInterceptor ]),
...
]
```

* **layouts:** Changed placeholders to accept attributes since angular2 complains if the element doesnt exist, and turned md-content into a class since `angular2-material` never intended for it to be a component. ([ab67c403d0aad3022e2e0112dfd62a89295c4f4b](https://github.com/Teradata/covalent/commit/ab67c403d0aad3022e2e0112dfd62a89295c4f4b))

Before(elements):

```html
<toolbar-content>
...
</toolbar-content>

<list-toolbar-content>
...
</list-toolbar-content>

<toolbar-buttons>
...
</toolbar-buttons>

<nav-toolbar-content>
...
</nav-toolbar-content>

<md-content>
...
</md-content>
```

After(attributes):

```html
<div toolbar-content>
...
</div>

<div list-toolbar-content>
...
</div>

<div toolbar-buttons>
...
</div>

<div nav-toolbar-content>
...
</div>

<div class="md-content">
...
</div>
```

<a name="0.6.0"></a>
# [0.6.0](https://github.com/Teradata/covalent/tree/v0.6.0) (2016-08-19)
# [0.6.0 Butterfree Cumbersome](https://github.com/Teradata/covalent/tree/v0.6.0) (2016-08-19)


## Bug Fixes
Expand Down
47 changes: 5 additions & 42 deletions docs/RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,60 +1,23 @@
# Release Guide for the Platform
* [Manual Release](#manual-release)
* [Automatic Release](#automatic-release)

## Manual Release

* [Testing](#testing)
* [Bump Version](#bump-version)
* [Build](#build)
* [Release](#release)

#### Testing

Ensure that the code passes all tests before continuing.
Execute `npm test` to test the code with `tslint` and `karma`, provided the code has `[name].component.spec.ts` unit test files.

#### Bump Version

First, double check what kind of release is going to be published. It varies if its a `dev`, `patch`, `minor`, `major` or `[version]` release.
Execute `npm run bump-[dev|patch|minor|major]` to bump the release or execute `gulp bump-version --ver [version]`.
NOTE: Caution when using this command, since it will change the version on every module's package.json within `src/platform`.

#### Build

The building process has 4 steps:
1. Removes `deploy/` dir so that we guarantee there are no stale artifacts.
2. Compiles `.ts` files within `src/platform/*`, and creates compiled files into `deploy/`. (retaining dir structure)
3. Compiles `.scss` files within `src/platform/*`, and creates compiled files into `deploy/`. (retaining dir structure)
4. Moves `package.json`, `README.md`, additional `.js` files and `.html` files into `deploy/`. (retaining dir structure)

Execute `npm run build` to build the code you want to release.

#### Release

Execute `npm run publish` to publish to NPM. At the moment it goes into every package within `deploy/platform` that has a `package.json` file and publishes into [public NPM registry](https://www.npmjs.com/).
It will fail to publish if you try to upload a version that already exists in the registry. Use wisely.

NOTE: Tagging version and merging to master/develop would have to be done manually.

## Automatic Release
## Release

* [Start Release](#start-release)
* [Finish Release](#finish-release)

#### Start Release

Execute `npm run start-release -- [version]` to start the automatic release process. The steps executed are:
1. Creating a `release/[version]` branch using `git flow release`.
1. Creating a `release/v[version]` branch using `git flow release`.
2. Bumping its version to [version] release and commiting bumped version files.
3. Publishing `release/[version]` branch into repository.
4. Executes `npm run test`.
3. Publishing `release/v[version]` branch into repository.
4. Executes `npm run tslint` and `npm run test`.

The release is published in case there is a need for any additional tests, version fixes or bug fixes. This can be added before it is actually released.

#### Finish Release

Execute `npm run finish-release -- [version]` to start the automatic publishing process. The steps executed are:
Execute `git flow release finish v[version]` and `npm run finish-release` to start the automatic publishing process. The steps executed are:
1. Finishes, tags and deletes the `release/[version]` branch.
2. Pushes the new `[version]` tag into the repository.
3. Merges release into `develop` and pushes changes to repository.
Expand Down
Loading

0 comments on commit c6f8c67

Please sign in to comment.