Commit graph

839 commits

Author SHA1 Message Date
Ben Hollis 39a9331232 Commit 8e99d39570 introduced a serious regression by encoding filenames within a "delete_if" block, meaning that every path in the list of all previously built files was re-encoded every time a file was built. For large projects this causes serious slowdowns - for a 4000 file test, it went from 14s to build to around 8 minutes to build. This change fixes the builder to only encode files when the file list is initially build, removing the bottleneck. 2013-12-10 22:11:59 -08:00
Ben Hollis 54bc3e44f7 Parallelize gzip extension using four threads 2013-12-10 22:06:41 -08:00
Ben Hollis 1f6904c0fc Set locale to :en around gzip extension while it works. It was originally only set for one message, not the whole extension. 2013-11-30 22:59:19 -08:00
Thomas Reynolds c500039197 Add build-mode test cases to see if #1068 occurs 2013-11-29 14:57:35 -08:00
Ben Hollis 9e8a16cd6d Switch back to single-variable storage for Sitemap::Resource#destination_path 2013-11-27 00:19:59 -08:00
Ben Hollis fd9f726b9a Remove 1.8 notice message 2013-11-25 22:51:34 -08:00
Ben Hollis 63b53077ff Oops had not meant to commit this yet. Anyway, it makes the "helpers" method on Extension able to take a module directly instead of just a block. 2013-11-25 01:10:10 -08:00
Ben Hollis 34d399f580 Fix yard options 2013-11-25 00:12:39 -08:00
Ben Hollis 7ad5b2bdef Ignore this new .cache folder that's shown up 2013-11-24 23:31:51 -08:00
Ben Hollis fc20a761de Fix extension configs meta page to correctly handle multiple instance extensions like blog 2013-11-24 22:13:33 -08:00
fukayatsu 8e99d39570 Handle UTF-8-MAC filename on MacOS 2013-11-24 02:10:46 +09:00
Thomas Reynolds 6b6e9b143d actually add new padrino 2013-11-22 08:47:07 -08:00
Thomas Reynolds 48db12429a upgrade padrino. closes #1078 2013-11-19 18:10:39 -08:00
Ben Hollis 3347403d3a Fix typo 2013-11-19 00:17:50 -08:00
Ben Hollis 7f1285a773 Move to flat_map now that we don't use 1.8 2013-11-18 22:22:18 -08:00
Ben Hollis ac64b17ef0 Require Ruby 1.9.3+ 2013-11-18 20:19:57 -08:00
Paul C Pederson 56343c84ed localization by filename extension 2013-11-18 10:20:42 -08:00
Thomas Reynolds f136af2aad TODO 2013-11-15 11:26:27 +00:00
Thomas Reynolds 8a18da4e3d Merge pull request #1071 from stevenosloan/fix_paths_for_meta_pages
use absolute paths for meta_page assets/links
2013-11-14 08:47:09 -08:00
Thomas Reynolds d29f387245 Merge pull request #1073 from stevenosloan/fix_markdown_syntax_in_kramdown_test
Add link contents in maito in kramdown test
2013-11-14 08:46:39 -08:00
Thomas Reynolds 95c0fe60ac whoops, bad rename 2013-11-14 16:44:37 +00:00
Steven Sloan 955467f648 add link contents for mailto: link in kramdown markdown test 2013-11-13 22:46:06 -05:00
Steven Sloan d183858091 make meta page asset paths absolute to fix the issue of trailing/non-trailing slashes causing path problems on meta pages 2013-11-13 22:23:03 -05:00
Thomas Reynolds 4da2b02d70 Merge branch 'master' of github.com:middleman/middleman 2013-11-12 11:12:02 +00:00
Thomas Reynolds b813db397f actually wire up auto alt tags. Finally fixes #782 2013-11-12 11:11:33 +00:00
Takehiro SUGITA 19908ca81a Add -B option as an alias to --skip-bundle 2013-11-08 19:45:49 +09:00
Thomas Reynolds 238f992551 post install message 2013-11-02 18:01:23 -07:00
Thomas Reynolds e0a4b8f17d dont route kramdown mailto links through link_to. Closes #1058 2013-10-30 09:18:25 -07:00
Thomas Reynolds 22c977d426 Merge branch 'master' of github.com:middleman/middleman 2013-10-29 09:44:22 -07:00
Thomas Reynolds 2cd5edf114 bump to 3.2.0 2013-10-29 09:44:19 -07:00
Thomas Reynolds ca4935361b drop Ruby 1.8, add some extra tests 2013-10-29 09:43:56 -07:00
Thomas Reynolds 19c155349d Merge pull request #1044 from mojavelinux/asciidoc-renderer
resolves #1043 added a renderer for AsciiDoc files
2013-10-29 09:37:36 -07:00
Thomas Reynolds 9a2c1533e3 make page_classes prefix configurable 2013-10-29 09:33:27 -07:00
Thomas Reynolds 1e57eb5c1b Merge pull request #1049 from bhollis/classes
Clean page classes of invalid CSS characters
2013-10-29 09:23:05 -07:00
Andrew e8de5907fa Actually fix the issue, rather than pretending to 2013-10-25 18:09:36 +11:00
Andrew 2e70cc5d99 Update queryable interface so that it doesn't mutate 2013-10-25 14:48:23 +11:00
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 c69909910d adjust some markdown tests 2013-09-28 00:23:13 -07:00
Ali Bosworth 2738e8ea69 Add test against URL fragments for asset hashes 2013-09-26 14:33:56 -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
Nicholas Hutchinson dcd760d4f8 Demonstrate issue with directory indexes and spaces in paths
References #961
2013-09-16 21:07:56 -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
Thomas Reynolds ec060e0b6e change tests since coffee changed their output 2013-07-16 15:10:43 -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
Arron Mabrey 00d6a78872 Add expectation that .nojekyll file should exist to directory_index feature 2013-06-30 18:45:49 -04:00
Arron Mabrey 0d4dd71ae2 Add .nojekyll file to indexable-app fixture 2013-06-30 18:44:34 -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 912b33929f bump listen 2013-06-19 10:23:53 -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
Moritz Breit b234deb540 Add cucumber scenarios for markdown pages with erb layout
These are tests for middleman/middleman#860.
2013-06-12 11:23:00 -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 efc0f9961b Merge pull request #927 from middleman/content_for_escaping
content_for is escaping .erb
2013-06-07 10:08:37 -07:00
Karl Freeman ef46e4e6c3 add breaking test for escaped html using content_for 2013-06-07 09:59:59 +01:00
Karl Freeman 0b8c36cb8c capture_html helper tests 2013-06-07 09:58:37 +01: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 f3e2e8fdf5 ignore vendor in simplecov 2013-06-04 14:28:46 -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 8863473756 bump dep 2013-06-02 19:04:33 -07: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
Thomas Reynolds fe2a7c4dd6 Merge branch 'master' of github.com:middleman/middleman 2013-05-31 00:11:54 -04: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
Thomas Reynolds 403d6abd05 fix up simplecov, add coveralls 2013-05-30 13:38:52 -04: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
Thomas Reynolds b8b48afcbb how do i paren? 2013-05-29 10:35:00 -04:00
Thomas Reynolds fef8b8417d Add more nested data tests, actually get simplecov to run 2013-05-29 09:59:15 -04:00
Manuel Meurer ed59260367 Replace all occurrences of data.page with current_page.data
see https://github.com/middleman/middleman/issues/912
2013-05-29 11:25:57 +02:00
Ben Hollis 994bd651f8 Add Simplecov 2013-05-28 22:29:58 -07: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 90eb5fca3e loosen thor dep now that we're bundling padrino 2013-05-23 13:32:10 -07:00