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

pull master #72

Merged
merged 34 commits into from
Mar 15, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
928b2f7
docs(vue): add loading usage vue docs (#17661)
michaeltintiuc Mar 2, 2019
ab57b98
chore(docs): rebuild readme after update to vue usage docs.
jthoms1 Mar 2, 2019
28fd75e
fix(loading): add backdropDismiss to the interface (#17668)
Mar 4, 2019
c641ae1
feat(checkbox): implement indeterminate state (#16951)
simonhaenisch Mar 4, 2019
ad20bd6
fix(animation): fix header flicker on ios (#17422)
liamdebeasi Mar 4, 2019
1c60a08
docs(vue): update markdown format for vue files.
jthoms1 Mar 5, 2019
70ea703
style(split-pane): use proper grammar in warnings (#17681)
kensodemann Mar 5, 2019
f139400
docs(react): update readme to include capacitor info (#17686)
jthoms1 Mar 6, 2019
2b5fe0c
chore(range): revert neutral point (#17550)
liamdebeasi Feb 20, 2019
98a8c88
Merge branch 'stable' into release-4.1.0
brandyscarney Mar 6, 2019
f8861a5
chore(release): update release script to check for release or hotfix …
brandyscarney Mar 6, 2019
8bb2021
4.1.0
brandyscarney Mar 6, 2019
dfb0c7f
style(changelog): copy editing
brandyscarney Mar 6, 2019
3a19329
chore(build): fix range
brandyscarney Mar 6, 2019
97174a2
chore(build): fix docs generation
brandyscarney Mar 6, 2019
d76a344
docs(changelog): add hydrogen
brandyscarney Mar 6, 2019
b424553
docs(changelog): use proper tag comparison
brandyscarney Mar 6, 2019
0e844a1
style(lint): lint errors too
brandyscarney Mar 6, 2019
8174de1
merge release-4.1.0
brandyscarney Mar 6, 2019
c8ce12c
merge release-4.1.0
brandyscarney Mar 6, 2019
7e6d511
docs(process): update process document (#17581)
brandyscarney Mar 6, 2019
bd38f26
docs(label): update usage to place text-wrap on label (#17705)
brandyscarney Mar 7, 2019
cabbeb2
fix(display): update to correct css classes
brandyscarney Mar 7, 2019
cd0f03e
chore(scripts): fix typo of hotfix
brandyscarney Mar 7, 2019
f9cd169
4.1.1
brandyscarney Mar 7, 2019
817f919
merge release-4.1.1
brandyscarney Mar 7, 2019
eb5494e
Merge branch 'stable'
brandyscarney Mar 7, 2019
bab56e8
fix(datetime): default to local date (#17706)
liamdebeasi Mar 11, 2019
ec3acc9
fix(datetime): fix edge cases with datetime and invalid values (#17769)
liamdebeasi Mar 13, 2019
c551f89
chore(screenshot): slow down concurrent screenshot downloads (#17771)
adamdbradley Mar 13, 2019
6939f79
fix(datetime): fix placeholder not being respected (#17772)
liamdebeasi Mar 13, 2019
f097276
fix(datetime): add additional checks for placeholders in angular (#17…
liamdebeasi Mar 13, 2019
7d01207
fix(transition): animate all toolbars in iOS page transitions (#17224)
zakton5 Mar 14, 2019
f6783db
fix(chip): use transparent outline on color chips (#17719)
brandyscarney Mar 15, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
103 changes: 84 additions & 19 deletions .github/PROCESS.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
# Process

This document is to describe the internal process that the Ionic team uses for issue management and project planning.
This document is to describe the internal process that the Ionic team uses for issue management, project planning and the development workflow.

## Table of contents
* [Project Boards](#project-boards)
* [Managing Issues](#managing-issues)
* [Workflow](#workflow)
* [Releasing](#releasing)

## Project Boards

Expand Down Expand Up @@ -80,11 +81,71 @@ if there is no response within 30 days, the issue will be closed and locked.

## Workflow

### Overview

![](https://user-images.githubusercontent.com/6577830/53817482-80e6c480-3f33-11e9-9e09-be8dcf840ef8.png)

We have two long-living branches:

- `master`: completed features, bug fixes, refactors, chores
- `stable`: the latest release

The overall flow:

1. Feature, refactor, and bug fix branches are created from `master`
1. When a feature, refactor, or fix is complete it is merged into `master`
1. A release branch is created from `master`
1. When the release branch is done it is merged into `master` and `stable`
1. If an issue in `stable` is detected a hotfix branch is created from `stable`
1. Once the hotfix is complete it is merged to both `master` and `stable`
1. All branches should follow the syntax of `{type}-{details}` where `{type}` is the type of branch (`hotfix`, `release`, or one of the [commit types](https://github.com/ionic-team/ionic/blob/master/.github/CONTRIBUTING.md#commit-message-format)) and `{details}` is a few hyphen separated words explaining the branch

### Stable and Master Branches

#### Stable Branch

Branches created from `stable`:

The following branch should be merged back to **both** `master` and `stable`:

- A `hotfix` branch (e.g. `hotfix-missing-export`): a bug fix that is fixing a regression or issue with a published release

A `hotfix` branch should be the **only** branch that is created from stable.

#### Master Branch

Branches created from `master`:

The following branches should be merged back to `master` via a pull request:

1. A feature branch (e.g. `feat-desktop-support`): an addition to the API that is not a bug fix or regression fix
1. A bug fix branch (e.g. `fix-tab-color`): a bug fix that is not fixing a regression or issue with a published release
1. All other types listed in the [commit message types](https://github.com/ionic-team/ionic/blob/master/.github/CONTRIBUTING.md#commit-message-format): `docs`, `style`, `refactor`, `perf`, `test`, `chore`

The following branch should be merged back to **both** `master` and `stable`:

1. A `release` branch (e.g. `release-4.1.x`): contains all fixes and (optionally) features that are tested and should go into the release


### Feature Branches

Each new feature should reside in its own branch, based on the `master` branch. When a feature is complete, it should go into a pull request that gets merged back into `master`. A pull request adding a feature should be approved by two team members. Features should never interact directly with `stable`.


### Release Branches

Once `master` has acquired enough features for a release (or a predetermined release date is approaching), fork a release branch off of `master`. Creating this branch starts the next release cycle, so no new features can be added after this point - only bug fixes, documentation generation, and other release-oriented tasks should go in this branch.

Once the release is ready to ship, it will get merged into `stable` and `master`, then the release branch will be deleted. It’s important to merge back into `master` because critical updates may have been added to the release branch and they need to be accessible to new features. This should be done in a pull request after review.

See the [steps for releasing](#releasing) below for detailed information on how to publish a release.


### Hotfix Branches

Maintenance or “hotfix” branches are used to quickly patch production releases. This is the only branch that should fork directly off of `stable`. As soon as the fix is complete, it should be merged into both `stable` and `master` (or the current release branch).


### Examples

#### Making a Change
Expand All @@ -111,7 +172,7 @@ We have two long-living branches:

1. Confirm squash and merge into `master`.

#### Merging Changes from `master` into your Branch
#### Updating from `master`

1. Pull the latest changes locally.
1. Merge the changes, fixing any conflicts.
Expand All @@ -125,23 +186,6 @@ OR

1. Pull the merged changes locally.

#### Making a Release

1. Freeze `master`. Only the person doing the release should be modifying `master`.
1. Follow the [Making a Change](#making-a-change) steps to prepare the release.

- Run `npm run release.prepare`
- Version changes
- `CHANGELOG.MD` tweaks

1. Create a PR to merge `master` into `stable`.
1. Click **Merge pull request**. Use the dropdown to select this option if necessary. This will preserve the commit history from `master` by creating a merge commit.

<img width="191" alt="Merge pull request button" src="https://user-images.githubusercontent.com/236501/47032669-8be1b980-d138-11e8-9a90-d1518c223184.png">

1. CI builds `stable`, performing the release.
1. Unfreeze `master`.

#### Hotfixes

Hotfixes bypass `master` and should only be used for urgent fixes that can't wait for the next release to be ready.
Expand All @@ -165,3 +209,24 @@ Hotfixes bypass `master` and should only be used for urgent fixes that can't wai
1. Click **Merge pull request**. Use the dropdown to select this option if necessary.

<img width="191" alt="Merge pull request button" src="https://user-images.githubusercontent.com/236501/47032669-8be1b980-d138-11e8-9a90-d1518c223184.png">


## Releasing

1. Create the release branch from `master`, for example: `release-4.1.0`.
1. Submit a pull request to merge the release branch into `stable`.
1. Verify all tests are passing, fix any bugs if needed and make sure no undesired commits are in.
1. Navigate to the root of the repository.
1. Run `npm i` if it hasn't already been done.
1. Run `npm run release.prepare`
- Select the version based on the type of commits and the [Ionic Versioning](https://ionicframework.com/docs/intro/versioning)
- After the process completes, verify the version number in all packages (`core`, `docs`, `angular`)
- Verify the changelog commits are accurate and follow the [proper format]((https://github.com/ionic-team/ionic/blob/master/.github/CONTRIBUTING.md#commit-message-format))
- Commit these changes with the version number as the message, e.g. `git commit -m "4.1.0"`
1. Run `npm run release`
1. Click **Merge pull request**. Use the dropdown to select this option if necessary.

<img width="191" alt="Merge pull request button" src="https://user-images.githubusercontent.com/236501/47032669-8be1b980-d138-11e8-9a90-d1518c223184.png">

1. Rewrite the commit message to `merge release-4.1.0` with the proper release branch.
1. Create a pull request and merge the release branch back into `master` using the same commit format in the last step, to ensure any changes made on the release branch get added to future releases.
4 changes: 2 additions & 2 deletions .scripts/common.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@ function checkGit(tasks) {
{
title: 'Check current branch',
task: () => execa.stdout('git', ['symbolic-ref', '--short', 'HEAD']).then(branch => {
if (branch !== 'master') {
throw new Error(`Not on "master" branch`);
if (branch.indexOf('release') === -1 && branch.indexOf('hotfix') === -1) {
throw new Error(`Must be on a "release" or "hotfix" branch.`);
}
})
},
Expand Down
40 changes: 40 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,43 @@
## [4.1.1](https://github.com/ionic-team/ionic/compare/v4.1.0...v4.1.1) (2019-03-07)


### Bug Fixes

* **display:** update to correct css classes ([cabbeb2](https://github.com/ionic-team/ionic/commit/cabbeb2))



# [4.1.0 Hydrogen](https://github.com/ionic-team/ionic/compare/v4.0.2...v4.1.0) (2019-03-06)


### Bug Fixes

* **angular:** fix adding [@ionic](https://github.com/ionic)/angular when using ng add ([#17597](https://github.com/ionic-team/ionic/issues/17597)) ([484d92c](https://github.com/ionic-team/ionic/commit/484d92c)), closes [#17596](https://github.com/ionic-team/ionic/issues/17596)
* **animation:** fix header flicker on ios ([#17422](https://github.com/ionic-team/ionic/issues/17422)) ([ad20bd6](https://github.com/ionic-team/ionic/commit/ad20bd6))
* **css:** add the missing css classes to flex and float utils ([#17570](https://github.com/ionic-team/ionic/issues/17570)) ([c49276c](https://github.com/ionic-team/ionic/commit/c49276c)), closes [#17569](https://github.com/ionic-team/ionic/issues/17569)
* **fab:** disabled fab button no longer opens fab list ([#17620](https://github.com/ionic-team/ionic/issues/17620)) ([c475dab](https://github.com/ionic-team/ionic/commit/c475dab))
* **img:** remove space under img ([#17582](https://github.com/ionic-team/ionic/issues/17582)) ([621c79b](https://github.com/ionic-team/ionic/commit/621c79b))
* **item:** slotted ion-icon receives custom color ([#17585](https://github.com/ionic-team/ionic/issues/17585)) ([14dd871](https://github.com/ionic-team/ionic/commit/14dd871))
* **item-sliding:** no longer close all open items when deleting an item ([#17579](https://github.com/ionic-team/ionic/issues/17579)) ([3de7795](https://github.com/ionic-team/ionic/commit/3de7795))
* **loading:** add backdropDismiss to the interface ([#17668](https://github.com/ionic-team/ionic/issues/17668)) ([28fd75e](https://github.com/ionic-team/ionic/commit/28fd75e)), closes [#17369](https://github.com/ionic-team/ionic/issues/17369)
* **popover:** update placement per md spec ([#17429](https://github.com/ionic-team/ionic/issues/17429)) ([a99d179](https://github.com/ionic-team/ionic/commit/a99d179))
* **range:** clamp values that are out of bounds ([#17623](https://github.com/ionic-team/ionic/issues/17623)) ([5a197ca](https://github.com/ionic-team/ionic/commit/5a197ca))
* **refresher:** check for cancelable before preventing default ([#17351](https://github.com/ionic-team/ionic/issues/17351)) ([f205b10](https://github.com/ionic-team/ionic/commit/f205b10)), closes [#15256](https://github.com/ionic-team/ionic/issues/15256)
* **reorder:** allow sliding items to be reordered ([#17568](https://github.com/ionic-team/ionic/issues/17568)) ([3b331b5](https://github.com/ionic-team/ionic/commit/3b331b5))
* **ssr:** fix angular global window and document references ([f44c17e](https://github.com/ionic-team/ionic/commit/f44c17e))
* **ssr:** fix global window and document references ([#17590](https://github.com/ionic-team/ionic/issues/17590)) ([4646f53](https://github.com/ionic-team/ionic/commit/4646f53))
* **vue:** correct passing of props and data to components ([#17188](https://github.com/ionic-team/ionic/issues/17188)) ([2ce4940](https://github.com/ionic-team/ionic/commit/2ce4940))


### Features

* **checkbox:** implement indeterminate state ([#16951](https://github.com/ionic-team/ionic/issues/16951)) ([c641ae1](https://github.com/ionic-team/ionic/commit/c641ae1)), closes [#16943](https://github.com/ionic-team/ionic/issues/16943)
* **css:** add CSS display utilities ([#17359](https://github.com/ionic-team/ionic/issues/17359)) ([6bea9d3](https://github.com/ionic-team/ionic/commit/6bea9d3)), closes [#10904](https://github.com/ionic-team/ionic/issues/10904)
* **select:** add compareWith property ([#17358](https://github.com/ionic-team/ionic/issues/17358)) ([69ecebb](https://github.com/ionic-team/ionic/commit/69ecebb))
* **skeleton-text:** adds animated prop and support for CSS styling ([#17612](https://github.com/ionic-team/ionic/issues/17612)) ([d66b12b](https://github.com/ionic-team/ionic/commit/d66b12b)), closes [ionic-team/ionic-docs#407](https://github.com/ionic-team/ionic-docs/issues/407)



## [4.0.2](https://github.com/ionic-team/ionic/compare/v4.0.1...v4.0.2) (2019-02-20)


Expand Down
4 changes: 2 additions & 2 deletions angular/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ionic/angular",
"version": "4.0.2",
"version": "4.1.1",
"description": "Angular specific wrappers for @ionic/core",
"keywords": [
"ionic",
Expand Down Expand Up @@ -45,7 +45,7 @@
"css/"
],
"dependencies": {
"@ionic/core": "4.0.2",
"@ionic/core": "4.1.1",
"tslib": "^1.9.3"
},
"peerDependencies": {
Expand Down
4 changes: 2 additions & 2 deletions angular/src/directives/proxies.ts
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ export class IonCardTitle {
proxyInputs(IonCardTitle, ['color', 'mode']);

export declare interface IonCheckbox extends StencilComponents<'IonCheckbox'> {}
@Component({ selector: 'ion-checkbox', changeDetection: 0, template: '<ng-content></ng-content>', inputs: ['color', 'mode', 'name', 'checked', 'disabled', 'value'] })
@Component({ selector: 'ion-checkbox', changeDetection: 0, template: '<ng-content></ng-content>', inputs: ['color', 'mode', 'name', 'checked', 'indeterminate', 'disabled', 'value'] })
export class IonCheckbox {
ionChange!: EventEmitter<CustomEvent>;
ionFocus!: EventEmitter<CustomEvent>;
Expand All @@ -152,7 +152,7 @@ export class IonCheckbox {
proxyOutputs(this, this.el, ['ionChange', 'ionFocus', 'ionBlur']);
}
}
proxyInputs(IonCheckbox, ['color', 'mode', 'name', 'checked', 'disabled', 'value']);
proxyInputs(IonCheckbox, ['color', 'mode', 'name', 'checked', 'indeterminate', 'disabled', 'value']);

export declare interface IonChip extends StencilComponents<'IonChip'> {}
@Component({ selector: 'ion-chip', changeDetection: 0, template: '<ng-content></ng-content>', inputs: ['color', 'mode', 'outline'] })
Expand Down
4 changes: 2 additions & 2 deletions core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ The Ionic Core package contains the Web Components that make up the reusable UI
Easiest way to start using Ionic Core is by adding a script tag to the CDN:

```html
<link href="https://unpkg.com/@ionic/core@4.0.2/css/ionic.bundle.css" rel="stylesheet">
<script src="https://unpkg.com/@ionic/core@4.0.2/dist/ionic.js"></script>
<link href="https://unpkg.com/@ionic/core@4.1.1/css/ionic.bundle.css" rel="stylesheet">
<script src="https://unpkg.com/@ionic/core@4.1.1/dist/ionic.js"></script>
```

Any Ionic component added to the webpage will automatically load. This includes writing the component tag directly in HTML, or using JavaScript such as `document.createElement('ion-toggle')`.
Expand Down
1 change: 1 addition & 0 deletions core/api.txt
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,7 @@ ion-checkbox,shadow
ion-checkbox,prop,checked,boolean,false,false,false
ion-checkbox,prop,color,string | undefined,undefined,false,false
ion-checkbox,prop,disabled,boolean,false,false,false
ion-checkbox,prop,indeterminate,boolean,false,false,false
ion-checkbox,prop,mode,"ios" | "md",undefined,false,false
ion-checkbox,prop,name,string,this.inputId,false,false
ion-checkbox,prop,value,string,'on',false,false
Expand Down
2 changes: 1 addition & 1 deletion core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ionic/core",
"version": "4.0.2",
"version": "4.1.1",
"description": "Base components for Ionic",
"keywords": [
"ionic",
Expand Down
6 changes: 4 additions & 2 deletions core/scripts/screenshot/ionic.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,10 @@ class IonicConnector extends ScreenshotConnector {
return true
});

if (missingImages.length > 0) {
await Promise.all(missingImages.map(async image => {
while (missingImages.length > 0) {
const images = missingImages.splice(0, 20);

await Promise.all(images.map(async image => {
this.logger.debug(`downloading: ${image}`);

try {
Expand Down
8 changes: 8 additions & 0 deletions core/src/components.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -749,6 +749,10 @@ export namespace Components {
*/
'disabled': boolean;
/**
* If `true`, the checkbox will visually appear as indeterminate.
*/
'indeterminate': boolean;
/**
* The mode determines which platform styles to use.
*/
'mode': Mode;
Expand All @@ -775,6 +779,10 @@ export namespace Components {
*/
'disabled'?: boolean;
/**
* If `true`, the checkbox will visually appear as indeterminate.
*/
'indeterminate'?: boolean;
/**
* The mode determines which platform styles to use.
*/
'mode'?: Mode;
Expand Down
2 changes: 1 addition & 1 deletion core/src/components/action-sheet/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ export default class ActionSheetExample extends Component<Props, State> {

### Vue

```vue
```html
<template>
<IonVuePage :title="'Action Sheet'">
<ion-button @click="presentActionSheet">Show Action Sheet</ion-button>
Expand Down
2 changes: 1 addition & 1 deletion core/src/components/action-sheet/usage/vue.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
```vue
```html
<template>
<IonVuePage :title="'Action Sheet'">
<ion-button @click="presentActionSheet">Show Action Sheet</ion-button>
Expand Down
2 changes: 1 addition & 1 deletion core/src/components/alert/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -803,7 +803,7 @@ export default class AlertExample extends Component<Props, State> {

### Vue

```vue
```html
<template>
<IonVuePage :title="'Alert'">
<ion-button @click="presentAlert">Show Alert</ion-button>
Expand Down
2 changes: 1 addition & 1 deletion core/src/components/alert/usage/vue.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
```vue
```html
<template>
<IonVuePage :title="'Alert'">
<ion-button @click="presentAlert">Show Alert</ion-button>
Expand Down
3 changes: 2 additions & 1 deletion core/src/components/checkbox/checkbox.ios.scss
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@

// Size
--size: #{$checkbox-ios-icon-size};
width: var(--size);

width: var(--size);
height: var(--size);
}

Expand All @@ -39,6 +39,7 @@
@include margin($checkbox-ios-item-end-margin-top, $checkbox-ios-item-end-margin-end, $checkbox-ios-item-end-margin-bottom, $checkbox-ios-item-end-margin-start);

display: block;

position: static;
}

Expand Down
Loading