All Versions
26
Latest Version
Avg Release Cycle
20 days
Latest Release
46 days ago

Changelog History
Page 1

  • v12.1.8

    February 16, 2020
  • v12.1.7

    February 10, 2020

    🆕 Implement new SetRegisterRule(iris.RouteOverride, RouteSkip, RouteError) to resolve: https://github.com/kataras/iris/issues/1448

    🆕 New Examples:

    • 🐳 [_examples/Docker](_examples/Docker)
    • [_examples/routing/route-register-rule](_examples/routing/route-register-rule)
  • v12.1.5

    February 02, 2020

    ⬆️ Various improvements and linting. It's a generic message but please upgrade your project's Iris dependency if you had any issues serving files from subdomains or sharing dependencies through Iris controllers.

    Thanks,
    Gerasimos Maropoulos

  • v12.1.4

    December 29, 2019

    Minor fix on serving embedded files.

  • v12.1.3

    December 25, 2019
  • v12.1.2

    December 19, 2019
  • v12.1.1

    December 16, 2019

    ➕ Add Context.FindClosest(n int) []string

    app := iris.New()
    app.OnErrorCode(iris.StatusNotFound, notFound)
    
    func notFound(ctx iris.Context) {
        suggestPaths := ctx.FindClosest(3)
        if len(suggestPaths) == 0 {
            ctx.WriteString("404 not found")
            return
        }
    
        ctx.HTML("Did you mean?<ul>")
        for _, s := range suggestPaths {
            ctx.HTML(`<li><a href="%s">%s</a></li>`, s, s)
        }
        ctx.HTML("</ul>")
    }
    

  • v12.1.0

    December 13, 2019

    💥 Breaking Changes

    Minor as many of you don't even use them but, indeed, they need to be covered here.

    • 👀 Old i18n middleware(iris/middleware/i18n) was replaced by the [i18n](i18n) sub-package which lives as field at your application: app.I18n.Load(globPathPattern string, languages ...string) (see below)
    • 📜 Community-driven i18n middleware(iris-contrib/middleware/go-i18n) has a NewLoader function which returns a loader which can be passed at app.I18n.Reset(loader i18n.Loader, languages ...string) to change the locales parser
    • 🔧 The Configuration's TranslateFunctionContextKey was replaced by LocaleContextKey which Context store's value (if i18n is used) returns the current Locale which contains the translate function, the language code, the language tag and the index position of it
    • The context.Translate method was replaced by context.Tr as a shortcut for the new context.GetLocale().GetMessage(format, args...) method and it matches the view's function {{tr format args}} too
    • If you used Iris Django view engine with import _ github.com/flosch/pongo2-addons you must change the import path to _ github.com/iris-contrib/pongo2-addons or add a go mod replace to your go.mod file, e.g. replace github.com/flosch/pongo2-addons => github.com/iris-contrib/pongo2-addons v0.0.1.

    🛠 Fixes

    All known issues.

    1. #1395
    2. #1369
    3. #1399 with PR #1400
    4. #1401
    5. #1406
    6. neffos/#20
    7. pio/#5

    🆕 New Features

    Internationalization and localization

    Support for i18n is now a builtin feature and is being respected across your entire application, per say sitemap and views.

    Refer to the wiki section: https://github.com/kataras/iris/wiki/Sitemap for details.

    Sitemaps

    Iris generates and serves one or more sitemap.xml for your static routes.

    Navigate through: https://github.com/kataras/iris/wiki/Sitemap for more.

    🆕 New Examples

    1. [_examples/i18n](_examples/i18n)
    2. [_examples/sitemap](_examples/sitemap)
    3. [_examples/desktop-app/blink](_examples/desktop-app/blink)
    4. [_examples/desktop-app/lorca](_examples/desktop-app/lorca)
    5. [_examples/desktop-app/webview](_examples/desktop-app/webview)
  • v12.0.1

    October 26, 2019
    • Add version suffix of the import path , learn why and see what people voted at issue #1370

    • 📦 All errors are now compatible with go1.13 errors.Is, errors.As and fmt.Errorf and a new core/errgroup package created
    • 🛠 Fix #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
    • ➕ Add mvc/Application#SortByNumMethods as requested at #1343
    • ➕ Add status code 103 Early Hints
    • 🛠 Fix performance of session.UpdateExpiration on 200 thousands+ keys with new radix as reported at issue #1328
    • 🆕 New redis session database configuration field: Driver: redis.Redigo() or redis.Radix(), see updated examples
    • ➕ Add Clusters support for redis:radix session database (Driver: redis:Radix()) as requested at issue #1339
    • Create Iranian README_FA translation with PR #1360
    • Create Korean README_KO translation with PR #1356
    • Create Spanish README_ES and HISTORY_ES translations with PR #1344.

    ⚡️ The iris-contrib/middleare and examples are updated to use the new github.com/kataras/iris/v12 import path.