Commit graph

90 commits

Author SHA1 Message Date
Sam Ford 2966adbe4e Migrate serve command to hyper (#904)
hyper is already included in Zola due to the reqwest dependency (used
in the link_checker and templates components). Replacing Actix with
hyper in the serve command reduces the number of dependencies and
slightly improves build times and binary size.
2020-02-02 17:48:43 -08:00
Vincent Prouillet adee654f30 Print remove_dir_all error on ctrl-c 2020-02-02 17:48:43 -08:00
Sam Ford 658e8a3a66 Update livereload.js to v3.1.0 (#891) 2020-02-02 17:48:43 -08:00
Sam Ford e804f907b2 Use Rust 2018 edition (#885) 2020-02-02 17:48:43 -08:00
Vincent Prouillet b396a1bc20 Add --drafts flag + rustfmt 2019-08-24 22:23:08 +02:00
Ever 4fff7508ba ADD: reload when themes change (#771)
* ADD: reload when themes change

close #713

* MOD: test can_detect_kind_of_changes
2019-08-24 19:05:02 +02:00
Vincent Prouillet 7f459940e1 Allow multiple taxonomies with same name in different language
Closes #766
2019-08-10 18:54:32 +02:00
Pyry Kovanen 4b43b75d22 Allow ignored_content to support markdown files (#759)
* Allow ignored_content to support markdown files

* Add test for markdown supported ignored_content
2019-08-01 10:18:42 +02:00
Vincent Prouillet 0e4e0c35b3 Remove all draft specific code 2019-07-19 11:10:28 +02:00
Vincent Prouillet ad6b713759 Do not use serve remove dir result
Closes #752
2019-07-17 09:55:14 +02:00
Vincent Prouillet 7c3a112d7d Render draft pages in serve mode 2019-07-12 23:47:15 +02:00
Jakub Turski 8a737d71fb Add an option to hard link files from static/ instead of copying. (#723)
* Add hard_link_static config option.

* Copy or hardlink file depending on an argument.

Modify the call sites for `copy_file` to account for the extra argument.

* Plug the config setting through to copy_file.

Don't apply the config option to theme's static directory.

* Update documentation.

* Backticks make no sense in this comment.

* Addressing PR comments.

* Be consistent with argument naming.
2019-07-12 22:54:18 +02:00
Tim Visée 90dad05c67 Add --open flag to serve command, to open URL in default browser (#739)
* Add --open flag to serve command, to open URL in default browser

* Mention serve --open flag in CLI documentation
2019-07-12 22:54:18 +02:00
Sam Ford 059ca55b36 Update LiveReload.js to v3.0.0 (#730) 2019-07-12 22:54:18 +02:00
Sam Ford 39f97f1520
Update actix-web to 1.0
* actix_web::fs is now found in the actix-files crate.

* NotFoundHandler is now implemented using ErrorHandlers and the
path to 404.html is provided to the not_found() function using
actix_web::App::data. This setup allows for additional StatusCodes
to be handled in the future, if desired.

* Cleanly serving index.html files for requests to directories now
appears to be possible simply by using index_file("index.html") in
the static files service, so handle_directory() is removed.
2019-06-18 19:05:00 -04:00
Vincent Prouillet 717f2112bb Add chmod to list of events on which to rebuild on serve 2019-05-27 19:51:43 +02:00
Vincent Prouillet debe0633bc Revert "Allow default base-path command line option to be set for building and serving"
This reverts commit 1815155c1d.
2019-04-20 12:50:34 +02:00
Vincent Prouillet 2aa3ea758b Set content-type for livereload script
Closes #667
2019-04-18 19:11:06 +02:00
Blake Smith 1815155c1d Allow default base-path command line option to be set for building and serving 2019-03-23 20:25:56 -05:00
Vincent Prouillet 9bc675f2a7 Fix colocated dates + rustfmt
Closes #607
2019-02-09 19:54:47 +01:00
Robert O'Callahan 986c49daf1 Fix --watch-only to actually rebuild the site 2019-01-25 13:48:45 +13:00
Vincent Prouillet 5caf24f06c Remove error-chain
Closes #576
2019-01-17 14:31:47 +01:00
Vincent Prouillet c441f5e857 Lower serve latency
Closes #554
2019-01-05 11:02:47 +01:00
Vincent Prouillet a12e9512bc fmt/clippy 2018-12-29 11:17:43 +01:00
Vincent Prouillet 7af314c61e Update deps + fmt 2018-11-14 17:34:21 +01:00
Vincent Prouillet afc30543cc Handle file/dir renaming
Closes #385
2018-11-10 22:23:39 +01:00
Vincent Prouillet d3bd22cfc4 Update changelog 2018-11-03 14:11:38 +01:00
Robert Masen b7c3d7199d add --watch-only flag 2018-11-01 17:20:35 -05:00
Vincent Prouillet b7ce4e59fb rustfmt 2018-10-31 08:18:57 +01:00
Vincent Prouillet 4c9fd0d302 Do not panic if something is already bound to 1111 in serve 2018-10-19 16:33:11 +02:00
Vincent Prouillet f84ae7c93b Rename all occurrences of gutenberg to zola in code 2018-10-18 22:50:06 +02:00
Vincent Prouillet 652196969c templates folder is now optional for serve
Fix #445
2018-10-11 20:52:42 +02:00
Vladislav Supalov ca982a268f Replace hard-coded directory slash in serve output (#457)
* Replace hard-coded directory slash in serve output
2018-10-02 11:31:18 +02:00
Christian Friedrich Coors 85529186e4 Fix some clippy warnings 2018-09-30 21:15:09 +02:00
Vincent Prouillet 58e2793097 Ignore one more type of emacs temp file 2018-09-13 16:57:38 +02:00
Johan Sigfrids 883357a7dd Handle relative path case 2018-08-05 08:59:56 +03:00
Johan Sigfrids 9be5e640ff Only test windows path handling on windows.
Otherwise Path won't know what to do.
2018-08-04 23:28:39 +03:00
Johan Sigfrids 64ec7e1578 Fix path handling on windows.
Delay turning paths into string. Instead, use methods on Path/PathBuf
to manipulate paths. This way the Rust Path implementation gets to deal with
all werid cross-platform issues.

This should fix #359
2018-08-04 22:47:45 +03:00
Vincent Prouillet a958f96955 Update actix 2018-07-22 12:14:16 +02:00
Owen Nelson 8f460dc28b Custom 404 page now template driven.
Since we are using a builtin template, we can be assured to have the
target file in place. Middleware renamed since it is bound directly to
the concept of handling 404s.
2018-06-25 23:24:57 -07:00
Owen Nelson 7ab22528a5 WIP Custom 404 page.
This is a proposed successor to #296 (rewritten for actix-web, rather
than iron).
2018-06-25 21:47:37 -07:00
eir 17106be497 Send Appropriate Response on Error
Users can now place custom error pages in static/error/<error_code>.html
e.g. static/error/404.html

If no custom page is found, a default plaintext describing the error is served.
2018-06-25 21:42:58 -07:00
Vincent Prouillet 42939b9a66 Fix error and cargo update 2018-06-25 18:08:20 +02:00
Unreal Hoang ffcc455ed5 Fix panicking handling file without extension 2018-06-25 18:07:41 +02:00
Owen Nelson 0e0cd244f3 Fix error handling put in place to side-step a confusing compiler error.
I filed actix/actix-web#261 as per the maintaner's request while
working on #310.

Having looked at the issue this morning, it appeared there was an
implementation to convert `io::Result` into a `Responder`, which kicked
in when I tried to access the `respond_to()` method without getting the
inner type from that first result before hand.
2018-06-25 18:07:41 +02:00
Owen Nelson 45156c46c9 map actix_web::error::Error to std::io::Error as string.
Conversion is by way of the `Display` trait impl since the actix errors
all seem to be more concerned with converting to/from http responses
rather than standard errors.
2018-06-25 18:07:41 +02:00
Owen Nelson 908f16855a Fixes #279 switch from iron to actix-web.
This implementation seems to match the behavior of the previous iron
server.

Static files are rendered as-is, and when a directory is requested, we
attempt to render a `index.html` found inside, or 404 if it's not
present.

The actix docs mention using channels to send a message to the server to
shut it down gracefully while running in another thread (as we're doing
here), but it seems like there would have to be some reorganization in
order to manage this effectively, perhaps holding the channel sender inside
`main.rs` so we can push a message through to the server when the call
to `cmd::serve()` finally returns.

For the time being, I left things without any careful attempts to
cleanup the server thread. This more or less matches the old iron
implementation as far as I can see.

The static file handling in actix is _just_ a little off from what we'd
want.
I left some comments in the source regarding why we can't just use their hook
for directory index redirection.
2018-06-25 18:07:41 +02:00
Vojtech Kral 6662014e55 Add image resizing support #225 2018-06-25 18:05:04 +02:00
Vincent Prouillet b892c07ed3 Don't hardcode the ws port
Closes #282
2018-06-25 17:59:04 +02:00
Vincent Prouillet 50a79c52f3 Fix serve not working with config flag
Closes #294
2018-06-25 17:58:27 +02:00