Commit graph

706 commits

Author SHA1 Message Date
Thomas Reynolds
87aa288f1e Merge pull request #1054 from bhollis/reload
Gracefully handle syntax (and other) errors when reloading config.rb.
2013-10-21 10:37:36 -07:00
Thomas Reynolds
764efe65cd Merge pull request #1053 from bhollis/logging
Allow logging to be sent to a file
2013-10-21 10:37:02 -07:00
Thomas Reynolds
13511f9323 Merge pull request #1052 from bhollis/builder
Refactor the Build CLI code to be easier to read
2013-10-21 10:36:44 -07:00
Ben Hollis
12de88e8d7 Allow logging to be sent to a file
In config.rb, you can write:

logger 'middleman.log'
2013-10-19 20:20:07 -07:00
Ben Hollis
441ec95065 Gracefully handle syntax (and other) errors when reloading config.rb.
With this change, config.rb modifications that result in an error will print the error to the logs but will not kill the server - the previous version of the application will still be running just fine, so that you can try and fix your config.rb without having to restart. The server no longer simply hangs with no message, which was the previous behavior. This fixes #702.
2013-10-19 19:39:10 -07:00
Ben Hollis
e773e8c1a9 Fix tests under 1.8 by coercing Kramdown's OrderedHash into a real Hash. 2013-10-19 19:02:34 -07:00
Ben Hollis
d3e4882b93 Refactor the Build CLI code to be easier to read and use Pathname throughout.
This also throws an error if :build_dir is set to a parent directory of :source_dir, which resolves #991.
2013-10-19 18:11:29 -07:00
Ben Hollis
ae2b6b34f1 Fix a nasty memory/proc leak pointed out by @Xanders. Fixes #1020. 2013-10-19 16:45:07 -07:00
Ben Hollis
da34153e0c Support HEAD requests. Fixes #1021. 2013-10-19 16:18:11 -07:00
Ben Hollis
4055479ff3 Clean page classes of invalid CSS characters and make sure they don't start with a number 2013-10-19 15:31:49 -07:00
Dan Allen
5439139b76 added cucumber tests for #1043, AsciiDoc support 2013-10-19 14:41:52 -06:00
Dan Allen
55d844f667 resolves #1043 added a renderer for AsciiDoc files 2013-10-17 00:49:53 -06:00
Thomas Reynolds
7762abe461 prep 2013-10-15 14:40:01 -07:00
Thomas Reynolds
1260188069 attempt to address asset host and hash combo, give up. 2013-10-15 14:33:25 -07:00
Thomas Reynolds
43653b70a4 Merge pull request #1019 from tavon/master
Do not cache generated redirect index file.
2013-09-24 23:39:34 -07:00
Thomas Reynolds
d842db1772 Merge pull request #1017 from bhollis/url_for
Look for assets using url_for before falling back to the "images" directory
2013-09-24 23:33:53 -07:00
John Hwang
5b691fff10 Do not cache generated redirect index file.
Returning visitors to site were being redirected to the old page because their browser was caching the index page which was pointing to the previously URL.
2013-09-24 10:59:52 -04:00
Ben Hollis
f2538f2e54 Look for assets using url_for before falling back to the "images" directory 2013-09-22 14:02:51 -07:00
Ben Hollis
a746be1342 Use our magic linking functions from Kramdown, just like we do with Redcarpet. Fixes #999 2013-09-16 23:46:59 -07:00
Ben Hollis
8a928863f2 Normalize paths in the cleaning queue using realpath in order to avoid complicated symlink problems. 2013-09-16 22:13:39 -07:00
Ben Hollis
268538f926 Make an effort to handle spaces in filenames in a way that url_for can handle. 2013-09-16 21:07:57 -07:00
Thomas Reynolds
cd9964edbe prep 2013-09-07 13:12:31 -07:00
Steven Sloan
ee7c9e6a6e Add support/tests for Redcarpet 3.0.0 features
- :underline
- :highlight
- :disable_indented_code_blocks

Fix support for
- :link_attributes
- :filter_html

separate Redcarpet extensions from renderer options, add specs for missing renderer options

add specs for the missing/new redcarpet extensions, [ :lax_spacing, :underline, :highlight, :quote, :disable_indented_code_blocks, :footnotes ]

fix link_attributes option for Redcarpet

patch Tilt's reverse option aliases (they were there for RC1)

adjust test data for Redcarpet toc_data to match the current way it renders in 3.0

revert tests that aren't in redcarpet 3.0.0

add a cucumber exempt tag for mri-1.8.x

move redcarpet 3 specific extensions to a separate scenario filtered by the no18 tag
2013-08-27 11:37:37 -04:00
Thomas Reynolds
abfe5e673f Merge pull request #992 from Mark-Simulacrum/master
Add listener latency option.
2013-08-21 16:01:27 -07:00
Mark Simulacrum
7606dfd494 Change latency option to :numeric type. 2013-08-21 05:33:29 -06:00
Mark-Simulacrum
c12d98df4f add comma at end of line 74 2013-08-20 15:59:38 -06:00
Mark-Simulacrum
24ce8334ee Add latency option to listener object. 2013-08-20 06:36:51 -06:00
Mark-Simulacrum
d37eca6a54 Add latency option.
Aliased to -l.
2013-08-20 06:32:49 -06:00
Mark-Simulacrum
b1b3339597 Create automated alt tag addition, based on image name.
Needs documentation.
2013-08-18 20:06:39 -06:00
Linus Pettersson
e77e615314 Fixed encoding for new buffer 2013-08-18 00:07:26 +02:00
Ben Hollis
f92ae94728 Escape filenames in regexes. Fixes #942. 2013-08-15 22:04:18 -07:00
Jason Webster
dd08ea2f6d Fix wrong http pathing/prefixing example in generated config 2013-08-15 15:24:44 -07:00
Thomas Reynolds
6d1effd2e7 bump 2013-07-21 23:32:28 -07:00
Aggelos Orfanakos
2a8b22558a Don't set resp Content-Type for some status codes
There must not be a Content-Type set when the Status is 1xx, 204, 205 or
304, otherwise Rack blows up with the following error: "Content-Type
header found in 304 response, not allowed"
2013-07-13 05:01:32 +03:00
Aggelos Orfanakos
83d83c5c8c Fix double-escaping of config settings 2013-07-12 23:06:51 +03:00
Aggelos Orfanakos
fffe36f42c Fix double-escaping of resource properties 2013-07-12 22:54:15 +03:00
Ben Hollis
bef6e13c5f I never meant to actually name this parameter blockm 2013-07-08 22:17:12 -07:00
Ben Hollis
8979fe9f18 Print file where YAML/JSON errors occur. Fixes #954. 2013-07-08 22:16:03 -07:00
Thomas Reynolds
8b970f9d92 support redcarpet's no_ flags which need to be re-implemented in our overrides. Fixes #951 2013-07-08 14:21:36 -07:00
Thomas Reynolds
5806f2cbf5 auto include wdm on windows platforms 2013-07-07 20:57:04 -07:00
Thomas Reynolds
dd2525c18e Merge branch 'master' of github.com:middleman/middleman 2013-07-02 14:42:54 -07:00
Thomas Reynolds
6403daccd3 prep 2013-07-02 14:42:44 -07:00
Arron Mabrey
44e5ff3f6c Update Sitemap source_dotfiles to support .nojekyll file 2013-06-30 18:46:39 -04:00
Alan Larkin
26b7f46978 Fixed typo in middleman-core/core-extensions/request.rb. 2013-06-25 14:55:12 +01:00
Thomas Reynolds
b2ecf5526b ignore all ds_store 2013-06-24 14:26:58 -07:00
Thomas Reynolds
b6a73ccfe5 prep 2013-06-24 14:15:27 -07:00
Thomas Reynolds
c7d3e7d601 Fix regex which was allowing i18n to file yaml files in the data folder 2013-06-24 13:56:32 -07:00
Thomas Reynolds
37752dc291 fix layouts with implied extensions 2013-06-24 13:39:14 -07:00
Thomas Reynolds
3399ee207e dont hardcode ignored build dir name 2013-06-23 15:15:43 -07:00
Steve Faulkner
f68f01a574 Update gitignore 2013-06-22 22:53:10 -05:00
Thomas Reynolds
d86dffa7c6 implement redirect support 2013-06-19 11:13:23 -07:00
Thomas Reynolds
0415b76d4f tests for content_tag escaping 2013-06-18 11:12:41 -07:00
Manuel Meurer
c75e31ae94 Fix content_tag helper, only try to mark content as safe if it is not a hash of options 2013-06-18 10:12:38 +02:00
Thomas Reynolds
0e69928939 bump ver 2013-06-17 00:47:58 +00:00
Thomas Reynolds
efe52f7cca Check if set is redefining a param at the class level. Fixes #939 2013-06-17 00:47:10 +00:00
Thomas Reynolds
f0707c0968 Prevent relative asset helper from munging data URIs. Closes #938. 2013-06-15 16:22:14 -07:00
Thomas Reynolds
9320007be6 dum dum dum..... 2013-06-14 16:31:51 -07:00
Thomas Reynolds
8eac168618 new rc 2013-06-13 09:23:31 -07:00
Thomas Reynolds
913d2b7049 Implement generic which is a simple way to build a file from Rack 2013-06-13 09:05:13 -07:00
Thomas Reynolds
7e405fc414 And by 1.8, I mean MRI 1.8 2013-06-12 17:58:59 -07:00
Thomas Reynolds
e03362e6f6 Apparently Ruby 1.8 doesn't have Proc.source_location 2013-06-12 17:40:17 -07:00
Thomas Reynolds
7d7d5e683e Set current_engine on the context, not self, since we dup self and use that for each render loop. Closes #860 2013-06-12 15:21:31 -07:00
Thomas Reynolds
a52effc119 continue forcing Padrino to html_safe everything 2013-06-12 11:19:02 -07:00
Thomas Reynolds
d71af3f5a1 Force padrino to skip safebuffer on erb 2013-06-08 15:36:14 -07:00
Thomas Reynolds
d728df12cf bump ver 2013-06-05 13:40:45 -07:00
Thomas Reynolds
265f90e240 Add callback so v4 extensions can see when other extensions are activated 2013-06-04 15:51:03 -07:00
Thomas Reynolds
69c36e691f use latest padrino 2013-06-04 09:56:33 -07:00
Thomas Reynolds
39d3fa01ad Merge branch 'master' of github.com:middleman/middleman 2013-06-04 09:48:45 -07:00
Thomas Reynolds
a9839731e6 only require padrino once 2013-06-04 09:48:01 -07:00
Thomas Reynolds
d3d85f8bc7 Merge pull request #923 from pulletsforever/feature/rack-block
Allow block to be passed through from Middleman.server()
2013-06-03 13:35:01 -07:00
David W. Keith
f2f17c33b3 Allow block to be passed through from Middleman.server() 2013-06-03 11:48:16 -07:00
Thomas Reynolds
c741735446 update path to helpers for sitemap metapages 2013-06-03 10:07:09 -07:00
Karl Freeman
32b113dc93 include '/vendor' in ignored files / folders 2013-06-03 17:06:43 +01:00
Thomas Reynolds
d0cd3e3cf9 layouts_dir is now configurable. Closes #899 2013-06-01 15:25:44 -07:00
Thomas Reynolds
149f6ffa5b fix builder not cleaning empty directories 2013-05-31 21:20:15 -04:00
Thomas Reynolds
9d50cad910 Merge branch 'master' of github.com:middleman/middleman 2013-05-31 21:01:34 -04:00
Thomas Reynolds
10f1d7ada2 break apart some methods to make code less complex 2013-05-31 20:46:12 -04:00
Ben Hollis
dbcb28dded Add an "empty" template and let template classes override the "Gemfile" template.
Custom template classes can define "self.gemfile_template" to return the path to their own Gemfile template, without having to reimplement our generate_bundler! task.
2013-05-30 21:17:43 -07:00
Ben Hollis
7127401aa2 Micro-optimize some regexes 2013-05-30 21:17:42 -07:00
Ben Hollis
7bdf28a421 Fix ignoring layouts from the sitemap when the source directory has been set to something other than 'source'. Fixes #896. 2013-05-30 20:17:58 -07:00
Jonathan Allard
56f16c2488 Fix #823-2 to allow only one extension on localized views
Make Sitemap::Store#strip_away_locale actually do something
2013-05-30 13:37:31 -04:00
Thomas Reynolds
31f238f881 Refactor some of i18n for better codeclimate scores. In the process, make nested i18n files work like rails 2013-05-29 14:00:37 -04:00
Thomas Reynolds
86cd626084 write some file change and deletion tests for better data coverage 2013-05-29 10:59:03 -04:00
Ben Hollis
f611a7185b Clean up frontmatter a bit 2013-05-28 22:29:58 -07:00
Ben Hollis
e03ef4226a Cache the filtered resource list to avoid calling Resource#ignored? a ton 2013-05-26 16:38:28 -07:00
Thomas Reynolds
950aace674 Make Frontmatter a class-based extension to simplify file 2013-05-24 17:11:46 -07:00
Thomas Reynolds
5104579623 after_build support in class-based extension 2013-05-24 15:49:15 -07:00
Thomas Reynolds
7611f4ef4a Listen bundles these gems again (le sigh) 2013-05-24 11:34:03 -07:00
Thomas Reynolds
3d804494f5 ignore tmp dir 2013-05-24 10:34:10 -07:00
Thomas Reynolds
117a9ab6f9 unneeded require 2013-05-23 16:27:37 -07:00
Thomas Reynolds
5b8c7a2494 move vendored gems into shared root 2013-05-23 16:06:20 -07:00
Thomas Reynolds
7a227b8bac stub out blank middleman-more gem for backwards compat with extensions 2013-05-23 15:26:33 -07:00
Thomas Reynolds
ed9012ef5b Ruby 1.8 can't regex on a symbol (or something) 2013-05-23 14:55:26 -07:00
Thomas Reynolds
bcdaad6443 Merge pull request #906 from adamesque/master
Make sure Frontmatter data is actually cached
2013-05-23 13:35:01 -07:00
Thomas Reynolds
424fee0722 Cache frontmatter repeated calling of recursively_enhance 2013-05-23 13:31:52 -07:00
Adam Luikart
c60cddc1ac Make sure Frontmatter data is actually cached. Fixes #903
(Can't return a value to early out of a begin…end expression in Ruby)
2013-05-23 14:50:46 -05:00
Ben Hollis
dbbf84016f Fix c9d151ba66 for when files are outside the project 2013-05-22 23:39:56 -07:00
Thomas Reynolds
c9d151ba66 The file watcher knows which files exist, so don't use slow File.exists?
Possible solution for #903
2013-05-22 17:38:01 -07:00
Thomas Reynolds
fc37ef9b99 vendor padrino 2013-05-19 13:53:37 -07:00
Thomas Reynolds
b19e8bc185 reorg some of the more stuff 2013-05-19 13:26:16 -07:00
Thomas Reynolds
15cfbd3b51 bump 2013-05-16 17:03:32 -07:00
Ben Hollis
0b017bbf3d Require padrino helpers from sitemap meta page 2013-05-12 13:55:24 -07:00
Ben Hollis
2d17fd7480 Show a warning when default helpers or Compass are not installed. 2013-05-12 10:35:40 -07:00
Ben Hollis
ee05fa3d2c Add total to the end of gzip output 2013-05-12 10:09:53 -07:00
Thomas Reynolds
9ebddeed1d merge more into core, use gem availability to autoload 2013-05-09 14:41:26 -07:00
Ben Hollis
b4d75351a2 Make errors more obvious during build (with color) and run after_build hooks even if there's an error. 2013-05-04 10:57:17 -07:00
Ben Hollis
64878bfc23 Replace all_files_under with method that doesn't modify in-place 2013-05-04 10:56:38 -07:00
Thomas Reynolds
2ef3b7e4d9 fix listen deprecation 2013-05-03 11:40:30 -07:00
Thomas Reynolds
b230018692 quick release to work around i18n gem dep problem 2013-05-03 11:24:53 -07:00
Thomas Reynolds
4964022998 rollback some versions 2013-05-03 11:24:05 -07:00
Thomas Reynolds
fdc5154462 scope it, real good 2013-05-02 23:01:30 -07:00
Ben Hollis
1d88a52170 Make the list of regexes ignored by FileWatcher configurable 2013-05-02 22:09:54 -07:00
Ben Hollis
5970333ca2 Fixups for localizable files 2013-05-02 22:03:28 -07:00
Ben Hollis
d58acae939 Progress towards making localizable pages work 2013-05-02 21:17:50 -07:00
Jonathan Allard
23b6efbb06 Store#extensionless_path: Change implementation to make overrides easier 2013-05-02 19:14:59 -07:00
Ben Hollis
1362a1fc81 Update default config.rb to be a bit more modern 2013-05-02 18:59:39 -07:00
Ben Hollis
3080857316 Merge pull request #840 from barraponto/livereload_instructions
Document livereload usage in config file
2013-05-02 18:55:48 -07:00
Will Koehler
25d7544103 Add [] operator and has_key? to DataStore to make DataStore act like a hash.
The main benefit of this is to add the ability to gracefully handle the case when data is not present.
2013-05-02 16:39:28 -04:00
Thomas Reynolds
b4edf7cf16 update the extension template to new class system 2013-05-01 09:37:33 -07:00
Ben Hollis
fa17134c0a Call the :initialized hook after the build configuration hook so extensions don't get activated but not initialized 2013-05-01 01:12:50 -07:00
Ben Hollis
513e6dc2ad Attempt a fix for #837 2013-04-30 19:52:33 -07:00
Ben Hollis
53c4413cc3 Define respond_to? on DataStore. Fixes #872. 2013-04-30 18:27:26 -07:00
zbo
fce9d17a81 bug fix: loading assets in pre-release gems (like :path=> :git=> in Gemfile) 2013-04-30 18:44:01 +08:00
Thomas Reynolds
ab2f37d2e6 make I18n optional in core 2013-04-22 22:09:33 -07:00
Thomas Reynolds
8a54645de5 bump padrino to 0.11.x 2013-04-22 22:07:35 -07:00
Thomas Reynolds
8b1bcb6246 move livereload dep to Gemfile 2013-04-22 20:30:25 -07:00
Ben Hollis
e54c854e10 Go back to calling the source file "Source File" in the metadata view. 2013-04-21 18:13:48 -07:00
Thomas Reynolds
bf4862860d remove unbundled extensions from default config 2013-04-20 21:21:27 -07:00
Thomas Reynolds
2500e4d35d convert i18n to new ext 2013-04-20 14:58:06 -07:00
Thomas Reynolds
65c8dda565 automatically wire up sitemap manipulators, let extensions control their name, add self-registration method 2013-04-20 13:54:32 -07:00
Thomas Reynolds
10e1fd92d6 add extension helpers block, convert cache buster 2013-04-20 13:32:39 -07:00
Thomas Reynolds
b12a7bff3d Switch AssetHost to be a new-style extension. Setup extensions app scope earlier. Add supports_multiple_instances flag for extensions. 2013-04-20 12:59:14 -07:00
Thomas Reynolds
c2e2839b79 allow new sprockets 2013-04-14 16:21:36 -07:00
Thomas Reynolds
9af92fa7a3 Fix slim's complaints about extra render options (:layout) 2013-04-14 09:37:23 -07:00
Thomas Reynolds
ca333bb306 avoid warning with empty frontmatter 2013-04-14 09:29:34 -07:00
Thomas Reynolds
31651e4296 fix slim 2.0 deprecation warnings 2013-04-14 09:24:48 -07:00
Ben Hollis
a2822ce7f5 Fix --clean option to not be an error if it is passed (for backwards compatibility) 2013-04-13 18:58:54 -07:00
Ben Hollis
310eae255e Nice styling for sitemap pages 2013-04-13 18:13:51 -07:00
Ben Hollis
b4f131d615 Styling for config meta page 2013-04-13 18:13:51 -07:00
Ben Hollis
a2f0cc263a Merge pull request #861 from bhollis/extensions
A bunch of extensions and config meta pages work
2013-04-13 16:38:17 -07:00
Thomas Reynolds
2679b7c506 Default build to cleaning 2013-04-13 13:52:22 -07:00
Ben Hollis
6fcbac0368 Advertise meta pages on startup 2013-04-12 23:32:18 -07:00
Ben Hollis
774361bf89 Add extensions to meta config page 2013-04-12 23:32:18 -07:00
Ben Hollis
2d4668f524 Add in the metadata rack app early so it is there whenever middleware grabs the app 2013-04-12 23:32:18 -07:00
Ben Hollis
ee11ccb184 Reorganize Request a bit 2013-04-12 23:32:18 -07:00
Ben Hollis
8001dab258 Save information about extensions in a discoverable way.
This allows us to display extension config information at /__middleman/config/, and also allows users to modify extension
settings after they're activated in config.rb with a statement like "extensions[:asset_hash].options.exts += ['.js']".
2013-04-12 23:32:18 -07:00
Ben Hollis
b9b17e3ac5 In general, no need for bundle exec since we call bundle/setup 2013-04-12 23:32:17 -07:00
Ben Hollis
f7cd0e231e Update the extension template for the new Extension class. 2013-04-12 23:32:17 -07:00
Ben Hollis
b607d70a52 Simplify configuration a bit, and make extensions raise an error if the user tries to set an invalid extension option. 2013-04-12 23:32:17 -07:00
Thomas Reynolds
3f94df1eef prep 3.1 beta 2013-04-12 16:19:47 -07:00