Commit graph

903 commits

Author SHA1 Message Date
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 `
  content ||= ''
  content.gsub! '&', '&'
  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
Thomas Reynolds 250c87ef61 move livereload init into dev block 2014-03-09 17:50:34 -07:00
Thomas Reynolds 8b20b39b31 Merge pull request #1194 from bhollis/gemfile
Require Bundler (a Gemfile) for all set up Middleman projects
2014-03-08 16:05:34 -08:00
Ben Hollis 10f8715bde Whoops, properly implement findup 2014-03-04 22:43:10 -08:00
Ben Hollis 220d1e8948 Require Bundler (a Gemfile) for all set up Middleman projects. We still do extension auto-discovery for "init". Gemfile may now be in any parent directory of 'config.rb', in case the Middleman project is in a subdirectory of a larger project. 2014-03-03 23:47:24 -08:00
Ben Hollis 5de4e337c1 Merge middleman-more back into middleman-core 2014-03-03 22:32:12 -08:00
Ben Hollis c9a640a3e2 Merge remote-tracking branch 'origin/v3-stable'
Conflicts:
	middleman-core/lib/middleman-core/extension.rb
2014-03-03 22:10:50 -08:00
Ben Hollis 0533bc4209 Be quiet about missing extras when middleman-core is used alone 2014-02-25 22:28:06 -08:00
Ben Hollis 0f9b199bfa Move some requires around 2014-02-22 22:44:28 -08:00
Ben Hollis e662b6433f Reapply changes from 477f87e98a to TemplateRenderer/TemplateContext 2014-02-22 22:44:25 -08:00
Ben Hollis c5b0ba17ea Fix Padrino integration after merge 2014-02-22 20:11:54 -08:00
Ben Hollis 4e545eef27 Break Middleman::Extension into its own file, mirroring the change on master 2014-02-22 18:43:47 -08:00
Ben Hollis 7b46fd6524 Merge remote-tracking branch 'origin/v3-stable'
Conflicts:
	CHANGELOG.md
	middleman-core/lib/middleman-core/core_extensions/rendering.rb
	middleman-core/lib/middleman-core/extensions.rb
	middleman-core/lib/middleman-core/version.rb
	middleman-core/lib/middleman-more/core_extensions/compass.rb
	middleman-core/lib/middleman-more/core_extensions/default_helpers.rb
	middleman-core/middleman-core.gemspec
2014-02-22 18:11:37 -08:00
Ben Hollis 477f87e98a Prefer loading layouts from layouts_dir over layouts with the same name in the source root. This also includes a bunch of refactoring/cleanup of rendering.rb. Fixes #1176. 2014-02-20 08:50:07 -08:00
Ben Hollis ca50f21fac "middleman init" will create a project in the current directory. Fixes #1181. 2014-02-19 23:13:59 -08:00
Thomas Reynolds 3995ad850c update padrino. 2014-02-18 18:30:29 -08:00
Jonathan Soeder 8d346e74a5 Adding before build hook 2014-02-04 23:03:24 -06:00
Nico Hagenburger 0c3000c799 as there are no more local changes in the hooks’ source, it can be unvendored and used as gem 2014-02-03 23:39:23 +01:00
Nico Hagenburger e5d95944c4 use instance hooks provided by hooks instead of changing the gem’s source
Conflicts:
	middleman-core/lib/middleman-core/core_extensions/extensions.rb
2014-02-03 23:37:55 +01:00
Nico Hagenburger 732532b72e upgraded hooks to 0.3.3; integrated custom changes as made for 0.2.0
Conflicts:
	middleman-core/lib/middleman-core/application.rb
2014-02-03 23:34:31 +01:00
Nico Hagenburger d6f9e8c640 as there are no more local changes in the hooks’ source, it can be unvendored and used as gem 2014-02-02 11:18:25 +01:00
Nico Hagenburger 2ad91339bb use instance hooks provided by hooks instead of changing the gem’s source 2014-02-02 11:12:57 +01:00
Nico Hagenburger 247a152d39 upgraded hooks to 0.3.3; integrated custom changes as made for 0.2.0 2014-02-01 23:45:46 +01:00
Jeremy Green b056f4f1d1 Update the console to the new logger syntax. 2014-01-30 23:26:17 -06:00
Thomas Reynolds f0fcebe169 disable sass cache since it cant marshal the path to the MM instance 2014-01-28 10:46:39 -08:00
Thomas Reynolds c2d85c35f2 prep release 2014-01-27 09:56:48 -08:00
Ivan Zarea 3993034883 Fix dynamic pages link in the config template 2014-01-27 09:35:30 +02:00
Sam Symons df1236412b Corrected a handful of documentation typos. 2014-01-09 19:49:41 -08:00
Thomas Reynolds 1dc9b97a5e better ruby style on some changes 2014-01-04 12:44:20 -08:00
Thomas Reynolds 504a1c2eba remove confusing and broken data.page variable 2014-01-03 16:18:16 -08:00
Thomas Reynolds 98e3c8aa79 remove instance variable and page block support 2014-01-03 15:49:54 -08:00
Thomas Reynolds 614d69dc18 move current_path in to the template context, one less piece of global state 2014-01-03 14:56:16 -08:00
Thomas Reynolds f40903e663 move rendering into specialized File and Template rendering classes. 2014-01-03 13:40:37 -08:00
Thomas Reynolds c06fbcfc93 rely directly on rack-mock 2014-01-02 21:45:42 -08:00
Thomas Reynolds bea2515a41 Move CLI into middleman-cli 2014-01-02 16:39:06 -08:00
Thomas Reynolds 305d2f99ed Put template rendering in a jail 2014-01-02 16:05:39 -08:00
Thomas Reynolds 9798f152ca silence slim warnings 2014-01-02 14:59:14 -08:00