Commit Graph

245 Commits

Author SHA1 Message Date
esemplastic
3e5f61ff6b Fix httpcache sub-package.
Former-commit-id: d0bf86713bda90ade130c93dcf04d9b26f1e4f08
2017-04-12 01:25:42 +03:00
Gerasimos (Makis) Maropoulos
7a6cf4c5aa Add (10) more _examples. TOC: https://github.com/kataras/iris/tree/v6/_examples
Part 3.


Former-commit-id: 229b86baca4043c69517968318d9a962d2e026d0
2017-03-24 02:25:00 +02:00
Gerasimos (Makis) Maropoulos
221334f8cb Readme Update
Former-commit-id: ed3f825945b51aa4cafd231c2ad7eb5fa1270852
2017-03-22 05:45:03 +02:00
Gerasimos (Makis) Maropoulos
0733ea37c0 Enhance the view engine's example for {{url ...}} and {{urlpath ...}} tmpl funcs for reverse routing.
Former-commit-id: ec3cda69e5cbe5a04842150011b3788b70055572
2017-03-19 02:06:15 +02:00
Gerasimos (Makis) Maropoulos
d51c0b7b50 Implement feature request: http://support.iris-go.com/d/29-mark-cookie-for-session-as-secure
Example:

app := iris.New()
app.Adapt(httprouter.New())
// IMPORTANT
cookieName := "mycustomsessionid"
// AES only supports key sizes of 16, 24 or 32 bytes.
// You either need to provide exactly that amount or you derive the key
from what you type in.
hashKey := []byte("the-big-and-secret-fash-key-here")
blockKey := []byte("lot-secret-of-characters-big-too")
secureCookie := securecookie.New(hashKey, blockKey)

app.Adapt(sessions.New(sessions.Config{
Cookie: cookieName,
Encode: secureCookie.Encode,
Decode: secureCookie.Decode,
}))

Former-commit-id: 6fe5ce6cb834d55862242e08405fad4e721caa5b
2017-03-18 12:22:20 +02:00
Gerasimos (Makis) Maropoulos
1f5a274cae Nothing special yet: Readme updates and gofmt -s -w . (including vendor)
Former-commit-id: b275e55b7cd90392772c49f72e8ecd644bf0634c
2017-03-03 04:54:18 +02:00
Gerasimos (Makis) Maropoulos
a6fc0072ff Organising kataras/go-fs. No api changes for these changes don't worry. See previous commit's description for more info.
Former-commit-id: 8af960e5e4e5f7c8816140ac912328b9c524370b
2017-03-01 19:17:32 +02:00
Gerasimos (Makis) Maropoulos
57aea4aa75 Move the kataras/go-serializer into one iris' file.
Start organising the kataras/go-*package which are relative to the Iris
project. The kataras/go-*package will be exists and their features will
be adapted to Iris every 2 months, as we say at readme, iris-relative
packages should be tested for a long time before adapted to Iris.

With this way we have stability, code readability(the developer can
easly navigate to iris' code without need to move across different
kataras/ projects).


Former-commit-id: db291faaf59d4f53f14ce5800fde805f56c8b802
2017-03-01 15:04:42 +02:00
Gerasimos (Makis) Maropoulos
064282036c Helpers for third-party adaptors and middleware authors to generate route paths without even know the router that has being selected by user
Former-commit-id: b21147f2bc306d5c41539a1be0c83456c3d62651
2017-02-28 15:01:18 +02:00
Gerasimos (Makis) Maropoulos
b214df742b Nothing special: when iris.DevLogger() used then group logs based on time.
Former-commit-id: 921e2d5baabd3d299f4a719ef0a0abd924bc3bc9
2017-02-28 05:37:53 +02:00
Gerasimos (Makis) Maropoulos
9597fab37c Add error message when reverse routing using gorillamux happens before boot
Former-commit-id: 96dd812a16338824474ba1be0db18c486b2ebc0d
2017-02-18 08:18:09 +02:00
Gerasimos (Makis) Maropoulos
f83c7fb4e7 Fix history big mistakes, point links to /v6 tag only https://github.com/kataras/iris/issues/606
Former-commit-id: e0a7ce1a991e5d6600de6cc0a853ef8b1cb8d282
2017-02-18 07:22:57 +02:00
Gerasimos (Makis) Maropoulos
7263649002 Make ExecRouteAgainst to work better and fix gorillamux and httprouter, remove of contextlinker policy it's useless now
Former-commit-id: 8d3501e6c490d630d3a4bec0c077dcd7d532242f
2017-02-18 07:03:37 +02:00
Gerasimos (Makis) Maropoulos
9a3c4f4c0a Add an example for httprouter_test, gofmt everything and misspel fixes.
Former-commit-id: e69ffdf9bba4c7e8c3df45c015b3363cc3fc59b6
2017-02-17 10:45:47 +02:00
Gerasimos (Makis) Maropoulos
48b470f5da Add HTTP/2 Example and Websocket wss:// too in the same time :)
Former-commit-id: fd4c12043d6ed739770236e014ccd2f0f4f5a84c
2017-02-17 06:49:54 +02:00
Gerasimos (Makis) Maropoulos
929b00a24b HTTP/2 Push https://github.com/kataras/iris/issues/565
Former-commit-id: 32af4dd8ef18a5fb2fa88aa8b87e71a594faa6f2
2017-02-17 04:57:51 +02:00
Gerasimos (Makis) Maropoulos
21a18d0990 Add the new Go 1.8 Shutdown | Remove DisableBanner, is controlled by LoggerPolicy now.
Former-commit-id: 6ef71a4b9f5a79160a42d1111dd924e244ce1f4e
2017-02-17 04:46:33 +02:00
Gerasimos (Makis) Maropoulos
2a4997cadf Add listen and proxy tests
Former-commit-id: 7c89556942af8e9c6966022323cb9746db446cfc
2017-02-17 02:55:26 +02:00
Gerasimos (Makis) Maropoulos
fa5b529634 Update readme
Former-commit-id: 825f79a9cc8eedb2026906ce28ebf795c7c0b158
2017-02-17 00:09:04 +02:00
Gerasimos (Makis) Maropoulos
a132e7cebc Update README.md
Former-commit-id: 6f1ee755e36aeba65367a3ec276bd10d21d45343
2017-02-16 23:54:00 +02:00
Gerasimos (Makis) Maropoulos
155d3f2d87 Align doc.go
Former-commit-id: 65f2eb1a8bb7de832c854d78c6b245f8b7d7764b
2017-02-16 18:33:36 +02:00
Gerasimos (Makis) Maropoulos
dd1d6837d9 Add the ability to use .yaml/yml files for the Configuration.
Former-commit-id: 0c49eb04d991aabf67970fe7f7b3ed969a36a708
2017-02-16 05:00:08 +02:00
Gerasimos (Makis) Maropoulos
40b62f2958 gofmt everything, even the vendor.
Former-commit-id: c2bf34c63b5cc6c974ce2b3bcf04bb1c9b77efaf
2017-02-16 03:26:02 +02:00
Gerasimos (Makis) Maropoulos
13e83fc57e SessionsPolicy and sessions adaptor, history and _example written.
Former-commit-id: e8b0dde3cb3b72919f01b9d836d8ccb3d4e20214
2017-02-15 20:06:19 +02:00
Gerasimos (Makis) Maropoulos
82afcc5aa6 Implement the websocket adaptor, a version of kataras/go-websocket, and refactor all of the previous websocket examples.
https://github.com/kataras/go-websocket/issues/27

Former-commit-id: 0b7e52e0a61150a8bba973ef653986d8b3ddd26b
2017-02-15 08:40:43 +02:00
Gerasimos (Makis) Maropoulos
86f34dc5df Fix https://github.com/kataras/go-websocket/issues/27 on iris.v6 too
Former-commit-id: 29b1ea2ff313bdaeb719c242e08c5d5c9149156a
2017-02-14 20:32:36 +02:00
Gerasimos (Makis) Maropoulos
244a59e055 20 days of unstoppable work. Waiting fo go 1.8, I didn't finish yet, some touches remains.
Former-commit-id: ed84f99c89f43fe5e980a8e6d0ee22c186f0e1b9
2017-02-14 05:54:11 +02:00
Gerasimos (Makis) Maropoulos
5aaec72634 Update to 6.1.4 - Align with the improved kataras/go-sessions 2017-02-07 02:37:35 +02:00
Gerasimos (Makis) Maropoulos
2a911a450c Add DisableBodyConsumptionOnUnmarshal configuration field as discussed on [chat](https://kataras.rocket.chat/channel/iris). Read HISTORY.md 2017-01-30 12:35:43 +02:00
Gerasimos (Makis) Maropoulos
73b8396cd6 https://github.com/iris-contrib/plugin/blob/master/cors/plugin.go#L28 2017-01-27 14:25:48 +02:00
Gerasimos (Makis) Maropoulos
7dfb13cfbd Nothing special here 2017-01-25 22:19:06 +02:00
Gerasimos (Makis) Maropoulos
306a709c04 Add a tip with a link on how to change the default Router. Remove the comic, not everybody has houmor. 2017-01-14 05:17:46 +02:00
Gerasimos (Makis) Maropoulos
f380d710cc Update to 6.1.2 2017-01-13 05:57:46 +02:00
Gerasimos (Makis) Maropoulos
3489ba3365 Offling routing and prioritize others before static handlers https://github.com/kataras/iris/issues/585
Read HISTORY.md
2017-01-12 10:24:27 +02:00
Gerasimos (Makis) Maropoulos
c91a1e6628 |You will love this| New Feature: Offline routing, dynamic changes against a route's state | https://github.com/kataras/iris/issues/585
Read HISTORY.md for details
2017-01-12 08:28:30 +02:00
Gerasimos (Makis) Maropoulos
020e857b22 Update to 6.1.0 2017-01-12 00:57:07 +02:00
Gerasimos (Makis) Maropoulos
23f9ad13a1 Catch os.Interrupt signal with iris.PostInterrupt example added in comments.
https://github.com/iris-contrib/examples/tree/master/os_interrupt
2017-01-11 18:01:29 +02:00
Gerasimos (Makis) Maropoulos
5ad7c6e01f Update to 6.0.9: Add PostInterrupt plugin. Read HISTORY.md
- Add `PostInterrupt` plugin, useful for customization of the
**os.Interrupt** singal, before that Iris closed the server
automatically.

```go
iris.Plugins.PostInterrupt(func(s *Framework){
// when os.Interrupt signal is fired the body of this function will be
fired,
// you're responsible for closing the server with s.Close()

// if that event is not registered then the framework
// will close the server for you.

/* Do  any custom cleanup and finally call the s.Close()
remember you have the iris.Plugins.PreClose(func(s *Framework)) event
too
so you can split your logic in two logically places.
*/

})

```
2017-01-11 16:23:38 +02:00
Gerasimos (Makis) Maropoulos
e4ab993760 Nothing special here, read HISTORY.md 2017-01-10 15:03:02 +02:00
Gerasimos (Makis) Maropoulos
053588babd Update to 7.0.8 | iris.UseTemplateFunc -> Read HISTORY.md | Remove vendor folder because of: https://github.com/gavv/httpexpect/pull/34
Read HISTORY.md
2017-01-10 14:21:49 +02:00
Gerasimos (Makis) Maropoulos
893271bf02 Update to 6.0.7 2017-01-10 08:54:39 +02:00
Gerasimos (Makis) Maropoulos
c476fe8921 Feature Request: *http.Request access from Websockets. iris.Config.Websocket.IDGenerator custom connection's ID generator added too.
Example:

-
https://github.com/iris-contrib/examples/blob/master/websocket/main.go#L34

Relative commits to kataras/go-websocket:
-
550fc8b32e

-
62c2d989d8
2017-01-09 06:23:49 +02:00
Gerasimos (Makis) Maropoulos
5daa3d6fa7 Add iris.DestroySessionByID(string) and iris.DestroyAllSessions() as requested. Read HISTORY.md
c9d94b7b44
2017-01-08 06:18:02 +02:00
Gerasimos (Makis) Maropoulos
bcc35c11ca Add iris.DestroySessionByID(string) and iris.DestroyAllSessions() as requested. 2017-01-08 06:11:50 +02:00
Gerasimos (Makis) Maropoulos
d060a73559 https://github.com/iris-contrib/gitbook/issues/30 2017-01-05 18:59:15 +02:00
Gerasimos (Makis) Maropoulos
d5a9410e2a Update to 6.0.3: Add an easy way to set a request body size limit per client or globally for newcomers 2017-01-04 21:29:58 +02:00
Gerasimos (Makis) Maropoulos
3b0a8e0f2d Fix https://github.com/kataras/iris/issues/574 2017-01-04 19:50:54 +02:00
Gerasimos (Makis) Maropoulos
058d70e533 Update to 6.0.1 - use the response recorder whenever you need it. Read HISTORY.md 2017-01-04 15:16:53 +02:00
Gerasimos (Makis) Maropoulos
8bbd9f8fc5 Happy new year! Update to 6.0.0 | HTTP/2 full support. https://github.com/kataras/iris/issues/565
full commit from development branch.

Examples, book, middleware, plugins are updated to the latest iris
version. Read HISTORY.md for more.

The 'old' v5 branch which relied on fasthttp exists for those who want
to use it navigate there: https://github.com/kataras/iris/tree/5.0.0
2017-01-02 21:20:17 +02:00
Gerasimos (Makis) Maropoulos
ced2083ab3 Fix https://github.com/kataras/iris/issues/570 | no-internet connection but Config.CheckForUpdates is true 2016-12-31 14:40:19 +02:00
Gerasimos (Makis) Maropoulos
fe79fdea44 Fix https://github.com/kataras/iris/issues/566 2016-12-22 19:07:03 +02:00
Gerasimos (Makis) Maropoulos
88c98bb1e1 More on Transactions: Fallback on, unexpected, panics and able to send 'silent' error which stills reverts the changes but no output 2016-12-18 14:08:28 +02:00
Gerasimos (Makis) Maropoulos
f54dc697cc More on Transactions: iris.UseTransaction and iris.DoneTransaction. See HISTORY.md 2016-12-16 10:20:05 +02:00
Gerasimos (Makis) Maropoulos
48e770dab0 Update to 5.1.1 - Addons for the last feature, Transaction scopes. Read HISTORY.md
Read HISTORY.md and example here:
github.com/iris-contrib/examples/tree/master/transactions
2016-12-15 17:16:17 +02:00
Gerasimos (Makis) Maropoulos
65980d3363 New Feature: Request-Scoped Transactions
Example:
https://github.com/iris-contrib/examples/tree/master/request_transactions
2016-12-15 15:14:48 +02:00
Gerasimos (Makis) Maropoulos
309b037e3b Update to 5.0.4 - Read HISTORY.md 2016-12-12 12:18:59 +02:00
Gerasimos (Makis) Maropoulos
619a54a9f2 Fix an old issue https://github.com/kataras/iris/issues/355 2016-11-22 16:46:07 +02:00
Gerasimos Maropoulos
8b88aabc05 Update to 5.0.2 - Cache(only) improvements
Cache - only improvements
2016-11-15 20:20:29 +02:00
Gerasimos Maropoulos
7b2bcc19cd Fix url typo as reported here: https://github.com/kataras/iris/issues/531 2016-11-13 11:12:59 +02:00
Gerasimos Maropoulos
5e4db0e56b Update DONATIONS.md 2016-11-07 15:15:22 +02:00
Gerasimos Maropoulos
504006a7bb Add a link to the stable version on the Installation section 2016-10-31 21:21:11 +02:00
Gerasimos Maropoulos
32e3cbede1 Prepare for 4.0.0 gopkg.in for-ever package (All 20+ other repositories refactored) including gitbook and examples 2016-10-31 08:19:00 +02:00
Gerasimos Maropoulos
6f22da7622 Nothing special here, remote cache is not ready yet
Remote Cache is not inside docs or history because it's not ready for
production yet, however it seems to works fine, but until I test it on
more than 2kk requests I will not add this on history or docs. The
upcoming 24 hours I will upload a relative package which will combine
all cache features to one
2016-10-28 21:55:00 +03:00
Gerasimos Maropoulos
3243432d48 A small improvement to LETSENCRYPT and LETSENCRYPTPROD
just  an improvement to the `LETSENCRYPT` in order to meet your needs,
it lets you configure the cache file to any directory  or to disable it
by passing "" as the second argument.

**OUTLINE**
```
// ListenLETSENCRYPT starts a server listening at the specific nat
address
// using key & certification taken from the letsencrypt.org 's servers
// it's also starts a second 'http' server to redirect all
'http://$ADDR_HOSTNAME:80' to the' https://$ADDR'
// it creates a cache file to store the certifications, for performance
reasons, this file by-default is "./letsencrypt.cache"
// if you skip the second parameter then the cache file is
"./letsencrypt.cache"
// if you want to disable cache then simple pass as second argument an
empty emtpy string ""
//
// example:
https://github.com/iris-contrib/examples/blob/master/letsencyrpt/main.go
//
// supports localhost domains for testing,
// NOTE: if you are ready for production then use
`$app.Serve(iris.LETSENCRYPTPROD("mydomain.com"))` instead
ListenLETSENCRYPT(addr string, cacheFileOptional ...string)
```

**OVERVIEW**
```
package main

import "github.com/kataras/iris"

func main() {
iris.Get("/", func(ctx *iris.Context) {
ctx.Write("Hello from SECURE SERVER!")
})

iris.ListenLETSENCRYPT("mydomain.com", "./mycachefile.cache)
}

```
2016-10-28 21:21:57 +03:00
Gerasimos Maropoulos
7eb520fc6b [2] Continue working on #513 2016-10-28 11:13:12 +03:00
Gerasimos Maropoulos
d32ae1377c Implement Cache as https://github.com/kataras/iris/issues/513
I love coding unique Iris staff!!!
2016-10-27 03:17:09 +03:00
Gerasimos Maropoulos
ee9b153f6d gofmted -s 2016-10-25 16:49:57 +03:00
Gerasimos Maropoulos
78d145c207 Introduce version 5.0.1 2016-10-25 15:58:18 +03:00
Gerasimos Maropoulos
5c896b39a5 V4 LTS, check the HISTORY.md 2016-10-21 03:06:50 +03:00
Gerasimos Maropoulos
9bbbbf6769 StaticEmbedded: Do the actual work if cache duration passed
For StaticEmbedded example take a look at the HISTORY.md file
2016-10-17 04:43:31 +03:00
Gerasimos Maropoulos
1a913d45d4 Implement feature request for embedded assets
Example:
https://github.com/iris-contrib/examples/tree/master/static_files_embedded

Read HISTORY.md
2016-10-17 03:37:57 +03:00
Gerasimos Maropoulos
ee5dff96e3 For v4.6.0 - Remove unused testFramework from the previous commit
Read HISTORY.md for changes:
https://github.com/kataras/iris/blob/master/HISTORY.md
2016-10-13 17:28:23 +03:00
Gerasimos Maropoulos
157e3cf054 Push version 4.6.0, read HISTORY.md
Real commit is the parent, as usual
2016-10-13 17:25:50 +03:00
Gerasimos Maropoulos
122aab4083 Update to 4.6.0, read HISTORY.md
https://github.com/kataras/iris/blob/master/HISTORY.md
2016-10-13 17:25:01 +03:00
Gerasimos Maropoulos
f2a7b4e43a Update to 5.4.3, zero user changes. 2016-10-13 04:02:04 +03:00
Gerasimos Maropoulos
9bce4e846a Update to 4.5.2 2016-10-11 22:35:12 +03:00
Gerasimos Maropoulos
40b000c20f Update to 4.5.1 2016-10-11 14:10:19 +03:00
Gerasimos Maropoulos
f66b7e2eab Update to 4.5.0 2016-10-09 21:09:53 +03:00
Gerasimos Maropoulos
14982891c5 Update to 4.4.9 2016-10-09 07:47:27 +03:00
Gerasimos Maropoulos
a000da35c3 Update to 4.4.8 - Custom decoders for ReadJSON/ReadXML, read HISTORY.md
Read: https://github.com/kataras/iris/blob/master/HISTORY.md
2016-10-06 23:19:55 +03:00
Gerasimos Maropoulos
bffd2074eb Update to 4.4.7 2016-10-05 13:21:40 +03:00
Gerasimos Maropoulos
2090eb4d83 Update to 4.4.6 2016-10-04 01:18:17 +03:00
Gerasimos Maropoulos
f39b6c4bfb DONATIONS update summary 2016-10-03 17:23:53 +03:00
Gerasimos Maropoulos
fe4b8bd7d2 Fix https://github.com/kataras/iris/issues/455 occurs from last changes 2016-10-02 07:28:36 +03:00
Gerasimos Maropoulos
3970804a37 Update to 4.4.4 2016-10-02 07:21:44 +03:00
Gerasimos Maropoulos
78f3323ce4 Update to 4.4.3 2016-10-02 03:30:37 +03:00
Gerasimos Maropoulos
716b5001da Fix https://github.com/iris-contrib/middleware/issues/13 2016-09-30 18:48:48 +03:00
Gerasimos Maropoulos
5e7975d97f Able to change logger's prefix and output after configuration 2016-09-30 14:02:03 +03:00
Gerasimos Maropoulos
c2144a83c6 Update DONATIONS.md summary 2016-09-29 20:17:42 +03:00
Gerasimos Maropoulos
f4b4dd0275 Implementation of https://github.com/kataras/iris/issues/412 , as requested. Read HISTORY for a code snippet 2016-09-29 17:05:22 +03:00
Gerasimos Maropoulos
5c98c5a493 Update to v4.4.0 Implementation of https://github.com/kataras/iris/issues/438
Read HISTORY.md
2016-09-27 16:28:38 +03:00
Gerasimos Maropoulos
60947d4f21 Update to 4.3.0, align with latest kataras/go-websocket 2016-09-20 10:15:45 +03:00
Gerasimos Maropoulos
f33053675c Update to 4.2.9 2016-09-19 01:48:37 +03:00
Gerasimos Maropoulos
7882d736b5 Update to 4.2.8 2016-09-19 01:42:37 +03:00
Gerasimos Maropoulos
d00bd8e595 nothing special here 2016-09-18 21:57:15 +03:00
Gerasimos Maropoulos
4eee3e5f53 Export the funcs: AcquireCtx and ReleaseCtx, see previous commit for more 2016-09-18 07:21:35 +03:00
Gerasimos Maropoulos
131eddb701 Ability to change the whole default router 2016-09-18 06:55:44 +03:00
Gerasimos Maropoulos
27f2ba7be9 Update DONATIONS.md summary & iris updater runs async unless CheckForUpdatesSync is true 2016-09-18 00:50:10 +03:00
Gerasimos Maropoulos
e24d45f66a Update to 4.2.5 2016-09-16 21:16:48 +03:00
Gerasimos Maropoulos
3915aa4361 cover the default station's upate( https://github.com/kataras/iris/issues/401 ) action 2016-09-16 10:25:56 +03:00