Commit graph

939 commits

Author SHA1 Message Date
Thomas Reynolds
b02c9e5724 Merge pull request #1314 from middleman/rack-out
Untangle Rack from Application
2014-07-06 23:11:56 -07:00
Ben Hollis
bf4310697d Move proxy/ignore/content_type Resource methods into the Resource class 2014-07-06 16:19:33 -07:00
Ben Hollis
0cbc232dac Remove neighbor frontmatter support 2014-07-06 16:15:43 -07:00
Eliott Appleford
a47b58c58d fix gemfile conflict 2014-07-06 05:48:21 +01:00
Eliott Appleford
21c2b737f5 fix gzip spec 2014-07-06 04:02:43 +01:00
Thomas Reynolds
13acee8fd5 Reload MM on environment and helpers_dir changes. Closes #1274. Closes #1105 2014-07-05 18:26:51 -07:00
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
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
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
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
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
ce914e508a Make rubocop TrivialAccessors warnings less annoying 2014-05-26 16:53:23 -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
82636e3596 Fixes to deal with Padrino 0.12.2 release 2014-05-15 23:30:49 -07: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
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
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
638e2e64b7 Unvendor padrino 2014-04-04 10:22:34 -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
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
Ben Hollis
bb5b4054ff Don't bother processing asset hash on ignored resources. On a large project with a lot of Sprockets dependencies that were mostly ignored, this brought the build down from 30 minutes to 1 minute 2014-03-23 23:35:12 -07:00
Ben Hollis
0a6c80d223 Don't attempt to load local templates if HOME is not set 2014-03-23 16:49:22 -07:00
Thomas Reynolds
ce7636ad18 remove Implied Extensions feature. Closes #1211 2014-03-20 17:12:41 -07:00
Thomas Reynolds
1721dff4c7 add node_modules to filewatcher ignore 2014-03-20 10:03:44 -07:00
Thomas Reynolds
fde93ffed4 add node_modules to filewatcher ignore 2014-03-20 10:02:18 -07:00
Thomas Reynolds
ae1edd482f upgrade to newest activesupport 2014-03-20 09:53:01 -07:00
Thomas Reynolds
515c91e826 Merge pull request #1219 from bhollis/windows
Add tzinfo-data for Windows users
2014-03-19 15:40:33 -07:00
Ben Hollis
f71a0951ef Add tzinfo-data for Windows users 2014-03-18 22:42:31 -07:00
Ben Hollis
67689e60d2 Prevent the file watcher from recursively enumerating into paths that it should ignore. This should fix the issue in #1197 as well as provide a performance boost when starting 'middleman server'. 2014-03-18 21:17:50 -07:00
Karl Freeman
87acf687d5 friendlier localhost print 2014-03-14 06:46:10 +00:00
Ben Hollis
a88f12a262 Apply fix from 32716f3729 - avoid loading middleman-core unless needed. Fixes #1203 2014-03-13 20:32:25 -07:00