diff options
author | Loïc Hoguin <[email protected]> | 2016-08-29 12:39:49 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2016-08-29 12:40:03 +0200 |
commit | c807880f7ac73f813b2660ea81a00f7712a4e793 (patch) | |
tree | ba1d09e9b177f230665a80513b33fbd532000ce4 /archives/extend/2014-July | |
parent | b1df25a7d9cda697513650659b781b55b40898f8 (diff) | |
download | ninenines.eu-c807880f7ac73f813b2660ea81a00f7712a4e793.tar.gz ninenines.eu-c807880f7ac73f813b2660ea81a00f7712a4e793.tar.bz2 ninenines.eu-c807880f7ac73f813b2660ea81a00f7712a4e793.zip |
Add old mailing list archives
Diffstat (limited to 'archives/extend/2014-July')
-rw-r--r-- | archives/extend/2014-July/000405.html | 67 | ||||
-rw-r--r-- | archives/extend/2014-July/000406.html | 81 | ||||
-rw-r--r-- | archives/extend/2014-July/000407.html | 93 | ||||
-rw-r--r-- | archives/extend/2014-July/000408.html | 104 | ||||
-rw-r--r-- | archives/extend/2014-July/000409.html | 126 | ||||
-rw-r--r-- | archives/extend/2014-July/000410.html | 145 | ||||
-rw-r--r-- | archives/extend/2014-July/000411.html | 74 | ||||
-rw-r--r-- | archives/extend/2014-July/000412.html | 80 | ||||
-rw-r--r-- | archives/extend/2014-July/000413.html | 97 | ||||
-rw-r--r-- | archives/extend/2014-July/000414.html | 119 | ||||
-rw-r--r-- | archives/extend/2014-July/000415.html | 85 | ||||
-rw-r--r-- | archives/extend/2014-July/000416.html | 94 | ||||
-rw-r--r-- | archives/extend/2014-July/author.html | 107 | ||||
-rw-r--r-- | archives/extend/2014-July/date.html | 107 | ||||
-rw-r--r-- | archives/extend/2014-July/index.html | 133 | ||||
-rw-r--r-- | archives/extend/2014-July/subject.html | 107 | ||||
-rw-r--r-- | archives/extend/2014-July/thread.html | 133 |
17 files changed, 1752 insertions, 0 deletions
diff --git a/archives/extend/2014-July/000405.html b/archives/extend/2014-July/000405.html new file mode 100644 index 00000000..5d219b5e --- /dev/null +++ b/archives/extend/2014-July/000405.html @@ -0,0 +1,67 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] tring to understand ranch_conns_sup + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20tring%20to%20understand%20ranch_conns_sup&In-Reply-To=%3Cop.xievlal52w9y7f%40zgc-201309221420%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + + <LINK REL="Next" HREF="000406.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] tring to understand ranch_conns_sup</H1> + <B>Adel Zhang</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20tring%20to%20understand%20ranch_conns_sup&In-Reply-To=%3Cop.xievlal52w9y7f%40zgc-201309221420%3E" + TITLE="[99s-extend] tring to understand ranch_conns_sup">adelzhang at qq.com + </A><BR> + <I>Thu Jul 3 09:40:12 CEST 2014</I> + <P><UL> + + <LI>Next message: <A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#405">[ date ]</a> + <a href="thread.html#405">[ thread ]</a> + <a href="subject.html#405">[ subject ]</a> + <a href="author.html#405">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Ranch uses a tcp acceptor pool to accept connections concurrently. But the +acceptor process +needs to wait for the *only one* ranch_conns_sup spawning the protocol +process. + +Is ranch_conns_sup maybe a bottleneck? + +Thanks. +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + + <LI>Next message: <A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#405">[ date ]</a> + <a href="thread.html#405">[ thread ]</a> + <a href="subject.html#405">[ subject ]</a> + <a href="author.html#405">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000406.html b/archives/extend/2014-July/000406.html new file mode 100644 index 00000000..dc7d3c25 --- /dev/null +++ b/archives/extend/2014-July/000406.html @@ -0,0 +1,81 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] tring to understand ranch_conns_sup + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20tring%20to%20understand%20ranch_conns_sup&In-Reply-To=%3C53B50C61.9050601%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000405.html"> + <LINK REL="Next" HREF="000407.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] tring to understand ranch_conns_sup</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20tring%20to%20understand%20ranch_conns_sup&In-Reply-To=%3C53B50C61.9050601%40ninenines.eu%3E" + TITLE="[99s-extend] tring to understand ranch_conns_sup">essen at ninenines.eu + </A><BR> + <I>Thu Jul 3 09:55:13 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000405.html">[99s-extend] tring to understand ranch_conns_sup +</A></li> + <LI>Next message: <A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#406">[ date ]</a> + <a href="thread.html#406">[ thread ]</a> + <a href="subject.html#406">[ subject ]</a> + <a href="author.html#406">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Have you observed ranch_conns_sup be a bottleneck? In practice it +shouldn't be. + +On 07/03/2014 09:40 AM, Adel Zhang wrote: +><i> Ranch uses a tcp acceptor pool to accept connections concurrently. But +</I>><i> the acceptor process +</I>><i> needs to wait for the *only one* ranch_conns_sup spawning the protocol +</I>><i> process. +</I>><i> +</I>><i> Is ranch_conns_sup maybe a bottleneck? +</I>><i> +</I>><i> Thanks. +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000405.html">[99s-extend] tring to understand ranch_conns_sup +</A></li> + <LI>Next message: <A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#406">[ date ]</a> + <a href="thread.html#406">[ thread ]</a> + <a href="subject.html#406">[ subject ]</a> + <a href="author.html#406">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000407.html b/archives/extend/2014-July/000407.html new file mode 100644 index 00000000..87466ece --- /dev/null +++ b/archives/extend/2014-July/000407.html @@ -0,0 +1,93 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] [cowboy REST] returning {true, URL} to PUT + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3CCAH2nEUgJj1f8_RnXqeKqB1tFaDh%3DqzztOo9XF94S9auQ93dskg%40mail.gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000406.html"> + <LINK REL="Next" HREF="000408.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] [cowboy REST] returning {true, URL} to PUT</H1> + <B>Samuel</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3CCAH2nEUgJj1f8_RnXqeKqB1tFaDh%3DqzztOo9XF94S9auQ93dskg%40mail.gmail.com%3E" + TITLE="[99s-extend] [cowboy REST] returning {true, URL} to PUT">samuelrivas at gmail.com + </A><BR> + <I>Tue Jul 8 09:12:43 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A></li> + <LI>Next message: <A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#407">[ date ]</a> + <a href="thread.html#407">[ thread ]</a> + <a href="subject.html#407">[ subject ]</a> + <a href="author.html#407">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Hi, + +According to the documentation I should be able to return a new +location when handling a PUT request when using cowboy_rest protocol: + + The AcceptResource value is the name of the callback that will be +called if the + content-type matches. It is defined as follow. + + Value type: true | {true, URL} | false + +That works for "true" and "false" but not for "{true, URL}", in that +case the Ranch listener crashes badly[1]. + +Looking into cowboy_rest.erl I see that the {true, URL} form is +restricted to POST requests: +<A HREF="https://github.com/extend/cowboy/blob/master/src/cowboy_rest.erl#L784">https://github.com/extend/cowboy/blob/master/src/cowboy_rest.erl#L784</A> + +Is that intentional or should I submit a patch to add at least PUT and +PATCH to that condition (or remove all of them if that is not guarding +against something horrible)? + +Regards + +[1] Ranch crash log: +Ranch listener http_acceptor had connection process started with +cowboy_protocol:start_link/4 at <0.2660.0> exit with reason: +{{case_clause,{{true,"/url"},{http_req,#Port<0.15864>,ranch_tcp,keepalive,<0.2660.0>,<<"PUT">>,'HTTP/1.1',{{127,0,0,1},56983},<<"localhost">>,undefined,8080,<<"/order">>,undefined,<<>>,undefined,[],[{<<"user-agent">>,<<"curl/7.22.0 +(x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 +libidn/1.23 librtmp/2.3">>},{<<"host">>,<<"localhost:8080">>},{<<"accept">>,<<"*/*">>},{<<"content-type">>,<<"application/json">>}],[{<<"content-type">>,{<<"application">>,<<"json">>,[]}},{<<"if-modified-since">>,undefined},{<<"if-none-match">>,undefined},{<<"if-unmodified-since">>,undefined},{<<"if-match">>,undefined},{<<"accept">>,[{{<<"*">>,<<"*">>,[]},1000,[]}]}],undefined,[{charset,undefined},{media_type,{<<"text">>,<<"html">>,[]}}],waiting,undefined,<<>>,false,waiting,[{<<"content-type">>,[<<"text">>,<<"/">>,<<"html">>,<<>>]}],<<>>,undefined},{state}}},[{cowboy_rest,process_content_type,3,[{file,"src/cowboy_rest.erl"},{line,780}]},{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,529}]}]} +-- +Samuel +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A></li> + <LI>Next message: <A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#407">[ date ]</a> + <a href="thread.html#407">[ thread ]</a> + <a href="subject.html#407">[ subject ]</a> + <a href="author.html#407">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000408.html b/archives/extend/2014-July/000408.html new file mode 100644 index 00000000..2edee0bc --- /dev/null +++ b/archives/extend/2014-July/000408.html @@ -0,0 +1,104 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] [cowboy REST] returning {true, URL} to PUT + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3C53BBC078.80006%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000407.html"> + <LINK REL="Next" HREF="000409.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] [cowboy REST] returning {true, URL} to PUT</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3C53BBC078.80006%40ninenines.eu%3E" + TITLE="[99s-extend] [cowboy REST] returning {true, URL} to PUT">essen at ninenines.eu + </A><BR> + <I>Tue Jul 8 11:57:12 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#408">[ date ]</a> + <a href="thread.html#408">[ thread ]</a> + <a href="subject.html#408">[ subject ]</a> + <a href="author.html#408">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>It's not enabled for PATCH or PUT because it makes little sense for +them. PATCH and PUT are typically used directly on the URI of the +resource, even when creating it. While you can return a "better URI" for +the created resource for them, this should be seen as a special case +rather than the norm. You can still do it by setting the location header +manually and Cowboy will react accordingly. + +On 07/08/2014 09:12 AM, Samuel wrote: +><i> Hi, +</I>><i> +</I>><i> According to the documentation I should be able to return a new +</I>><i> location when handling a PUT request when using cowboy_rest protocol: +</I>><i> +</I>><i> The AcceptResource value is the name of the callback that will be +</I>><i> called if the +</I>><i> content-type matches. It is defined as follow. +</I>><i> +</I>><i> Value type: true | {true, URL} | false +</I>><i> +</I>><i> That works for "true" and "false" but not for "{true, URL}", in that +</I>><i> case the Ranch listener crashes badly[1]. +</I>><i> +</I>><i> Looking into cowboy_rest.erl I see that the {true, URL} form is +</I>><i> restricted to POST requests: +</I>><i> <A HREF="https://github.com/extend/cowboy/blob/master/src/cowboy_rest.erl#L784">https://github.com/extend/cowboy/blob/master/src/cowboy_rest.erl#L784</A> +</I>><i> +</I>><i> Is that intentional or should I submit a patch to add at least PUT and +</I>><i> PATCH to that condition (or remove all of them if that is not guarding +</I>><i> against something horrible)? +</I>><i> +</I>><i> Regards +</I>><i> +</I>><i> [1] Ranch crash log: +</I>><i> Ranch listener http_acceptor had connection process started with +</I>><i> cowboy_protocol:start_link/4 at <0.2660.0> exit with reason: +</I>><i> {{case_clause,{{true,"/url"},{http_req,#Port<0.15864>,ranch_tcp,keepalive,<0.2660.0>,<<"PUT">>,'HTTP/1.1',{{127,0,0,1},56983},<<"localhost">>,undefined,8080,<<"/order">>,undefined,<<>>,undefined,[],[{<<"user-agent">>,<<"curl/7.22.0 +</I>><i> (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 +</I>><i> libidn/1.23 librtmp/2.3">>},{<<"host">>,<<"localhost:8080">>},{<<"accept">>,<<"*/*">>},{<<"content-type">>,<<"application/json">>}],[{<<"content-type">>,{<<"application">>,<<"json">>,[]}},{<<"if-modified-since">>,undefined},{<<"if-none-match">>,undefined},{<<"if-unmodified-since">>,undefined},{<<"if-match">>,undefined},{<<"accept">>,[{{<<"*">>,<<"*">>,[]},1000,[]}]}],undefined,[{charset,undefined},{media_type,{<<"text">>,<<"html">>,[]}}],waiting,undefined,<<>>,false,waiting,[{<<"content-type">>,[<<"text">>,<<"/">>,<<"html">>,<<>>]}],<<>>,undefined},{state}}},[{cowboy_rest,process_content_type,3,[{file,"src/cowboy_rest.erl"},{line,780}]},{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,529}]}]} +</I>><i> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#408">[ date ]</a> + <a href="thread.html#408">[ thread ]</a> + <a href="subject.html#408">[ subject ]</a> + <a href="author.html#408">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000409.html b/archives/extend/2014-July/000409.html new file mode 100644 index 00000000..5969aed9 --- /dev/null +++ b/archives/extend/2014-July/000409.html @@ -0,0 +1,126 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] [cowboy REST] returning {true, URL} to PUT + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3CCAH2nEUi9qkU4tjeYMNzQeppJ4me3p3z2UPqfSB-dQ6G4x_ExyA%40mail.gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000408.html"> + <LINK REL="Next" HREF="000410.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] [cowboy REST] returning {true, URL} to PUT</H1> + <B>Samuel</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3CCAH2nEUi9qkU4tjeYMNzQeppJ4me3p3z2UPqfSB-dQ6G4x_ExyA%40mail.gmail.com%3E" + TITLE="[99s-extend] [cowboy REST] returning {true, URL} to PUT">samuelrivas at gmail.com + </A><BR> + <I>Tue Jul 8 13:32:45 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#409">[ date ]</a> + <a href="thread.html#409">[ thread ]</a> + <a href="subject.html#409">[ subject ]</a> + <a href="author.html#409">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Ok, thanks. That should probably be mentioned in the documentation of +content_types_accepted, as it says {true, URI} is a valid output for +the provided function. + +Just out of curiosity from a non-so-expert in REST. The API spec +(which I am not the author of) says the PUT call should create a +resource with a unique id and return the URI of the created resource +in the Location header. That is something like PUT /some/resource +should return /some/resource/1234 in the Location. some/resource is +fixed but 1234 would be generated for each instance of /some/resource. +Is that considered nonsensical? + +On 8 July 2014 11:57, Loïc Hoguin <<A HREF="https://lists.ninenines.eu/listinfo/extend">essen at ninenines.eu</A>> wrote: +><i> It's not enabled for PATCH or PUT because it makes little sense for them. +</I>><i> PATCH and PUT are typically used directly on the URI of the resource, even +</I>><i> when creating it. While you can return a "better URI" for the created +</I>><i> resource for them, this should be seen as a special case rather than the +</I>><i> norm. You can still do it by setting the location header manually and Cowboy +</I>><i> will react accordingly. +</I>><i> +</I>><i> +</I>><i> On 07/08/2014 09:12 AM, Samuel wrote: +</I>>><i> +</I>>><i> Hi, +</I>>><i> +</I>>><i> According to the documentation I should be able to return a new +</I>>><i> location when handling a PUT request when using cowboy_rest protocol: +</I>>><i> +</I>>><i> The AcceptResource value is the name of the callback that will be +</I>>><i> called if the +</I>>><i> content-type matches. It is defined as follow. +</I>>><i> +</I>>><i> Value type: true | {true, URL} | false +</I>>><i> +</I>>><i> That works for "true" and "false" but not for "{true, URL}", in that +</I>>><i> case the Ranch listener crashes badly[1]. +</I>>><i> +</I>>><i> Looking into cowboy_rest.erl I see that the {true, URL} form is +</I>>><i> restricted to POST requests: +</I>>><i> <A HREF="https://github.com/extend/cowboy/blob/master/src/cowboy_rest.erl#L784">https://github.com/extend/cowboy/blob/master/src/cowboy_rest.erl#L784</A> +</I>>><i> +</I>>><i> Is that intentional or should I submit a patch to add at least PUT and +</I>>><i> PATCH to that condition (or remove all of them if that is not guarding +</I>>><i> against something horrible)? +</I>>><i> +</I>>><i> Regards +</I>>><i> +</I>>><i> [1] Ranch crash log: +</I>>><i> Ranch listener http_acceptor had connection process started with +</I>>><i> cowboy_protocol:start_link/4 at <0.2660.0> exit with reason: +</I>>><i> +</I>>><i> {{case_clause,{{true,"/url"},{http_req,#Port<0.15864>,ranch_tcp,keepalive,<0.2660.0>,<<"PUT">>,'HTTP/1.1',{{127,0,0,1},56983},<<"localhost">>,undefined,8080,<<"/order">>,undefined,<<>>,undefined,[],[{<<"user-agent">>,<<"curl/7.22.0 +</I>>><i> (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 +</I>>><i> libidn/1.23 +</I>>><i> librtmp/2.3">>},{<<"host">>,<<"localhost:8080">>},{<<"accept">>,<<"*/*">>},{<<"content-type">>,<<"application/json">>}],[{<<"content-type">>,{<<"application">>,<<"json">>,[]}},{<<"if-modified-since">>,undefined},{<<"if-none-match">>,undefined},{<<"if-unmodified-since">>,undefined},{<<"if-match">>,undefined},{<<"accept">>,[{{<<"*">>,<<"*">>,[]},1000,[]}]}],undefined,[{charset,undefined},{media_type,{<<"text">>,<<"html">>,[]}}],waiting,undefined,<<>>,false,waiting,[{<<"content-type">>,[<<"text">>,<<"/">>,<<"html">>,<<>>]}],<<>>,undefined},{state}}},[{cowboy_rest,process_content_type,3,[{file,"src/cowboy_rest.erl"},{line,780}]},{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,529}]}]} +</I>>><i> +</I>><i> +</I>><i> -- +</I>><i> Loïc Hoguin +</I>><i> <A HREF="http://ninenines.eu">http://ninenines.eu</A> +</I> + + +-- +Samuel +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#409">[ date ]</a> + <a href="thread.html#409">[ thread ]</a> + <a href="subject.html#409">[ subject ]</a> + <a href="author.html#409">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000410.html b/archives/extend/2014-July/000410.html new file mode 100644 index 00000000..0d3af068 --- /dev/null +++ b/archives/extend/2014-July/000410.html @@ -0,0 +1,145 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] [cowboy REST] returning {true, URL} to PUT + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3C53BBD908.6020909%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000409.html"> + <LINK REL="Next" HREF="000411.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] [cowboy REST] returning {true, URL} to PUT</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3C53BBD908.6020909%40ninenines.eu%3E" + TITLE="[99s-extend] [cowboy REST] returning {true, URL} to PUT">essen at ninenines.eu + </A><BR> + <I>Tue Jul 8 13:42:00 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#410">[ date ]</a> + <a href="thread.html#410">[ thread ]</a> + <a href="subject.html#410">[ subject ]</a> + <a href="author.html#410">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>That's what POST should do. + +Compare: + +PUT /some/resource/1234 -> no redirect needed +POST /some/resource -> creates /some/resource/1234, redirects + +If /some/resource is a collection then PUT on that collection is +supposed to replace it entirely. + +Again it's possible for PUT to create a resource elsewhere, but +typically the redirect would be from something like +<A HREF="http://api.yourservice.com/resource/1234">http://api.yourservice.com/resource/1234</A> to +<A HREF="http://cloudthingy.server137.yourservice.com/whatever/resource/1234">http://cloudthingy.server137.yourservice.com/whatever/resource/1234</A> and +not to do what POST is intended for. + +On 07/08/2014 01:32 PM, Samuel wrote: +><i> Ok, thanks. That should probably be mentioned in the documentation of +</I>><i> content_types_accepted, as it says {true, URI} is a valid output for +</I>><i> the provided function. +</I>><i> +</I>><i> Just out of curiosity from a non-so-expert in REST. The API spec +</I>><i> (which I am not the author of) says the PUT call should create a +</I>><i> resource with a unique id and return the URI of the created resource +</I>><i> in the Location header. That is something like PUT /some/resource +</I>><i> should return /some/resource/1234 in the Location. some/resource is +</I>><i> fixed but 1234 would be generated for each instance of /some/resource. +</I>><i> Is that considered nonsensical? +</I>><i> +</I>><i> On 8 July 2014 11:57, Loïc Hoguin <<A HREF="https://lists.ninenines.eu/listinfo/extend">essen at ninenines.eu</A>> wrote: +</I>>><i> It's not enabled for PATCH or PUT because it makes little sense for them. +</I>>><i> PATCH and PUT are typically used directly on the URI of the resource, even +</I>>><i> when creating it. While you can return a "better URI" for the created +</I>>><i> resource for them, this should be seen as a special case rather than the +</I>>><i> norm. You can still do it by setting the location header manually and Cowboy +</I>>><i> will react accordingly. +</I>>><i> +</I>>><i> +</I>>><i> On 07/08/2014 09:12 AM, Samuel wrote: +</I>>>><i> +</I>>>><i> Hi, +</I>>>><i> +</I>>>><i> According to the documentation I should be able to return a new +</I>>>><i> location when handling a PUT request when using cowboy_rest protocol: +</I>>>><i> +</I>>>><i> The AcceptResource value is the name of the callback that will be +</I>>>><i> called if the +</I>>>><i> content-type matches. It is defined as follow. +</I>>>><i> +</I>>>><i> Value type: true | {true, URL} | false +</I>>>><i> +</I>>>><i> That works for "true" and "false" but not for "{true, URL}", in that +</I>>>><i> case the Ranch listener crashes badly[1]. +</I>>>><i> +</I>>>><i> Looking into cowboy_rest.erl I see that the {true, URL} form is +</I>>>><i> restricted to POST requests: +</I>>>><i> <A HREF="https://github.com/extend/cowboy/blob/master/src/cowboy_rest.erl#L784">https://github.com/extend/cowboy/blob/master/src/cowboy_rest.erl#L784</A> +</I>>>><i> +</I>>>><i> Is that intentional or should I submit a patch to add at least PUT and +</I>>>><i> PATCH to that condition (or remove all of them if that is not guarding +</I>>>><i> against something horrible)? +</I>>>><i> +</I>>>><i> Regards +</I>>>><i> +</I>>>><i> [1] Ranch crash log: +</I>>>><i> Ranch listener http_acceptor had connection process started with +</I>>>><i> cowboy_protocol:start_link/4 at <0.2660.0> exit with reason: +</I>>>><i> +</I>>>><i> {{case_clause,{{true,"/url"},{http_req,#Port<0.15864>,ranch_tcp,keepalive,<0.2660.0>,<<"PUT">>,'HTTP/1.1',{{127,0,0,1},56983},<<"localhost">>,undefined,8080,<<"/order">>,undefined,<<>>,undefined,[],[{<<"user-agent">>,<<"curl/7.22.0 +</I>>>><i> (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 +</I>>>><i> libidn/1.23 +</I>>>><i> librtmp/2.3">>},{<<"host">>,<<"localhost:8080">>},{<<"accept">>,<<"*/*">>},{<<"content-type">>,<<"application/json">>}],[{<<"content-type">>,{<<"application">>,<<"json">>,[]}},{<<"if-modified-since">>,undefined},{<<"if-none-match">>,undefined},{<<"if-unmodified-since">>,undefined},{<<"if-match">>,undefined},{<<"accept">>,[{{<<"*">>,<<"*">>,[]},1000,[]}]}],undefined,[{charset,undefined},{media_type,{<<"text">>,<<"html">>,[]}}],waiting,undefined,<<>>,false,waiting,[{<<"content-type">>,[<<"text">>,<<"/">>,<<"html">>,<<>>]}],<<>>,undefined},{state}}},[{cowboy_rest,process_content_type,3,[{file,"src/cowboy_rest.erl"},{line,780}]},{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,529}]}]} +</I>>>><i> +</I>>><i> +</I>>><i> -- +</I>>><i> Loïc Hoguin +</I>>><i> <A HREF="http://ninenines.eu">http://ninenines.eu</A> +</I>><i> +</I>><i> +</I>><i> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#410">[ date ]</a> + <a href="thread.html#410">[ thread ]</a> + <a href="subject.html#410">[ subject ]</a> + <a href="author.html#410">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000411.html b/archives/extend/2014-July/000411.html new file mode 100644 index 00000000..3e699a09 --- /dev/null +++ b/archives/extend/2014-July/000411.html @@ -0,0 +1,74 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] [cowboy REST] returning {true, URL} to PUT + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3CCAH2nEUhEWO8AOHBa6WJJaN6jch5FzASAq7NUyQG3U9b4dKeTow%40mail.gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000410.html"> + <LINK REL="Next" HREF="000412.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] [cowboy REST] returning {true, URL} to PUT</H1> + <B>Samuel</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20%5Bcowboy%20REST%5D%20returning%20%7Btrue%2C%20URL%7D%20to%20PUT&In-Reply-To=%3CCAH2nEUhEWO8AOHBa6WJJaN6jch5FzASAq7NUyQG3U9b4dKeTow%40mail.gmail.com%3E" + TITLE="[99s-extend] [cowboy REST] returning {true, URL} to PUT">samuelrivas at gmail.com + </A><BR> + <I>Tue Jul 8 13:49:35 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#411">[ date ]</a> + <a href="thread.html#411">[ thread ]</a> + <a href="subject.html#411">[ subject ]</a> + <a href="author.html#411">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>><i> Compare: +</I>><i> +</I>><i> PUT /some/resource/1234 -> no redirect needed +</I>><i> POST /some/resource -> creates /some/resource/1234, redirects +</I>><i> +</I>><i> If /some/resource is a collection then PUT on that collection is supposed to +</I>><i> replace it entirely. +</I> +Great, thanks for the explanation. I'll try to discuss that with the +authors of the API + +-- +Samuel +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#411">[ date ]</a> + <a href="thread.html#411">[ thread ]</a> + <a href="subject.html#411">[ subject ]</a> + <a href="author.html#411">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000412.html b/archives/extend/2014-July/000412.html new file mode 100644 index 00000000..257bd622 --- /dev/null +++ b/archives/extend/2014-July/000412.html @@ -0,0 +1,80 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] HTTP Basic Auth base64 decode fails + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20HTTP%20Basic%20Auth%20base64%20decode%20fails&In-Reply-To=%3CCA%2BdV7cS%2B1dfOHFZrMyognVSbVEdX45Rf264ndo0N8nCb1BmnmA%40mail.gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000411.html"> + <LINK REL="Next" HREF="000413.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] HTTP Basic Auth base64 decode fails</H1> + <B>Paulo F. Oliveira</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20HTTP%20Basic%20Auth%20base64%20decode%20fails&In-Reply-To=%3CCA%2BdV7cS%2B1dfOHFZrMyognVSbVEdX45Rf264ndo0N8nCb1BmnmA%40mail.gmail.com%3E" + TITLE="[99s-extend] HTTP Basic Auth base64 decode fails">paulo.ferraz.oliveira at gmail.com + </A><BR> + <I>Tue Jul 8 15:17:32 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#412">[ date ]</a> + <a href="thread.html#412">[ thread ]</a> + <a href="subject.html#412">[ subject ]</a> + <a href="author.html#412">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Hello, y'all. + +I'm using HTTP Basic Auth in my API. While calling +cowboy_req:parse_header(<<"authorization>>", ... with an _invalid_ +Authorization header such as "Authorization: Basic Test1" I get an error +500 back and an error log message on the server. + +1. Is this the expected behavior? [if I understand correctly, my request is +going through authorization(UserPass, Type = <<"basic">>) and this has no +check for the string being correctly encoded] + +2. what would be the best way to guard against this "error"? + +Thanks. + +- Paulo F. Oliveira +-------------- next part -------------- +An HTML attachment was scrubbed... +URL: <<A HREF="http://lists.ninenines.eu/archives/extend/attachments/20140708/35d8806d/attachment.html">http://lists.ninenines.eu/archives/extend/attachments/20140708/35d8806d/attachment.html</A>> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A></li> + <LI>Next message: <A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#412">[ date ]</a> + <a href="thread.html#412">[ thread ]</a> + <a href="subject.html#412">[ subject ]</a> + <a href="author.html#412">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000413.html b/archives/extend/2014-July/000413.html new file mode 100644 index 00000000..febfd6af --- /dev/null +++ b/archives/extend/2014-July/000413.html @@ -0,0 +1,97 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] HTTP Basic Auth base64 decode fails + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20HTTP%20Basic%20Auth%20base64%20decode%20fails&In-Reply-To=%3C53BBF058.3090103%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000412.html"> + <LINK REL="Next" HREF="000414.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] HTTP Basic Auth base64 decode fails</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20HTTP%20Basic%20Auth%20base64%20decode%20fails&In-Reply-To=%3C53BBF058.3090103%40ninenines.eu%3E" + TITLE="[99s-extend] HTTP Basic Auth base64 decode fails">essen at ninenines.eu + </A><BR> + <I>Tue Jul 8 15:21:28 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI>Next message: <A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#413">[ date ]</a> + <a href="thread.html#413">[ thread ]</a> + <a href="subject.html#413">[ subject ]</a> + <a href="author.html#413">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Parsing of any header may crash. Some may also return an error tuple, +though that behavior slowly changes and it will always crash in 2.0. So +just wrap the call around a try/catch if you need to handle the error. + +Note that at this exact moment I'm working on returning 400 instead of +500 automatically when parsing headers end up crashing (and possibly +other situations later on). + +On 07/08/2014 03:17 PM, Paulo F. Oliveira wrote: +><i> Hello, y'all. +</I>><i> +</I>><i> I'm using HTTP Basic Auth in my API. While calling +</I>><i> cowboy_req:parse_header(<<"authorization>>", ... with an _invalid_ +</I>><i> Authorization header such as "Authorization: Basic Test1" I get an error +</I>><i> 500 back and an error log message on the server. +</I>><i> +</I>><i> 1. Is this the expected behavior? [if I understand correctly, my request +</I>><i> is going through authorization(UserPass, Type = <<"basic">>) and this +</I>><i> has no check for the string being correctly encoded] +</I>><i> +</I>><i> 2. what would be the best way to guard against this "error"? +</I>><i> +</I>><i> Thanks. +</I>><i> +</I>><i> - Paulo F. Oliveira +</I>><i> +</I>><i> +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I>><i> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI>Next message: <A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#413">[ date ]</a> + <a href="thread.html#413">[ thread ]</a> + <a href="subject.html#413">[ subject ]</a> + <a href="author.html#413">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000414.html b/archives/extend/2014-July/000414.html new file mode 100644 index 00000000..ff4a8266 --- /dev/null +++ b/archives/extend/2014-July/000414.html @@ -0,0 +1,119 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] HTTP Basic Auth base64 decode fails + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20HTTP%20Basic%20Auth%20base64%20decode%20fails&In-Reply-To=%3CCA%2BdV7cRxf-uKJKx-xPhKcm6TXXKLc4H3OVOC2GVQy58V5nASzg%40mail.gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000413.html"> + <LINK REL="Next" HREF="000415.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] HTTP Basic Auth base64 decode fails</H1> + <B>Paulo F. Oliveira</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20HTTP%20Basic%20Auth%20base64%20decode%20fails&In-Reply-To=%3CCA%2BdV7cRxf-uKJKx-xPhKcm6TXXKLc4H3OVOC2GVQy58V5nASzg%40mail.gmail.com%3E" + TITLE="[99s-extend] HTTP Basic Auth base64 decode fails">paulo.ferraz.oliveira at gmail.com + </A><BR> + <I>Tue Jul 8 15:25:58 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI>Next message: <A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#414">[ date ]</a> + <a href="thread.html#414">[ thread ]</a> + <a href="subject.html#414">[ subject ]</a> + <a href="author.html#414">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Great, thanks. + +I saw some changes "from 422 to 400" in recent versions (PUT and POST). +Thanks for the heads up. As long as they're document, no harm shall come of +these changes. + +In any case, if I see it happen very often live I'll "protect" it agains +the _bad_ header :-). + +Cheers. + +- Paulo F. Oliveira + + +On 8 July 2014 14:21, Loïc Hoguin <<A HREF="https://lists.ninenines.eu/listinfo/extend">essen at ninenines.eu</A>> wrote: + +><i> Parsing of any header may crash. Some may also return an error tuple, +</I>><i> though that behavior slowly changes and it will always crash in 2.0. So +</I>><i> just wrap the call around a try/catch if you need to handle the error. +</I>><i> +</I>><i> Note that at this exact moment I'm working on returning 400 instead of 500 +</I>><i> automatically when parsing headers end up crashing (and possibly other +</I>><i> situations later on). +</I>><i> +</I>><i> +</I>><i> On 07/08/2014 03:17 PM, Paulo F. Oliveira wrote: +</I>><i> +</I>>><i> Hello, y'all. +</I>>><i> +</I>>><i> I'm using HTTP Basic Auth in my API. While calling +</I>>><i> cowboy_req:parse_header(<<"authorization>>", ... with an _invalid_ +</I>>><i> Authorization header such as "Authorization: Basic Test1" I get an error +</I>>><i> 500 back and an error log message on the server. +</I>>><i> +</I>>><i> 1. Is this the expected behavior? [if I understand correctly, my request +</I>>><i> is going through authorization(UserPass, Type = <<"basic">>) and this +</I>>><i> has no check for the string being correctly encoded] +</I>>><i> +</I>>><i> 2. what would be the best way to guard against this "error"? +</I>>><i> +</I>>><i> Thanks. +</I>>><i> +</I>>><i> - Paulo F. Oliveira +</I>>><i> +</I>>><i> +</I>>><i> _______________________________________________ +</I>>><i> Extend mailing list +</I>>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I>>><i> +</I>>><i> +</I>><i> -- +</I>><i> Loïc Hoguin +</I>><i> <A HREF="http://ninenines.eu">http://ninenines.eu</A> +</I>><i> +</I>-------------- next part -------------- +An HTML attachment was scrubbed... +URL: <<A HREF="http://lists.ninenines.eu/archives/extend/attachments/20140708/497ef9a1/attachment.html">http://lists.ninenines.eu/archives/extend/attachments/20140708/497ef9a1/attachment.html</A>> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI>Next message: <A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#414">[ date ]</a> + <a href="thread.html#414">[ thread ]</a> + <a href="subject.html#414">[ subject ]</a> + <a href="author.html#414">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000415.html b/archives/extend/2014-July/000415.html new file mode 100644 index 00000000..a9760d05 --- /dev/null +++ b/archives/extend/2014-July/000415.html @@ -0,0 +1,85 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] couldn't quit in Erlang 17.1 + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20couldn%27t%20quit%20in%20Erlang%2017.1&In-Reply-To=%3C5E6EEC48-13CF-48A9-BD48-DC339D93B75D%40gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000414.html"> + <LINK REL="Next" HREF="000416.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] couldn't quit in Erlang 17.1</H1> + <B>chaehb</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20couldn%27t%20quit%20in%20Erlang%2017.1&In-Reply-To=%3C5E6EEC48-13CF-48A9-BD48-DC339D93B75D%40gmail.com%3E" + TITLE="[99s-extend] couldn't quit in Erlang 17.1">chaehb at gmail.com + </A><BR> + <I>Sat Jul 26 09:06:15 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI>Next message: <A HREF="000416.html">[99s-extend] couldn't quit in Erlang 17.1 +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#415">[ date ]</a> + <a href="thread.html#415">[ thread ]</a> + <a href="subject.html#415">[ subject ]</a> + <a href="author.html#415">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Hi, everybody. + +After Erlang updated to 17.1, +when I run q(). command on erlang console, cowboy couldn't quitted but print series of messages.. + +(after ok signal printed) + +…... +=ERROR REPORT==== 26-Jul-2014::15:23:33 === +Error in process <0.334.0> on node ‘...my node name...' with exit value: {{case_clause,{error,closed}},[{ranch_acceptor,loop,3,[{file,"src/ranch_acceptor.erl"},{line,28}]}]} +…. + +Before erlang updated (in 17.0), application could be normally quitted exactly same codes and environments. + +This is only appeared when I only use ssl(https). +But when use only http with same dispatch rules, cowboy normally quitted. + +What’s wrong? or Normal ? + +my environment : +OS : Mac OS X Mavricks +Erlang/OTP : 17.1 from Homebrew +release tool : relx +Cowboy and others : latest +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A></li> + <LI>Next message: <A HREF="000416.html">[99s-extend] couldn't quit in Erlang 17.1 +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#415">[ date ]</a> + <a href="thread.html#415">[ thread ]</a> + <a href="subject.html#415">[ subject ]</a> + <a href="author.html#415">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/000416.html b/archives/extend/2014-July/000416.html new file mode 100644 index 00000000..ec773f76 --- /dev/null +++ b/archives/extend/2014-July/000416.html @@ -0,0 +1,94 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] couldn't quit in Erlang 17.1 + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20couldn%27t%20quit%20in%20Erlang%2017.1&In-Reply-To=%3C53D4C59E.2010909%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000415.html"> + + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] couldn't quit in Erlang 17.1</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20couldn%27t%20quit%20in%20Erlang%2017.1&In-Reply-To=%3C53D4C59E.2010909%40ninenines.eu%3E" + TITLE="[99s-extend] couldn't quit in Erlang 17.1">essen at ninenines.eu + </A><BR> + <I>Sun Jul 27 11:25:50 CEST 2014</I> + <P><UL> + <LI>Previous message: <A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A></li> + + <LI> <B>Messages sorted by:</B> + <a href="date.html#416">[ date ]</a> + <a href="thread.html#416">[ thread ]</a> + <a href="subject.html#416">[ subject ]</a> + <a href="author.html#416">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Does it happen with ssl_hello_world? + +On 07/26/2014 09:06 AM, chaehb wrote: +><i> Hi, everybody. +</I>><i> +</I>><i> After Erlang updated to 17.1, +</I>><i> when I run q(). command on erlang console, cowboy couldn't quitted but print series of messages.. +</I>><i> +</I>><i> (after ok signal printed) +</I>><i> +</I>><i> …... +</I>><i> =ERROR REPORT==== 26-Jul-2014::15:23:33 === +</I>><i> Error in process <0.334.0> on node ‘...my node name...' with exit value: {{case_clause,{error,closed}},[{ranch_acceptor,loop,3,[{file,"src/ranch_acceptor.erl"},{line,28}]}]} +</I>><i> …. +</I>><i> +</I>><i> Before erlang updated (in 17.0), application could be normally quitted exactly same codes and environments. +</I>><i> +</I>><i> This is only appeared when I only use ssl(https). +</I>><i> But when use only http with same dispatch rules, cowboy normally quitted. +</I>><i> +</I>><i> What’s wrong? or Normal ? +</I>><i> +</I>><i> my environment : +</I>><i> OS : Mac OS X Mavricks +</I>><i> Erlang/OTP : 17.1 from Homebrew +</I>><i> release tool : relx +</I>><i> Cowboy and others : latest +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I>><i> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A></li> + + <LI> <B>Messages sorted by:</B> + <a href="date.html#416">[ date ]</a> + <a href="thread.html#416">[ thread ]</a> + <a href="subject.html#416">[ subject ]</a> + <a href="author.html#416">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/archives/extend/2014-July/author.html b/archives/extend/2014-July/author.html new file mode 100644 index 00000000..45e5995a --- /dev/null +++ b/archives/extend/2014-July/author.html @@ -0,0 +1,107 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend July 2014 Archive by author</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>July 2014 Archives by author</h1> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + <a href="subject.html#start">[ subject ]</a> + + <a href="date.html#start">[ date ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Thu Jul 3 09:40:12 CEST 2014</i><br> + <b>Ending:</b> <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Messages:</b> 12<p> + <ul> + +<LI><A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="406"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="408"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="410"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="413"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000416.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="416"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="412"> </A> +<I>Paulo F. Oliveira +</I> + +<LI><A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="414"> </A> +<I>Paulo F. Oliveira +</I> + +<LI><A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="407"> </A> +<I>Samuel +</I> + +<LI><A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="409"> </A> +<I>Samuel +</I> + +<LI><A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="411"> </A> +<I>Samuel +</I> + +<LI><A HREF="000405.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="405"> </A> +<I>Adel Zhang +</I> + +<LI><A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="415"> </A> +<I>chaehb +</I> + + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Archived on:</b> <i>Sun Jul 27 11:25:48 CEST 2014</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + <a href="subject.html#start">[ subject ]</a> + + <a href="date.html#start">[ date ]</a> + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + diff --git a/archives/extend/2014-July/date.html b/archives/extend/2014-July/date.html new file mode 100644 index 00000000..488e6784 --- /dev/null +++ b/archives/extend/2014-July/date.html @@ -0,0 +1,107 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend July 2014 Archive by date</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>July 2014 Archives by date</h1> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Thu Jul 3 09:40:12 CEST 2014</i><br> + <b>Ending:</b> <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Messages:</b> 12<p> + <ul> + +<LI><A HREF="000405.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="405"> </A> +<I>Adel Zhang +</I> + +<LI><A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="406"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="407"> </A> +<I>Samuel +</I> + +<LI><A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="408"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="409"> </A> +<I>Samuel +</I> + +<LI><A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="410"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="411"> </A> +<I>Samuel +</I> + +<LI><A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="412"> </A> +<I>Paulo F. Oliveira +</I> + +<LI><A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="413"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="414"> </A> +<I>Paulo F. Oliveira +</I> + +<LI><A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="415"> </A> +<I>chaehb +</I> + +<LI><A HREF="000416.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="416"> </A> +<I>Loïc Hoguin +</I> + + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Archived on:</b> <i>Sun Jul 27 11:25:48 CEST 2014</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + diff --git a/archives/extend/2014-July/index.html b/archives/extend/2014-July/index.html new file mode 100644 index 00000000..6a2c101c --- /dev/null +++ b/archives/extend/2014-July/index.html @@ -0,0 +1,133 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend July 2014 Archive by thread</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>July 2014 Archives by thread</h1> + <ul> + <li> <b>Messages sorted by:</b> + + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Thu Jul 3 09:40:12 CEST 2014</i><br> + <b>Ending:</b> <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Messages:</b> 12<p> + <ul> + +<!--0 01404373212.405- --> +<LI><A HREF="000405.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="405"> </A> +<I>Adel Zhang +</I> + +<UL> +<!--1 01404373212.405-01404374113.406- --> +<LI><A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="406"> </A> +<I>Loïc Hoguin +</I> + +</UL> +<!--0 01404803563.407- --> +<LI><A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="407"> </A> +<I>Samuel +</I> + +<UL> +<!--1 01404803563.407-01404813432.408- --> +<LI><A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="408"> </A> +<I>Loïc Hoguin +</I> + +<UL> +<!--2 01404803563.407-01404813432.408-01404819165.409- --> +<LI><A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="409"> </A> +<I>Samuel +</I> + +<UL> +<!--3 01404803563.407-01404813432.408-01404819165.409-01404819720.410- --> +<LI><A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="410"> </A> +<I>Loïc Hoguin +</I> + +<!--3 01404803563.407-01404813432.408-01404819165.409-01404819720.410-01404820175.411- --> +<LI><A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="411"> </A> +<I>Samuel +</I> + +</UL> +</UL> +</UL> +<!--0 01404825452.412- --> +<LI><A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="412"> </A> +<I>Paulo F. Oliveira +</I> + +<UL> +<!--1 01404825452.412-01404825688.413- --> +<LI><A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="413"> </A> +<I>Loïc Hoguin +</I> + +<UL> +<!--2 01404825452.412-01404825688.413-01404825958.414- --> +<LI><A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="414"> </A> +<I>Paulo F. Oliveira +</I> + +</UL> +</UL> +<!--0 01406358375.415- --> +<LI><A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="415"> </A> +<I>chaehb +</I> + +<UL> +<!--1 01406358375.415-01406453150.416- --> +<LI><A HREF="000416.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="416"> </A> +<I>Loïc Hoguin +</I> + +</UL> + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Archived on:</b> <i>Sun Jul 27 11:25:48 CEST 2014</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + diff --git a/archives/extend/2014-July/subject.html b/archives/extend/2014-July/subject.html new file mode 100644 index 00000000..9b9f9086 --- /dev/null +++ b/archives/extend/2014-July/subject.html @@ -0,0 +1,107 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend July 2014 Archive by subject</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>July 2014 Archives by subject</h1> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Thu Jul 3 09:40:12 CEST 2014</i><br> + <b>Ending:</b> <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Messages:</b> 12<p> + <ul> + +<LI><A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="407"> </A> +<I>Samuel +</I> + +<LI><A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="408"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="409"> </A> +<I>Samuel +</I> + +<LI><A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="410"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="411"> </A> +<I>Samuel +</I> + +<LI><A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="415"> </A> +<I>chaehb +</I> + +<LI><A HREF="000416.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="416"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="412"> </A> +<I>Paulo F. Oliveira +</I> + +<LI><A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="413"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="414"> </A> +<I>Paulo F. Oliveira +</I> + +<LI><A HREF="000405.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="405"> </A> +<I>Adel Zhang +</I> + +<LI><A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="406"> </A> +<I>Loïc Hoguin +</I> + + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Archived on:</b> <i>Sun Jul 27 11:25:48 CEST 2014</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + diff --git a/archives/extend/2014-July/thread.html b/archives/extend/2014-July/thread.html new file mode 100644 index 00000000..6a2c101c --- /dev/null +++ b/archives/extend/2014-July/thread.html @@ -0,0 +1,133 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend July 2014 Archive by thread</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>July 2014 Archives by thread</h1> + <ul> + <li> <b>Messages sorted by:</b> + + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Thu Jul 3 09:40:12 CEST 2014</i><br> + <b>Ending:</b> <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Messages:</b> 12<p> + <ul> + +<!--0 01404373212.405- --> +<LI><A HREF="000405.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="405"> </A> +<I>Adel Zhang +</I> + +<UL> +<!--1 01404373212.405-01404374113.406- --> +<LI><A HREF="000406.html">[99s-extend] tring to understand ranch_conns_sup +</A><A NAME="406"> </A> +<I>Loïc Hoguin +</I> + +</UL> +<!--0 01404803563.407- --> +<LI><A HREF="000407.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="407"> </A> +<I>Samuel +</I> + +<UL> +<!--1 01404803563.407-01404813432.408- --> +<LI><A HREF="000408.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="408"> </A> +<I>Loïc Hoguin +</I> + +<UL> +<!--2 01404803563.407-01404813432.408-01404819165.409- --> +<LI><A HREF="000409.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="409"> </A> +<I>Samuel +</I> + +<UL> +<!--3 01404803563.407-01404813432.408-01404819165.409-01404819720.410- --> +<LI><A HREF="000410.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="410"> </A> +<I>Loïc Hoguin +</I> + +<!--3 01404803563.407-01404813432.408-01404819165.409-01404819720.410-01404820175.411- --> +<LI><A HREF="000411.html">[99s-extend] [cowboy REST] returning {true, URL} to PUT +</A><A NAME="411"> </A> +<I>Samuel +</I> + +</UL> +</UL> +</UL> +<!--0 01404825452.412- --> +<LI><A HREF="000412.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="412"> </A> +<I>Paulo F. Oliveira +</I> + +<UL> +<!--1 01404825452.412-01404825688.413- --> +<LI><A HREF="000413.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="413"> </A> +<I>Loïc Hoguin +</I> + +<UL> +<!--2 01404825452.412-01404825688.413-01404825958.414- --> +<LI><A HREF="000414.html">[99s-extend] HTTP Basic Auth base64 decode fails +</A><A NAME="414"> </A> +<I>Paulo F. Oliveira +</I> + +</UL> +</UL> +<!--0 01406358375.415- --> +<LI><A HREF="000415.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="415"> </A> +<I>chaehb +</I> + +<UL> +<!--1 01406358375.415-01406453150.416- --> +<LI><A HREF="000416.html">[99s-extend] couldn't quit in Erlang 17.1 +</A><A NAME="416"> </A> +<I>Loïc Hoguin +</I> + +</UL> + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Sun Jul 27 11:25:50 CEST 2014</i><br> + <b>Archived on:</b> <i>Sun Jul 27 11:25:48 CEST 2014</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + |