Commit graph

409 commits

Author SHA1 Message Date
Thomas Reynolds e08eb280fa Coerce all paths in sitemap to Pathname 2012-12-30 15:26:38 -08:00
Thomas Reynolds 55291edc65 Merge pull request #374 from middleman/metapages
Idea: Metadata pages
2012-12-25 16:12:27 -08:00
Ben Hollis a00d507de3 Clean up styling a bit, add extension hooks 2012-12-25 16:11:52 -08:00
Ben Hollis 142abe027e Switch to using view classes isntead of partials 2012-12-25 16:11:52 -08:00
Ben Hollis b8eb932a73 Hierarchical sitemap 2012-12-25 16:11:52 -08:00
Ben Hollis 22fcc3c108 Initial spike for meta pages 2012-12-25 16:11:52 -08:00
Ben Hollis ae743ac4db Conform to the rack specs, with help from Rack::Lint 2012-12-25 16:11:13 -08:00
Thomas Reynolds 45ddc0c344 Make Sitemap metadata queryable with arel-style API 2012-12-25 16:05:54 -08:00
Avia Aharon b084982923 fix Middleman::Util.path_match to work with string matchers 2012-12-18 12:32:13 +02:00
Thomas Reynolds eea45095b8 version bump 2012-12-15 14:59:32 -08:00
Capi Etheriel 4805c11d49 turn html5 boilerplate into a layout
set hbp5 as the DEFAULT layout

use titles from YAML options
2012-12-15 14:53:01 -08:00
Casey Leask dd4c07d9d1 Added fix for empty YAML 2012-12-15 14:52:55 -08:00
Kunal Parikh 6f8ada6639 Using 'Socket.gethostname' to get default hostname
As suggested by @bhollis in https://github.com/middleman/middleman/pull/665#issuecomment-10262763
2012-12-15 14:52:40 -08:00
Kunal Parikh f6cf8de141 Changed log message when middleman starts.
Old message: == The Middleman is standing watch on port 4567
New message: == The Middleman is standing watch at http://0.0.0.0:4567

The URL in the message makes it clickable if the terminal supports it.
2012-12-15 14:52:31 -08:00
Alex Peattie 816bca9643 Fix for embedded Markdown in Slim w/ Redcarpet 2012-12-15 14:52:15 -08:00
Capi Etheriel 60fc4ce43a turn html5 boilerplate into a layout
set hbp5 as the DEFAULT layout

use titles from YAML options
2012-12-14 11:39:35 -02:00
Casey Leask 85f06ccecd Added fix for empty YAML 2012-12-14 14:22:42 +11:00
Kunal Parikh e57564c957 Using 'Socket.gethostname' to get default hostname
As suggested by @bhollis in https://github.com/middleman/middleman/pull/665#issuecomment-10262763
2012-11-11 15:54:32 +11:00
Kunal Parikh 1761197af3 Changed log message when middleman starts.
Old message: == The Middleman is standing watch on port 4567
New message: == The Middleman is standing watch at http://0.0.0.0:4567

The URL in the message makes it clickable if the terminal supports it.
2012-11-11 13:16:47 +11:00
Alex Peattie ecefe2a04e Fix for embedded Markdown in Slim w/ Redcarpet 2012-11-07 11:30:24 -08:00
Thomas Reynolds 0eb906efac Stylus support and tests. Fixes #649 2012-10-28 12:19:47 -07:00
Thomas Reynolds 01e9c336b0 Stylus support and tests. Fixes #649 2012-10-28 12:18:29 -07:00
Ben Hollis bb12e2a0d4 Make Sitemap::Store more thread-safe. 2012-10-22 22:22:54 -07:00
Ben Hollis c40102cf53 Make Sitemap::Store more thread-safe. 2012-10-20 21:19:13 -07:00
Thomas Reynolds 338d0f5867 Nevermind, can't do that until the class/inst stuff is cleaned up 2012-10-14 17:19:48 -07:00
Thomas Reynolds 0d9b1eabdb Instances actually need to dup the global config so they don't set variables that may be different later (tests, config reloading) 2012-10-14 16:25:22 -07:00
Thomas Reynolds af81b588d5 Merge pull request #620 from bhollis/config
Move config settings into a separate object
2012-10-14 12:52:19 -07:00
Ben Hollis 4fe22e3fb5 Move more things over to new configs. Don't let root be configured 2012-10-13 22:37:24 -07:00
Ben Hollis a50ca56fbc Switch over to new config methods 2012-10-13 21:37:02 -07:00
Ben Hollis 781fa1c65f Move configuration into a separate object, that can be reused for extension configuration and makes settings, their defaults, and descriptions inspectable. 2012-10-13 21:36:12 -07:00
Thomas Reynolds 4ee9369d7e Merge pull request #635 from bhollis/proxy
Upgrade proxy to be able to take :locals and understand :ignore
2012-10-13 14:04:17 -07:00
Thomas Reynolds 4255ff8b00 Merge branch '3.0-stable' of github.com:middleman/middleman into 3.0-stable 2012-10-13 14:04:02 -07:00
Ben Hollis 862551c523 Upgrade proxy to be able to take :locals and understand :ignore, and store proxy options and metadata with the proxy list.
This allows users to use proxy directly instead of page to create dynamic pages, and improves performance of dynamic pages for sites that create many proxies. It also allows people to use locals instead of instance variables, which are better for partials and reduce the risk of overwriting Middleman settings.
2012-10-13 14:03:32 -07:00
Ben Hollis 1ee89ac6bf Upgrade proxy to be able to take :locals and understand :ignore, and store proxy options and metadata with the proxy list.
This allows users to use proxy directly instead of page to create dynamic pages, and improves performance of dynamic pages for sites that create many proxies. It also allows people to use locals instead of instance variables, which are better for partials and reduce the risk of overwriting Middleman settings.
2012-10-12 19:46:11 -07:00
Thomas Reynolds 434abf2220 prep 3.0.6 2012-10-11 10:08:10 -07:00
Ben Hollis 0bf1b476b0 Fix handling of directories with ~ in them 2012-10-11 10:07:03 -07:00
Ben Hollis ee6add032a Fix handling of directories with ~ in them 2012-10-10 18:20:20 -07:00
Thomas Reynolds 42f9e331da Master is now for 3.1 dev 2012-10-06 11:16:54 -07:00
Thomas Reynolds c53c46729a actually make ruby encoding setting work, fix gzip to read/write binary 2012-09-29 14:12:26 -07:00
Thomas Reynolds 58be0f7af9 Merge pull request #617 from bhollis/cli
Print a helpful message when encountering an unknown command
2012-09-28 10:27:21 -07:00
Ben Hollis 623d73cc0a Print a helpful message when encountering an unknown command 2012-09-27 23:20:04 -07:00
Ben Hollis d0c00884fe Shutdown even if the user closed their terminal. Also handle signals on Windows (and elsewhere) if available without resorting to platform detection. Fixes #581. 2012-09-27 23:05:36 -07:00
Thomas Reynolds 9efa9d8009 Update normalize.css to v2.0.1. Fixes #614 2012-09-25 16:30:49 -07:00
Thomas Reynolds 061323a09f prep release 2012-09-23 18:43:42 -07:00
Thomas Reynolds 2aec04db69 Merge pull request #558 from bhollis/asset-hash-rack
Asset_hash doesn't play nice with Sprockets
2012-09-23 18:41:11 -07:00
Ben Hollis 6c241603ac Delay recalculating sitemap until absolutely necessary, avoiding redundant recalculations. 2012-09-16 19:36:47 -07:00
Thomas Reynolds a8a555c101 Merge pull request #601 from bhollis/full_path
Fix previewing directories with '.' in them.
2012-09-16 14:28:19 -07:00
Ben Hollis 8ec42df641 Correctly preview directory URLs with .s in them and show the request path on 404 pages. 2012-09-16 01:57:33 -07:00
Ben Hollis aa6b0482ae No longer initialize the app twice when starting preview server 2012-09-15 22:38:49 -07:00
Thomas Reynolds 0327e2067f Merge pull request #596 from bhollis/cli
Please create a "--skip-bundle" flag for middleman init
2012-09-15 18:09:53 -07:00
Ben Hollis e0b88d91be Add skip-gemfile, skip-bundle, and skip-git options to middleman init, aligning with rails options. 2012-09-14 23:32:46 -07:00
Thomas Reynolds 493d782875 bump 3.0.4 2012-09-13 10:52:11 -07:00
Thomas Reynolds 77be952d41 Trying to return from a block is a bad idea 2012-09-13 10:51:31 -07:00
Thomas Reynolds 06578c61fa prep 3.0.3 2012-09-13 10:25:49 -07:00
Thomas Reynolds 345e7787b5 reloading fixes 2012-09-13 10:13:57 -07:00
Ben Hollis 09ba0049d4 Fix asset_hashing assets affected by Rack middleware or mounted apps (like sprockets). Fixes #558 2012-09-11 00:08:58 -07:00
Thomas Reynolds 266e24e03e 3.0.2 2012-09-05 16:24:43 -07:00
Thomas Reynolds a96a41004c Logger has no such method .warning. Closes #582 2012-09-05 10:21:02 -07:00
Thomas Reynolds 4b085ea79f HTML5 Boilerplate 4.0 2012-09-04 09:48:52 -07:00
Thomas Reynolds 851652bb6c prep 3.0.1 2012-09-04 09:42:52 -07:00
Thomas Reynolds 0e75df16aa Lets try pre instead 2012-09-01 12:26:41 -07:00
Thomas Reynolds 4bbc225559 Prep 3.0.1 2012-09-01 08:45:43 -07:00
Tom Vaughan 4c48baeee6 Update middleman-core/lib/middleman-core/templates/extension/Rakefile
A default target is required by travis-ci.org. Another option is to provide a .travis.yml that looks like:

    script: "bundle exec rake test"
2012-08-22 12:19:45 -07:00
Thomas Reynolds 1c32c5fd74 missing gitignore 2012-08-22 11:03:14 -07:00
Thomas Reynolds 193f32b9fb Add test gems to extension and a gitignore. Closes #570 2012-08-20 19:37:10 -07:00
Thomas Reynolds f7fc041034 Check whether a Pathname exists before calling realpath in build. Closes #569 2012-08-20 19:28:43 -07:00
Thomas Reynolds 54c055ea5e Hack a way to pass Middleman context into Slim filters 2012-08-16 13:48:34 -07:00
Thomas Reynolds 446aa6a4ba Clean up whitespace, play with cane for testing style quality and code complexity 2012-08-13 15:41:07 -07:00
Thomas Reynolds 955c66a54f Setup Less paths for imports 2012-08-10 12:29:15 -07:00
Thomas Reynolds 80e36b7c53 Given file-based metadata precedence over config/path metadata. Fixes #552 2012-07-29 10:22:57 -07:00
Thomas Reynolds 4410d858f2 Merge pull request #550 from rumpuslabs/instance_vars_fix
Fix instance variables in dynamic pages
2012-07-26 13:46:56 -07:00
Thomas Reynolds f1eae1e0c8 Correct path in sass-assets-path test 2012-07-25 12:05:43 -07:00
Thomas Reynolds 6ccf5e2db0 Don't catch CoffeeScript errors when in build mode. Fixes #551 2012-07-25 11:22:29 -07:00
Tim Bates 99a8723ea6 Fix instance variables in dynamic pages 2012-07-24 23:02:27 +09:30
Ben Hollis 2f7371ca1f Oops, make NullProfiler actually work 2012-07-19 22:47:03 -07:00
Ben Hollis 00b590eedb Support profiling server startup and build via a --profile flag 2012-07-19 21:05:33 -07:00
Thomas Reynolds 3f21f7bc62 Merge pull request #541 from middleman/load_paths
Extract load_paths so they aren't locked into the binary
2012-07-19 18:22:04 -07:00
Thomas Reynolds 1f6d1a7ee1 Extract load_paths so they aren't locked into the binary 2012-07-19 10:55:14 -07:00
Ben Hollis 62fa17cf1a Reduce work converting paths from relative to absolute and back again 2012-07-19 01:18:55 -07:00
Ben Hollis 1f22184fc7 Don't request __middleman__ 2012-07-19 01:18:55 -07:00
Thomas Reynolds de6d7980ac Use centralized Logger and add instrument methods 2012-07-18 09:30:39 -07:00
kematzy 95339dad23 Added :js_assets_paths for external JS repositories
Please Note!

This fix depends upon support in the 'middleman-sprockets' gem, where the following code must be present:

    # lib/middleman-sprockets/extension.rb
    <snip…>
    append_path app.css_dir

    # add custom assets paths to the scope
    app.js_assets_paths.each do |p|
      append_path p
    end

The purpose of this addition is to support including JS files from external (global) repositories.

Example usage:

    # in config.rb

    set :js_assets_path, [ "#{root}/assets/js/", "~/.js-repo/"]

Using symlinks or copying files to the Middleman project can get messy quickly. This fix reduces some of those issues.
2012-07-17 09:21:46 -07:00
kematzy 3ea2241155 Added :sass_assets_path for external SASS repositories
Compass is great, but sometimes we need to have common framework code in one (global) location with local overrides in the app.

This addition adds built-in support for loading SASS/SCSS files from multiple locations external to the "source" directory and even the Middleman app root.

Example usage:

    # in config.rb

    set :sass_assets_path, [ "#{root}/assets/sass/", "~/.sass-repo/"]

Using symlinks or copying files to the Middleman project can get messy quickly.  This fix reduces some of those issues.
2012-07-17 09:21:46 -07:00
Thomas Reynolds 6f0f9b00a2 Merge pull request #536 from kematzy/fix-sass-cache-location
Fix sass cache location
2012-07-16 22:14:05 -07:00
kematzy 5368875d05 Moved :sass_cache_path from global to Sass renderer 2012-07-17 09:35:40 +08:00
theotheo 0b1b8ca7d1 Update susy gem installation command. 2012-07-17 00:52:06 +04:00
kematzy 1de1d3d25e Added :sass_cache_path custom config of SASS cache directory
The default output of SASS .sass_cache directory is in the Middleman app root directory, which to my mind adds clutter to the directory.

Secondly, when storing Middleman apps in a Dropbox subfolder, the .sass_cache directory gets synced unnecessarily.

This fix enables moving the .sass_cache directory to any path on the system, such as the "/tmp" directory for automatic discarding of files when restarting the system.

Suggested usage:

    #in config.rb
    set :sass_cache_path, File.join('/tmp', "middleman-#{File.basename(Dir.pwd)}", "sass_cache")

which could return something like:

    `/tmp/middleman-example.com/sass_cache`

This keeps multiple projects separated and easily identifiable.
2012-07-16 14:34:36 +08:00
Thomas Reynolds 9dad67bf9b Update master 2012-07-15 12:14:29 -07:00
Thomas Reynolds a8f45b1e17 Merge pull request #532 from rumpuslabs/markdown-not-nil
Markdown engine should not be nil
2012-07-15 12:13:46 -07:00
Thomas Reynolds d88f2fade0 Merge pull request #521 from bhollis/markdown
Use middleman's image_tag and link_to helpers from within Redcarpet markdown
2012-07-15 12:09:39 -07:00
Tim Bates aa35b8f0f0 Markdown engine should not be nil 2012-07-15 23:02:04 +09:30
Tim Bates 0fa1bfe675 Tests and a small bug fix to make them pass 2012-07-13 16:00:53 +09:30
Tim Bates 3cbda0ee36 Added strip_index_file option for configuring urls 2012-07-13 10:57:05 +09:30
Tim Bates 692aa10c8b Add trailing_slash option for prettier urls
"set :trailing_slash, false" will cause resource urls that match the
index_file to have the trailing slash stripped off the directory URL,
e.g. instead of "/dir/index.html" becoming "/dir/" it will be "/dir"
2012-07-12 12:03:33 +09:30
Tim Bates d30f883e48 Regenerate @_lookup_cache after each manipulation
Trying to call Resource#metadata from within
MyExtension#manipulate_resource_list generates an exception in
Proxies::ResourceInstanceMethods#get_source_file because @_lookup_cache
is empty. Moving the recalculation inside the loop means regenerating
the cache after each manipulation but allows extensions to examine the
page metadata when manipulating proxied resources.
2012-07-11 15:16:18 +09:30
Tim Bates ffecc3e4cc Optimisation, Hash#delete returns the deleted item 2012-07-11 15:14:08 +09:30
Thomas Reynolds f062bb7c3d Merge pull request #518 from bhollis/proxy
Don't allow people to proxy a path to itself, or to another proxy.
2012-07-09 12:42:40 -07:00
Thomas Reynolds 174000c1a2 3.0 [ci skip] 2012-07-09 10:00:49 -07:00
Ben Hollis 7be0590acf Use middleman's image_tag and link_to helpers from within Redcarpet markdown 2012-07-09 00:26:33 -07:00
Ben Hollis f908b378c5 Fiter out annoying "Could not determine content-length of response body." messages from verbose logging 2012-07-09 00:18:03 -07:00