611254e | Bob Ippolito | 21 March 2024, 19:58:59 UTC | Merge pull request #262 from michallepicki/otp-27 Use single quotes around 'maybe' atom for compatibility with OTP 27 | 21 March 2024, 19:58:59 UTC |
004080b | Bob Ippolito | 21 March 2024, 19:23:45 UTC | checkout@v3 for otp 18 & 19 | 21 March 2024, 19:23:45 UTC |
bc6ac7f | Bob Ippolito | 21 March 2024, 17:16:47 UTC | checkout v4 | 21 March 2024, 17:16:47 UTC |
be68a43 | Bob Ippolito | 21 March 2024, 17:10:55 UTC | Fix mochijson2 test that was map-order dependent | 21 March 2024, 17:10:55 UTC |
4b03d12 | Bob Ippolito | 21 March 2024, 17:02:54 UTC | Update mochiweb_util tests to avoid OTP 27 warnings | 21 March 2024, 17:02:54 UTC |
66a5ef8 | Bob Ippolito | 21 March 2024, 16:27:57 UTC | Update CHANGES and ci matrix | 21 March 2024, 16:27:57 UTC |
a816606 | Michał Łępicki | 21 March 2024, 16:13:03 UTC | use single quotes around 'maybe' atom for compatibility with OTP 27 | 21 March 2024, 16:13:03 UTC |
4e5372e | Bob Ippolito | 22 September 2023, 19:24:29 UTC | Merge pull request #261 from nickva/update-ci-images Update Erlang CI images | 22 September 2023, 19:24:29 UTC |
293b95d | Bob Ippolito | 22 September 2023, 19:08:01 UTC | Update certificates | 22 September 2023, 19:08:01 UTC |
fa3bf82 | Nick Vatamaniuc | 22 September 2023, 14:51:55 UTC | Update Erlang CI images * Use latest patch levels for 24 and 25. * Add 26 to the list. In Erlang 26 TLS `verify` option switched the default value from `verify_none` to `verify_peer` [1]. So had to explictly set it in the test client. [1] https://www.erlang.org/blog/otp-26-highlights/#ssl-safer-defaults | 22 September 2023, 19:07:30 UTC |
897f22f | Bob Ippolito | 22 September 2023, 15:37:32 UTC | Update CHANGES for v3.2.1 | 22 September 2023, 15:37:32 UTC |
97573d2 | Nick Vatamaniuc | 22 September 2023, 14:43:37 UTC | Merge pull request #260 from mikpe/fix-match-on-float-zero mochinum:digits/1: fix handling of -0.0 for OTP-26.1/27.0 | 22 September 2023, 14:43:37 UTC |
1aa9ba1 | Mikael Pettersson | 22 September 2023, 11:20:33 UTC | mochinum:digits/1: fix handling of -0.0 for OTP-26.1/27.0 Matching of floating-point zeroes will change in OTP-27 so that -0.0 will no longer match a non-negative 0.0. OTP-26.1 warns about such constructs, which in mochiweb results in: src/mochinum.erl:47:8: Warning: matching on the float 0.0 will no longer also match -0.0 in OTP 27. If you specifically intend to match 0.0 alone, write +0.0 instead. Fixed by switching from a match to a numerical comparison. | 22 September 2023, 11:23:01 UTC |
cab4474 | Bob Ippolito | 31 August 2023, 17:23:56 UTC | Merge pull request #259 from mochi/add-request-is-closed-function Update CHANGES and version for v3.2.0 | 31 August 2023, 17:23:56 UTC |
f455126 | Bob Ippolito | 31 August 2023, 17:19:02 UTC | Update CHANGES and version | 31 August 2023, 17:22:15 UTC |
af661f1 | Bob Ippolito | 31 August 2023, 17:22:01 UTC | Merge pull request #258 from nickva/add-request-is-closed-function Add mochiweb_request:is_closed/1 function | 31 August 2023, 17:22:01 UTC |
8b2d844 | Nick Vatamaniuc | 31 August 2023, 16:14:41 UTC | Add mochiweb_request:is_closed/1 function This function can used during long running request callbacks to detect if the client connection is closed. If the request callback periodically streams data back to the client, the act of writting to the client socket will detect if it is closed or not. However, in cases when no data is sent back, and the client times-out and closes the connection, it may be useful to be able to find out early and stop processing the request on the server. It turns out there is no easy way to detect if a passive mode socket is closed in Erlang/OTP [1]. Neither one of inet:monitor/1, inet:info/1, inet:getstat/1 work. However, it is possible to do it by querying the TCP state info of the socket. That option available in Linux since kernel 2.4 and on other Unix-like OSes (NetBSD, OpenBSD, FreeBSD and MacOS). Windows also has a tcp info query method however it is not reacheable via the gensockopts(2) standard socket API, so it can't be queried from Erlang's inet:getopts/2 API. [1] Using the newer socket module it's possible to detect if a socket is closed by attempting a recv with a MSG_PEEK option. However, the regular gen_tcp OTP module doesn't have a recv() variant which takes extra options. In addition, the new socket implementation still feels rather experimental. (It's not the default even in the latest OTP 26 release). | 31 August 2023, 17:00:54 UTC |
0733494 | Bob Ippolito | 20 April 2023, 21:18:09 UTC | Merge pull request #257 from mochi/fix-edoc Fix rebar edoc and test in CI | 20 April 2023, 21:18:09 UTC |
5bd8411 | Bob Ippolito | 20 April 2023, 20:47:28 UTC | Fix rebar edoc and test in CI | 20 April 2023, 20:58:17 UTC |
666ac57 | Bob Ippolito | 13 February 2023, 02:43:35 UTC | Merge pull request #254 from vjc22/patch-1 Update README.md | 13 February 2023, 02:43:35 UTC |
eaba29b | vjc22 | 12 February 2023, 22:48:51 UTC | Update README.md Fixed typo in line 5. | 12 February 2023, 22:48:51 UTC |
125d080 | vjc22 | 12 February 2023, 22:46:35 UTC | Update README.md Updated with the suggested changes | 12 February 2023, 22:46:35 UTC |
7ed4ecf | vjc22 | 12 February 2023, 22:01:50 UTC | Update README.md Added overview section. Added getting started section and a tutorial. Added benefits section. Added documentation section. Added contributing section. | 12 February 2023, 22:01:50 UTC |
7c4d311 | Bob Ippolito | 12 October 2022, 05:39:17 UTC | Merge pull request #252 from mochi/test-chunked-encoding Add a test for the chunked encoding fix | 12 October 2022, 05:39:17 UTC |
7ad3bd3 | Bob Ippolito | 12 October 2022, 05:32:37 UTC | Add a test for the chunked encoding fix | 12 October 2022, 05:32:37 UTC |
ef51f62 | Bob Ippolito | 09 October 2022, 01:30:54 UTC | Update CHANGES.md | 09 October 2022, 01:32:00 UTC |
b1c5cca | Bob Ippolito | 09 October 2022, 01:31:02 UTC | Merge pull request #251 from mochi/otp-25 Add OTP 25 to test matrix | 09 October 2022, 01:31:02 UTC |
a250223 | Bob Ippolito | 07 October 2022, 16:29:01 UTC | Note latest compatibility in README | 07 October 2022, 16:29:01 UTC |
26f388b | Bob Ippolito | 07 October 2022, 16:11:03 UTC | Add OTP 25 to test matrix | 07 October 2022, 16:11:03 UTC |
1ccacbf | Bob Ippolito | 21 September 2022, 14:46:00 UTC | Merge pull request #249 from BradS2S/main Bug in mochiweb_request:read_chunk_length/2 #188 | 21 September 2022, 14:46:00 UTC |
6d94ceb | BradS2S | 21 September 2022, 06:34:35 UTC | Bug in mochiweb_request:read_chunk_length/2 #188 I'm still very new to Erlang but this seems pretty straightforward. | 21 September 2022, 06:34:35 UTC |
bd0c848 | Bob Ippolito | 14 August 2022, 02:35:05 UTC | fix release date | 14 August 2022, 02:35:05 UTC |
6d22721 | Bob Ippolito | 14 August 2022, 02:33:15 UTC | Merge pull request #248 from mochi/follow-up-247 v3.1.0 | 14 August 2022, 02:33:15 UTC |
48c0cdd | Bob Ippolito | 14 August 2022, 02:16:40 UTC | v3.1.0 | 14 August 2022, 02:26:14 UTC |
16c43ef | Bob Ippolito | 14 August 2022, 02:19:07 UTC | Merge pull request #247 from big-r81/patch-2 Remove leading and trailing whitespaces | 14 August 2022, 02:19:07 UTC |
38aadf3 | Ronny | 11 August 2022, 13:47:29 UTC | Remove leading and trailing whitespaces from field-values to be RFC 7230 compliant. | 11 August 2022, 13:47:29 UTC |
a46b10a | Bob Ippolito | 11 August 2022, 13:21:53 UTC | Merge pull request #245 from big-r81/patch-1 | 11 August 2022, 13:21:53 UTC |
927cd19 | Ronny | 11 August 2022, 08:07:15 UTC | Fix typo in atom | 11 August 2022, 08:07:15 UTC |
845803a | Bob Ippolito | 10 May 2022, 03:29:17 UTC | Merge pull request #241 from mochi/rebar3 Start on rebar3 support | 10 May 2022, 03:29:17 UTC |
8936dcd | Bob Ippolito | 10 May 2022, 03:26:19 UTC | Update CHANGES.md | 10 May 2022, 03:26:19 UTC |
db44f53 | Bob Ippolito | 10 May 2022, 00:09:22 UTC | build is a phony target as well | 10 May 2022, 00:09:22 UTC |
a55c1ec | Bob Ippolito | 10 May 2022, 00:03:59 UTC | Merge pull request #243 from nickva/rebar3-improvements Rebar3 improvements | 10 May 2022, 00:03:59 UTC |
995bc29 | Nick Vatamaniuc | 09 May 2022, 21:35:22 UTC | Simplify Makefile and update CI Remove `app` file and allow specifying a different REBAR executable so we can test both rebar2 and rebar3. Since OTP team provides docker images we can use those for CI. They seem to be a bit more recent than ESL packages and also provide `rebar` and `rebar3` commands. | 09 May 2022, 21:43:22 UTC |
f4db791 | Nick Vatamaniuc | 09 May 2022, 21:15:35 UTC | Remove rebar 2 binary. | 09 May 2022, 21:15:35 UTC |
0058559 | Nick Vatamaniuc | 09 May 2022, 20:58:30 UTC | Replace template project with an example project Since rebar3 expects templates to be in `~/.config/rebar3/templates/` [1], opt to instead having just an example project users can copy and update on their own. [1] https://www.rebar3.org/docs/tutorials/templates | 09 May 2022, 20:58:30 UTC |
3b3478c | Bob Ippolito | 06 May 2022, 06:22:10 UTC | Start on rebar3 support | 06 May 2022, 16:05:59 UTC |
53114ba | Bob Ippolito | 06 May 2022, 16:02:18 UTC | Merge pull request #242 from nickva/acceptor-fix-recycler-error-reporting Handle {shutdown, Error} when recycling acceptor pids | 06 May 2022, 16:02:18 UTC |
077b4f8 | Nick Vatamaniuc | 06 May 2022, 14:19:03 UTC | Handle {shutdown, Error} when recycling acceptor pids After https://github.com/mochi/mochiweb/pull/238 acceptor processes would exit with {shutdown, Error} on timeouts and other errors which were `normal` before. | 06 May 2022, 14:19:03 UTC |
83fd22d | Bob Ippolito | 06 May 2022, 05:28:39 UTC | Merge pull request #239 from mochi/minimum-otp-18 Set minimum OTP to 18 | 06 May 2022, 05:28:39 UTC |
73f9244 | Bob Ippolito | 06 May 2022, 03:51:34 UTC | Merge pull request #240 from nickva/remove-erlang-version-less-than-18 Two minor patches to help with Erlang <18 support removal | 06 May 2022, 03:51:34 UTC |
1bbae50 | Nick Vatamaniuc | 06 May 2022, 02:54:12 UTC | Attempt to fix CI with latest ESL packages for each major version | 06 May 2022, 03:01:30 UTC |
5e47b28 | Nick Vatamaniuc | 06 May 2022, 02:45:41 UTC | A bit more cleanup for R15 emsgsize workaround Since we're not inspecting the message in handle_invalid_msg_request any longer, we don't have to pass the message in altogether. | 06 May 2022, 02:49:14 UTC |
22032de | Bob Ippolito | 05 May 2022, 22:57:23 UTC | Set minimum OTP to 18 | 06 May 2022, 01:34:55 UTC |
fce80ef | Nick Vatamaniuc | 05 May 2022, 21:58:25 UTC | Merge pull request #238 from nickva/use-shutdown-for-process-exits Use {shutdown, Error} when terminating connection processes | 05 May 2022, 21:58:25 UTC |
5d51075 | Nick Vatamaniuc | 04 May 2022, 17:07:34 UTC | Update changes log about the potential exit(normal) incompatibility | 04 May 2022, 17:07:34 UTC |
e56a4dc | Nick Vatamaniuc | 02 May 2022, 19:21:35 UTC | Use {shutdown, Error} when terminating connection processes Previously they exited `normal`, which helped avoid error log spam. However, that also meant any linked helper processes would not exit when the main connection process had been terminated. To automatically clean up any linked processes, and continue avoiding generating error logs, we can use `{shutdown, Error}` as the exit reason. That error, along with `shutdown` atom, are special exit reasons which are considered `normal` for proc_lib processes and will not generate error logs [1]. Another benefit is having more specific exit reasons (send error, recv error, etc.), which may help with debugging. [1] https://www.erlang.org/docs/24/man/proc_lib.html#description | 02 May 2022, 22:13:42 UTC |
c724c3a | Bob Ippolito | 10 March 2022, 15:54:01 UTC | Merge pull request #237 from kianmeng/fix-typos Fix typos | 10 March 2022, 15:54:01 UTC |
d4f8da2 | Kian-Meng Ang | 10 March 2022, 15:48:38 UTC | Fix typos | 10 March 2022, 15:48:38 UTC |
835b107 | Bob Ippolito | 23 August 2021, 23:15:49 UTC | Merge pull request #235 from mochi/automate-hex-publish Automate hex publish | 23 August 2021, 23:15:49 UTC |
e3cdf58 | Bob Ippolito | 23 August 2021, 23:13:19 UTC | Attempt to automate hex publish | 23 August 2021, 23:13:19 UTC |
e9eb2f1 | Bob Ippolito | 08 July 2021, 20:39:11 UTC | Rename master to main | 05 August 2021, 15:53:31 UTC |
04eba48 | Bob Ippolito | 28 July 2021, 22:23:03 UTC | Merge pull request #234 from noahshaw11/add-unquote-path-for-separate-+-encoding Add unquote_path/1 for separate + encoding | 28 July 2021, 22:23:03 UTC |
c388368 | ncshaw | 28 July 2021, 21:35:44 UTC | Add unquote_path/1 for separate + encoding | 28 July 2021, 21:35:44 UTC |
db54089 | Bob Ippolito | 07 June 2021, 03:54:02 UTC | Merge pull request #232 from mochi/v2.21.0 v2.21.0 and try github actions | 07 June 2021, 03:54:02 UTC |
3f4884c | Bob Ippolito | 07 June 2021, 01:56:40 UTC | v2.21.0 and try github actions | 07 June 2021, 03:47:56 UTC |
448984c | Bob Ippolito | 04 June 2021, 16:15:00 UTC | Merge pull request #231 from noahshaw11/upgrade-crypto-functions-to-support-OTP-23 Upgrade crypto functions to support OTP 23 | 04 June 2021, 16:15:00 UTC |
dae0ac3 | ncshaw | 25 May 2021, 17:46:21 UTC | Upgrade crypto functions to support OTP 23 | 01 June 2021, 16:11:14 UTC |
070594e | Bob Ippolito | 14 February 2020, 16:43:08 UTC | Merge pull request #229 from mochi/fix-release fix release number | 14 February 2020, 16:43:08 UTC |
49a3c93 | Benoit Chesneau | 14 February 2020, 15:55:22 UTC | fix release number | 14 February 2020, 15:55:22 UTC |
7bc0d63 | Bob Ippolito | 03 February 2020, 17:48:18 UTC | Merge pull request #228 from mochi/changes-v2.20.1 Update CHANGES for v2.20.1 | 03 February 2020, 17:48:18 UTC |
9729f65 | Bob Ippolito | 03 February 2020, 17:42:48 UTC | Update CHANGES for v2.20.1 | 03 February 2020, 17:42:48 UTC |
562b32f | Benoit Chesneau | 03 February 2020, 10:02:50 UTC | remove deprecated metadata | 03 February 2020, 10:02:50 UTC |
cedc22f | Bob Ippolito | 15 July 2019, 01:46:36 UTC | Merge pull request #226 from mochi/otp-22 Update CHANGES and add OTP 21.3, 22 to travis matrix | 15 July 2019, 01:46:36 UTC |
0c68ac4 | Bob Ippolito | 15 July 2019, 01:39:43 UTC | Update CHANGES and add OTP 21.3, 22 to travis matrix | 15 July 2019, 01:39:43 UTC |
c5e7b83 | Bob Ippolito | 15 July 2019, 01:34:21 UTC | Merge pull request #225 from djnym/support-samesite-none add support for SameSite=none in cookies | 15 July 2019, 01:34:21 UTC |
fc8de2b | Anthony Molinaro | 12 July 2019, 22:00:34 UTC | add support for SameSite=none in cookies | 12 July 2019, 22:00:34 UTC |
ad11980 | Bob Ippolito | 26 May 2019, 02:19:02 UTC | Merge pull request #220 from penhs/master Update README.md | 26 May 2019, 02:19:02 UTC |
c692fd7 | Bob Ippolito | 22 May 2019, 03:41:21 UTC | Use https for URLs in README.md | 22 May 2019, 03:41:21 UTC |
ec98873 | Bob Ippolito | 22 May 2019, 03:39:49 UTC | Merge pull request #221 from mochi/fix-travis-build Use dist: trusty for Travis builds with old Erlang releases | 22 May 2019, 03:39:49 UTC |
d12ac64 | Bob Ippolito | 22 May 2019, 03:31:18 UTC | Use a matrix to get an older dist for old releases | 22 May 2019, 03:31:18 UTC |
2b4b272 | Bob Ippolito | 22 May 2019, 03:24:56 UTC | Debug Travis, it seems like older releases are not working | 22 May 2019, 03:24:56 UTC |
9f024df | penhs | 22 May 2019, 00:26:37 UTC | Update README.md | 22 May 2019, 00:26:37 UTC |
05d3ceb | penhs | 22 May 2019, 00:24:46 UTC | Update README.md | 22 May 2019, 00:24:46 UTC |
2cb3104 | Bob Ippolito | 12 March 2019, 20:07:23 UTC | Merge pull request #215 from mochi/remove-tuple-calls Remove tuple calls | 12 March 2019, 20:07:23 UTC |
69d6df7 | Bob Ippolito | 12 March 2019, 03:49:26 UTC | Run erl_tidy on modified source files ```erlang lists:foreach( fun (F) -> erl_tidy:file(F, [{backups, false}, keep_unused]) end, string:split( string:trim( os:cmd("git diff --name-only origin/master | grep \".erl$\"") ), "\n", all ) ). ``` | 12 March 2019, 03:49:26 UTC |
8892431 | Bob Ippolito | 12 March 2019, 01:41:45 UTC | Remove compile(tuple_calls) from test/mochiweb_request_tests | 12 March 2019, 01:41:45 UTC |
1054298 | Bob Ippolito | 12 March 2019, 01:32:24 UTC | Remove compile(tuple_calls) from test/mochiweb_tests | 12 March 2019, 01:32:24 UTC |
2cae813 | Bob Ippolito | 12 March 2019, 01:32:14 UTC | Remove compile(tuple_calls) from test/mochiweb_websocket_tests | 12 March 2019, 01:32:14 UTC |
1092472 | Bob Ippolito | 12 March 2019, 01:26:08 UTC | Remove compile(tuple_calls) from test/mochiweb_http_tests | 12 March 2019, 01:26:08 UTC |
58699cb | Bob Ippolito | 11 March 2019, 22:57:58 UTC | Remove compile(tuple_calls) from examples/keepalive | 11 March 2019, 22:57:58 UTC |
b6b3ff1 | Bob Ippolito | 11 March 2019, 22:55:44 UTC | Remove compile(tuple_calls) from examples/https_store | 11 March 2019, 22:55:44 UTC |
1c73aaf | Bob Ippolito | 11 March 2019, 22:51:02 UTC | Remove compile(tuple_calls) from examples/hmac_api | 11 March 2019, 22:51:02 UTC |
ef4f886 | Bob Ippolito | 11 March 2019, 22:45:20 UTC | Remove compile(tuple_calls) from the template | 11 March 2019, 22:45:20 UTC |
5ae2f0a | Bob Ippolito | 09 March 2019, 21:00:29 UTC | Remove compile(tuple_calls) from mochiweb_websocket | 11 March 2019, 21:57:26 UTC |
763fa52 | Bob Ippolito | 09 March 2019, 20:53:33 UTC | Remove compile(tuple_calls) from mochiweb_response | 11 March 2019, 21:57:26 UTC |
c3e45be | Bob Ippolito | 09 March 2019, 20:50:54 UTC | Remove compile(tuple_calls) from mochiweb_request | 11 March 2019, 21:57:22 UTC |
6f9452c | Bob Ippolito | 09 March 2019, 20:47:44 UTC | Remove compile(tuple_calls) from mochiweb_multipart | 09 March 2019, 20:47:44 UTC |
dc74151 | Bob Ippolito | 09 March 2019, 20:43:12 UTC | Remove compile(tuple_calls) from mochiweb_http | 09 March 2019, 20:43:12 UTC |
2ab10af | Bob Ippolito | 09 March 2019, 20:38:37 UTC | Remove compile(tuple_calls) from mochiweb_acceptor | 09 March 2019, 20:38:37 UTC |
83fdebc | Bob Ippolito | 09 March 2019, 20:28:47 UTC | Remove compile(tuple_calls) from mochifmt | 09 March 2019, 20:28:47 UTC |