Commit graph

1056 commits

Author SHA1 Message Date
Thomas Reynolds 6752a86b83 Make our Rack pipeline a simple class abstracted from the App. 2014-07-05 17:38:29 -07:00
Thomas Reynolds c94470d33f get i18n's hands out of app too 2014-07-05 16:50:19 -07:00
Thomas Reynolds 0ca6c37e5d Remove App include in File Watcher 2014-07-05 16:44:04 -07:00
Thomas Reynolds 60bbe44e0e Data ext doesn't need to touch the app obj 2014-07-05 16:05:00 -07:00
Thomas Reynolds 300ef8d8fe Convert renderers into first-class extensions 2014-07-05 13:41:59 -07:00
Thomas Reynolds c0a6d8ac4c Pull mixin for extension activation into a real class 2014-07-05 12:51:41 -07:00
Thomas Reynolds 336b80cbbd Switch from ActiveSupports delegate method to Ruby 1.9+ def_delegator 2014-07-05 11:17:41 -07:00
Thomas Reynolds 3a19cc668d move Sitemap into application, it's core to the entire system 2014-07-05 10:42:03 -07:00
Eliott Appleford 5897c4c4a4 update gemfile 2014-07-05 04:27:51 +01:00
Thomas Reynolds 3a2cab4775 Whoops, leftover include 2014-07-04 10:41:25 -07:00
Thomas Reynolds 1bd7dab1a3 Make a ProxyResource which extends Resource, rather than injecting methods into Resource 2014-07-04 10:38:25 -07:00
Eliott Appleford e2e3c1e3fb fix specs on windows 2014-07-03 21:09:32 +01:00
Thomas Reynolds 6bb9673630 final copping 2014-07-02 11:05:57 -07:00
Thomas Reynolds 5a936d315d Merge remote-tracking branch 'origin/v3-stable' 2014-07-02 10:40:04 -07:00
Thomas Reynolds 52c8109ca3 rubocoping2 2014-07-02 10:39:43 -07:00
Eliott Appleford d8f84fa97b Update listen code 2014-07-02 18:26:18 +01:00
Thomas Reynolds 7b85a44afb rubocoping 2014-07-02 10:11:52 -07:00
Thomas Reynolds a2f67a4f37 listen gem conflict 2014-07-02 09:30:58 -07:00
Eliott Appleford 6678decd29 Update listen gem 2014-07-02 12:57:01 +01:00
Ben Hollis dfecfebc69 Remove options to proxy or ignore through page, and use Middleman::Util#path_match for matchers to allow a wider set of matchers. 2014-06-28 21:01:26 -07:00
Ben Hollis 838e25085a Munge build path so that path_match works against it in gzip extension 2014-06-28 21:00:59 -07:00
Ben Hollis d7fd48ef7d Merge branch 'v3-stable'
Conflicts:
	middleman-core/lib/middleman-more/extensions/asset_hash.rb
2014-06-28 18:48:49 -07:00
Andrew Kvalheim 429e7d64bd Accept list of paths to exclude from gzipping. 2014-06-24 14:49:51 -07:00
Andrew Kvalheim b819d38358 Test gzip extensions option. 2014-06-24 14:49:10 -07:00
Andrew Kvalheim 13ba9dae62 Make option documentation consistent. 2014-06-24 14:47:10 -07:00
Ben Hollis 5c991ba4dc Add a protective require 2014-06-22 20:46:39 -07:00
Thomas Reynolds 434d55b1ae See if code climate hooks work 2014-06-20 14:09:51 -07:00
Ben Hollis ad4b441dc3 Fixed implementation of Middleman::Util#path_match, added tests for it 2014-06-16 21:44:19 -07:00
Thomas Reynolds 8989e27769 Rubocop auto fix 2014-06-16 09:05:24 -07:00
Thomas Reynolds fe5247d9d9 Add <head> to 404 so Livereload can add its script to the page 2014-06-16 08:58:16 -07:00
Thomas Reynolds c6543b7c27 Add <head> to 404 so Livereload can add its script to the page 2014-06-16 08:57:56 -07:00
Ben Hollis 2ef842a730 Fix references to store in traversal 2014-06-14 13:08:03 -07:00
Ben Hollis f63feaf017 Do not use ShowExceptions during tests, it confuses things 2014-06-14 13:05:32 -07:00
Ben Hollis f07bed4ecf Fix custom layouts tests 2014-06-14 12:38:44 -07:00
Ben Hollis 416428444c Let users add metadata via #page 2014-06-14 11:31:53 -07:00
Ben Hollis e6ec5f31de Fix meta pages 2014-06-14 11:31:53 -07:00
Ben Hollis 85cebdb7e9 rubocop 2014-06-14 11:31:53 -07:00
Ben Hollis cb2b13778e Fix i18n 2014-06-14 11:31:53 -07:00
Ben Hollis 2beb774eb9 Put back request_path, I get it now 2014-06-14 11:31:53 -07:00
Ben Hollis b0ea4e7608 Tweak resource manipulator order 2014-06-14 11:31:53 -07:00
Ben Hollis 5760d64ef9 More ignores 2014-06-14 11:31:53 -07:00
Ben Hollis 0309753561 Change when file listeners are registered in order to make cache invalidation work 2014-06-14 11:31:53 -07:00
Ben Hollis 096f5ee356 Use source file, not path, to look up frontmatter data 2014-06-14 11:31:53 -07:00
Ben Hollis bf8f02d563 Turn routing into an extension 2014-06-14 11:31:52 -07:00
Ben Hollis 213c672969 Fix a lot of breakage caused by removing/hiding accessors 2014-06-14 11:31:52 -07:00
Ben Hollis 78b7bbb92a TODO metadata for path extension 2014-06-14 11:31:52 -07:00
Ben Hollis d687677e38 Mess around with liquid 2014-06-14 11:31:52 -07:00
Ben Hollis adfad92f8f Get rid of raw_data 2014-06-14 11:31:52 -07:00
Ben Hollis 5c04c2f42b More trimming 2014-06-14 11:31:52 -07:00
Ben Hollis d83d6e077c Extensionize liquid, bring back provides_metadata_for_path 2014-06-14 11:31:52 -07:00
Ben Hollis c285848866 Clean up i18n a bit, stake out some territory around routing and resource 2014-06-14 11:31:52 -07:00
Ben Hollis 69396d34c1 Start gutting the provides_metadata methods and move some of frontmatter over 2014-06-14 11:31:52 -07:00
Thomas Reynolds c59cefdafc Merge pull request #1293 from middleman/environments
Environments
2014-06-13 11:12:04 -07:00
Thomas Reynolds 449d38bcd2 Update to rspec 3 2014-06-11 13:39:40 -07:00
Thomas Reynolds a21dca025e Separate Environments from Modes 2014-06-11 10:28:30 -07:00
Thomas Reynolds c3b22fe325 sass renderer shouldn't explode if haml isn't available 2014-06-11 10:19:10 -07:00
Thomas Reynolds 7840ebf98a move compass ext out of the main repo 2014-06-11 09:25:59 -07:00
Thomas Reynolds ee1d89fe55 fix whitespace 2014-06-11 09:19:00 -07:00
Thomas Reynolds 29bf25ace6 Extract compass support into extension, rewrite all features that rely on it to be pure Ruby 2014-06-03 09:01:46 -07:00
Thomas Reynolds 3879be0f23 Add proc as a means of defining a rewriter ignore. Closes #1289 2014-06-02 15:56:07 -07:00
Thomas Reynolds 927a1758ba Rack-based HTML rewriter 2014-05-30 14:48:34 -07:00
Thomas Reynolds 1006739e98 merge PR 2014-05-30 14:23:44 -07:00
Thomas Reynolds ca0573d92a Merge pull request #1266 from 747/working
A quick fix for finding eponymous parents
2014-05-30 14:20:11 -07:00
Thomas Reynolds be5fad55ca Merge branch 'master' of github.com:middleman/middleman 2014-05-26 18:00:44 -07:00
Thomas Reynolds 00bbdfa254 unvendor fastimage 2014-05-26 18:00:39 -07:00
Thomas Reynolds c2512e9093 update more files to non-hashrocket syntax 2014-05-26 17:58:35 -07:00
Ben Hollis 7a5865a407 gsub to sub 2014-05-26 17:13:16 -07:00
Ben Hollis b48a767595 Use alias_method instead of defining an alias method for current_page 2014-05-26 17:13:10 -07:00
Ben Hollis 7108c29035 Merge remote-tracking branch 'origin/v3-stable'
Conflicts:
	CHANGELOG.md
	middleman-core/lib/middleman-core/core_extensions/rendering.rb
	middleman-core/lib/middleman-core/version.rb
2014-05-26 16:59:04 -07:00
Ben Hollis ce914e508a Make rubocop TrivialAccessors warnings less annoying 2014-05-26 16:53:23 -07:00
Ben Hollis 430521be83 Merge pull request #1281 from adamjonas/v3-stable
update rspec should syntax to expect
2014-05-25 21:13:34 -07:00
Ben Hollis 6561fea296 Change the auto activated extension feature to allow specifying different lifecycle events to activate at, allowing more extensions to auto activate. 2014-05-25 21:12:40 -07:00
Ben Hollis 70b3b87905 Move ExternalHelpers into a real extension 2014-05-25 21:06:37 -07:00
Ben Hollis fed95f9c5e Convert external data to a real extension 2014-05-25 21:06:37 -07:00
Ben Hollis e649bc2809 Convert FileWatcher to a real extension 2014-05-25 21:06:37 -07:00
Ben Hollis 67bb394852 Move some explicitly activated extensions to be auto activate 2014-05-25 21:06:36 -07:00
Ben Hollis 5d4cae2a06 Allow extensions to optionally register to be automatically activated before configuration. 2014-05-25 21:06:36 -07:00
Thomas Reynolds f89a76747e Removed wrap_layout 2014-05-25 12:23:00 +09:00
Thomas Reynolds 4ab88e6577 Document and cleanup TemplateContext class. 2014-05-25 11:59:21 +09:00
Thomas Reynolds 1a461154b6 prep 2014-05-24 19:27:56 +09:00
Thomas Reynolds 72b945682a Fix threadsafety issue with assignment. Fixes #501. Also, WTF? 2014-05-24 19:18:12 +09:00
Ben Hollis 9a3f9fe488 Clean up some Rubocop warnings that were previously suppressed. 2014-05-24 00:37:46 -07:00
Ben Hollis dd7f06968a Clean up extension activation, helper registration, and sprockets autoload 2014-05-22 23:05:15 -07:00
Ben Hollis 18da7bb692 Improve documentation and mildly clean up core_extensions/extensions.rb 2014-05-22 22:36:56 -07:00
Ben Hollis f60a49d2ce Improve documentation and variable naming for Middleman::Extensions 2014-05-22 21:48:37 -07:00
Thomas Reynolds 610716ee80 Work around possible mutable data issue #501 2014-05-22 19:20:43 +09:00
Ben Hollis 1a7da200d1 Fix before_render after change to hooks-0.4.0. Related to #1278. 2014-05-15 23:58:50 -07:00
Ben Hollis dc33f6b3fa Fix before_render after change to hooks-0.4.0. Related to #1278. 2014-05-15 23:55:39 -07:00
Ben Hollis 5f9dec3dc8 Merge remote-tracking branch 'origin/v3-stable'
Conflicts:
	middleman-core/lib/middleman-core/core_extensions/rendering.rb
	middleman/middleman.gemspec
2014-05-15 23:41:04 -07:00
Ben Hollis f29994e25a Fix tests after Padrino 0.12.2 release 2014-05-15 23:35:09 -07:00
Ben Hollis 82636e3596 Fixes to deal with Padrino 0.12.2 release 2014-05-15 23:30:49 -07:00
adamjonas 9887fe510c update rspec should syntax to expect 2014-05-15 11:51:42 -04:00
Thomas Reynolds 6238bb0716 Merge pull request #1279 from bhollis/extensions
Resource list manipulator priority
2014-05-12 09:25:24 -07:00
Ben Hollis 6b10d9d428 Add the ability to set a priority order for sitemap resource list manipulators.
This allows us to do things like forcing :directory_indexes to always run last, alleviating the problem of the sitemap output differing depending on when you activate your extensions.
2014-05-12 00:09:35 -07:00
Ben Hollis 2312f875e6 Revert "Add :format and :keep_original options to :asset_hash. Closes #1257"
This reverts commit 1f98d0f4f0.

Conflicts:
	middleman-core/lib/middleman-core/extensions/asset_hash.rb
2014-05-12 00:05:22 -07:00
bootstraponline 3f0373adf2 Fix after_render
Example usage from config.rb:

after_render do |content, path, locs, template_class|
  # restore character entities such as &amp;#96;
  content ||= ''
  content.gsub! '&amp;', '&'
  content
end
2014-05-11 14:06:04 -04:00
Ben Hollis b79a74b35b Improve documentation for Middleman::Extension 2014-05-11 00:35:15 -07:00
Ben Hollis 6515f01800 Extension setup methods should be private, not protected 2014-05-11 00:27:12 -07:00
Ben Hollis ef9da685de Do away with InstanceMethods for CoreExtensions::Extensions 2014-05-11 00:27:12 -07:00
Ben Hollis d179343ce7 Remove unused "activate" class method from Extension 2014-05-11 00:27:12 -07:00
Ben Hollis 5fc5e15975 Move methods for handling automatic extension discovery and rubygems enumeration into their own file. 2014-05-11 00:27:12 -07:00
747 038d2a64f7 Merge branch 'add_tests' into working 2014-05-05 06:01:07 +09:00
747 d1d3e8dba6 add tests on eponymous parent traversal 2014-05-02 06:06:55 +09:00
Thomas Reynolds 2dd87bab74 Fix combo of compass-import-once and sass-globs. Closes middleman/middleman-sprockets#56 2014-05-01 10:01:45 -07:00
Thomas Reynolds f513ab77b3 Rubocop'd 2014-04-29 11:43:05 -07:00
Thomas Reynolds 6760d855bc hashrocket killa 2014-04-29 10:50:21 -07:00
Thomas Reynolds 8eabe4d354 rubocop 2: the reckoning 2014-04-29 10:44:24 -07:00
747 348417601b quick fix for finding eponymous parents 2014-04-29 22:43:33 +09:00
Thomas Reynolds 04dc48f13d Great rubocop-ing 2014-04-28 16:02:18 -07:00
Thomas Reynolds 1e43784cc2 remove queryable api 2014-04-28 10:28:16 -07:00
Thomas Reynolds ffe9226aac Remove root config options for minification 2014-04-28 10:21:14 -07:00
Thomas Reynolds 8f75f6516d back out IP detection 2014-04-14 10:34:53 -07:00
Thomas Reynolds 1f98d0f4f0 Add :format and :keep_original options to :asset_hash. Closes #1257 2014-04-14 10:05:00 -07:00
Thomas Reynolds 9d0eb72e73 Merge pull request #1254 from Arcovion/patch-1
Change default IP for CLI server
2014-04-11 09:39:54 -07:00
Eliott Appleford a50ca3a49d Change default IP
Enables #1248 by default.
2014-04-11 14:48:12 +01:00
Thomas Reynolds 07aa2113b9 merge activesupport update 2014-04-09 16:14:10 -07:00
Thomas Reynolds dc3d4f9fd5 bump activesupport 2014-04-09 16:12:57 -07:00
Thomas Reynolds 4b53549ae4 Merge in recent changes from v3-stable 2014-04-08 09:27:18 -07:00
Thomas Reynolds a5c2386853 match masters new logger ref 2014-04-07 16:47:06 -07:00
Adam Luikart d4d1391bbb Don't hang on to the first Logger instance you see
If the main app instance hangs on to the logger that ::Middleman::Logger.singleton returns, then subsequent calls to re-init the logger won't have any effect (for instance, when setting up the preview server's logger based on CLI params).

Redefining logger to be a pass-through to ::Middleman::Logger.singleton instead of an ivar seems more in keeping with the sprit of a singleton, anyways.

This fixes an issue where running `middleman server --verbose` doesn't output any debug info.
2014-04-07 17:34:26 -05:00
Thomas Reynolds 69c6e87b31 bump 2014-04-07 09:56:15 -07:00
Thomas Reynolds 1b3b785c2b Merge pull request #1248 from Arcovion/patch-1
Mobile friendly host & windows fix
2014-04-07 09:49:36 -07:00
Thomas Reynolds 4c9af0e07d Merge pull request #1251 from railsbros-dirk/fix-middleman-init-command
CLI: Always require 'middleman-core/version'
2014-04-07 09:48:48 -07:00
Thomas Reynolds fcbf9f1568 avoid running Sass compilation twice 2014-04-07 09:38:00 -07:00
Dirk Breuer ae451608b3 CLI: Always require 'middleman-core/version'
The `init` command will fail if the `VERSION` was not required because
it is needed for the Gemfile generation. Unfortunately this was not
catched by the specs because the specs require the version and the child
process is not correctly reset.

I was not able to change this easily :-(
2014-04-07 16:15:50 +02:00
Eliott Appleford e3946a06d9 Print correct IP and mobile testing support
Address `0.0.0.0` wasn't valid on windows, use localhost instead
Finds a local IP that will also allow the development server to run on mobiles
2014-04-05 21:55:01 +01:00
Thomas Reynolds a40ef1a734 bump to include sass fix 2014-04-05 13:38:45 -07:00
Thomas Reynolds 7ae4c4d14e use compass-import-once 2014-04-04 17:02:22 -07:00
Thomas Reynolds f95da2a1da arbua jruby support 2014-04-04 10:56:47 -07:00
Thomas Reynolds f3edabfb7e bump execjs dep 2014-04-04 10:48:08 -07:00
Thomas Reynolds 80256ec3c5 revert back to sass 3.2 and stable compass 2014-04-04 10:38:50 -07:00
Thomas Reynolds 638e2e64b7 Unvendor padrino 2014-04-04 10:22:34 -07:00
Thomas Reynolds fac4928d50 Update haml and sass deps
Conflicts:
	Gemfile
	middleman/middleman.gemspec
2014-04-03 10:01:18 -07:00
Thomas Reynolds f800a51fb2 Update haml and sass deps 2014-04-03 09:53:33 -07:00
Thomas Reynolds 6d2f8cd50c Add options hash to asset methods to allow special options to be passed through from extensions 2014-03-31 14:15:46 -07:00
Thomas Reynolds 1c37cc6a34 Merge pull request #1238 from bhollis/asciidoc
Remove Asciidoc support in favor of a middleman-asciidoc extension
2014-03-30 10:52:40 -07:00
Ben Hollis 5ce8549f03 Remove Asciidoc support in favor of a middleman-asciidoc extension. 2014-03-29 19:24:51 -07:00
Ben Hollis c1f7299cfd Fix some references to extensions[:frontmatter] 2014-03-29 17:21:49 -07:00
Ben Hollis abeee38126 Remove yet another way to register extensions and register/activate FrontMatter like a normal extension. 2014-03-29 17:17:00 -07:00
Ben Hollis a6c37f3dd3 Clean up extensions a bit. Removes newest form of registering extensions, more consistently sets and uses an extension's ext_name, and makes a lot of things errors instead of just log messages in hopes that people can't get too far with a messed-up config. 2014-03-29 14:29:42 -07:00
Kale Worsley 6f38416c15 Include the destination_path in the instrumentation payload. 2014-03-28 09:10:33 -07:00
Andrey 'lolmaus' Mikhaylov db59447e82 Webrick should not do reverse DNS lookups
This prevents Middleman server from being terribly slow over network. Closes #1118.
2014-03-27 11:58:31 +03:00
Ben Hollis 4605ffc398 Improvements to the /__middleman/ metadata pages.
Includes formatting/styling changes to clarify the data being presented as well as align styling with middlemanapp.com. Also adds features and fixes to the sitemap view to show ignored files differently, hide redundant information, print data/options as a hash instead of as array pairs, and to list out available locals defined on a page.
2014-03-26 00:12:10 -07:00
Ben Hollis 10eca91311 Fix docs for HashWithIndifferentAccess 2014-03-25 22:43:43 -07:00
Ben Hollis 97e7427641 Ignore .cache by default in .gitignore 2014-03-25 22:39:52 -07:00
Ben Hollis 60f712e6ba Merge branch 'v3-stable'
Conflicts:
	.travis.yml
	Gemfile
	middleman-cli/lib/middleman-cli/build.rb
	middleman-core/lib/middleman-core/core_extensions/file_watcher.rb
	middleman-core/lib/middleman-core/templates.rb
	middleman-core/lib/middleman-core/util.rb
	middleman-core/middleman-core.gemspec
2014-03-25 22:35:19 -07:00
Thomas Reynolds 91675c4588 move sprockets init 2014-03-25 17:00:17 -07:00
Thomas Reynolds 8bc2fddb9d Remove static serving of non-Middleman folders 2014-03-25 16:57:57 -07:00
Thomas Reynolds 1b6af9a4c1 Expose asset_path on the main Application object (Sprockets needed it) 2014-03-25 11:01:35 -07:00
Thomas Reynolds 37a8caf3fa Bring back extension block register syntax. Closes #1192 2014-03-25 11:00:43 -07:00