mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-16 01:52:19 +08:00
chore(build): create github release and generate changelog
This commit is contained in:
4
.github/workflows/release.yml
vendored
4
.github/workflows/release.yml
vendored
@ -45,5 +45,7 @@ jobs:
|
||||
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
- name: Release
|
||||
run: |
|
||||
HUSKY_SKIP_HOOKS=1 lerna publish $(echo "${{ github.event.inputs.version }}") --no-verify-access --yes --force-publish='*' --dist-tag $(echo "${{ github.event.inputs.tag }}") --no-changelog --no-git-tag-version --no-push --skip-npm
|
||||
HUSKY_SKIP_HOOKS=1 lerna publish $(echo "${{ github.event.inputs.version }}") --no-verify-access --yes --force-publish='*' --dist-tag $(echo "${{ github.event.inputs.tag }}") --conventional-commits --create-release github
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
shell: bash
|
||||
|
@ -1,116 +0,0 @@
|
||||
# [4.10.0-rc3]
|
||||
|
||||
## Bug fixes
|
||||
|
||||
Pages should maintain their original previous page id [2afcb6](https://github.com/ionic-team/ionic/commit/2afcb6c80b167b95beb79641504d9237b498dbef), fixes [#19351](https://github.com/ionic-team/ionic/issues/19351)
|
||||
|
||||
Dismiss overlay component on unmount, [3c2694](https://github.com/ionic-team/ionic/commit/3c26946d47b37d42dfaa3294cfb6bf8f0ef11aa4), fixes [#19377](https://github.com/ionic-team/ionic/issues/19377)
|
||||
|
||||
Render first route even if url is same, fixes [#19392](https://github.com/ionic-team/ionic/issues/19392)
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
### Events have been updated to use proper types from React
|
||||
|
||||
The types for events (such as `onClick`) were not typed correctly prior to RC3. Before, they were the normal browser events, but now they are the proper React Synthetic events. Therefore, you might have type errors that need to be remedied:
|
||||
|
||||
```typescript
|
||||
function handleClick(e: MouseEvent) {
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
Will need to become:
|
||||
|
||||
```typescript
|
||||
function handleClick(e: React.MouseEvent) {
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
Some Ionic components have the option to pass the event to them (like `IonPopover`). For these, you can access the `nativeEvent` property on the React synthetic event.
|
||||
|
||||
### Components with href attributes and the new routerLink prop
|
||||
As of RC3, components that use the href prop (`IonButton`, `IonItem`, etc..), no longer run these links through the router. As a result, page transitions are no longer applied to these links. To maintain page transitions, use the new `routerLink` prop instead. The href prop should be used when you want to enforce a full browser transition on the page, or when you need to link to an external resource.
|
||||
|
||||
# [4.9.0-rc2]
|
||||
|
||||
## Features
|
||||
|
||||
Dependencies upgraded to work with Ionic Core 4.9
|
||||
|
||||
## Bug Fixes
|
||||
|
||||
IonPage should be root page for Ionic Pages - fixes [#19146](https://github.com/ionic-team/ionic/issues/19146)
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
### IonPage should be the parent component of Ionic Pages
|
||||
|
||||
`IonPage` is a specialized component that is meant to be the parent container for an Ionic Page, which typically consists of `IonHeader` and `IonContent` components. Previous to RC3, the `@ionic/react-router` library would add this component itself, but this caused some confusion around how `IonPage` should be used and why it was even available. Devs would sometimes include `IonPage` themselves as the parent of their pages, but this could cause issues with page transitions.
|
||||
|
||||
To clear up this confusion, we decided to stop adding the `IonPage` component in the framework and offer guidance that devs should use `IonPage` as the base component in their Ionic Pages.
|
||||
|
||||
Apps migrating from a previous version to RC2 will need to make sure `IonPage` is used as the root component for every Ionic page. Ionic Pages typically have `IonHeader` and `IonContent` tags and are the components rendered by the routes. The starters used a React Fragment before, and this fragment needs to be changed to `IonPage`. Any other uses of `IonPage` should probably be removed.
|
||||
|
||||
Example:
|
||||
|
||||
An Ionic Page before RC2 most likely has a React fragment as its root:
|
||||
|
||||
``` jsx
|
||||
<>
|
||||
<IonHeader>/* header stuff */</IonHeader>
|
||||
<IonContent>/* content stuff */</IonContent>
|
||||
</>
|
||||
```
|
||||
|
||||
In RC2 and greater, the fragment should be updated to an IonPage component:
|
||||
|
||||
``` jsx
|
||||
<IonPage>
|
||||
<IonHeader>/* header stuff */</IonHeader>
|
||||
<IonContent>/* content stuff */</IonContent>
|
||||
</IonPage>
|
||||
```
|
||||
|
||||
### ViewManager
|
||||
|
||||
The `<ViewManager />` component is no longer needed and can be removed. The views inside of an `<IonRouterOutlet>` are now managed by an internal stack manager and don't need the explicit ViewManager anymore.
|
||||
|
||||
`ViewManager` is now a noop component and shows a warning message while in development. `ViewManager` will be removed in the final release of @ionic/react.
|
||||
|
||||
## Other Changes
|
||||
|
||||
### Tab Route Setup
|
||||
|
||||
Prior to RC2, tabs had to specify a tab name in their routes which helped with the page transitions. This was set up in the form of a regex named parameter like so:
|
||||
|
||||
`<Route path="/:tab(tab1)" component={Tab1} exact={true} />`
|
||||
|
||||
This is no longer a requirement. Routes setup this way will continue to work, but the complexity in the path can be removed and updated to:
|
||||
|
||||
`<Route path="/tab1" component={Tab1} exact={true} />`
|
||||
|
||||
# [4.8.0-rc1]
|
||||
|
||||
## Features
|
||||
|
||||
Dependencies upgraded to work with Ionic Core 4.8
|
||||
|
||||
## Bug Fixes
|
||||
|
||||
Attributes applied to Ionic Components now show up in the DOM and are visible in devtools
|
||||
|
||||
`IonBackButton` now preserves the query string parameters from the referring page: https://github.com/ionic-team/ionic/pull/19150/commits/2e2068ee5ea467636b4454e1106df1d8f05230d2
|
||||
|
||||
Supporting class attributes as well as className attributes for Ionic React components: https://github.com/ionic-team/ionic/pull/19150/commits/bef7bc8b1b190bf704fd6960711672bfd7aedfa6, closes [#19107](https://github.com/ionic-team/ionic/issues/19107)
|
||||
|
||||
Exporting the previously missing isPlatform method from core: https://github.com/ionic-team/ionic/pull/19150/commits/fc817471582785a00db77ee922a73ccfda42b870, closes [#19122] https://github.com/ionic-team/ionic/issues/19122
|
||||
|
||||
# [4.8.0-rc0]
|
||||
|
||||
Welcome to React RC!
|
||||
|
||||
### Breaking Changes
|
||||
|
||||
There is a new `ViewManager` component exported from @ionic/react-router. If you have an `IonRouterOutlet` component outside of a tabs component, you will need to wrap the `IonRouterOutlet` with the `ViewManager` to preserve the transitions and state management that the IonRouterOutlet provide on its own in the betas.
|
@ -1,147 +0,0 @@
|
||||
# Ionic Vue
|
||||
|
||||
> This file contains the changelog for the Ionic Vue beta. For the latest changes, see our [main changelog file](https://github.com/ionic-team/ionic-framework/blob/main/CHANGELOG.md).
|
||||
|
||||
## 0.5.2
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **vue:** add missing tabs attribute to router outlet inside ion-tabs ([#22226](https://github.com/ionic-team/ionic/issues/22226)) ([ba4f07e](https://github.com/ionic-team/ionic/commit/ba4f07e270830d3eca67d71051a57ba7c7105f85))
|
||||
|
||||
### Upgrade Steps
|
||||
|
||||
```
|
||||
npm i @ionic/vue@0.5.2 @ionic/vue-router@0.5.2
|
||||
```
|
||||
|
||||
### New to Ionic Vue?
|
||||
|
||||
Check out our [Quickstart Guide](https://ionicframework.com/docs/vue/quickstart) to get up and running. Then be sure to check out our [Building Your First App Guide](https://ionicframework.com/docs/vue/your-first-app) to learn how build a cross platform Ionic Vue application from start to finish!
|
||||
|
||||
|
||||
|
||||
## 0.5.1
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **vue:** correctly handle platform specific icons ([#22200](https://github.com/ionic-team/ionic/issues/22200)) ([25d3ea6](https://github.com/ionic-team/ionic/commit/25d3ea6b8d78016e9122c4ec02016af33a2041e8)), closes [#19078](https://github.com/ionic-team/ionic/issues/19078)
|
||||
* **vue:** correctly update property values ([#22218](https://github.com/ionic-team/ionic/issues/22218)) ([2527189](https://github.com/ionic-team/ionic/commit/25271897e2a5acd216f4076ab0284bb91023d424)), closes [#22079](https://github.com/ionic-team/ionic/issues/22079)
|
||||
* **vue:** ion-nav now handles Vue components properly ([#22197](https://github.com/ionic-team/ionic/issues/22197)) ([2c6259c](https://github.com/ionic-team/ionic/commit/2c6259c1f6f715d46e32ae4ab6142f448dda631c)), closes [#22184](https://github.com/ionic-team/ionic/issues/22184)
|
||||
* **vue:** pass props to component when using modal and popover controller ([#22198](https://github.com/ionic-team/ionic/issues/22198)) ([e84f804](https://github.com/ionic-team/ionic/commit/e84f80493cb9e2c17e6bc5f3e68582eaf643f2cf)), closes [#22189](https://github.com/ionic-team/ionic/issues/22189)
|
||||
|
||||
### Upgrade Steps
|
||||
|
||||
```
|
||||
npm i @ionic/vue@0.5.1 @ionic/vue-router@0.5.1
|
||||
```
|
||||
|
||||
### New to Ionic Vue?
|
||||
|
||||
Check out our [Quickstart Guide](https://ionicframework.com/docs/vue/quickstart) to get up and running. Then be sure to check out our [Building Your First App Guide](https://ionicframework.com/docs/vue/your-first-app) to learn how build a cross platform Ionic Vue application from start to finish!
|
||||
|
||||
|
||||
|
||||
## 0.5.0
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **vue:** correctly render child pages in tabs ([#22141](https://github.com/ionic-team/ionic/issues/22141)) ([7e449a1](https://github.com/ionic-team/ionic/commit/7e449a1ca62956d36b92c32289e5db7a3acb6718))
|
||||
* **vue:** overlays function properly when used via controller or template ([#22155](https://github.com/ionic-team/ionic/issues/22155)) ([fe5fadf](https://github.com/ionic-team/ionic/commit/fe5fadf19cd63087311959c549e7e7c55261b459)), closes [#22090](https://github.com/ionic-team/ionic/issues/22090)
|
||||
* **vue:** pushing a non-tabs page inside of tabs no longer renders it inside of the tabs outlet ([#22112](https://github.com/ionic-team/ionic/issues/22112)) ([6ac6810](https://github.com/ionic-team/ionic/commit/6ac6810148182a829348e8cac2e3b722448dad98)), closes [#22066](https://github.com/ionic-team/ionic/issues/22066)
|
||||
|
||||
### Features
|
||||
|
||||
* **vue:** add keyboard hook ([#22145](https://github.com/ionic-team/ionic/issues/22145)) ([b76bfa3](https://github.com/ionic-team/ionic/commit/b76bfa36c207ab18450d874cb876803aace58bea))
|
||||
|
||||
|
||||
### Performance Improvements
|
||||
|
||||
* **vue:** improved tree-shaking ([#22131](https://github.com/ionic-team/ionic/issues/22131)) ([f82bac1](https://github.com/ionic-team/ionic/commit/f82bac17806e87772033b4602285fe0662d190e3))
|
||||
|
||||
### Upgrade Steps
|
||||
|
||||
```
|
||||
npm i @ionic/vue@0.5.0 @ionic/vue-router@0.5.0
|
||||
```
|
||||
|
||||
With the release of `@ionic/vue@0.5.0`, developers can now use overlay components in their templates:
|
||||
|
||||
```typescript
|
||||
<template>
|
||||
<ion-page>
|
||||
<ion-content>
|
||||
<ion-button @click="setModalOpen">Open Modal</ion-button>
|
||||
|
||||
<ion-modal
|
||||
css-class="my-modal-class"
|
||||
:is-open="isModalOpen"
|
||||
@onDidDismiss="setModalClosed"
|
||||
>
|
||||
<h1>Modal Content</h1>
|
||||
</ion-modal>
|
||||
</ion-content>
|
||||
</ion-page>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import {
|
||||
IonButton,
|
||||
IonContent,
|
||||
IonModal,
|
||||
IonPage
|
||||
} from '@ionic/vue';
|
||||
import { defineComponent, ref } from 'vue';
|
||||
|
||||
export default defineComponent({
|
||||
name: 'Home',
|
||||
components: {
|
||||
IonButton,
|
||||
IonContent,
|
||||
IonModal,
|
||||
IonPage
|
||||
},
|
||||
setup() {
|
||||
const isModalOpen = ref(false);
|
||||
const setModalOpen = () => isModalOpen.value = true;
|
||||
const setModalClosed = () => isModalOpen.value = false;
|
||||
|
||||
return {
|
||||
isModalOpen,
|
||||
setModalOpen,
|
||||
setModalClosed
|
||||
}
|
||||
}
|
||||
})
|
||||
</script>
|
||||
```
|
||||
|
||||
|
||||
## 0.4.0
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **vue:** canGoBack now returns correct result with initial load redirect ([#22071](https://github.com/ionic-team/ionic/issues/22071)) ([8227844](https://github.com/ionic-team/ionic/commit/8227844cbc6da252acb97bfa0f9a2cefa40185f9))
|
||||
* **vue:** ensure dynamic classes are synced with internal Ionic component classes ([#22096](https://github.com/ionic-team/ionic/issues/22096)) ([9cb22be](https://github.com/ionic-team/ionic/commit/9cb22be91a232c395780f7ceb50c3e9ae28e7dc2)), closes [#22051](https://github.com/ionic-team/ionic/issues/22051)
|
||||
* **vue:** using refs with v-model now works properly ([#22092](https://github.com/ionic-team/ionic/issues/22092)) ([67fbb3b](https://github.com/ionic-team/ionic/commit/67fbb3b963e2e75284b578777057c0822720fb1e)), closes [#22076](https://github.com/ionic-team/ionic/issues/22076)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **vue:** add hardware back button hook ([#22069](https://github.com/ionic-team/ionic/issues/22069)) ([a7f564b](https://github.com/ionic-team/ionic/commit/a7f564b818a6ce5f97d999934d5cca77da1b2c83))
|
||||
* **vue:** add hook to access Ionic Vue router ([#22072](https://github.com/ionic-team/ionic/issues/22072)) ([3d34b68](https://github.com/ionic-team/ionic/commit/3d34b68fbd25b724b6f89c01642788d325f6e909))
|
||||
* **vue:** add webHashHistory and memoryHistory options for router ([#22101](https://github.com/ionic-team/ionic/issues/22101)) ([fe2cf22](https://github.com/ionic-team/ionic/commit/fe2cf22f5dab4e13458be0a93d38d346a03f7e3d))
|
||||
|
||||
|
||||
### Upgrade Steps
|
||||
|
||||
```
|
||||
npm i @ionic/vue@0.4.0 @ionic/vue-router@0.4.0
|
||||
```
|
||||
|
||||
|
||||
|
||||
## 0.3.1
|
||||
|
||||
* Vue 3 support
|
||||
|
||||
Enjoy! :tada:
|
Reference in New Issue
Block a user