Commit graph

980 commits

Author SHA1 Message Date
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 `
  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
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
Karl Freeman
6c84ed4674 whitespace [ci skip] 2014-03-25 13:13:36 +00:00
Karl Freeman
ce83e502f6 more consistency across all gems
- rubocop'd for cosmetics
2014-03-25 08:50:28 +00: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
Thomas Reynolds
5afa66f194 bump deps 1 2014-01-02 14:48:40 -08:00
Thomas Reynolds
d77ef04774 upgrade to newest activesupport 2014-01-02 14:38:18 -08:00
Thomas Reynolds
95eaeba960 Start cleaning up Rack internals 2014-01-01 19:09:47 -08:00
Thomas Reynolds
42fb8c229a bump version 2014-01-01 18:08:30 -08:00
Thomas Reynolds
a610608785 remove old style extension support 2014-01-01 15:10:49 -08:00
Thomas Reynolds
c95c924d53 build a config file jail 2013-12-31 18:21:30 -08:00
Thomas Reynolds
2e2415612a spring cleaning util and discovery of nasty variable mutating in url_for 2013-12-31 14:41:17 -08:00
Karl Freeman
dcf527008e StringLiterals 'cop' fix [ci skip] 2013-12-29 23:04:30 +00:00
Matt Simpson
21f575af3a Specify the full path to the NEWLINE constant 2013-12-28 19:43:59 -06:00
Karl Freeman
a31aa5d8be TrailingWhitespace 'cop' fix 2013-12-28 18:14:15 +00:00
Karl Freeman
03d6e6c990 Implemented Rubocop
- just took a stab at running the StringLiterals cop to get a taste.
2013-12-28 00:47:39 +00:00
Thomas Reynolds
e996868033 Depend on new i18n gem, silence deprecation warning 2013-12-25 16:52:29 -08:00
Thomas Reynolds
b6361c23f7 prep new release 2013-12-18 14:56:21 -08:00
Thomas Reynolds
a1090f912c fix issue with UTF-8-MAC paths not matching UTF-8 paths in build clean 2013-12-18 14:54:07 -08:00
Ben Hollis
f9728108cc Fix Mac filenames patch 2013-12-15 16:06:55 -08:00
Thomas Reynolds
70744aa63f fix typo 2013-12-13 08:30:19 -08:00
TMaYaD
8b87670024 Allow path to be passed to page_classes
This allows tagging navigation links etc. in other pages with page classes
2013-12-13 13:07:00 +05:30
Thomas Reynolds
0a264fd3c2 Merge pull request #1116 from bhollis/gzip
Parallelize gzip extension using threads
2013-12-11 10:40:29 -08:00
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