mirror of
https://github.com/kataras/iris.git
synced 2025-01-23 10:41:03 +01:00
c935e5d7d1
Former-commit-id: 778fedba71bc146709e840c7a37545e516c7a287
137 lines
7.2 KiB
Markdown
137 lines
7.2 KiB
Markdown
<!-- # History/Changelog <a href="HISTORY_ZH.md"> <img width="20px" src="https://iris-go.com/images/flag-china.svg?v=10" /></a><a href="HISTORY_ID.md"> <img width="20px" src="https://iris-go.com/images/flag-indonesia.svg?v=10" /></a><a href="HISTORY_GR.md"> <img width="20px" src="https://iris-go.com/images/flag-greece.svg?v=10" /></a> -->
|
|
|
|
# Changelog
|
|
|
|
### Looking for free and real-time support?
|
|
|
|
https://github.com/kataras/iris/issues
|
|
https://chat.iris-go.com
|
|
|
|
### Looking for previous versions?
|
|
|
|
https://github.com/kataras/iris/releases
|
|
|
|
### Want to be hired?
|
|
|
|
https://facebook.com/iris.framework
|
|
|
|
### Should I upgrade my Iris?
|
|
|
|
Developers are not forced to upgrade if they don't really need it. Upgrade whenever you feel ready.
|
|
|
|
**How to upgrade**: Open your command-line and execute this command: `go get github.com/kataras/iris@master`.
|
|
|
|
# Sa, 26 October 2019 | v12.0.0
|
|
|
|
- Add version suffix of the **import path**, learn why and see what people voted at [issue #1370](https://github.com/kataras/iris/issues/1370)
|
|
|
|
![](https://iris-go.com/images/vote-v12-version-suffix_26_oct_2019.png)
|
|
|
|
- All errors are now compatible with go1.13 `errors.Is`, `errors.As` and `fmt.Errorf` and a new `core/errgroup` package created
|
|
- Fix [#1383](https://github.com/kataras/iris/issues/1383)
|
|
- Report whether system couldn't find the directory of view templates
|
|
- Remove the `Party#GetReport` method, keep `Party#GetReporter` which is an `error` and an `errgroup.Group`.
|
|
- Remove the router's deprecated methods such as StaticWeb and StaticEmbedded_XXX
|
|
- The `Context#CheckIfModifiedSince` now returns an `context.ErrPreconditionFailed` type of error when client conditions are not met. Usage: `if errors.Is(err, context.ErrPreconditionFailed) { ... }`
|
|
- Add `SourceFileName` and `SourceLineNumber` to the `Route`, reports the exact position of its registration inside your project's source code.
|
|
- Fix a bug about the MVC package route binding, see [PR #1364](https://github.com/kataras/iris/pull/1364)
|
|
- Add `mvc/Application#SortByNumMethods` as requested at [#1343](https://github.com/kataras/iris/issues/1343#issuecomment-524868164)
|
|
- Add status code `103 Early Hints`
|
|
- Fix performance of session.UpdateExpiration on 200 thousands+ keys with new radix as reported at [issue #1328](https://github.com/kataras/iris/issues/1328)
|
|
- New redis session database configuration field: `Driver: redis.Redigo()` or `redis.Radix()`, see [updated examples](_examples/sessions/database/redis/)
|
|
- Add Clusters support for redis:radix session database (`Driver: redis:Radix()`) as requested at [issue #1339](https://github.com/kataras/iris/issues/1339)
|
|
- Create Iranian [README_FA](README_FA.md) translation with [PR #1360](https://github.com/kataras/iris/pull/1360)
|
|
- Create Korean [README_KO](README_KO.md) translation with [PR #1356](https://github.com/kataras/iris/pull/1356)
|
|
- Create Spanish [README_ES](README_ES.md) and [HISTORY_ES](HISTORY_ES.md) translations with [PR #1344](https://github.com/kataras/iris/pull/1344).
|
|
|
|
The iris-contrib/middleare and examples are updated to use the new `github.com/kataras/iris/v12` import path.
|
|
|
|
# Fr, 16 August 2019 | v11.2.8
|
|
|
|
- Set `Cookie.SameSite` to `Lax` when subdomains sessions share is enabled[*](https://github.com/kataras/iris/commit/6bbdd3db9139f9038641ce6f00f7b4bab6e62550)
|
|
- Add and update all [experimental handlers](https://github.com/kataras/iris/tree/master/_examples/experimental-handlers)
|
|
- New `XMLMap` function which wraps a `map[string]interface{}` and converts it to a valid xml content to render through `Context.XML` method
|
|
- Add new `ProblemOptions.XML` and `RenderXML` fields to render the `Problem` as XML(application/problem+xml) instead of JSON("application/problem+json) and enrich the `Negotiate` to easily accept the `application/problem+xml` mime.
|
|
|
|
Commit log: https://github.com/kataras/iris/compare/v11.2.7...v11.2.8
|
|
|
|
# Th, 15 August 2019 | v11.2.7
|
|
|
|
This minor version contains improvements on the Problem Details for HTTP APIs implemented on [v11.2.5](#mo-12-august-2019--v1125).
|
|
|
|
- Fix https://github.com/kataras/iris/issues/1335#issuecomment-521319721
|
|
- Add `ProblemOptions` with `RetryAfter` as requested at: https://github.com/kataras/iris/issues/1335#issuecomment-521330994.
|
|
- Add `iris.JSON` alias for `context#JSON` options type.
|
|
|
|
[Example](https://github.com/kataras/iris/blob/45d7c6fedb5adaef22b9730592255f7bb375e809/_examples/routing/http-errors/main.go#L85) and [wikis](https://github.com/kataras/iris/wiki/Routing-error-handlers#the-problem-type) updated.
|
|
|
|
References:
|
|
|
|
- https://tools.ietf.org/html/rfc7231#section-7.1.3
|
|
- https://tools.ietf.org/html/rfc7807
|
|
|
|
Commit log: https://github.com/kataras/iris/compare/v11.2.6...v11.2.7
|
|
|
|
# We, 14 August 2019 | v11.2.6
|
|
|
|
Allow [handle more than one route with the same paths and parameter types but different macro validation functions](https://github.com/kataras/iris/issues/1058#issuecomment-521110639).
|
|
|
|
```go
|
|
app.Get("/{alias:string regexp(^[a-z0-9]{1,10}\\.xml$)}", PanoXML)
|
|
app.Get("/{alias:string regexp(^[a-z0-9]{1,10}$)}", Tour)
|
|
```
|
|
|
|
Commit log: https://github.com/kataras/iris/compare/v11.2.5...v11.2.6
|
|
|
|
# Mo, 12 August 2019 | v11.2.5
|
|
|
|
- [New Feature: Problem Details for HTTP APIs](https://github.com/kataras/iris/pull/1336)
|
|
- [Add Context.AbsoluteURI](https://github.com/kataras/iris/pull/1336/files#diff-15cce7299aae8810bcab9b0bf9a2fdb1R2368)
|
|
|
|
Commit log: https://github.com/kataras/iris/compare/v11.2.4...v11.2.5
|
|
|
|
# Fr, 09 August 2019 | v11.2.4
|
|
|
|
- Fixes [iris.Jet: no view engine found for '.jet' or '.html'](https://github.com/kataras/iris/issues/1327)
|
|
- Fixes [ctx.ViewData not work with JetEngine](https://github.com/kataras/iris/issues/1330)
|
|
- **New Feature**: [HTTP Method Override](https://github.com/kataras/iris/issues/1325)
|
|
- Fixes [Poor performance of session.UpdateExpiration on 200 thousands+ keys with new radix lib](https://github.com/kataras/iris/issues/1328) by introducing the `sessions.Config.Driver` configuration field which defaults to `Redigo()` but can be set to `Radix()` too, future additions are welcomed.
|
|
|
|
Commit log: https://github.com/kataras/iris/compare/v11.2.3...v11.2.4
|
|
|
|
# Tu, 30 July 2019 | v11.2.3
|
|
|
|
- [New Feature: Handle different parameter types in the same path](https://github.com/kataras/iris/issues/1315)
|
|
- [New Feature: Content Negotiation](https://github.com/kataras/iris/issues/1319)
|
|
- [Context.ReadYAML](https://github.com/kataras/iris/tree/master/_examples/http_request/read-yaml)
|
|
- Fixes https://github.com/kataras/neffos/issues/1#issuecomment-515698536
|
|
|
|
# We, 24 July 2019 | v11.2.2
|
|
|
|
Sessions as middleware:
|
|
|
|
```go
|
|
import "github.com/kataras/iris/v12/sessions"
|
|
// [...]
|
|
|
|
app := iris.New()
|
|
sess := sessions.New(sessions.Config{...})
|
|
|
|
app.Get("/path", func(ctx iris.Context){
|
|
session := sessions.Get(ctx)
|
|
// [work with session...]
|
|
})
|
|
```
|
|
|
|
- Add `Session.Len() int` to return the total number of stored values/entries.
|
|
- Make `Context.HTML` and `Context.Text` to accept an optional, variadic, `args ...interface{}` input arg(s) too.
|
|
|
|
## v11.1.1
|
|
|
|
- https://github.com/kataras/iris/issues/1298
|
|
- https://github.com/kataras/iris/issues/1207
|
|
|
|
# Tu, 23 July 2019 | v11.2.0
|
|
|
|
Read about the new release at: https://www.facebook.com/iris.framework/posts/3276606095684693
|