forked from mojolicious/mojo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Changes
3859 lines (3297 loc) · 154 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
7.34 2017-06-19
7.33 2017-06-05
- Added EXPERIMENTAL support for :matches pseudo-class and :not pseudo-class
with compound selectors to Mojo::DOM::CSS.
- Fixed a few form element value extraction bugs in Mojo::DOM.
- Fixed version command to use the new MetaCPAN API, since the old one got
shut down.
7.32 2017-05-28
- Added -f option to get command.
- Improved get command with support for passing request data by redirecting
STDIN.
- Fixed memory leak in Mojo::IOLoop::Client that sometimes prevented the
connect timeout from working correctly for TLS handshakes.
7.31 2017-04-23
- Removed deprecated files, slurp and spurt functions from Mojo::Util.
- Removed deprecated parts attribute from Mojo::Home.
- Removed deprecated slurp and spurt methods from Mojo::ByteStream.
- Removed deprecated lib_dir, list_files, parse and rel_dir methods from
Mojo::Home.
- Removed deprecated rel_dir method from Mojolicious::Command.
- Removed deprecated is_status_class method from Mojo::Message::Response.
- Fixed a bug in the app generator command where the config file name was not
based on the application moniker.
7.30 2017-04-04
- Deprecated Mojo::Server::Morbo::watch in favor of
Mojo::Server::Morbo::Backend::Poll::watch. (marcus)
- Added support for pluggable Morbo backends. (marcus)
- Added Mojo::Server::Morbo::Backend and Mojo::Server::Morbo::Backend::Poll
modules. (marcus)
- Added backend attribute to Mojo::Server::Morbo. (marcus)
- Added -b option to Morbo. (marcus)
7.29 2017-03-12
- Added support for overriding configuration files in applications tested with
Test::Mojo.
- Added html_attr_unescape function to Mojo::Util.
- Fixed unescaping of HTML5 attribute values in Mojo::DOM::HTML.
7.28 2017-03-07
- Added copy_to, realpath and sibling methods to Mojo::File.
- Added dir option to list_tree method in Mojo::File.
- Improved app generator command to generate a config file.
(tudorconstantin)
7.27 2017-02-27
- Added support for UNIX domain sockets. (sri, salva)
- Improved Mojo::UserAgent to complain about unsupported protocols.
- Fixed a bug in Mojo::URL where invalid host strings could be generated.
- Fixed blib handling in Mojo::Home.
7.26 2017-02-15
- Fixed bug in Mojo::IOLoop::Subprocess where starting multiple subprocesses
at once could cause expcetions. (jberger)
7.25 2017-02-09
- Fixed cleanup bugs in Mojo::IOLoop::Stream.
7.24 2017-02-05
- Added open method to Mojo::File.
- Added tempfile function to Mojo::File.
- Fixed bug in Mojo::Asset::File where the slurp method would not work
correctly for very large files.
7.23 2017-01-29
- Added max_request_size attribute to Mojolicious.
- Added max_response_size attribute to Mojo::UserAgent.
- Added to_unsafe_string method to Mojo::URL.
- Added -S option to get command.
- Fixed a data corruption problem in Mojo::IOLoop::Stream, caused by a
dependency of IO::Socket::SSL on the internal representation of strings,
which differs from IO::Socket::IP. (coolo, sri)
7.22 2017-01-25
- Added ports method to Mojo::Server::Daemon.
- Added remove_tree method to Mojo::File.
- Improved spurt method in Mojo::File with support for writing multiple chunks
at once.
7.21 2017-01-21
- Added extract_usage function to Mojo::Util.
- Improve getopt function in Mojo::Util to use @ARGV by default.
7.20 2017-01-18
- Fixed a bug in Mojo::File where the make_path method would die even if no
error occurred.
- Fixed warnings in Mojo::IOLoop::TLS.
7.19 2017-01-14
- Added module Mojo::IOLoop::TLS.
- Added can_nnr and can_socks methods to Mojo::IOLoop::Client.
7.18 2017-01-11
- Fixed support for relative %INC paths in Mojo::Home.
- Fixed a bug in Mojo::URL where invalid fragment strings could be generated.
7.17 2017-01-11
- Fixed Windows bugs in Mojo::File. (kmx)
7.16 2017-01-10
- Fixed Windows bugs in Mojo::File. (kmx)
7.15 2017-01-09
- Deprecated Mojo::ByteStream::slurp and Mojo::Util::slurp in favor of
Mojo::File::slurp.
- Deprecated Mojo::ByteStream::spurt and Mojo::Util::spurt in favor of
Mojo::File::spurt.
- Deprecated Mojo::Util::files in favor of Mojo::File::list_tree.
- Deprecated Mojo::Home::lib_dir, Mojo::Home::parse, Mojo::Home::parts in
favor of new features inherited from the Mojo::File base class.
- Added module Mojo::File.
- Improved Mojo::Home to be a subclass of Mojo::File.
- Improved mojo_lib_dir and rel_file methods in Mojo::Home to return
Mojo::Home objects.
- Improved rel_file methods in Mojolicious::Command to return Mojo::File
objects.
- Improved every_param and param methods in Mojolicious::Validator::Validation
to use the current topic.
7.14 2017-01-04
- Deprecated Mojo::Home::list_files in favor of Mojo::Util::files.
- Deprecated Mojo::Home::rel_dir in favor of Mojo::Home::rel_file.
- Deprecated Mojolicious::Command::rel_dir in favor of
Mojolicious::Command::rel_file.
- Fixed a bug in Mojo::IOLoop::Subprocess where the pipe used for IPC could
disappear because of a timeout.
7.13 2016-12-23
- Deprecated Mojo::Message::Response::is_status_class in favor of new is_*
methods.
- Added result method to Mojo::Transaction.
- Added is_client_error, is_error, is_info, is_redirect, is_server_error and
is_success methods to Mojo::Message::Response.
- Fixed bug where Morbo could not handle broken symlinks. (Grinnz)
7.12 2016-12-18
- Added button_to and csrf_button_to helpers to
Mojolicious::Plugin::TagHelpers.
- Removed experimental status from Mojo::IOLoop::Subprocess.
- Removed experimental status from subprocess method in Mojo::IOLoop.
7.11 2016-11-30
- Added EXPERIMENTAL close_idle_connections method to Mojo::Server::Daemon.
- Improved one_tick method in Mojo::IOLoop to protect from recursion, similar
to the start method.
- Improved log attribute in Mojolicious to make it easier to override default
settings. (jberger)
- Fixed bug in Mojo::Server::Prefork where workers would accept keep-alive
requests after a graceful shutdown had already been initiated.
- Fixed bugs in Mojo::Util and Mojo::Asset::File where incomplete writes would
not be recognized as errors. (bobkare, sri)
7.10 2016-11-01
- Added getopt function to Mojo::Util.
7.09 2016-10-22
- Added every_header method to Mojo::Headers.
- Fixed redirect bug in Mojo::UserAgent::Transactor.
- Fixed a few proxy bugs in Mojo::UserAgent.
7.08 2016-09-23
- Added -i and -o options to get command.
- Updated jQuery to version 3.1.1.
- Improved accuracy of finished_ok test in Test::Mojo.
- Fixed state transition bug in Mojo::Transaction::HTTP that caused message
bodies to be included in responses to HEAD requests.
7.07 2016-09-20
- Fixed bug in Mojo::UserAgent::Transactor where 303 redirects would not be
followed correctly with GET requests. (jberger)
7.06 2016-09-17
- Fixed bug where Mojolicious::Renderer would wrap text in layouts.
- Fixed a few test description encoding bugs in Test::Mojo.
7.05 2016-08-29
- Fixed bug in Mojo::IOLoop::Subprocess where EV would steal the subprocess
exit status.
7.04 2016-08-28
- Added EXPERIMENTAL support for performing computationally expensive
operations in subprocesses, without blocking the event loop. (jberger, sri)
- Added EXPERIMENTAL module Mojo::IOLoop::Subprocess. (jberger, sri)
- Added EXPERIMENTAL subprocess method to Mojo::IOLoop. (jberger, sri)
- Improved many methods in Mojolicious::Controller to die more gracefully if
the connection has already been closed.
- Fixed bug where Mojo::UserAgent would try to follow redirects for CONNECT
requests.
7.03 2016-08-17
- Fixed packaging errors.
7.02 2016-08-17
- Fixed bugs in Mojo::Loader and Mojo::Util where the DATA handle would be
mentioned in error messages. (jberger, kiwiroy, sri)
7.01 2016-08-01
- Improved support for systemd.
- Fixed a bug in Mojo::Server::Prefork where PID files would not contain a
newline character.
7.0 2016-07-19
- Code name "Doughnut", this is a major release.
- Removed Mojolicious::Plugin::Charset.
- Removed authority method from Mojo::URL.
- Removed squish method from Mojo::ByteStream.
- Removed squish function from Mojo::Util.
- Removed support for smart whitespace trimming from all_text and text methods
in Mojo::DOM.
- Updated jQuery to version 3.1.0.
- Improved Mojo::URL not to include the userinfo part when generating URLs, as
recommended by the URL Living Standard.
- Improved Mojolicious::Plugin::Config to no longer log which files have been
loaded.
- Fixed trailing slash bug in Mojo::URL.
- Fixed a few whitespace bugs in Mojo::DOM.
- Fixed attribute selector bug in Mojo::DOM::CSS. (Akron)
- Fixed a bug causing headers with zero length values to be ignored by the get
command. (jberger)
6.66 2016-06-16
- Fixed support for CONNECT requests without keep alive connections in
Mojo::UserAgent. (anparker, sri)
6.65 2016-06-14
- Added password and username methods to Mojo::URL.
- Updated jQuery to version 3.0.0.
- Fixed "0" value bug in Mojo::UserAgent::CookieJar. (jamadam)
6.64 2016-06-09
- Updated HTML5 entities in Mojo::Util.
- Improved Mojo::IOLoop to fall back to Mojo::Reactor::Poll if Perl has been
compiled with fork emulation.
6.63 2016-06-03
- Removed deprecated check method from Mojo::Server::Morbo.
- Removed deprecated build, compile and interpret methods from Mojo::Template.
- Removed deprecated multi_accept methods from Mojo::IOLoop,
Mojo::IOLoop::Server and Mojo::Server::Daemon.
- Updated jQuery to version 2.2.4.
- Improved generator commands not to overwrite existing files.
6.62 2016-05-14
- Removed deprecated is_debug, is_error, is_info and is_warn methods from
Mojo::Log.
- Improved support for Ubuntu on Windows.
6.61 2016-04-30
- Improved Mojo::Server::Daemon to no longer log when a connection has been
closed prematurely.
- Fixed bug in Mojo::Content where the drain event would not always be emitted
for dynamically generated content with a Content-Length header.
6.60 2016-04-25
- Fixed bug in Mojo::IOLoop where stopping gracefully would sometimes result
in connections getting closed too early. (anparker, sri)
6.59 2016-04-22
- Removed deprecated xss_escape function from Mojo::Util.
- Improved HTML Living Standard compliance of Mojo::DOM::HTML.
- Improved Mojo::Server::Daemon to log when a connection has been closed
prematurely.
- Improved Mojo::Server::Prefork to log when the manager process has been
stopped.
- Fixed a few tests to keep up with breaking changes in IO::Socket::SSL.
- Fixed a few timing bugs in tests.
6.58 2016-04-09
- Removed deprecated build_frame and parse_frame methods from
Mojo::Transaction::WebSocket.
- Added fork policy to Mojolicious::Guides::Contributing.
- Improved Mojo::JSON to generate canonical JSON objects.
- Fixed bug in Mojo::Loader where classes with exceptions could not be loaded
twice. (kiwiroy, sri)
6.57 2016-03-23
- Fixed a few validation bugs in Mojolicious::Validator::Validation.
(Mikey, sri)
- Fixed copyright notice.
6.56 2016-03-16
- Added hidden option to list_files method in Mojo::Home. (batman, sri)
- Added hidden option to files function in Mojo::Util. (batman, sri)
- Fixed bug where Morbo would not ignore hidden files. (batman, sri)
- Fixed bug where Morbo would ignore the --verbose option.
- Fixed keep-alive bug in Mojo::UserAgent. (jberger)
6.55 2016-03-08
- Deprecated Mojo::Server::Morbo::check in favor of
Mojo::Server::Morbo::modified_files. (leejo, nugged)
- Added modified_files method to Mojo::Server::Morbo. (leejo, nugged)
- Improved renderer performance slightly.
- Fixed a bug where Morbo would restart more than once if multiple files
changed at the same time. (leejo, nugged)
6.54 2016-03-06
- Deprecated Mojo::Template::build and Mojo::Template::compile.
- Deprecated Mojo::Template::interpret in favor of Mojo::Template::process.
- Added support for named variables to Mojo::Template.
- Added vars attribute to Mojo::Template.
- Added process method to Mojo::Template.
- Improved Mojo::Template performance slightly.
6.53 2016-03-03
- Removed multi_accept setting from Hypnotoad.
- Removed -M options from daemon and prefork commands.
- Deprecated Mojo::IOLoop::multi_accept.
- Deprecated Mojo::IOLoop::Server::multi_accept.
- Deprecated Mojo::Server::Daemon::multi_accept.
- Added single_accept option to Mojo::IOLoop::Server::listen.
- Added single_accept parameter to Mojo::Server::Daemon::listen.
- Increased default max_requests from 25 to 100 in Mojo::Server::Daemon.
- Increased default accepts from 1000 to 10000 in Mojo::Server::Prefork.
- Improved performance of many Mojo::Util functions slightly.
- Fixed default value bug in val method of Mojo::DOM.
6.52 2016-03-02
- Added is_accepting method to Mojo::IOLoop::Server.
- Added -M option to daemon command.
- Improved responsiveness of stop_gracefully method in Mojo::IOLoop.
- Fixed bug in Mojo::IOLoop where too many connections could be accepted.
- Fixed a few concurrency bugs in Mojo::IOLoop.
6.51 2016-02-29
- Fixed bug in Mojolicious::Plugin::EPLRenderer where empty templates from the
DATA section would be ignored.
- Fixed a few "0" value bugs in Mojolicious::Renderer.
6.50 2016-02-27
- Added throw method to Mojo::Exception.
6.49 2016-02-26
- Removed throw method from Mojo::Exception.
- Added inspect method to Mojo::Exception.
- Improved check_box and radio_button helpers with support for "on" default
values.
- Improved val method in Mojo::DOM with support for "on" default values.
- Fixed url_for bug where routes with custom names would not match in the same
order as routes with automatically generated names.
- Fixed bug in Mojo::Template where not all exceptions were verbose.
- Fixed Windows bug in "util.t".
6.48 2016-02-24
- Added files function to Mojo::Util.
- Updated jQuery to version 2.2.1.
- Improved url_for performance significantly.
- Fixed bug where the results of the list_files method in Mojo::Home would
include directories.
- Fixed a few small CGI bugs.
6.47 2016-02-19
- Deprecated Mojo::Log::is_debug, Mojo::Log::is_error, Mojo::Log::is_info and
Mojo::Log::is_warn in favor of Mojo::Log::is_level.
- Added is_level method to Mojo::Log.
- Fixed datetime_field helper to use the correct type attribute value.
6.46 2016-02-13
- Improved Mojo::Headers performance. (batman)
- Fixed small proxy bug in Mojo::UserAgent::Transactor.
6.45 2016-02-09
- Deprecated Mojo::Util::xss_escape in favor of Mojo::Util::xml_escape.
- Improved Mojo::Template performance slightly.
6.44 2016-02-04
- Removed deprecated format_regex attribute from Mojolicious::Routes::Pattern.
- Improved get command not to use the user agent of the application.
- Improved Mojo::JSON performance slightly.
6.43 2016-02-01
- Removed client_close and server_close methods from Mojo::Transaction.
- Added closed method to Mojo::Transaction.
- Added parse_message method to Mojo::Transaction::WebSocket.
- Improved a few examples to avoid timing attacks.
- Fixed timing bug in Mojo::Server::Daemon.
6.42 2016-01-24
- Fixed use of deprecated Perl feature in Mojo::JSON.
- Fixed validation filter bugs in Mojolicious::Validator::Validation.
6.41 2016-01-20
- Added support for validation filters.
- Added filters attribute to Mojolicious::Validator.
- Added add_filter method to Mojolicious::Validator.
- Added filter arguments to optional and required methods in
Mojolicious::Validator::Validation.
- Fixed MOJO_WEBSOCKET_DEBUG environment variable. (jberger)
6.40 2016-01-13
- Removed client_challenge, client_handshake, server_handshake and server_open
methods from Mojo::Transaction::WebSocket. (batman, sri)
- Removed is_writing method from Mojo::Transaction.
- Removed upgrade event from Mojo::Transaction::HTTP.
- Deprecated Mojo::Transaction::WebSocket::build_frame and
Mojo::Transaction::WebSocket::parse_frame in favor of
Mojo::WebSocket::build_frame and Mojo::WebSocket::parse_frame. (batman)
- Replaced deprecated proxy method in Mojo::Message::Request with an
attribute.
- Added SNI support to all built-in web servers. (bpmedley, sri)
- Added module Mojo::WebSocket. (batman)
- Added established attribute to Mojo::Transaction::WebSocket.
- Added completed method to Mojo::Transaction.
- Updated jQuery to version 2.2.0.
- Improved performance of Mojo::Server::Daemon and Mojo::UserAgent slightly.
- Improved mtime attribute in Mojo::Asset::Memory to default to the value of
$^T.
- Improved app generator command to generate more portable scripts.
- Fixed a few timing bugs.
- Fixed url_for to handle fragments correctly.
6.39 2016-01-03
- Updated links to Mojolicious website.
- Fixed small html_unescape bug in Mojo::Util.
- Fixed handling of invalid max age in Mojo::UserAgent::CookieJar.
6.38 2015-12-19
- Updated prettify.js to version 8-Dec-2015.
- Improved form generation in Mojo::UserAgent::Transactor to use UTF-8 as the
default charset.
6.37 2015-12-14
- Added protocol and with_protocols methods to Mojo::Transaction::WebSocket.
- Fixed a few reference encoding bugs in Mojo::JSON.
- Fixed a few form generation bugs in Mojo::UserAgent::Transactor.
6.36 2015-12-08
- Improved Mojo::JSON performance slightly. (haarg)
- Improved inactivity_timeout helper to return the current controller object.
6.35 2015-12-04
- Removed deprecated collecting method from Mojo::UserAgent::CookieJar.
- Fixed warnings in Mojo::Cookie::Response.
6.34 2015-12-01
- Improved Hypnotoad to report problems that have occured during the creation
of listen sockets.
- Fixed bug in Mojo::DOM where the wrap method would attempt to wrap an
HTML/XML fragment around the content of root nodes.
- Fixed bug in Mojo::DOM where the wrap_content method would attempt to wrap
an HTML/XML fragment around nodes that do not have children.
- Fixed a few small formatting bugs in Mojolicious::Plugin::PODRenderer.
6.33 2015-11-22
- Updated IO::Socket::IP requirement to 0.37 for certain bug fixes.
- Improved renderer not to require a return value from handlers.
- Improved helper method in Mojolicious to replace already existing helpers
silently.
6.32 2015-11-18
- Deprecated Mojolicious::Routes::Pattern::format_regex.
- Added support for new HTTP status code.
- Improved router performance.
- Improved Mojo::DOM::CSS performance slightly. (jamadam)
- Fixed a few case-sensitivity and An+B notation bugs in Mojo::DOM::CSS.
(jamadam)
6.31 2015-11-13
- Improved documentation browser CSS.
- Fixed handling of invalid URLs in Mojo::UserAgent::CookieJar.
- Fixed a few small selector bugs in Mojo::DOM::CSS.
- Fixed a few small formatting bugs in Mojolicious::Plugin::PODRenderer.
6.30 2015-11-11
- Fixed bug in Mojolicious::Renderer where layouts could not be used with
template inheritance. (nic, sri)
6.29 2015-11-03
- Fixed a few bugs in built-in templates. (Zoffix, sri)
6.28 2015-11-02
- Improved build_app method in Mojo::Server to work more like the load_app
method.
- Fixed multi-line attribute bug in Mojo::DOM::HTML. (jamadam)
6.27 2015-10-29
- Updated HTML5 entities in Mojo::Util.
- Improved Mojo::Server::Prefork to log if the process id file could not be
created.
6.26 2015-10-28
- Renamed built-in templates with more descriptive names.
- Added warmup methods to Mojolicious::Renderer and Mojolicious::Static.
6.25 2015-10-21
- Deprecated Mojo::Message::Request::proxy with boolean and string arguments
in favor of Mojo::Message::Request::via_proxy.
- Moved all bundled files into "resources" directories.
- Added via_proxy attribute to Mojo::Message::Request.
- Improved Mojo::DOM::CSS to support selectors with leading and trailing
whitespace.
- Improved rendering of built-in templates to show actual template names in
log messages.
- Fixed punycode bug in Mojo::URL.
- Fixed "0" value bug in Mojo::JSON::Pointer.
6.24 2015-10-13
- Improved session security by not storing secrets in the stash and making
CSRF tokens much harder to guess.
- Improved commands to show all options that can affect their behavior.
- Fixed bug in Mojo::JSON::Pointer that prevented JSON Pointers with trailing
slash from working correctly. (dolmen)
- Fixed support for domains with trailing dot in Mojo::URL.
6.23 2015-10-06
- Improved documentation browser CSS.
- Fixed bug in Mojo::Transaction::WebSocket where an unsupported protocol
could be selected automatically.
- Fixed input record separator bug in Mojo::Util. (Zoffix, sri)
- Fixed small redirect bug in Mojo::UserAgent::Transactor.
6.22 2015-09-26
- Improved Mojo::JSON by reusing JSON::PP boolean constants.
- Improved uniq method in Mojo::Collection to accept a callback. (CandyAngel)
- Improved first and grep methods in Mojo::Collection to be able to call
methods.
- Improved support for empty attributes in Mojo::DOM::HTML.
6.21 2015-09-23
- Added val method to Mojo::DOM.
6.20 2015-09-15
- Deprecated Mojo::UserAgent::CookieJar::collecting in favor of
Mojo::UserAgent::CookieJar::ignore.
- Improved support for epoll/kqueue in Mojo::IOLoop::Client.
6.19 2015-09-12
- Added code of conduct to Mojolicious::Guides::Contributing.
- Added ignore attribute to Mojo::UserAgent::CookieJar.
- Added tls_version option to Mojo::IOLoop::Server::listen.
- Added version parameter to Mojo::Server::Daemon::listen.
6.18 2015-09-02
- Improved portability of slurp function in Mojo::Util.
- Fixed handling of parameters with multiple values in
Mojolicious::Plugin::TagHelpers.
- Fixed Makefile.PL to be compliant with version 2 of the CPAN distribution
metadata specification. (Grinnz)
6.17 2015-08-21
- Improved slurp method in Mojo::Asset::File to only use one file descriptor.
6.16 2015-08-19
- Improved check_box, radio_button and select_field tag helpers to handle the
attributes "checked" and "selected" correctly.
- Improved performance of slurp function in Mojo::Util slightly.
6.15 2015-08-13
- Removed deprecated build_body and build_headers methods from Mojo::Content.
- Improved Mojo::Transaction::HTTP performance slightly.
- Fixed warnings in Mojo::DOM.
6.14 2015-07-12
- Improved app generator command not to create a log directory.
6.13 2015-07-08
- Added support for validating file uploads.
- Added upload check to Mojolicious::Validator.
- Improved error messages for broken applications in Mojo::Server. (mst)
- Improved subscribers method in Mojo::EventEmitter to allow subscribers to be
modified more easily.
6.12 2015-06-18
- Welcome to the Mojolicious core team Dan Book.
- Added TO_JSON method to Mojo::Collection. (wttw)
- Added find_packages function to Mojo::Loader.
- Fixed bug in Mojo::Message where multipart content would get downgraded
unnecessarily.
6.11 2015-05-16
- Deprecated Mojo::Content::build_body and Mojo::Content::build_headers.
- Added headers_contain method to Mojo::Content.
- Updated jQuery to version 2.1.4.
- Fixed indentation of ASCII art in documentation browser. (jberger)
- Fixed bug where inline was not considered a reserved stash value.
6.10 2015-04-26
- Removed support for user/group switching, because it never worked
correctly, which means that this security feature has become an attack
vector itself. If you depend on this functionality, you can now use the
CPAN module Mojolicious::Plugin::SetUserGroup instead.
- Removed group and user attributes from Mojo::Server.
- Removed setuidgid method from Mojo::Server.
- Removed group and user settings from Hypnotoad.
- Removed -g/--group and -u/--user options from daemon and prefork commands.
- Added next_tick method to Mojo::Reactor::Poll.
- Improved next_tick callbacks to run in the same order in which they were
registered.
6.09 2015-04-25
- Improved HTML Living Standard compliance of Mojo::Parameters. (riche, sri)
- Fixed bug in Mojolicious::Types where the json MIME type did not specify a
charset. (kaktus)
6.08 2015-04-09
- Added is_established and server_open methods to
Mojo::Transaction::WebSocket.
- Improved finish and send methods in Mojolicious::Controller to
automatically establish the WebSocket connection if necessary.
- Improved pod_to_html helper in Mojolicious::Plugin::PODRenderer to unindent
verbatim blocks. (OlegG)
6.07 2015-04-07
- Fixed Windows bug in "daemon.t".
6.06 2015-04-06
- Added element_count_is method to Test::Mojo. (Zoffix)
- Added "chat.pl" to example scripts.
- Improved Mojo::DOM::CSS to handle attribute selectors with single quotes
correctly.
6.05 2015-03-24
- Fixed circular require bug in Mojo::Base and Mojo::Util.
6.04 2015-03-23
- Improved Mojo::Reactor::EV and Mojo::Reactor::Poll to fail more
consistently.
- Improved Mojo::Base performance slightly.
- Fixed a few bugs in Mojo::DOM::CSS that required class, id and attribute
selectors, as well as pseudo-classes, to be in a specific order.
6.03 2015-03-16
- Added support for overriding the HTTP request method with the _method query
parameter.
- Added suggested_method method to Mojolicious::Routes::Route.
- Improved portability of some tests.
6.02 2015-03-09
- Added daemon attribute to Mojo::Server::Morbo.
- Improved portability of Mojo::Server::Morbo.
- Fixed empty template handling in Mojo::Template.
6.01 2015-03-03
- Added content_with helper to Mojolicious::Plugin::DefaultHelpers.
- Relaxed request-line handling in Mojo::Message::Request.
- Fixed code name in version command and built-in templates.
6.0 2015-02-26
- Code name "Clinking Beer Mugs", this is a major release.
- Removed name listing support from param method in Mojolicious::Controller.
- Removed name listing support from param method in Mojo::Parameters.
- Removed name listing support from error and param methods in
Mojolicious::Validator::Validation.
- Removed multi-name support from cookie, param and signed_cookie methods in
Mojolicious::Controller.
- Removed multi-name support from param method in
Mojolicious::Validator::Validation.
- Removed multi-name support from param method in Mojo::Parameters.
- Removed multi-name support from cookie and upload methods in Mojo::Message.
- Removed custom socket support from Mojo::UserAgent.
- Removed is_fatal, is_level and log methods from Mojo::Log.
- Removed auto_render method from Mojolicious::Routes.
- Removed deprecated object-oriented Mojo::Loader API.
- Removed deprecated accept_interval, lock and unlock attributes from
Mojo::IOLoop.
- Removed deprecated accept_interval, lock_file and lock_timeout attributes
from Mojo::Server::Prefork.
- Removed deprecated bridge method from Mojolicious::Routes::Route.
- Removed deprecated is_readable method from Mojo::Reactor.
- Removed deprecated siblings method from Mojo::DOM.
- Removed deprecated render_exception and render_not_found methods from
Mojolicious::Controller.
- Removed deprecated keep_alive_requests setting from Hypnotoad.
- Changed return values of all and find methods in
Mojo::UserAgent::CookieJar.
- Renamed template attribute in Mojo::Template to unparsed.
- Renamed extracting attribute in Mojo::UserAgent::CookieJar to collecting.
- Renamed types attribute in Mojolicious::Types to mapping.
- Renamed current attribute in Mojolicious::Routes::Match to position.
- Renamed pattern attribute in Mojolicious::Routes::Pattern to unparsed.
- Renamed all_contents, contents, following_siblings, match, next_sibling,
node, preceding_siblings, previous_sibling and type methods in Mojo::DOM to
descendant_nodes, child_nodes, following_nodes, matches, next_node, type,
preceding_nodes, previous_node and tag.
- Renamed match methods in Mojo::DOM and Mojo::DOM::CSS to matches.
- Renamed extract and inject methods in Mojo::UserAgent::CookieJar to collect
and prepare.
- Renamed inject method in Mojo::UserAgent::Proxy to prepare.
- Renamed params method in Mojo::Parameters to pairs.
- Renamed match method in Mojolicious::Routes::Match to find.
- Renamed -A option of prefork command to -a.
- Added names method to Mojo::Parameters.
- Added failed and passed methods to Mojolicious::Validator::Validation.
- Added -I and -M options to prefork command.
- Fixed Mojo::Template support for parentheses in expressions. (jberger, sri)
5.82 2015-02-22
- Deprecated Mojo::Reactor::is_readable.
- Deprecated keep_alive_requests setting in Hypnotoad in favor of requests.
- Improved Morbo to restart slightly faster.
- Fixed bug in daemon and prefork commands where --inactivity-timeout option
was called --inactivity.
5.81 2015-02-20
- Deprecated object-oriented Mojo::Loader API.
- Added data_section, file_is_binary, load_class and find_modules functions
to Mojo::Loader.
- Improved design of built-in templates.
- Fixed test command to not let Test::Harness enable global warnings by
default. (OlegG)
5.80 2015-02-18
- Deprecated Mojo::IOLoop::accept_interval, Mojo::IOLoop::lock and
Mojo::IOLoop::unlock.
- Deprecated Mojo::Server::Prefork::accept_interval,
Mojo::Server::Prefork::lock_file and Mojo::Server::Prefork::lock_timeout.
- Removed -a/--accept-interval, --lock-file and -L/--lock-timeout options
from prefork command.
- Removed accept_interval, lock_file and lock_timeout settings from
Hypnotoad.
- Added stop_gracefully method to Mojo::IOLoop.
- Added finish event to Mojo::IOLoop.
- Reduced CPU usage of Mojo::IOLoop and Mojo::Server::Prefork significantly.
- Improved app generator command to use current best practices.
- Fixed bug where semicolons at the end of a cookie were not parsed
correctly. (dmw397)
- Fixed bug in Mojo::IOLoop where connection limits were not properly
enforced.
- Fixed url_for to handle paths without trailing slash correctly in embedded
applications.
5.79 2015-02-13
- Fixed bug in Mojo::Reactor::Poll that caused excessive idle CPU usage.
5.78 2015-02-12
- Replaced expires method in Mojo::Cookie::Response with an attribute.
- Added split_cookie_header function to Mojo::Util.
- Updated IO::Socket::SSL requirement to 1.94.
- Relaxed RFC 822/1123 and RFC 850/1036 handling in Mojo::Date.
- Improved Mojo::Reactor::Poll performance significantly.
- Improved text method in Mojo::Message to use default_charset as well.
- Improved design of built-in templates.
- Fixed bug in Mojo::DOM that made parsing a requirement.
- Fixed warnings in Mojo::URL.
5.77 2015-02-03
- Added content_security_policy method to Mojo::Headers.
- Fixed canonicalize in Mojo::Path to not remove parts with more than three
dots.
5.76 2015-02-02
- Emergency release for a critical security issue that can expose files on
Windows systems, everybody should update!
- Increased default max_message_size from 10MB to 16MB in Mojo::Message.
- Reduced default max_line_size from 10KB to 8KB in Mojo::Headers and
Mojo::Message.
- Improved Hypnotoad load balancing by calling srand() after starting a new
worker in Mojo::Server::Prefork.
- Improved design of built-in templates.
- Fixed bug in Mojo::IOLoop where the accept limit was applied too broadly.
- Fixed bug in Mojo::Server::Prefork where the TTOU signal would not always
stop a worker.
- Fixed bug in Mojo::DOM::CSS where combinators needed to be surrounded by
whitespace.
5.75 2015-01-26
- Added healthy method to Mojo::Server::Prefork.
- Improved all built-in web servers to die if group or user assignment
failed.
- Improved Hypnotoad to wait for new workers to be ready before stopping the
old ones during hot deployment.
- Improved commands and log messages to use less punctuation.
- Fixed bug in Mojo::IOLoop where the callback passed to next_tick would
receive the wrong invocant.
- Fixed race condition and memory leak in Mojo::Server::Prefork.
5.74 2015-01-25
- Improved parser errors to be more consistent with connection errors in
Mojo::Message::Request and Mojo::Message::Response.
- Fixed "0" value bug in Mojo::Parameters.
- Fixed bug where placeholder default values would not always have
precedence.
- Fixed proxy detection in get command.
5.73 2015-01-24
- Deprecated Mojolicious::Routes::Route::bridge in favor of
Mojolicious::Routes::Route::under.
- Deprecated Mojolicious::Controller::render_exception in favor of
reply->exception helper.
- Deprecated Mojolicious::Controller::render_not_found in favor of
reply->not_found helper.
- Removed deprecated object-oriented Mojo::JSON API.
- Removed deprecated stringification support from Mojo::Collection.
- Removed deprecated support for data arguments from Mojo::JSON::Pointer.
- Removed deprecated AUTOLOAD and pluck methods from Mojo::Collection.
- Removed deprecated AUTOLOAD and val methods from Mojo::DOM.
- Moved tutorial from Mojolicious::Lite to Mojolicious::Guides::Tutorial.
- Added term_escape method to Mojo::ByteStream.
- Added term_escape function to Mojo::Util.
- Improved get command to use the user agent of the application.
- Improved diagnostics information for MOJO_DAEMON_DEBUG,
MOJO_USERAGENT_DEBUG and MOJO_WEBSOCKET_DEBUG environment variables.
- Fixed tag helpers to generate correct HTML5. (batman, sri)
- Fixed JSON Pointer escaping bug.
- Fixed portability bug in monkey_patch tests.
5.72 2015-01-11
- Added EXPERIMENTAL support for case-insensitive attribute selectors like
[foo="bar" i] to Mojo::DOM::CSS.
- Added max_lines attribute to Mojo::Headers.
- Improved Mojo::Reactor::EV to update the current time before starting a
timer.
- Improved error messages for start-line and header limits.
- Fixed bug in Mojo::Headers where max_line_size was not checked correctly.
- Fixed whitespace bug in Mojo::DOM::CSS.
5.71 2015-01-01
- Updated Net::DNS::Native requirement to 0.15 for some important bug fixes.
- Updated jQuery to version 2.1.3.
- Improved Mojo::URL performance.
- Fixed fragment and userinfo normalization bugs in Mojo::URL.
- Fixed query charset bug in Mojo::URL.
- Fixed a few merge bugs in Mojo::Parameters.
5.70 2014-12-18
- Improved Mojo::Template performance.
- Fixed error handling bugs in Mojo::IOLoop::Stream.
- Fixed a few limit bugs in Mojo::Message.
- Fixed Windows bug in Mojo::IOLoop::Client. (OlegG)
5.69 2014-12-13
- Deprecated Mojo::DOM::siblings.
- Added following, following_siblings, preceding and preceding_siblings
methods to Mojo::DOM.
- Added port method to Mojo::IOLoop::Server.
- Removed deprecated emit_safe method from Mojo::EventEmitter.
- Removed deprecated render_static method from Mojolicious::Controller.
- Removed deprecated has_conditions method from Mojolicious::Routes::Route.
- Updated Net::DNS::Native requirement to 0.14 for some important bug fixes.
- Improved Mojo::DOM::HTML performance slightly.
- Fixed parent combinator bug in Mojo::DOM::CSS.
- Fixed whitespace bug in Mojo::DOM::HTML.
- Fixed Mojo::UserAgent::Transactor to handle query parameters more like
most common browsers.
5.68 2014-12-02
- Improved Mojo::DOM::CSS performance significantly.
- Fixed deprecation warnings in get command.
- Fixed bug in Mojolicious::Controller where sending a WebSocket message
would cause multiple resume events.
5.67 2014-11-27
- Improved overall performance by deserializing sessions only on demand.
- Fixed bug where embedded applications would deserialize sessions twice.
5.66 2014-11-26
- Improved many WebSocket tests in Test::Mojo to be able to fail gracefully.
- Fixed bug in Mojo::DOM::CSS where the :empty pseudo-class would not ignore
comments and processing instructions.
5.65 2014-11-24
- Improved installable scripts to use #!perl. (jberger)
- Improved Mojo::JSON security by escaping the "/" character.
- Improved Mojolicious::Commands to reset the global Getopt::Long
configuration more safely.
- Fixed bug in Mojo::DOM::CSS where selected results would also include the
current root element.
5.64 2014-11-22
- Fixed bug in Mojolicious::Commands where the global Getopt::Long
configuration would be changed after a command had already been loaded.
5.63 2014-11-21
- Improved portability of some tests.
- Fixed a few multipart form handling bugs.
5.62 2014-11-18
- Fixed bug in Mojolicious::Routes::Pattern where optional placeholders in
nested routes would sometimes not work correctly.
- Fixed bug where "handler" was not an allowed name for controller methods.
5.61 2014-11-14
- Moved entities.txt into the DATA section of Mojo::Util to avoid
gratuitously breaking module bundlers.
5.60 2014-11-11
- Added to_array method to Mojo::Collection.
- Added xss_escape function to Mojo::Util.
- Updated Net::DNS::Native requirement to 0.12 for some important bug fixes.
5.59 2014-11-07
- Added support for non-blocking name resolution with Net::DNS::Native.
5.58 2014-11-06
- Improved error handling in Mojo::IOLoop::Client.
5.57 2014-11-02
- Deprecated stringification support in Mojo::Collection in favor of
Mojo::Collection::join.
- Deprecated Mojo::Collection::pluck in favor of Mojo::Collection::map.
- Deprecated Mojo::DOM::val.
- Improved map method in Mojo::Collection to be able to call methods.
- Improved tap method in Mojo::Base to be able to call methods.
5.56 2014-10-29
- Deprecated Mojo::Collection::AUTOLOAD in favor of Mojo::Collection::pluck.
- Deprecated Mojo::DOM::AUTOLOAD in favor of Mojo::DOM::children.
5.55 2014-10-28
- Deprecated support for data arguments in Mojo::JSON::Pointer.
- Added access_control_allow_origin, content_language, content_location and
strict_transport_security methods to Mojo::Headers.
5.54 2014-10-23
- Deprecated object-oriented Mojo::JSON API.
- Added auto_decompress attribute to Mojo::Content.
- Improved Mojo::Content to parse content more defensively.
- Fixed chunked transfer encoding bug in Mojo::Content.
- Fixed bug where Mojo::UserAgent would try to follow redirects for
protocols other than HTTP and HTTPS.
5.53 2014-10-20
- Fixed bug in Mojo::Server where secondary groups were not reassigned
correctly. (ksm, sri)
5.52 2014-10-18
- Fixed read-only file system compatibility of Mojo::Asset::File.
5.51 2014-10-17
- Fixed bug in Mojolicious::Validator::Validation where every_param would
sometimes return an array reference containing an undef value.
- Fixed Mojo::ByteStream and Mojo::Collection to always return true in
boolean context.
5.50 2014-10-15
- Improved Mojo::DOM::HTML performance slightly.
- Fixed description list parsing bug in Mojo::DOM::HTML. (Trelane)
5.49 2014-10-10
- Improved form content generator to allow custom content types.
- Improved Mojo::Server to load applications consistently for all servers.
(tianon, sri)
- Fixed Mojolicious::Static to hide files without extensions in DATA
sections.
- Fixed inflate command to ignore files without extensions.
- Fixed bug in Mojolicious::Routes::Route where formats could be rendered
twice for embedded applications.
5.48 2014-10-07
- Emergency release for a serious security issue that can result in
parameter injection attacks, everybody should update!
Breaking change: Methods that previously worked differently in scalar than
in list context now always assume scalar context, and new methods have
been added to cover the list context functionality.
- Added every_cookie and every_upload methods to Mojo::Message.
- Added every_param method to Mojo::Message::Request.
- Added every_param method to Mojo::Parameters.
- Added every_cookie, every_param and every_signed_cookie methods to
Mojolicious::Controller.
- Added every_param method to Mojolicious::Validator::Validation.
- Added from_json and to_json functions to Mojo::JSON.
- Improved pluck method in Mojo::Collection to be able to extract values from
hash references.
5.47 2014-09-28
- Improved url_for performance.
5.46 2014-09-26
- PAUSE lost the previous release.
5.45 2014-09-26
- Deprecated Mojolicious::Routes::Route::has_conditions.
- Added extracting attribute to Mojo::UserAgent::CookieJar.
- Improved performance of next, next_sibling, previous and previous_sibling
methods in Mojo::DOM significantly.
- Improved Mojo::Cache to allow caching to be disabled. (mvgrimes, sri)
- Fixed url_for bug where deeply nested WebSocket routes would not work
correctly.
5.44 2014-09-23
- Fixed bug in Mojolicious::Renderer that prevented proxy objects from being
reused.
5.43 2014-09-22
- Updated Makefile.PL for version 2 of the CPAN distribution metadata
specification.
- Improved get command to not depend on Content-Type headers for
differentiating between JSON and HTML/XML.
5.42 2014-09-17
- Fixed url_for bug where an unnecessary slash could be rendered before
formats.
5.41 2014-09-13
- Deprecated Mojolicious::Controller::render_static in favor of
reply->static helper.
- Added mtime attribute to Mojo::Asset::Memory.
- Added mtime method to Mojo::Asset and Mojo::Asset::File.
- Added reply->asset and reply->static helpers to
Mojolicious::Plugin::DefaultHelpers.
- Fixed bug in Mojo::UserAgent where connections would sometimes not get
closed correctly.
5.40 2014-09-12
- Deprecated Mojo::EventEmitter::emit_safe.
- Added reply->exception and reply->not_found helpers to
Mojolicious::Plugin::DefaultHelpers.