Commit Graph

115 Commits

Author SHA1 Message Date
Gerasimos (Makis) Maropoulos
e08d0b4be6 Update to version 11.0.4. Read https://github.com/kataras/iris/blob/master/HISTORY.md#fr-09-november-2018--v1104
Former-commit-id: 2c2c32afe31fe94543d145ab8c8475d7b4392ff1
2018-11-09 03:03:48 +02:00
Gerasimos (Makis) Maropoulos
e9a9f90993 sync with kataras/muxie
Former-commit-id: b414d7243e6c636731f2b0c19d35d3911bb4c951
2018-10-21 20:56:25 +03:00
Gerasimos (Makis) Maropoulos
8baaddc892 fix no slash req path
Former-commit-id: 3c3c00788e2481ee142b668d576cab5ff046f089
2018-10-21 19:21:23 +03:00
Gerasimos (Makis) Maropoulos
e3876d793c make the core/router.AllMethods a variable that can be changed by end-devs as requested at: https://github.com/kataras/iris/issues/1102
Former-commit-id: 47c997e0d3a90e4c7ccb8c4dfd1459065490d59e
2018-10-16 05:37:21 +03:00
Gerasimos (Makis) Maropoulos
3002736086 add my new trie data structure implementation written from scratch and specifically designed for HTTP (and Iris) - see https://github.com/kataras/muxie for the net/http version of it
Former-commit-id: 4eed1585f29b57418b61f6de058f5d6db4bb98bf
2018-10-15 10:49:09 +03:00
Gerasimos (Makis) Maropoulos
120b5fb635 example: write our own customized router using the high-level API which gives access to the correct context and routes
Former-commit-id: d2369c20490619cad0dd6f7b6ed01cdbef51a853
2018-10-02 06:36:51 +03:00
Gerasimos (Makis) Maropoulos
b08df3a785 make the macro#Parse to return a value of a Template instead of its ptr and debug logs for handlers length ignores the internal generated macro evaluator handler if it is there, so end-dev cannot be confused about the debug logs at that point
Former-commit-id: c23a3d10b43f145de575f1ea11e3dbf9bbd33a6b
2018-09-29 19:59:39 +03:00
Gerasimos (Makis) Maropoulos
7568da3283 add tests for the new types (int8, int16, int32, uint, uint8, uint16, uint32, uint64)
Former-commit-id: 812b3fdcc47abdeac271473bfdbdd15f0afd0bc0
2018-09-29 04:35:09 +03:00
Gerasimos (Makis) Maropoulos
6d9a35ddba partial cleanup of the macro pkg and move it from /core/router to the root because it may be used by the end-developers now to ammend the available macros per application
Former-commit-id: 951a5e7a401af25ecaa904ff6463b0def2c87afb
2018-09-29 02:41:51 +03:00
Gerasimos (Makis) Maropoulos
bf880033cd make macros even faster and smart catch common :string and do not execute anything at all if not really needed, more clean code as well
Former-commit-id: 589c23d1f92cf36b7677dfe78b60d51252c979fb
2018-09-28 05:34:35 +03:00
Gerasimos (Makis) Maropoulos
972dff8729 easy fix of macro handler caused tests to fail by before prev commit
Former-commit-id: 32f67072f604935a8efecc90151715f27ba7c2c1
2018-09-27 21:31:07 +03:00
Gerasimos (Makis) Maropoulos
39b180b14c see previous commit for more details
Former-commit-id: e88246203ffc492ffa39e8d20ed19cac7abd52c2
2018-09-27 06:28:47 +03:00
Gerasimos (Makis) Maropoulos
f05ee872d0 add int8, int16, int32, uint, uint16 and uint32 default-builtn parameter types and macros - no doc update - no live tests yet - time for sleep
Former-commit-id: 4a27265a9f1368c4bbecd852691155e56c875673
2018-09-27 06:20:03 +03:00
Gerasimos (Makis) Maropoulos
d6d27b2605 Conversion once at macros and their functions, internal changes required
Former-commit-id: 7b778cccfb7c0e30ca5e8106017ada065993aba5
2018-09-27 03:17:45 +03:00
Gerasimos (Makis) Maropoulos
dc3c38b189 add the ability to add custom parameter types to the interpreter and mapped macros with any number of macro functions - example added - although it's working it is not ready yet - I have to do some cleanup, doc comments and a TODO
Former-commit-id: 8ac751b649a3b8e59948fd4c89ad53d25f49d0d5
2018-09-26 11:37:11 +03:00
Gerasimos (Makis) Maropoulos
efa17e8899 dynamic param types part 1
Former-commit-id: 5829d53de848c0ea4491b53e4798f6c9cdf8d9a7
2018-09-01 18:53:42 +03:00
Gerasimos (Makis) Maropoulos
f365be3c62 remove 'WithoutVersionChecker', update and test the new versions of some of the dependencies, add a history entry with unknown release date
Former-commit-id: 399db6aac44d3b336648d6d61842f4d7a0266842
2018-08-31 02:09:48 +03:00
Gerasimos (Makis) Maropoulos
cbd8fe95ac add uint8 parameter type, and mvc and hero - this commit may be a point of tutorial on how to add a completely new type from scratch to the hero for future contributors
Former-commit-id: dc7a7e6c97ef0c644a22e92072e4bdb98ae10582
2018-08-24 00:56:54 +03:00
Gerasimos (Makis) Maropoulos
ef5f383227 support more than string and int at macro functions route path input arguments: int,uint8,uint16,uint32,int8,int32,int64,slice of strings and string
Former-commit-id: d29c4fbe5926bac590151322a585f68b394ff72d
2018-08-23 17:29:39 +03:00
Gerasimos (Makis) Maropoulos
b019a281eb New ':int64' and ':uint64' route path parameters - and - support the new uint64 for MVC (int64 was already supported there) - and - add ctx.Params().GetUint64 (GetInt64 was already there) - and - make the ':int or :number' to accept negative numbers with no digit limit (at low level) and rename the 'app.Macros().Int.RegisterFunc' to 'Number.RegisterFunc' because number can be any type of number not only standard go type limited - and - add alias for ':boolean' -> ':bool'. Finally, Update the examples but not the version yet, I have to provide a good README table to explain the end-developers how they can benefit by those changes and why the breaking change (which is to accept negative numbers via ':int') is for their own good and how they can make their own macro functions so they do not depend on the Iris builtn macro funcs only. More to come tomorrow, stay tuned
Former-commit-id: 3601abfc89478185afec3594375080778214283e
2018-08-23 06:30:12 +03:00
Gerasimos (Makis) Maropoulos
20c0bbe9ba Release stable version 10.7 - HISTORY.md#sat-11-august-2018--v1070
I want to thank you once again for the unwavering support and trust you have shown me


Former-commit-id: fa0be6bf5ca2f04e03e452f8cca75a0a7be0b487
2018-08-11 23:58:49 +03:00
Gerasimos (Makis) Maropoulos
43fd73eab9 internals: core/router/api_builder_benchmark_test.go: replace the strings.Builder(go 1.10+) with the bytes.Buffer, it is a test so we are ok let it build and run for go1.10- as well
Former-commit-id: a531db90fe02fd327e12ecc20128090e18b3dbcb
2018-08-07 13:05:32 +03:00
Gerasimos (Makis) Maropoulos
55e4cf038e add example for hero *sessions.Session dependency which is used on an index route outside of the main package, it is as easy as it shown. Added mostly after the issue: https://github.com/kataras/iris/issues/1057 -- have fun
Former-commit-id: 93338d0e03d6be885edf783c09a2c181568e9ec5
2018-08-07 12:43:51 +03:00
Gerasimos (Makis) Maropoulos
293c29d6e7 preparing for the Iris control panel -- stay tuned when you hear my new project name 'cornea'
Former-commit-id: 8c0ada865ee17801efe90b197bf49bdbd55f636b
2018-08-06 04:20:59 +03:00
Gerasimos (Makis) Maropoulos
e5f6bce86f examples: writing an API for the Apache Kafka: add a root handler for routes documentation to make navigation easier and add some other methods that may find them useful for request state and routes description
Former-commit-id: 3775aab2386051b23e127ccc9e3a6accdfdee6d0
2018-08-05 13:51:05 +03:00
Gerasimos (Makis) Maropoulos
cd5109ae0e Iris + WebAssemply = = 💓
Former-commit-id: 44f08f112cfba8006d2a6fe34e32b24e5c246856
2018-07-09 09:13:36 +03:00
Gerasimos Maropoulos
94b93484b5 Update to version 10.6.5: 1 New Feature And Indonesia Translation | Read HISTORY.md
Former-commit-id: 4788e36e52f6b40c7e15120e0675c097eabf0f0d
2018-05-21 07:40:43 +03:00
Gerasimos Maropoulos
0fc4436da6 fix https://github.com/kataras/iris/issues/995
Former-commit-id: 7f743e18c1202eaa19062ca4304611194a10962c
2018-05-07 16:49:17 +03:00
wozz
21a31afb55 Update handler.go
Former-commit-id: f6bd29025c97d04b058584fecb8e0fee91021cb1
2018-04-20 16:56:12 -07:00
wozz
923d151190 Fix open redirect
Fix open redirect by using strings.Trim.

Another option would be to use path.Clean similar to here, but I'm unsure of side effects that may have for this use case: https://github.com/golang/go/blob/master/src/net/http/server.go#L2034

See a PoC of this issue with this link: https://iris-go.com//google.com/

Former-commit-id: fa422e436353a7e0699f0b346f3679455c5d965b
2018-04-20 16:49:30 -07:00
Gerasimos Maropoulos
8e9deec4ab Add one more browser (and 304 server) cache method using ETag and If-None-Match headers
And replace the 'ctx.WriteWithExpiration' with simple 'ctx.Write' at 'StaticEmbeddedHandler' of core/router/fs.go, now that we have plenty of options for client cache give the end-dev the oportunity to use them or not on static embedded handlers


Former-commit-id: 9c9e2f3de3c5ad8c9e14e453b67e6b649b02bde8
2018-03-18 11:55:05 +02:00
Gerasimos Maropoulos
bc45e6444c Cleanup of some old code
Remove the StaticCacheDuration unused package-level variable from context/context.go and /core/router/api_builder.go it should be removed a year ago, now all the cache funcs and middlewares accept their own options |  Remove duplicated header keys that are used on both context/context.go and core/router/fs.go by exporting context's one.


Former-commit-id: 2a5c840d26b32144d2b5b3173a1e4bb4324cecba
2018-03-17 02:27:25 +02:00
Gerasimos Maropoulos
8cec6a6f9b remove any trailing slash that may passed on StaticEmbeddedHandler (although all examples shows the correct way but you never know)
Former-commit-id: 50ab9ddb2e738b4061622ac9ebcfec30e0cdecfa
2018-03-16 12:38:13 +02:00
Gerasimos Maropoulos
87036fdb6c add the new StaticEmbeddedGzip on the Party interface, it works within multiple levels like the StaticEmbedded, so why not
Former-commit-id: f62c863344a06277935730449d5466fecbc64993
2018-03-15 23:15:10 +02:00
Gerasimos Maropoulos
2d8652d7fb fix miss content type occurred by commenting this on the previous commit
Former-commit-id: 3320cf863da92cb70f74b046a6a2475f83728932
2018-03-15 22:46:23 +02:00
Gerasimos Maropoulos
56215eeb71 Release of version 10.4.0 - x8 faster embedded file server | Star and Read HISTORY.md
Former-commit-id: 4f8b8c95c1b107a9be3b1ef6835ece949a75ceb6
2018-03-14 07:17:35 +02:00
Gerasimos Maropoulos
5e5e91e4bb fix https://github.com/kataras/iris/issues/927
Former-commit-id: 7de62d36b7927d790f5af0c1e64713e0a78d12c5
2018-03-13 15:57:52 +02:00
Gerasimos Maropoulos
4993918a12 remove the complicated fallback handlers, that didn't work and not approve the coblexity addition of the https://github.com/kataras/iris/pull/919, RouteExists accepts first argument the Context, add new AllowMethods per party and fix cors by 048e2be034 https://github.com/kataras/iris/issues/922, rel: https://github.com/iris-contrib/middleware/issues/36, https://github.com/iris-contrib/middleware/issues/34, https://github.com/iris-contrib/middleware/issues/32, https://github.com/iris-contrib/middleware/issues/30, https://github.com/kataras/iris/pull/909
Former-commit-id: 5576c44b64014fb00dd79e618b815b5f52b705e4
2018-03-10 14:22:56 +02:00
Gerasimos Maropoulos
1165b4527a fix https://github.com/kataras/iris/issues/921
Former-commit-id: f8560514a7b48f83121ddd21d74b4016af4e1b67
2018-03-08 20:55:58 +02:00
Gerasimos Maropoulos
6de64d517e New: context#NextOr && context#NextOrNotFound and some performance improvements on the awesome https://github.com/kataras/iris/pull/909 pushed a while ago
Former-commit-id: 35dd2ab80b69a5bea6f35f58e636bc11229d9921
2018-02-23 04:06:05 +02:00
ZaniaDevelopper
643358d7cb Modification
- Add configurator for Party
- Modification for CORS middleware example

Former-commit-id: f01c01d4eac41666a92890461851909a6ade018b
2018-02-21 14:22:17 +03:00
Frédéric Meyer
72b096e156 Add fallback handlers
Former-commit-id: f7e9bd17076a10e1ed1702780d7ce9e89f00b592
2018-02-21 12:27:01 +03:00
Frédéric Meyer
66209cae4f Save
Former-commit-id: 592e9cddf3511fc08e87f19ad39fdaac479b453f
2018-02-21 08:18:53 +03:00
Gerasimos (Makis) Maropoulos
d4993e6a3f Update to version 10.2.1 - fix StaticEmbedded & StaticWeb when served from a subdomain. Read https://github.com/kataras/iris/blob/master/HISTORY.md#th-15-february-2018--v1021
Former-commit-id: 9bc3ed63fadbb4fb38abef06115b5d6d760256f0
2018-02-15 13:01:13 +02:00
Gerasimos (Makis) Maropoulos
9cdae4ee67 Update to version 10.2.0. Read: https://github.com/kataras/iris/blob/master/HISTORY.md#th-08-february-2018--v1020
Former-commit-id: 2eb94ec0f565b80790784ac55af024429384b3d3
2018-02-08 14:04:39 +02:00
Gerasimos (Makis) Maropoulos
5fa306d69d Update to version 10.1.0. Happy February to Everyone!!
Former-commit-id: 9c2a95f10c7299d21085d9d5cb4f1327f917123d
2018-02-06 12:38:02 +02:00
Gerasimos (Makis) Maropoulos
019911237c add context#StatusCodeNotSuccessful for customize even the most customized clients that are not compatible with the standards and fix the SPA if static file serve handlers are passed as its AssetHandler as reported at the chat.iris-go.com
Former-commit-id: ccd0815a09b9305bfbeaad7b46559dd86f34f20b
2018-01-31 02:35:22 +02:00
Gerasimos (Makis) Maropoulos
969c2e87d4 add Cache304 as an alternative to the server-side kataras/iris/cache middleware - it can perform better with less server overheat but it comes with a cost of 304 instead of 200 so custom clients must make that check
Former-commit-id: b0ba68c528c870fe060e2825c35689771a1d3680
2018-01-25 16:19:45 +02:00
Gerasimos (Makis) Maropoulos
befb1f0c08 some major improvements to the (server-side) cache middleware and an example of a client-side responsibility cache
Former-commit-id: 93d3a7a6f163c6d49f315f86d10e63f7b1b1d93a
2018-01-25 15:09:24 +02:00
Gerasimos (Makis) Maropoulos
bf13f7648a add vscode extension link and badge | Some internal improvements (not completed yet)
Former-commit-id: 9bc94e90a2780ee81f8188509d98063fb3f2924b
2018-01-25 03:16:49 +02:00