Commit Graph

1246 Commits

Author SHA1 Message Date
Aileen Nowak
9190857e71 Version bump to 1.18.0 2017-11-21 23:48:02 +08:00
Aileen Nowak
a4cf29dc7d Bump amperize to version 0.3.6 (#9264)
no issue

New version contains
- dependency updates
- Node v8 support
- Eslint refactoring
2017-11-21 15:00:04 +01:00
Katharina Irrgang
dfd4afea19 Add bookshelf-relations (#9252)
no issue

- added https://github.com/TryGhost/bookshelf-relations as dependency
- remove existing tag handling

--- 

* Important: Ensure we trigger parent initialize function

- otherwise the plugin is unable to listen on model events
- important: event order for listeners is Ghost -> Plugin
- Ghost should be able to listen on the events as first instance
- e.g. be able to modify/validate relationships

* Fix tag validation

- we detect lower/update case slugs for tags manually
- this can't be taken over from the plugin obviously
- ensure we update the target model e.g. this.set('tags', ...)

* override base fn: `permittedAttributes`

- ensure we call the base
- put relations on top
- each relation is allowed to be passed
- the plugin will auto-unset any relations to it does not reach the database

* Ensure we run add/edit/delete within a transaction

- updating nested relationships requires sql queries
- all sql statements have to run in a single transaction to ensure we rollback everything if an error occurs
- use es6
2017-11-21 13:28:05 +00:00
kirrg001
eba100d965 Bump dependencies
no issue

- bluebird@3.5.1
- csv-parser@1.12.0
- gscan@1.2.2
- moment@2.19.2
- nconf@0.9.1
- oauth2orize@1.11.0
- superagent@3.8.1
- eslint@4.11.0
- nock@9.1.0
2017-11-17 17:33:29 +01:00
kirrg001
48cffb409e Version bump to 1.17.3 2017-11-16 16:01:51 +01:00
kirrg001
7ab725540c Version bump to 1.17.2 2017-11-14 14:09:36 +01:00
Kevin Ansfield
8ad64e3e8a Version bump to 1.17.1 2017-11-09 14:37:42 +00:00
Kevin Ansfield
f06270acb5 Version bump to 1.17.0 2017-11-07 13:41:35 +00:00
kirrg001
89e57ad6b2 Version bump to 1.16.2 2017-11-02 13:54:36 +01:00
Hannah Wolfe
bcf5a1bc34
Switch to Eslint (#9197)
refs #9178

* Add eslint deps, remove old lint deps
* Add eslint config, remove old lint configs
* Config for server and tests are different
* Tweaked rules to suit us
* Fix linting in codebase - lots of indent changes.
* Fix a real broken test
2017-11-01 13:44:54 +00:00
Katharina Irrgang
a7fe464d64 Bump Node v8 minimum version (#9198)
no issue

- the official V8 LTS release version is 8.9.0
- came out on the 31th of 10/17 (this is where the official LTS for V8 has started)
- requires an update on docs.ghost.org
2017-11-01 13:12:58 +00:00
kirrg001
b1516375bb Version bump to 1.16.1 2017-10-31 13:20:05 +01:00
kirrg001
949d33b1db Bump jsonpath to version 1.0.0
no issue

- major bump
- we only use jsonpath inside the `get` helper
- the functionality still works as expected
- includes security fix, see 98464aa5fe
2017-10-31 12:21:48 +01:00
kirrg001
9d4ed8c61c Replaced extract-zip-fork by extract-zip
no issue

- we had to fork the original repository at one point, because of slow maintenance
- maintenance is back now
- https://github.com/maxogden/extract-zip/pull/52 was merged and released
2017-10-31 12:11:59 +01:00
kirrg001
cfca111493 Bump dependencies
no issue

- bson-objectid@1.2.1
- compression@1.7.1
- express@4.16.2
- moment-timezone@0.5.14
- mysql@2.15.0
- nconf@0.8.5
- sanitize-html@1.15.0
- simple-html-tokenizer@0.4.3
- superagent@3.8.0

IMPORTANT:
- we are unable to bump moment and bluebird at the moment, because in both releases there is a bug which breaks our tests
- i didn't investigate a lot, but there is https://github.com/petkaantonov/bluebird/issues/1468
- and for moment, a couple of reports came in for .19 regarding a wrong date behaviour
2017-10-31 11:53:16 +01:00
Aileen Nowak
8edc960c16 Version bump to 1.16.0 2017-10-26 19:20:03 +07:00
Katharina Irrgang
07dcbb0d53 Support for Node v8 (#9183)
no issue

- bump dependencies because of failing tests
- added package-lock.json to gitignore, because we use yarn
- run v8 on travis
- support v8 engine in package.json
2017-10-26 11:37:58 +01:00
kirrg001
984aeffeb6 Bump knex-migrator to version 2.1.8
no issue

- Fixed migration order on db initialisation
2017-10-25 10:44:27 +02:00
Aileen Nowak
6812af6eed Version bump to 1.15.1 2017-10-24 16:19:29 +07:00
Kevin Ansfield
eff331e99b Version bump to 1.15.0 2017-10-19 14:26:38 +01:00
Kevin Ansfield
fedd8780e7 Version bump to 1.14.1 2017-10-17 16:14:32 +01:00
Hannah Wolfe
7262c9e465 Upgrading knex-migrator to 2.1.7 (#9154) 2017-10-17 16:06:46 +01:00
Kevin Ansfield
fde780b7e7 Version bump to 1.14.0 2017-10-13 15:54:09 +01:00
kirrg001
94ac1c5998 Version bump to 1.13.0 2017-10-10 14:40:35 +02:00
Katharina Irrgang
594b0c2d14 Custom post templates (#9073)
closes #9060

- Update `gscan` - it now extracts custom templates and exposes them to Ghost
- Add `custom_template` field to post schema w/ 1.13 migration
- Return `templates` array for the active theme in `/themes/` requests
- Users with Author/Editor roles can now request `/themes/`
- Front-end will render `custom_template` for posts if it exists, template priority is now:
  1. `post/page-{{slug}}.hbs`
  2. `{{custom_template}}.hbs`
  3. `post/page.hbs`
2017-10-10 13:36:35 +01:00
Hannah Wolfe
7999c38fa2 Support filtering based on primary_tag (#9124)
closes #8668, refs #8920

- Updated tests to include internal tags
  - Tests had no example of an internal tag
  - Need this to show that the new filtering works as expected
- primary_tag is a calculated field
- This ensures that we can alias the field to equivalent logic in API filters
- By replacing primary_tag by a lookup based on a tag which has order 0
- bump ghost-gql to 0.0.8

**NOTE:**
Until GQL is refactored, there are limitations on what else can be filtered when using primary_tag in a filter e.g. it wont be possible to do a filter based on primary_tag AND/OR other tag filters.
2017-10-10 14:07:44 +02:00
kirrg001
e6779d4cdc Version bump to 1.12.1 2017-10-06 14:45:19 +02:00
Aileen Nowak
c50415d9d6 Version bump to 1.12.0 2017-10-05 18:57:41 +07:00
Aileen Nowak
93ba3cf214 Version bump to 1.11.1 2017-10-04 16:37:59 +07:00
Aileen Nowak
d7e0770a7b Bump Amperize to version 0.3.5 (#9087)
no issue

- bump `amperize` to 0.3.5 which fixes issues with images-size requests not following redirects, and image-size requests that caused errors leading to stop transforming the rest of the passed HTML.
2017-10-04 11:12:03 +02:00
Aileen Nowak
1933c77773 Version bump to 1.11.0 2017-10-03 19:41:57 +07:00
Kevin Ansfield
fe0dc95c49 Version bump to 1.10.0 2017-09-28 15:09:31 +01:00
Kevin Ansfield
4259a85205 Version bump to 1.9.1 2017-09-26 14:49:00 +01:00
Kevin Ansfield
ec6e25674c Removed markdown-it-named-headers and unused string deps (#8994)
refs https://github.com/TryGhost/Ghost-Admin/pull/856

- moves `markdown-it-named-headers` functionality into our own app code without requiring the [`string.js`](http://stringjs.com) sub-dependency
- matches Ghost-Admin markdown-it code
2017-09-25 16:36:34 +02:00
Katharina Irrgang
55bf5997b9 Bump dependencies (#9050)
no issue

- body-parser@1.18.2
- cookie-session@1.3.2
- knex-migrator@2.1.6
- markdown-it@8.4.0
- netjet@1.1.4
- oauth2orize@1.10.0
- passport@0.4.0
- superagent@3.6.0
- mocha@3.5.3
- nock@9.0.20
- tmp@0.0.33
2017-09-25 13:27:14 +01:00
kirrg001
436856f2ad Version bump to 1.9.0 2017-09-21 17:03:59 +02:00
kirrg001
ca53a83569 Version bump to 1.8.7 2017-09-19 14:20:32 +02:00
Katharina Irrgang
7b4c3fc085 Removed defunct Ghost OAuth code (#9014)
closes #8342

- no need to add a migration, because when we'released 1.0, OAuth was never an option
- it was disabled in April, 1.0-beta was released in June
- remove all remote authentication code
2017-09-18 13:01:58 +01:00
Aileen Nowak
1868285bed Version bump to 1.8.6 2017-09-14 18:43:20 +07:00
Aileen Nowak
4a1f1f5a9f Version bump to 1.8.5 2017-09-12 20:30:11 +07:00
kirrg001
f320af4534 Version bump to 1.8.4 2017-09-07 14:45:56 +02:00
kirrg001
37ad4004f2 Version bump to 1.8.3 2017-09-05 20:36:02 +02:00
kirrg001
5c2e1161f6 Version bump to 1.8.2 2017-09-05 14:17:34 +02:00
Kevin Ansfield
2ecf06da52 Version bump to 1.8.1 2017-08-31 14:34:52 +01:00
Kevin Ansfield
47322e4239 Re-instate mobiledoc dom rendering with bypass of SimpleDOM parsing (#8937)
closes #8757

- update the markdown card render method to use SimpleDOM's `createRawHtmlSection`. This avoids SimpleDOM parsing and tokenization of broken or unsupported free-form HTML that markdown allows
- replace markdown extraction/render with mobiledoc's renderer in the `Post` model
- removes `jsdom` as it's no longer necessary
2017-08-31 12:09:02 +02:00
Aileen Nowak
30bee115fe Used got to handle requests for image-size (#8892)
refs #8589, refs #8868

- swap `request` with `got` in `getImageSizeFromUrl` util
- less handling for request cases e.g. timeouts, follow redirects
2017-08-31 11:39:37 +02:00
Kevin Ansfield
6a10c99088 Version bump to 1.8.0 2017-08-29 14:21:54 +01:00
Kevin Ansfield
0c4fcfdbe3 Version bump to 1.7.1 2017-08-24 14:45:04 +01:00
Kevin Ansfield
16b3e97319 Version bump to 1.7.0 2017-08-22 14:09:29 +01:00
David Wolfe
be54da265b Add segment analytics for blog data (#8912)
no issue
- adds data to track such as post published
- adds ability to add custom data and event prefix via config file
2017-08-22 12:23:23 +01:00
Kevin Ansfield
f1dfb019fb Version bump to 1.6.2 2017-08-17 18:29:53 +01:00
Aileen Nowak
b086b432ad Dumped icojs and use image-size for .ico (#8888)
refs #8868

The `image-size` library supports now `.ico` files, which means there is no longer need to use the `icojs` library.
- removes unnecessary `icojs` dependency
- refactors `getIconDimensions` fn in blog icon util to fetch image sizes synchronus
- removes unnecessary `getIconDimensions` fn in blog icon validation, as there is no longer need to use different image size fn for different file extensions, and uses `getIconDimensions` from blog util fn instead.
- updates and adds more tests
2017-08-17 17:44:05 +01:00
cobbspur
cce7aa3b49 Version bump to 1.6.1 2017-08-16 13:07:59 +01:00
Kevin Ansfield
ce164cd7d5 Version bump to 1.6.0 2017-08-15 18:36:42 +01:00
Hannah Wolfe
b6b299a8f7 Used ghost-ignition.debug, removed debug dep (#8881)
no issue

- Upgraded ghost-ignition
- Use debug from ghost-ignition everywhere in the code base
- Remove debug dependency
- Fixed random typo in Gruntfile.js
2017-08-15 18:29:27 +07:00
kirrg001
a40843dbb7 Version bump to 1.5.2 2017-08-10 16:25:03 +02:00
Hannah Wolfe
f554523d23 🛠 Added npm run dev to run grunt dev w/ DEBUG on (#8861)
no issue

- Most of our other projects have `npm run dev`
- In Ghost we use `grunt dev`, but I also want to have DEBUG turned on for development
- `npm run dev` is a shortcut for these 2 things
- Also cos I keep accidentally typing `npm run dev` anyway 😬
2017-08-09 18:20:02 +02:00
kirrg001
eadeb4f06b Version bump to 1.5.1 2017-08-08 15:14:32 +02:00
kirrg001
bb6b58cae7 ⬆️ Bump dependencies
no issue

- cookie-session@1.3.0
- ghost-ignition@2.8.13
- gscan@1.1.7
- image-size@0.6.1
- markdown-it@8.3.2
- mysql@2.14.1
- mocha@3.5.0
- nock@9.0.14
2017-08-08 14:57:10 +02:00
kirrg001
9009f21368 Version bump to 1.5.0 2017-08-03 16:02:49 +04:00
kirrg001
ffecf87551 ⬆️ Bumb dependencies
no issue

- compression@1.7.0
- cors@2.8.4
- gscan@1.1.6
- jsonpath@0.2.12
- knex-migrator@2.1.5
- semver@5.4.1
2017-08-03 11:09:03 +04:00
kirrg001
9697d41852 Version bump to 1.4.0 2017-08-02 15:13:29 +04:00
kirrg001
0a5d996a15 Version bump to 1.3.0 2017-08-01 17:29:48 +04:00
kirrg001
68803ae250 ⬆️ Bump dependencies
no issue

- knex-migrator@2.1.4
2017-08-01 17:20:01 +04:00
kirrg001
acfb0d31ea ⬆️ Bump dependencies
no issue

- ghost-ignition@2.8.12
2017-08-01 13:40:50 +04:00
Katharina Irrgang
7845617607 Custom Post Excerpt Feature (#8792)
closes #8793

- 1.3 post excerpt migration
  - add 1.3 migration to add `excerpt` to post schema

NOTE:
    - knex-migrator relies on the package.json safe version
    - so right now Ghost is on 1.2
    - the migration script is for 1.3
    - if you pull down the PR (or if we merge this PR into master), you have to run `knex-migrator migrate --v 1.3 --force`
    - knex-migrator will tell you what you have todo

- Bump dependencies
  - knex-migrator@2.1.3
- Soft limit for custom_excerpt
- Extended {{excerpt}} to use custom excerpt
   - when a `custom_excerpt` field exists, the `{{excerpt}}` helper will output this and fall back to autogenerated excerpt if not.
- Refactored behaviour of (meta) description
   - html tag `<meta name="description" />` for posts, tags and author doesn't get rendered if not provided.
        - fallback for `author.bio` removed
        - fallback for `tag.description` removed
   - structured data and schema.org for `post` context takes the following order to render description fields:
        1. custom excerpt
        2. meta description
        3. automated excerpt (50 words)
    - updated and added tests to reflect the changes
2017-08-01 12:39:34 +04:00
kirrg001
645cdfd461 Version bump to 1.2.0 2017-07-31 14:40:18 +04:00
kirrg001
f12d076c93 Version bump to 1.1.0 2017-07-28 18:31:37 +04:00
Kevin Ansfield
f6a9e8694e Version bump to 1.0.2 2017-07-27 13:45:36 +04:00
John O'Nolan
0698be503a Site description fixture update (#8763)
No issue
2017-07-27 12:26:31 +04:00
Katharina Irrgang
b11ffd976b ⬆️ bump dependencies (#8761)
no issue

- gscan@1.1.5
2017-07-27 11:47:27 +04:00
Kevin Ansfield
9704b0ae4d Version bump to 1.0.1 2017-07-26 15:03:02 +04:00
Kevin Ansfield
0a0ffe7e9c Version bump to 1.0.0 2017-07-22 19:55:42 +01:00
kirrg001
f4ecd65853 ⬆️ bump dependencies
no issue

- gscan@1.1.4
2017-07-18 15:31:12 +02:00
kirrg001
afa482f5fe Version bump to 1.0.0-rc.1 2017-07-11 16:41:08 +02:00
kirrg001
07e35e3d0b ⬆️ bump dependencies
no issue

- gscan@1.1.3
- grunt-contrib-clean@1.1.0
- grunt-contrib-compress@1.4.3
- grunt-contrib-jshint@1.1.0
- jshint@2.9.5
- mocha@3.4.2
2017-07-11 10:45:43 +02:00
kirrg001
21d7791eae Version bump to 1.0.0-beta.2 2017-06-23 09:58:44 +02:00
kirrg001
6a589f7878 ⬆️ bump dependencies
no issue

- gscan@1.1.2
- body-parser@1.17.2
- debug@2.6.8
- express@4.15.3
- html-to-text@3.3.0
- image-size@0.5.5
- uuid@3.1.0
2017-06-22 19:40:56 +02:00
Kevin Ansfield
eec5896d34 Version bump to 1.0.0-beta.1 2017-06-08 20:46:12 +01:00
kirrg001
d823412987 ⬆️ bump dependencies
no issue

- gscan 1.1.1
2017-06-08 16:14:51 +02:00
kirrg001
85ed078df8 ⬆️ gscan 1.1.0 2017-06-06 13:07:50 +07:00
kirrg001
8680099765 🎨 gscan 1.1.0 & optimisations
refs #8222

- differentiate between errors and fatal errors
- use gscan errors in theme middleware
- Adds a new `error()` method to `currentActiveTheme` constructor which will return the errors we receive from gscan
- In middleware, if a theme couldn't be activated because it's invalid, we'll fetch the erros and send them to our error handler. We also use a new property `hideStack` to control, if the stack (in dev mode and if available) should be shown or the gscan errors (in prod mode, or in dev if no stack error)
- In our error handler we use this conditional to send a new property `gscan` to our error theme
- In `error.hbs` we'll iterate through possible `gscan` error objects and render them.
- remove stack printing
- stack for theme developers in development mode doesn't make sense
- stack in production doesn't make sense
- the stack is usually hard to read
- if you are developer you can read the error stack on the server log
- utils.packages: transform native error into Ghost error
- use `onlyFatalErrors` for gscan format and differeniate fatal errors vo.2
- optimise bootstrap error handling
- transform theme is missing into an error
- add new translation key
- show html tags for error.hbs template: rule
2017-06-06 13:07:50 +07:00
Katharina Irrgang
18d2c9fae0 ⬆️ bump minimum node version [4.5.0, 6.9.0] (#8489)
no issue

- the new ember version requires 4.5.0
- i've also bumped node v6, because of the latest security vulnerability report (see https://nodejs.org/en/blog/vulnerability/october-2016-security-releases/)
  "All of these vulnerabilities are considered low-severity for Node.js users, however, users of Node.js v6.x should upgrade at their earliest convenience."
2017-05-29 19:24:38 +01:00
Kevin Ansfield
1a1cc6ba23 Version bump to 1.0.0-alpha.21 2017-05-24 15:15:34 +01:00
Ryan McCarvill
957f51e677 🐝 Allow unbalanced HTML in markdown card. (#8320)
no issue

The simpledom interpreter that the Mobiledoc DOM renderer uses does not allow for unbalanced or incorrect HTML such as that which is entered by a user.

This PR adds a step where the HTML is sanitised and balanced before being passed to simpledom.

- use latest jsdom (+pin version), update yarn.lock, add comments
- don't use node-4 incompatible shorthand method definition
- grab <body> content rather than document content
- update markdown card specs to match markdown-it behaviour
- revert to jsdom 9.12.0 for node 4.x support, close window to free memory
- moved 3rd party libs into render function
2017-05-23 16:15:32 +02:00
kirrg001
b20fb26061 ⬇️️ revert dependencies: knex@0.13.0 to knex@0.12.9
no issue

We have recently merged `knex:0.13.0` into Ghost master.

It was absolutely fine and it works, because yarn is smart. but...
- in case you use `npm` for the installation, the installation of the Ghost dependency fails because of a peer dependency error
- we install 2x knex, which isn't really useful
- bookshelf doesn't actually support knex 0.13.0 yet, see https://github.com/tgriesser/bookshelf/issues/1566
2017-05-22 14:59:21 +02:00
Kevin Ansfield
5d868d14ad replace custom showdown fork with markdown-it (#8451)
refs https://github.com/TryGhost/Ghost-Admin/pull/690, closes #1501, closes #2093, closes #4592, closes #4627, closes #4659, closes #5039, closes #5237, closes #5587, closes #5625, closes #5632, closes #5822, closes #5939, closes #6840, closes #7183, closes #7536

- replace custom showdown fork with markdown-it
- swaps showdown for markdown-it when rendering markdown
- match existing header ID behaviour
- allow headers without a space after the #s
- add duplicate header ID handling
- remove legacy markdown spec
- move markdown-it setup into markdown-converter util
- update mobiledoc specs to match markdown-it newline behaviour
- update data-generator HTML to match markdown-it newline behaviour
- fix Post "converts html to plaintext" test
- update rss spec to match markdown-it newline behaviour
- close almost all related showdown bugs
2017-05-15 18:48:14 +02:00
kirrg001
33c95f4523 ⬆️ bump dependencies
no issue

- express@4.15.2
- body-parser@1.17.1
- uuid@3.0.1
2017-05-12 08:59:09 +01:00
Greenkeeper
df8e7f873e Update fs-extra to version 3.0.1 🚀 (#8440)
* chore(package): update fs-extra to version 3.0.1

https://greenkeeper.io/

* chore: yarn.lock
2017-05-10 09:51:54 +02:00
Greenkeeper
a3e74b305a Update debug to version 2.6.6 🚀 (#8425)
* chore(package): update debug to version 2.6.6

https://greenkeeper.io/

* chore: yarn.lock
2017-05-10 09:47:23 +02:00
Greenkeeper
7a4d76c57d Update image-size to version 0.5.2 🚀 (#8446)
* chore(package): update image-size to version 0.5.2

https://greenkeeper.io/

* chore: yarn.lock
2017-05-10 09:46:54 +02:00
Greenkeeper
8704cc9169 Update knex to version 0.13.0 🚀 (#8428)
* chore(package): update knex to version 0.13.0

https://greenkeeper.io/

* chore: yarn.lock
2017-05-02 13:43:50 +02:00
Greenkeeper
53cc834cd1 Update mocha to version 3.3.0 🚀 (#8376)
* chore(package): update mocha to version 3.3.0

https://greenkeeper.io/

* chore: yarn.lock
2017-05-02 13:33:47 +02:00
Kevin Ansfield
8a9ed971fa Version bump to 1.0.0-alpha.20 2017-04-25 13:58:19 +01:00
Katharina Irrgang
76bd4fdef6 🙀 Image field naming & new img_url helper (#8364)
* 🙀  change database schema for images
    - rename user/post/tag images
    - contains all the required changes from the schema change

* Refactor helper/meta data
    - rename cover to cover_image
    - also rename default settings to match the pattern
    - rename image to profile_image for user
    - rename image to feature_image for tags/posts

* {{image}} >>> {{img_url}}
    - rename
    - change the functionality
    - attr is required
    - e.g. {{img_url feature_image}}

* gscan 1.0.0
    - update yarn.lock

* Update casper reference: 1.0-changes
    - see 5487b4da8d
2017-04-24 18:21:47 +01:00
Greenkeeper
df26e38ccf Update debug to version 2.6.4 🚀 (#8367)
* chore(package): update debug to version 2.6.4

https://greenkeeper.io/

* chore: yarn.lock
2017-04-24 16:37:02 +02:00
Greenkeeper
c3403d581a Update ghost-ignition to version 2.8.11 🚀 (#8377)
* chore(package): update ghost-ignition to version 2.8.11

https://greenkeeper.io/

* chore: yarn.lock
2017-04-24 13:21:00 +02:00
Greenkeeper
b4c70677d8 Update gscan to version 0.2.4 🚀 (#8368)
* chore(package): update gscan to version 0.2.4

https://greenkeeper.io/

* chore: yarn.lock
2017-04-21 01:26:56 +02:00
Greenkeeper
1ccea56370 Update gscan to version 0.2.3 🚀 (#8344)
* chore(package): update gscan to version 0.2.3

https://greenkeeper.io/

* chore: yarn.lock
2017-04-17 16:04:31 +02:00
Hannah Wolfe
e9a537004b Added pre-commit hook to handle submodules (#8302)
refs #8235

Usage:
- for existing development setups: `grunt symlink` (will create the pre-commit symlink)
- for fresh development setups: `npm run init` (symlinking happens as part of the typical set up)

-  Added pre-commit hook to handle submodules
  - Checks to see if there are any submodules about to be committed
  - Output matches closely to `git st` to make it easy to read
  - Requires interaction from the committer to accept that this really should be committed
-  Use grunt symlink to register githooks
  - Grunt symlink will make a link to the pre-commit hook
  - It ONLY does this if there isn't already a pre-commit hook, so won't overwrite anything
  - It does this as part of npm run init, not grunt init, because a release repo would NEVER want this
  - This is a dev tool, that configures the repo for development
2017-04-13 08:26:48 +01:00
Kevin Ansfield
8dae1cd361 Version bump to 1.0.0-alpha.19 2017-04-11 18:20:49 +01:00
Greenkeeper
6a7879d4f8 Update nock to version 9.0.13 🚀 (#8306)
* chore(package): update nock to version 9.0.13

https://greenkeeper.io/

* chore: yarn.lock
2017-04-11 10:26:31 +02:00
Hannah Wolfe
a413d70313 Asset amends (#8294)
refs #8221

🔥 Remove ghost=true concept from asset url helper

 💯 Introduce CSS minification with cssnano
- add new grunt-cssnano dependency
- wire up grunt task to minify public/ghost.css

🎨 Rename minification config & hash params
- Change minifyInProduction -> hasMinFile
  - this means this asset should have a .min file available
- Change minifyAssets -> useMinFiles
  - this means that in this env we want to serve .min files if available

🎨 Update public/ghost.css to serve .min for prod
- add the new `hasMinFile` property

🎨 Move minified asset handling to asset_url util
- this logic should be in the util, not the asset helper
- updated tests

📖 Error handler always needs asset helper
- this removes the TODO and adds a more sensible comment
- we also need to update our theme documentation around error templates

🔥 Don't use asset helper in ghost head
- use getAssetUrl util instead!
- removed TODO

📖 Update proxy docs
🎨 Simplify asset helper & add tests
- this refactor is a step prior to moving this from metadata to being a url util
- needed to skip some new tests

🐛 Add missing handler for css file
2017-04-10 11:30:21 +02:00
Greenkeeper
791f1b55df Update gscan to version 0.2.2 🚀 (#8281)
* chore(package): update gscan to version 0.2.2

https://greenkeeper.io/

* chore: yarn.lock
2017-04-06 13:55:10 +02:00
Greenkeeper
9d020c93fc Update icojs to version 0.7.2 🚀 (#8278)
* chore(package): update icojs to version 0.7.2

https://greenkeeper.io/

* chore: yarn.lock
2017-04-05 19:11:09 +02:00
Katharina Irrgang
817b8d09ca 😱 🎨 Refactor storage adapter (#8229)
refs #7687

There are four main changes in this PR:

we have outsourced the base storage adapter to npm, because for storage developers it's annoying to inherit from a script within Ghost
we hacked theme storage handling into the default local storage adapter - this was reverted, instead we have added a static theme storage here
use classes instead of prototyping
optimise the storage adapter in general - everything is explained in each commit

----

* rename local-file-store to LocalFileStorage

I would like to keep the name pattern i have used for scheduling.
If a file is a class, the file name reflects the class name.
We can discuss this, if concerns are raised.

* Transform LocalFileStorage to class and inherit from new base

- inherit from npm ghost-storage-base
- rewrite to class
- no further refactoring, happens later

* Rename core/test/unit/storage/local-file-store_spec.js -> core/test/unit/storage/LocalFileStorage_spec.js

* Fix wrong require in core/test/unit/storage/LocalFileStorage_spec.js

* remove base storage and test

- see https://github.com/kirrg001/Ghost-Storage-Base
- the test has moved to this repo as well

* Use npm ghost-storage-base in storage/index.js

* remove the concept of getStorage('themes')

This concept was added when we added themes as a feature.
Back then, we have changed the local storage adapter to support images and themes.
This has added some hacks into the local storage adapters.
We want to revert this change and add a simple static theme storage.

Will adapt the api/themes layer in the next commits.

* Revert LocalFileStorage

- revert serve
- revert delete

* add storagePath as property to LocalFileStorage

- define one property which holds the storage path
- could be considered to pass from outside, but found that not helpful, as other storage adapters do not need this property
- IMPORTANT: save has no longer a targetDir option, because this was used to pass the alternative theme storage path
- IMPORTANT: exists has now an alternative targetDir, this makes sense, because
  - you can either ask the storage exists('my-file') and it will look in the base storage path
  - or you pass a specific path where to look exists('my-file', /path/to/dir)

* LocalFileStorage: get rid of store pattern

- getUniqueFileName(THIS)
- this doesn't make sense, instances always have access to this by default

* Add static theme storage

- inherits from the local file storage, because they both operate on the file system
- IMPORTANT: added a TODO to consider a merge of themes/loader and themes/storage
- but will be definitely not part of this PR

* Use new static theme storage in api/themes

- storage functions are simplified!

* Add https://github.com/kirrg001/Ghost-Storage-Base as dependency

- tarball for now, as i am still testing
- will release if PR review get's accepted

* Adapt tests and jscs/jshint

* 🐛  fix storage.read in favicon utility

- wrong implementation of error handling

* 🎨  optimise error messages for custom storage adapter errors

* little renaming in the storage utlity

- purpose is to have access to the custom storage instance and to the custom storage class
- see next commit why

* optimise instanceof base storage

- instanceof is always tricky in javascript
- if multiple modules exist, it can happen that instanceof is false

* fix getTargetDir

- the importer uses the `targetDir` option to ensure that images land in the correct folder

* ghost-storage-base@0.0.1 package.json dependency
2017-04-05 15:10:34 +01:00
Greenkeeper
b9563ab6af Update moment-timezone to version 0.5.13 🚀 (#8272)
* chore(package): update moment-timezone to version 0.5.13

https://greenkeeper.io/

* chore: yarn.lock
2017-04-05 09:56:39 +02:00
Kevin Ansfield
f43a8e4315 Version bump to 1.0.0-alpha.18 2017-04-04 12:45:14 +01:00
Katharina Irrgang
a42b233b04 Revert: Update sinon to version 2.1.0 (#8262)
no issue

- https://greenkeeper.io/
- revert because sinon has changed their API obviously and it shows lots of depreaction warnings right now
- as sinon is "just" a testing dependency, i wouldn't spend this time right now and add sinon to the ignore list

* Revert: Update sinon to version 2.1.0
* yarn update
2017-04-04 11:54:48 +01:00
Kevin Ansfield
1cb1ea105c 🛠 switch to using yarn in our Grunt tasks (#8261)
no issue

- use `yarn install` instead of `npm install` in grunt tasks
- remove `grunt deps` and `grunt shell:{shrinkwrap/prune/dedupe}` tasks as they are not needed when using `yarn`
- set `options.npmPath` to `yarn` for subgrunt so it doesn't use `npm install` automatically
- don't remove client contributors files in `grunt clean` - those files are now manually created and should be kept

* 🛠 switch to using yarn in our Grunt tasks
* 🛠 use yarn for `npm run init`, update README
2017-04-04 11:47:12 +01:00
Greenkeeper
e348303337 Update bluebird to version 3.5.0 🚀 (#8096)
* chore(package): update bluebird to version 3.5.0

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 10:48:39 +02:00
Greenkeeper
a78ee40f63 Update should to version 11.2.1 🚀 (#8117)
* chore(package): update should to version 11.2.1

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 10:48:05 +02:00
Greenkeeper
f0abb25611 Update debug to version 2.6.3 🚀 (#8151)
* chore(package): update debug to version 2.6.3

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 10:28:37 +02:00
Greenkeeper
68efdfa4e7 Update moment to version 2.18.1 🚀 (#8207)
* chore(package): update moment to version 2.18.1

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 10:27:57 +02:00
Greenkeeper
c1a67df9e1 Update superagent to version 3.5.2 🚀 (#8208)
* chore(package): update superagent to version 3.5.2

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 10:19:42 +02:00
Greenkeeper
d689559975 Update ghost-ignition to version 2.8.10 🚀 (#8177)
* chore(package): update ghost-ignition to version 2.8.10

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 10:13:19 +02:00
Greenkeeper
ea2afd1823 Update should-http to version 0.1.1 🚀 (#8209)
* chore(package): update should-http to version 0.1.1

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 10:12:37 +02:00
Greenkeeper
157d48588d Update fs-extra to version 2.1.2 🚀 (#8181)
* chore(package): update fs-extra to version 2.1.2

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 09:49:58 +02:00
Greenkeeper
e2b7aead2f Update simple-html-tokenizer to version 0.4.1 🚀 (#8232)
* chore(package): update simple-html-tokenizer to version 0.4.1

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 09:47:57 +02:00
Greenkeeper
c25eff732d Update knex to version 0.12.9 🚀 (#8224)
* chore(package): update knex to version 0.12.9

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 09:47:09 +02:00
Greenkeeper
11afbbaf41 Update nock to version 9.0.11 🚀 (#8239)
* chore(package): update nock to version 9.0.11

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 09:46:16 +02:00
Greenkeeper
faecc485da Update cors to version 2.8.3 🚀 (#8240)
* chore(package): update cors to version 2.8.3

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 09:45:42 +02:00
Greenkeeper
373865a641 Update moment-timezone to version 0.5.12 🚀 (#8247)
* chore(package): update moment-timezone to version 0.5.12

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 09:37:25 +02:00
Greenkeeper
230da89e66 Update sinon to version 2.1.0 🚀 (#8198)
* chore(package): update sinon to version 2.1.0

https://greenkeeper.io/

* chore: yarn.lock
2017-04-04 09:01:26 +02:00
Katharina Irrgang
6e24f0504d 🎨 hide npm error log if running npm run init (#8250)
refs #8235
- users share the general npm error log, which won't help
- so it's better to hide this log
2017-04-03 13:52:52 +01:00
Greenkeeper
b8e46137c8 Update icojs to version 0.7.1 🚀 (#8233)
* chore(package): update icojs to version 0.7.1

https://greenkeeper.io/

* chore: yarn.lock
2017-03-26 20:08:24 +02:00
Katharina Irrgang
76fd1264a8 📖 Update README installation instructions (#8175)
- add contributing workflow link already
- i would suggest we merge this PR if the workflow guide was reviewed
2017-03-23 16:02:21 +00:00
Greenkeeper
a7d5682d16 Update icojs to version 0.7.0 🚀 (#8178)
* chore(package): update icojs to version 0.7.0

https://greenkeeper.io/

* chore: yarn.lock
2017-03-23 11:19:18 +01:00
kirrg001
bafb24bd07 Version bump to 1.0.0-alpha.17 2017-03-22 10:18:14 +01:00
Greenkeeper
2419c0ff2e Update knex-migrator to version 2.0.16 🚀 (#8174)
* chore(package): update knex-migrator to version 2.0.16

https://greenkeeper.io/

* chore: yarn.lock
2017-03-15 23:44:56 +01:00
Greenkeeper
c8cc492252 Update knex to version 0.12.8 🚀 (#8173)
* chore(package): update knex to version 0.12.8

https://greenkeeper.io/

* chore: yarn.lock
2017-03-15 23:15:19 +01:00
Greenkeeper
c289508c4c Update knex-migrator to version 2.0.14 🚀 (#8167)
* chore(package): update knex-migrator to version 2.0.14

https://greenkeeper.io/

* chore: yarn.lock
2017-03-15 09:36:59 +01:00
Kevin Ansfield
b1ea91da92 Version bump to 1.0.0-alpha.16 2017-03-14 19:06:41 +00:00
Ryan McCarvill
f61aa662c1 Removed ghost editor dependency (#8137)
refs #7429
- ☢️ 👷🏻‍♀️ This PR removes the dependency on Ghost-Editor and replaces it with the Mobiledoc DOM renderer. It includes new DOM based default cards and atoms.
2017-03-14 18:07:33 +00:00
Katharina Irrgang
f4a68a2e52 🔥 remove gulp (#8159)
* remove gulpfile
* remove gulp dependencies
* Update README.md
2017-03-14 14:20:53 +00:00
Greenkeeper
234e27ff87 Update ghost-ignition to version 2.8.9 🚀 (#8139)
* chore(package): update ghost-ignition to version 2.8.9

https://greenkeeper.io/

* chore: yarn.lock
2017-03-13 09:44:21 +01:00
Greenkeeper
0d2f9c6aa8 Update passport-ghost to version 2.3.1 🚀 (#8125)
* chore(package): update passport-ghost to version 2.3.1

https://greenkeeper.io/

* chore: yarn.lock
2017-03-10 19:56:02 +01:00
Greenkeeper
45127d4b0a Update knex-migrator to version 2.0.13 🚀 (#8124)
* chore(package): update knex-migrator to version 2.0.13

https://greenkeeper.io/

* chore: yarn.lock
2017-03-10 19:35:23 +01:00
Greenkeeper
feaa25dad2 Update knex-migrator to version 2.0.12 🚀 (#8118)
* chore(package): update knex-migrator to version 2.0.12

https://greenkeeper.io/

* chore: yarn.lock
2017-03-09 19:08:06 +01:00
Greenkeeper
29511bf61a Update passport-ghost to version 2.3.0 🚀 (#8108)
* chore(package): update passport-ghost to version 2.3.0

https://greenkeeper.io/

* chore: yarn.lock
2017-03-08 15:41:36 +01:00
Greenkeeper
1909e0c730 Update knex-migrator to version 2.0.9 🚀 (#8092)
* chore(package): update knex-migrator to version 2.0.9

https://greenkeeper.io/

* chore: yarn.lock
2017-03-08 15:41:21 +01:00
kirrg001
d34399c4ca Version bump to 1.0.0-alpha.15 2017-03-03 18:35:18 +01:00
Greenkeeper
0fd0807f7b Update knex to version 0.12.7 🚀 (#8014)
* chore(package): update knex to version 0.12.7

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 17:29:04 +01:00
Greenkeeper
b79df0e89a Update jsonpath to version 0.2.11 🚀 (#8004)
* chore(package): update jsonpath to version 0.2.11

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 15:24:00 +01:00
Greenkeeper
f74dbc47a6 Update superagent to version 3.5.0 🚀 (#8043)
* chore(package): update superagent to version 3.5.0

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 15:14:45 +01:00
Greenkeeper
499a2c846b Update validator to version 6.3.0 🚀 (#8049)
* chore(package): update validator to version 6.3.0

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 15:04:38 +01:00
Greenkeeper
d3954b7833 Update nock to version 9.0.9 🚀 (#8073)
* chore(package): update nock to version 9.0.9

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 14:54:49 +01:00
Greenkeeper
4fe24e5332 Update debug to version 2.6.1 🚀 (#7978)
* chore(package): update debug to version 2.6.1

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 14:53:59 +01:00
Greenkeeper
a9612f33be Update oauth2orize to version 1.8.0 🚀 (#8074)
* chore(package): update oauth2orize to version 1.8.0

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 14:48:44 +01:00
Greenkeeper
4fef487070 Update html-to-text to version 3.2.0 🚀 (#8075)
* chore(package): update html-to-text to version 3.2.0

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 14:44:02 +01:00
Greenkeeper
3c0adfaa28 Update body-parser to version 1.17.0 🚀 (#8083)
* chore(package): update body-parser to version 1.17.0

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 14:39:37 +01:00
Greenkeeper
1c45368150 Update express to version 4.15.0 🚀 (#8084)
* chore(package): update express to version 4.15.0

https://greenkeeper.io/

* chore: yarn.lock
2017-03-03 14:35:03 +01:00
Greenkeeper
75ba25db3f Update ghost-ignition to version 2.8.8 🚀 (#8089)
* chore(package): update ghost-ignition to version 2.8.8

https://greenkeeper.io/

* chore: yarn.lock
2017-03-02 17:54:05 +01:00
kirrg001
23c0d691df Update brute-knex 🚀
- chore: yarn.lock
2017-02-28 18:35:58 +01:00
Greenkeeper
415d091578 Update passport-ghost to version 2.2.4 🚀 (#8072)
* chore(package): update passport-ghost to version 2.2.4

https://greenkeeper.io/

* chore: yarn.lock
2017-02-28 18:10:59 +01:00
Greenkeeper
0e11ec90de Update gscan to version 0.2.1 🚀 (#8071)
* chore(package): update gscan to version 0.2.1

https://greenkeeper.io/

* chore: yarn.lock
2017-02-28 17:23:29 +01:00
Greenkeeper
7e0262aaf4 Update knex-migrator to version 2.0.8 🚀 (#8070)
* chore(package): update knex-migrator to version 2.0.8

https://greenkeeper.io/

* chore: yarn.lock
2017-02-28 16:13:56 +01:00
Kevin Ansfield
56eb89659e Version bump to 1.0.0-alpha.14 2017-02-24 19:53:36 +00:00
Greenkeeper
2e824f351c Update ghost-editor to version 0.1.10 🚀 (#8039)
* chore(package): update ghost-editor to version 0.1.10

https://greenkeeper.io/

* chore: yarn.lock
2017-02-23 18:39:33 +00:00
kirrg001
a11cd132c8 Version bump to 1.0.0-alpha.13 2017-02-18 17:24:12 +01:00
kirrg001
6880199767 Update ghost-ignition to version 2.8.7 🚀 2017-02-18 16:17:57 +01:00
Greenkeeper
29d04fd6a2 Update ghost-editor to version 0.1.9 🚀 (#8019)
* chore(package): update ghost-editor to version 0.1.9

https://greenkeeper.io/

* chore: yarn.lock
2017-02-17 15:31:28 +01:00
Greenkeeper
7866579feb Update ghost-ignition to version 2.8.6 🚀 (#8010)
* chore(package): update ghost-ignition to version 2.8.6

https://greenkeeper.io/

* chore: yarn.lock
2017-02-16 15:40:47 +01:00
Greenkeeper
fbea875e6b Update passport-ghost to version 2.2.3 🚀 (#8008)
* chore(package): update passport-ghost to version 2.2.3

https://greenkeeper.io/

* chore: yarn.lock
2017-02-16 12:59:54 +01:00
Greenkeeper
69d42feb4f Update ghost-ignition to version 2.8.5 🚀 (#8002)
* chore(package): update ghost-ignition to version 2.8.5

https://greenkeeper.io/

* chore: yarn.lock
2017-02-15 12:14:43 +01:00
Greenkeeper
4a36dbcba9 Update passport-ghost to version 2.2.2 🚀 (#7999)
* chore(package): update passport-ghost to version 2.2.2

https://greenkeeper.io/

* chore: yarn.lock
2017-02-14 18:19:39 +01:00
Greenkeeper
ead92cbd59 Update passport-ghost to version 2.2.1 🚀 (#7993)
* chore(package): update passport-ghost to version 2.2.1

https://greenkeeper.io/

* chore: yarn.lock
2017-02-13 19:16:49 +01:00
Greenkeeper
196d6d02c0 Update knex-migrator to version 2.0.7 🚀 (#7974)
* chore(package): update knex-migrator to version 2.0.7

https://greenkeeper.io/

* chore: yarn.lock
2017-02-10 16:25:10 +01:00
Greenkeeper
39ec35627b Update knex-migrator to version 2.0.6 🚀 (#7968)
* chore(package): update knex-migrator to version 2.0.6

https://greenkeeper.io/

* chore: yarn.lock
2017-02-09 10:54:56 +01:00
Greenkeeper
ff995f204d Update should-http to version 0.1.0 🚀 (#7944)
* chore(package): update should-http to version 0.1.0

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 20:14:49 +01:00
Katharina Irrgang
bf7c76b294 Update amperize to version 0.3.4 🚀 (#7964)
closes #7864

- manual PR is needed, because master is on amperize 1.0.0
- but 1.0.0 was not published on purpose
- the latest release is 0.3.4

* chore: yarn.lock
2017-02-08 19:50:58 +01:00
Katharina Irrgang
9a5e10ca9b 🔥 remove unused dependencies (#7965)
no issue
2017-02-08 18:40:19 +00:00
Greenkeeper
44655f6f3d Update superagent to version 3.4.1 🚀 (#7913)
* chore(package): update superagent to version 3.4.1

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 19:36:00 +01:00
Greenkeeper
bc77d05183 Update bson-objectid to version 1.1.5 🚀 (#7863)
* chore(package): update bson-objectid to version 1.1.5

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 18:56:35 +01:00
Greenkeeper
63d9bc7bc5 Update bcryptjs to version 2.4.3 🚀 (#7949)
* chore(package): update bcryptjs to version 2.4.3

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 18:54:16 +01:00
Greenkeeper
16579982f0 Update should to version 11.2.0 🚀 (#7909)
* chore(package): update should to version 11.2.0

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 18:46:57 +01:00
Greenkeeper
2f4da86574 Update body-parser to version 1.16.0 🚀 (#7859)
* chore(package): update body-parser to version 1.16.0

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 18:21:14 +01:00
Greenkeeper
4b31aa2988 Update mysql to version 2.13.0 🚀 (#7882)
* chore(package): update mysql to version 2.13.0

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 17:48:59 +01:00
Greenkeeper
ba377676d0 Update sanitize-html to version 1.14.1 🚀 (#7846)
* chore(package): update sanitize-html to version 1.14.1

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 17:06:09 +01:00
Greenkeeper
b7f4ff8fdb Update multer to version 1.3.0 🚀 (#7896)
* chore(package): update multer to version 1.3.0

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 17:00:11 +01:00
Greenkeeper
cc01547eef Update express to version 4.14.1 🚀 (#7912)
* chore(package): update express to version 4.14.1

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 16:33:15 +01:00
Greenkeeper
5c08f5fd87 Update fs-extra to version 2.0.0 🚀 (#7851)
* chore(package): update fs-extra to version 2.0.0

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 16:27:34 +01:00
Greenkeeper
b85bff6bfa Update supertest to version 3.0.0 🚀 (#7917)
* chore(package): update supertest to version 3.0.0

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 15:42:31 +01:00
Greenkeeper
72e58c6035 Update html-to-text to version 3.1.0 🚀 (#7933)
* chore(package): update html-to-text to version 3.1.0

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 15:36:28 +01:00
Greenkeeper
0159600ae0 Update nock to version 9.0.4 🚀 (#7957)
* chore(package): update nock to version 9.0.4

https://greenkeeper.io/

* chore: yarn.lock
2017-02-08 14:59:46 +01:00
Greenkeeper
867cce09e3 Update ghost-ignition to version 2.8.4 🚀 (#7953)
* chore(package): update ghost-ignition to version 2.8.4

https://greenkeeper.io/

* chore: yarn.lock
2017-02-07 19:41:41 +01:00
kirrg001
f9986c4bcd Version bump to 1.0.0-alpha.11 2017-02-04 17:33:12 +01:00
Greenkeeper
e9a9963fa3 Update ghost-editor to version 0.1.6 🚀 (#7903)
* chore(package): update ghost-editor to version 0.1.6

https://greenkeeper.io/

* chore: yarn.lock
2017-02-04 15:03:44 +01:00
Greenkeeper
35199a1bce Update knex-migrator to version 2.0.5 🚀 (#7939)
* chore(package): update knex-migrator to version 2.0.5

https://greenkeeper.io/

* chore: yarn.lock
2017-02-04 13:30:21 +01:00
Kevin Ansfield
dd3de4c957 Version bump to 1.0.0-alpha.10 2017-01-26 18:08:41 +00:00
Aileen Nowak
5c94151e14 Blog icon validations (#7893)
refs #7688

Adds an `uploads/icon/` endpoint to the api route to get a seperate entry point for blog icon validations. The blog icon validation will specifically check for images which have icon extensions (`.ico` & `.png`) and throw errors if:

- the icon file size is too big (>100kb)
- the icon is not a squaer
- the icon size is smaller than 32px
- the icon size is larger than 1000px
- the icon is not `.ico` or `.png` extension

TODOs for this PR:
- [X] get image dimensions
- [X] validate for image
	- [X] size
	- [X] form (must be square)
	- [X] type
	- [X] dimenstion (min 32px and max 1,000px)
- [X] return appropriate error messages
- [X] write tests

--------------------

TODOs for #7688:
- [X] Figure out, which favicon should be used (uploaded or default) -> #7713
- [ ] Serve and redirect the favicon for any browser requests, incl. redirects -> #7700 [WIP]
- [X] Upload favicon via `general/settings` and implement basic admin validations -> TryGhost/Ghost-Admin#397
- [X] Build server side validations -> this PR
2017-01-26 10:01:52 +01:00
Greenkeeper
ca4f827945 Update knex-migrator to version 2.0.4 🚀 (#7902)
* chore(package): update knex-migrator to version 2.0.4

https://greenkeeper.io/

* chore: yarn.lock
2017-01-26 00:46:59 +01:00
Greenkeeper
ee3033cde5 Update knex-migrator to version 2.0.3 🚀 (#7897)
* chore(package): update knex-migrator to version 2.0.3

https://greenkeeper.io/

* chore: yarn.lock
2017-01-25 20:11:45 +01:00
Greenkeeper
5f3b5a1c93 Update ghost-ignition to version 2.8.3 🚀 (#7895)
* chore(package): update ghost-ignition to version 2.8.3

https://greenkeeper.io/

* chore: yarn.lock
2017-01-25 19:27:24 +01:00
Greenkeeper
cce3194983 Update knex-migrator to version 2.0.1 🚀 (#7883)
* chore(package): update knex-migrator to version 2.0.1

https://greenkeeper.io/

* chore: yarn.lock
2017-01-24 23:56:37 +01:00
Katharina Irrgang
c796e9f61f Revert "Update knex-migrator to version 2.0.0 🚀" (#7881) 2017-01-24 17:32:15 +01:00
Greenkeeper
6f08e2de26 chore(package): update knex-migrator to version 2.0.0 (#7880)
https://greenkeeper.io/
2017-01-24 17:02:49 +01:00
Greenkeeper
94ba209be7 chore(package): update knex-migrator to version 1.1.1 (#7878)
https://greenkeeper.io/
2017-01-24 14:21:01 +01:00
Katharina Irrgang
89ef60fdba 🛠 knex-migrator 1.0.0 (#7873)
refs #7489 

Most important change is the naming of the knex-migrator config file.
2017-01-23 12:32:17 +01:00
Katharina Irrgang
78eacb19e9 🛠 use Ignition for logging/errors (#7869)
no issue

- we started implementing logging and error handling in Ghost
- later we outsourced both into a module
- use the module now in Ghost
- this commit basically just removes the logging and error implementation and uses Ignition
2017-01-23 11:04:01 +00:00
Katharina Irrgang
857ad4f1a7 Update bookshelf to version 0.10.3 🚀 (#7871) 2017-01-22 22:46:26 +01:00
Katharina Irrgang
ebb2156284 🛠 mysql latest and do not ignore mysql for GK updates (#7868)
refs #5945
2017-01-22 11:31:53 +00:00
Austin Burdine
8d29095fa8 🔥 Drop support for Node.js v0.12 (#7820)
no issue

- Node.js v0.12 will be EOL on 31st December
- This removes official support from Ghost
2017-01-16 19:21:45 +01:00
Greenkeeper
c46db8d72f chore(package): update ghost-gql to version 0.0.6 (#7844)
https://greenkeeper.io/
2017-01-12 11:53:20 +01:00
Greenkeeper
259cc3de62 chore(package): update rss to version 1.2.2 (#7841)
https://greenkeeper.io/
2017-01-11 20:42:13 +01:00
Greenkeeper
e110ac1851 chore(package): update express-hbs to version 1.0.4 (#7840)
https://greenkeeper.io/
2017-01-11 20:40:39 +01:00
Greenkeeper
996f62ff31 chore(package): update superagent to version 3.3.2 (#7838)
https://greenkeeper.io/
2017-01-11 20:38:38 +01:00
Aileen Nowak
7cd13e6122 🔑 Update Validator to 6.2.1 (#7823)
no issue

Uses new version of [validator](https://github.com/chriso/validator.js) which checks also for in URL embedded script tags.
2017-01-10 13:05:25 +01:00
Greenkeeper
2d0e4ac770 chore(package): update oauth2orize to version 1.7.0 (#7825)
https://greenkeeper.io/
2017-01-09 15:10:16 +01:00
Greenkeeper
0fabbf8a22 chore(package): update mobiledoc-html-renderer to version 0.3.1 (#7720)
https://greenkeeper.io/
2017-01-06 09:19:28 +01:00
Marc Bachmann
353330bb8a chore(package): update uuid to version 3.0.0 (#7742) 2017-01-04 17:10:29 +01:00
Greenkeeper
56062804d1 chore(package): update html-to-text to version 3.0.0 (#7781)
https://greenkeeper.io/
2017-01-04 16:26:50 +01:00
Greenkeeper
abf976c7d8 chore(package): update sinon to version 1.17.7 (#7811)
https://greenkeeper.io/
2017-01-04 15:00:00 +01:00
Greenkeeper
ea341a3de6 chore(package): update lodash to version 4.17.4 (#7814)
https://greenkeeper.io/
2017-01-04 14:50:54 +01:00
Greenkeeper
e40ccada85 chore(package): update image-size to version 0.5.1 (#7805)
https://greenkeeper.io/
2017-01-04 14:45:26 +01:00
Greenkeeper
a3576e5934 chore(package): update debug to version 2.6.0 (#7809)
https://greenkeeper.io/
2017-01-04 14:17:03 +01:00
Greenkeeper
2e00707f86 chore(package): update multer to version 1.2.1 (#7798)
https://greenkeeper.io/
2017-01-04 14:12:57 +01:00
Greenkeeper
153bcba481 chore(package): update bluebird to version 3.4.7 (#7797)
https://greenkeeper.io/
2017-01-04 14:11:00 +01:00
Greenkeeper
56ca9b2798 chore(package): update superagent to version 3.3.1 (#7787)
https://greenkeeper.io/
2017-01-04 14:03:24 +01:00
Greenkeeper
eba907c025 chore(package): update gulp-util to version 3.0.8 (#7807)
https://greenkeeper.io/
2017-01-04 14:00:15 +01:00
Greenkeeper
2a2f676261 chore(package): update gulp-jsonlint to version 1.2.0 (#7794)
https://greenkeeper.io/
2017-01-04 13:59:55 +01:00
Greenkeeper
494c0f5c02 chore(package): update oauth2orize to version 1.6.0 (#7786)
https://greenkeeper.io/
2017-01-04 13:57:11 +01:00
Greenkeeper
e744238f95 chore(package): update archiver to version 1.3.0 (#7782)
https://greenkeeper.io/
2017-01-04 13:54:41 +01:00
Greenkeeper
c6d9a95489 chore(package): update should to version 11.1.2 (#7771)
https://greenkeeper.io/
2017-01-04 12:44:42 +01:00
Greenkeeper
1d2d861a98 chore(package): update moment to version 2.17.1 (#7764)
https://greenkeeper.io/
2017-01-04 12:42:51 +01:00
Greenkeeper
d194c69400 chore(package): update prettyjson to version 1.2.1 (#7758)
https://greenkeeper.io/
2017-01-04 12:40:50 +01:00
Greenkeeper
790ef14ac7 chore(package): update jsonpath to version 0.2.9 (#7743)
https://greenkeeper.io/
2017-01-04 12:34:44 +01:00
Greenkeeper
7ea9356f99 chore(package): update tmp to version 0.0.31 (#7736)
https://greenkeeper.io/
2017-01-04 12:30:17 +01:00
Greenkeeper
378e09e59c chore(package): update mocha to version 3.2.0 (#7747)
https://greenkeeper.io/
2016-12-25 20:07:43 +00:00
Greenkeeper
1bc617174d chore(package): update gscan to version 0.2.0 (#7791)
https://greenkeeper.io/
2016-12-20 12:30:12 +01:00
Greenkeeper
dc60558083 chore(package): update passport-ghost to version 2.2.0 (#7763)
https://greenkeeper.io/
2016-12-03 14:26:48 +07:00
Greenkeeper
5b6a29764c chore(package): update moment to version 2.17.0 (#7740)
https://greenkeeper.io/
2016-11-26 16:12:54 -07:00
Greenkeeper
8d3a560178 chore(package): update passport-ghost to version 2.0.0 (#7737)
https://greenkeeper.io/
2016-11-21 18:06:05 +01:00
Kevin Ansfield
4525145fed Version bump to 1.0.0-alpha.9 2016-11-17 20:15:19 +00:00
Katharina Irrgang
7eb316b786 replace auto increment id's by object id (#7495)
* 🛠  bookshelf tarball, bson-objectid

* 🎨  schema changes

- change increment type to string
- add a default fallback for string length 191 (to avoid adding this logic to every single column which uses an ID)
- remove uuid, because ID now represents a global resource identifier
- keep uuid for post, because we are using this as preview id
- keep uuid for clients for now - we are using this param for Ghost-Auth

*   base model: generate ObjectId on creating event

- each new resource get's a auto generate ObjectId
- this logic won't work for attached models, this commit comes later

* 🎨  centralised attach method

When attaching models there are two things important two know

1. To be able to attach an ObjectId, we need to register the `onCreating` event the fetched model!This is caused by the Bookshelf design in general. On this target model we are attaching the new model.
2. We need to manually fetch the target model, because Bookshelf has a weird behaviour (which is known as a bug, see see https://github.com/tgriesser/bookshelf/issues/629). The most important property when attaching a model is `parentFk`, which is the foreign key. This can be null when fetching the model with the option `withRelated`. To ensure quality and consistency, the custom attach wrapper always fetches the target model manual. By fetching the target model (again) is a little performance decrease, but it also has advantages: we can register the event, and directly unregister the event again. So very clean code.

Important: please only use the custom attach wrapper in the future.

* 🎨  token model had overriden the onCreating function because of the created_at field

- we need to ensure that the base onCreating hook get's triggered for ALL models
- if not, they don't get an ObjectId assigned
- in this case: be smart and check if the target model has a created_at field

* 🎨  we don't have a uuid field anymore, remove the usages

- no default uuid creation in models
- i am pretty sure we have some more definitions in our tests (for example in the export json files), but that is too much work to delete them all

* 🎨  do not parse ID to Number

- we had various occurances of parsing all ID's to numbers
- we don't need this behaviour anymore
- ID is string
- i will adapt the ID validation in the next commit

* 🎨  change ID regex for validation

- we only allow: ID as ObjectId, ID as 1 and ID as me
- we need to keep ID 1, because our whole software relies on ID 1 (permissions etc)

* 🎨  owner fixture

- roles: [4] does not work anymore
- 4 means -> static id 4
- this worked in an auto increment system (not even in a system with distributed writes)
- with ObjectId we generate each ID automatically (for static and dynamic resources)
- it is possible to define all id's for static resources still, but that means we need to know which ID is already used and for consistency we have to define ObjectId's for these static resources
- so no static id's anymore, except of: id 1 for owner and id 0 for external usage (because this is required from our permission system)
- NOTE: please read through the comment in the user model


* 🎨  tests: DataGenerator and test utils

First of all: we need to ensure using ObjectId's in the tests. When don't, we can't ensure that ObjectId's work properly.
This commit brings lot's of dynamic into all the static defined id's.
In one of the next commits, i will adapt all the tests.

* 🚨  remove counter in Notification API

- no need to add a counter
- we simply generate ObjectId's (they are auto incremental as well)
- our id validator does only allow ObjectId as id,1 and me

* 🎨  extend contextUser in Base Model

- remove isNumber check, because id's are no longer numbers, except of id 0/1
- use existing isExternalUser
- support id 0/1 as string or number

*   Ghost Owner has id 1

- ensure we define this id in the fixtures.json
- doesn't matter if number or string

* 🎨  functional tests adaptions

- use dynamic id's

* 🎨  fix unit tests

* 🎨  integration tests adaptions

* 🎨  change importer utils

- all our export examples (test/fixtures/exports) contain id's as numbers
- fact: but we ignore them anyway when inserting into the database, see https://github.com/TryGhost/Ghost/blob/master/core/server/data/import/utils.js#L249
- in 0e6ed957cd (diff-70f514a06347c048648be464819503c4L67) i removed parsing id's to integers
- i realised that this ^ check just existed, because the userIdToMap was an object key and object keys are always strings!
- i think this logic is a little bit complicated, but i don't want to refactor this now
- this commit ensures when trying to find the user, the id comparison works again
- i've added more documentation to understand this logic ;)
- plus i renamed an attribute to improve readability

* 🎨  Data-Generator: add more defaults to createUser

- if i use the function DataGenerator.forKnex.createUser i would like to get a full set of defaults

* 🎨  test utils: change/extend function set for functional tests

- functional tests work a bit different
- they boot Ghost and seed the database
- some functional tests have mis-used the test setup
- the test setup needs two sections: integration/unit and functional tests
- any functional test is allowed to either add more data or change data in the existing Ghost db
- but what it should not do is: add test fixtures like roles or users from our DataGenerator and cross fingers it will work
- this commit adds a clean method for functional tests to add extra users

* 🎨  functional tests adaptions

- use last commit to insert users for functional tests clean
- tidy up usage of testUtils.setup or testUtils.doAuth

* 🐛  test utils: reset database before init

- ensure we don't have any left data from other tests in the database when starting ghost

* 🐛  fix test (unrelated to this PR)

- fixes a random failure
- return statement was missing

* 🎨  make changes for invites
2016-11-17 09:09:11 +00:00
Greenkeeper
1861ccb752 chore(package): update lodash to version 4.17.2 (#7721)
https://greenkeeper.io/
2016-11-16 10:57:27 +00:00
Greenkeeper
b164a89771 chore(package): update lodash to version 4.17.1 (#7716)
https://greenkeeper.io/
2016-11-16 10:19:59 +00:00
Greenkeeper
e9ba22306d chore(package): update gulp-jshint to version 2.0.3 (#7709)
https://greenkeeper.io/
2016-11-15 16:27:38 +00:00
Greenkeeper
b412ea76ac chore(package): update ghost-editor to version 0.1.5 (#7712)
https://greenkeeper.io/
2016-11-15 16:25:32 +00:00
Greenkeeper
30cf309fe6 chore(package): update archiver to version 1.2.0 (#7670)
https://greenkeeper.io/
2016-11-14 14:45:26 +00:00
Hannah Wolfe
0252b6d500 chore(package): update fs-extra to version 1.0.0 (#7657)
https://greenkeeper.io/
2016-11-14 14:44:09 +00:00
Hannah Wolfe
4a2ddbe2ae Merge pull request #7701 from kirrg001/1.0.0-dev/fix-brute-schema
🐛  fix brute
2016-11-14 14:34:31 +00:00
Greenkeeper
de9ac85966 chore(package): update moment to version 2.16.0 (#7704)
https://greenkeeper.io/
2016-11-14 08:28:50 +00:00
kirrg001
254b1a0632 🐛 fix bugs in brute-knex
see and read commit 0cb28fa8e3
2016-11-10 11:50:03 +01:00
kirrg001
c749fe2a45 🛠 brute-knex fix
- do not access the database in the constructor
- that causes Ghost to fail on mysql, because if the database does not exist, knex will fail
2016-11-09 20:55:45 +01:00
kirrg001
28fbaec49d 🛠 use tarball for brute-knex
- current usage requires to have git installed
- can cause trouble when deploying and git is not installed
2016-11-09 12:17:57 +01:00
kirrg001
e3d6e02aed Version bump to 1.0.0-alpha.8 2016-11-08 15:26:37 +01:00
Katharina Irrgang
0a744c2781 🎨 public client registration updates (#7690)
* 🎨  use updateClient function to update redirectUri

refs #7654

* 🎨  name instead of clientName
* 🎨  config.get('theme:title') for client name

- initial read can happen from config

*   register public client: client name and description

- no update yet
- for initial client creation
- we forward title/description to Ghost Auth
- TODO: use settings-cache when merged

*   store blog_uri in db
* 🎨  passport logic changes

- use updateClient instead of changeCallbackURL
- be able to update: blog title, blog description, redirectUri and blogUri
- remove retries, they get implemented in passport-ghost soon
- reorder logic a bit

* 🛠  passport-ghost 1.2.0

* 🎨  tests: extend DataGenerator createClient

- set some defaults

* 🎨  tests

- extend tests
- 👻

*   run auth.init in background

- no need to block the bootstrap process
- if client can't be registered, you will see an error
- ensure Ghost-Admin renders correctly

* 🛠   passport-ghost 1.3.0

- retries

* 🎨  use client_uri in Client Schema

- adapt changes
- use blog_uri only when calling the passport-ghost instance
- Ghost uses the client_uri notation to improve readability

*   read blog title/description from settings cache

* 🚨  Ghost Auth returns email instead of email_address

- adapt Ghost
2016-11-08 14:21:25 +00:00
Austin Burdine
0d0542c5d0 swap sqlite3 & mysql dependencies (#7677)
no issue

- Ghost-CLI's recommended system stack has MySQL as the default
DB engine of choice, making the sqlite requirement unnecessary.
- Mysql (as the default) should be a required dependency
2016-11-08 13:47:14 +00:00
David Wolfe
68af2145a1 Replace memory spam prevention with brute-express (#7579)
no issue

- removes count from user checks model
- uses brute express brute with brute-knex adaptor to store persisted data on spam prevention
- implement brute force protection for password/token exchange, password resets and private blogging
2016-11-08 12:33:19 +01:00
Katharina Irrgang
bae0de6cd5 knex-migrator v2 (#7605)
* 🎨  knex-migrator reset

[ci skip]

*   add migration example

- hooks
- 1.0

[ci skip]

* 🛠  knex-migrator tarball

- remove when released

[ci skip]

* 🎨  jscs/jshint

* 🕵🏻 do not drop the database connection when running tests

- please read the comments in the commit

* 🔥  remove example migration

* 🛠  knex-migrator 0.1.0

* 🛠  knex-migrator 0.1.1

- fix a single test to ensure we catch the error

* 🛠  knex-migrator 0.1.2

* 🎨  make tests green

- added my keyword: kate-migrations
- i will go over all TODO's when removing the old migrations code

* 🛠  knex-migrator update

* 🛠  knex-migrator 0.2.0
2016-11-07 11:39:49 +00:00
Katharina Irrgang
a19fa8d3ac Ghost Auth: register client with blog_uri (#7680)
* 🛠  passport-ghost 1.1.0

*   register client: add blog_uri

refs #7654

- improve readability
- get rid of all the url util usages
- add blog_uri

[ci skip]

* 🎨  tests
2016-11-07 11:38:05 +00:00
greenkeeperio-bot
8311dd44bf chore(package): update fs-extra to version 1.0.0
https://greenkeeper.io/
2016-11-07 10:50:04 +00:00
Greenkeeper
a6226e4832 chore(package): update ghost-editor to version 0.1.4 (#7686)
https://greenkeeper.io/
2016-11-07 11:49:46 +01:00
Greenkeeper
381fb16ddf chore(package): update moment-timezone to version 0.5.9 (#7682)
https://greenkeeper.io/
2016-11-06 17:59:40 +01:00
Greenkeeper
6d658f45d7 chore(package): update amperize to version 1.0.0 (#7662)
https://greenkeeper.io/
2016-11-05 18:14:43 +01:00
Greenkeeper
01f59ab79c chore(package): update lodash to version 4.16.6 (#7659)
https://greenkeeper.io/
2016-11-05 17:59:34 +01:00
Greenkeeper
ddefc92a29 chore(package): update gscan to version 0.1.1 (#7638)
https://greenkeeper.io/
2016-11-05 17:15:48 +01:00
Greenkeeper
be341b51f8 chore(package): update tmp to version 0.0.30 (#7661)
https://greenkeeper.io/
2016-11-03 23:37:23 +01:00
Hannah Wolfe
07618911b4 Version bump to 1.0.0-alpha.7 2016-10-31 13:55:09 +00:00
Ryan McCarvill
dfa073c29e Ghost Editor 0.1.1 (#7649)
- Added slash menu (kinda)
- Updated toolbars
- Added soft return
- Improved performance
- Added code block ` ` ` support
- Improved Link functionality
2016-10-31 11:47:03 +00:00
Greenkeeper
810d60ce83 chore(package): update nock to version 8.2.1 (#7641)
https://greenkeeper.io/
2016-10-28 14:26:27 +01:00
Greenkeeper
9c99f9d8bb chore(package): update oauth2orize to version 1.5.1 (#7608)
https://greenkeeper.io/
2016-10-28 14:22:57 +01:00
Greenkeeper
34c35db6d1 chore(package): update gulp-jshint to version 2.0.2 (#7625)
https://greenkeeper.io/
2016-10-28 14:22:26 +01:00
Greenkeeper
fea661d786 chore(package): update jshint to version 2.9.4 (#7606)
https://greenkeeper.io/
2016-10-28 14:22:10 +01:00
Greenkeeper
03b28df4f3 chore(package): update moment to version 2.15.2 (#7618)
https://greenkeeper.io/
2016-10-28 14:15:48 +01:00
Greenkeeper
3673e50c8f chore(package): update sqlite3 to version 3.1.8 (#7639)
https://greenkeeper.io/
2016-10-28 14:11:47 +01:00
Katharina Irrgang
e11e3a2444 🛠 ignore bunyan updates for now (#7637)
no issue
- background: we would like to pin 1.8.1 bunyan, because they introduced a behaviour change in the newer versions, see https://github.com/TryGhost/Ignition/issues/16
- because we would like to use Ghost-Ignition in Ghost soon, we can ignore bunyan updates in Ghost for now
- Ignition will take care about be able to update bunyan soon
2016-10-27 12:41:32 +01:00
Greenkeeper
e58d8cac7b chore(package): update passport-ghost to version 1.0.3 (#7632)
https://greenkeeper.io/
2016-10-26 19:16:08 +02:00
Greenkeeper
128cff7e66 chore(package): update supertest to version 2.0.1 (#7598)
https://greenkeeper.io/
2016-10-25 12:19:46 +01:00
Kevin Ansfield
13c95bafc4 Version bump to 1.0.0-alpha.6 2016-10-24 12:51:55 +01:00
Ryan McCarvill
646aaa1e43 deps: ghost-editor@0.0.14 (#7619) 2016-10-24 11:57:20 +01:00
Greenkeeper
d8214d6a46 chore(package): update moment-timezone to version 0.5.7 (#7609)
https://greenkeeper.io/
2016-10-22 11:11:39 +01:00
Greenkeeper
441f7e54e8 chore(package): update knex-migrator to version 0.0.7 (#7592)
https://greenkeeper.io/
2016-10-19 11:59:56 +02:00
Greenkeeper
0148895269 chore(package): update passport-ghost to version 1.0.2 (#7594)
https://greenkeeper.io/
2016-10-19 11:04:34 +02:00
kirrg001
8637c7be60 Version bump to 1.0.0-alpha.5 2016-10-18 14:10:32 +02:00
Katharina Irrgang
258688932f 🛠 knex-migrator 0.0.6 (#7589)
no issue
- manual PR, because GK is too slow to push the version bump
2016-10-18 10:23:57 +01:00
Greenkeeper
af4534c74a chore(package): update knex-migrator to version 0.0.5 (#7587)
https://greenkeeper.io/
2016-10-17 20:42:29 +02:00
Greenkeeper
d2d0d80f83 chore(package): update knex-migrator to version 0.0.3 (#7581)
https://greenkeeper.io/
2016-10-17 16:32:08 +02:00
Katharina Irrgang
8d8d7bdb26 knex migrator (#7565)
refs #7489
- remove sephiroth
- use knex migrator npm
- goodbye bootup script
- 🎨  update README
- 🎨  knex migrator @ 0.0.2
2016-10-17 13:50:29 +01:00
Greenkeeper
d55f5b9860 chore(package): update mocha to version 3.1.2 (#7541)
https://greenkeeper.io/
2016-10-17 14:44:05 +02:00
Greenkeeper
d8c8f7b18b chore(package): update knex to version 0.12.5 (#7551)
https://greenkeeper.io/
2016-10-17 14:27:03 +02:00
Ryan McCarvill
ea2c3a0a3f Markdown card (#7568)
Refs #7429
- Added mobiledoc card, this uses the mobiledoc editor from within Ghost. In the future we'll pull this out and replace it with a textarea as the preview is too small to fit in the content.
- Made the HTML editor a codemirror editor (pulled in from ghost-admin to save duplicating libraries).
- Ghost-Admin now passes the paths for the ghost-api and the image directory for tools.
- Fixed the scrolling issue.
2016-10-14 14:42:48 +02:00
Greenkeeper
da9c6be06c chore(package): update passport-ghost to version 1.0.1 (#7559)
https://greenkeeper.io/
2016-10-13 13:03:27 +02:00
Greenkeeper
a533010cfd chore(package): update nock to version 8.1.0 (#7534)
https://greenkeeper.io/
2016-10-10 18:49:10 +01:00
Greenkeeper
ce396d1117 chore(package): update should to version 11.1.1 (#7530)
https://greenkeeper.io/
2016-10-10 18:32:43 +01:00
Greenkeeper
57eb8ce4a4 chore(package): update mocha to version 3.1.1 (#7527)
https://greenkeeper.io/
2016-10-10 18:32:36 +01:00
Hannah Wolfe
2e9aa8c465 Version bump to 1.0.0-alpha.4 2016-10-10 17:08:54 +01:00
Katharina Irrgang
c4fa34224f Migration runner - first iteration (#7501)
refs #7489
- add independent migratio runner
- add init script
- this is not connected to Ghost yet, but next PR will
2016-10-10 13:27:31 +01:00
Greenkeeper
613015c792 chore(package): update knex to version 0.12.3 (#7524)
https://greenkeeper.io/
2016-10-10 10:24:05 +01:00
Greenkeeper
0f3d013ecc chore(package): update moment-timezone to version 0.5.6 (#7522)
https://greenkeeper.io/
2016-10-10 07:11:09 +01:00
Ryan McCarvill
ff9e6b5393 Upgraded editor (#7516)
refs #7429

Finally it's starting to feel like a real editor, although there will be another version bump over the weekend which improves the toolbar behaviour and usability, and enables image uploading.

- Added the start of a new toolbar, what we're (well I am) calling the Owesome bar, not to be confused with the Firefox Awesome bar. It's a cultural thing. (google "O for awesome").
- The idea of dragging and dropping cards has been removed for now, although the code will still be in there as we will support dragging cards around fairly shortly. When apps are included a better card interface will be required for a larger amount of app created content cards (Oh yeah!)
- Ghost Server now pulls in it's configuration from Ghost-Editor, this allows Ghost-Editor to a) keep cards up to date, and b) define what happens if a card is missing.
- The whole cards in admin written in ember and cards in server written in javascript thing is still very much a work in progress, it's kind of messy as we find the optimum solution (which isn't the current sollution).

So yeah, this is a WIP not the final styling, not the final interactions, not the final anything... :)

Adds a new mobile doc editor which has:
- A new toolbar
- Basic image uploading capability
2016-10-10 07:09:32 +01:00
Greenkeeper
8f42678ba6 chore(package): update gulp-nodemon to version 2.2.1 (#7455)
https://greenkeeper.io/
2016-10-07 18:22:04 +01:00
Hannah Wolfe
74b5d67001 ⬆️ deps: bookshelf@0.10.2 2016-10-07 16:44:29 +01:00
Greenkeeper
d6b1b06024 chore(package): update lodash to version 4.16.4 (#7505)
https://greenkeeper.io/
2016-10-07 16:30:18 +01:00
Greenkeeper
4b7d4b6ed7 chore(package): update sqlite3 to version 3.1.6 (#7513)
https://greenkeeper.io/
2016-10-07 11:37:13 +01:00
Katharina Irrgang
1882278b5b 🎨 configurable logging with bunyan (#7431)
- 🛠  add bunyan and prettyjson, remove morgan

-   add logging module
  - GhostLogger class that handles setup of bunyan
  - PrettyStream for stdout

-   config for logging
  - @TODO: testing level fatal?

-   log each request via GhostLogger (express middleware)
  - @TODO: add errors to output

- 🔥  remove errors.updateActiveTheme
  - we can read the value from config

- 🔥  remove 15 helper functions in core/server/errors/index.js
  - all these functions get replaced by modules:
    1. logging
    2. error middleware handling for html/json
    3. error creation (which will be part of PR #7477)

-   add express error handler for html/json
  - one true error handler for express responses
  - contains still some TODO's, but they are not high priority for first implementation/integration
  - this middleware only takes responsibility of either rendering html responses or return json error responses

- 🎨  use new express error handler in middleware/index
  - 404 and 500 handling

- 🎨  return error instead of error message in permissions/index.js
  - the rule for error handling should be: if you call a unit, this unit should return a custom Ghost error

- 🎨  wrap serve static module
  - rule: if you call a module/unit, you should always wrap this error
  - it's always the same rule
  - so the caller never has to worry about what comes back
  - it's always a clear error instance
  - in this case: we return our notfounderror if serve static does not find the resource
  - this avoid having checks everywhere

- 🎨  replace usages of errors/index.js functions and adapt tests
  - use logging.error, logging.warn
  - make tests green
  - remove some usages of logging and throwing api errors -> because when a request is involved, logging happens automatically

- 🐛  return errorDetails to Ghost-Admin
  - errorDetails is used for Theme error handling

- 🎨  use 500er error for theme is missing error in theme-handler

- 🎨  extend file rotation to 1w
2016-10-04 16:33:43 +01:00
Kevin Ansfield
dea984565d Version bump to 1.0.0-alpha.3 2016-10-03 19:19:22 +01:00
Ryan McCarvill
be666b1b1a Update Ghost Editor to 0.0.8 #7429 (#7474)
This release includes:

    Ghost Editor, this is required to get access to the built in cards

Ghost Editor includes:

    Responsive toolbars 🔨 🔧
    Both Ember and Plain javascript cards 🎴
    An embeded HTML card ✍️

This is still an early release, but things are moving in the right direction. :)

We're still defining the spec for the UI, so expect drastic changes over the next couple of weeks.

This is going to be a great writing experience and we can't wait to show what we have planned.
2016-10-03 15:42:34 +01:00
Aileen Nowak
92be253c27 🛠 Gulp help (#7462)
refs #7427
needs #7458

Adds a `gulp help` task which description and available options for each gulp task.
2016-10-03 15:08:40 +01:00
Hannah Wolfe
b1c77a2279 ⏱ 🛠 Add debug@2.2.0 & wire up in key places (#7469)
refs #2001, #7116

- added debug and wired it up:
  - across several key parts of the boot process
  - throughout the middleware loading
  - for requests
  - at render points for key routes
2016-10-03 10:33:14 +02:00
Aileen Nowak
43a2220298 🛠 Gulp lint task (#7458)
refs #7427

Adds a `gulp lint` task, as well as subtasks `gulp jshint`, `gulp jscs` and `gulp json` which can be started independently.
2016-10-03 10:30:22 +02:00
Hannah Wolfe
6842259a7a 🛠 Make greenkeeper ignore grunt dependencies (#7463)
closes #7436

- We're moving away from grunt, so lets not worry about version bumps for now
2016-09-30 14:38:14 +02:00
Katharina Irrgang
6473c9e858 Ghost OAuth (#7451)
issue #7452

Remote oauth2 authentication with Ghost.org.

This PR supports:

- oauth2 login or local login
- authentication on blog setup
- authentication on invite
- normal authentication
- does not contain many, many tests, but we'll improve in the next alpha weeks
2016-09-30 12:45:59 +01:00
Greenkeeper
45e50820dc chore(package): update mocha to version 3.1.0 (#7447)
https://greenkeeper.io/
2016-09-30 10:58:42 +01:00
Greenkeeper
8255af7a55 chore(package): update knex to version 0.12.2 (#7450)
https://greenkeeper.io/
2016-09-30 10:58:34 +01:00
Aileen Nowak
7f3876e456 🛠 Improve existing gulp tasks (#7444)
refs #7427

- Deleting the `built` or `dist` directory doesn't result in an error, when running `gulp dev`
- Adds default task as `gulp dev`
- Adds abbreviations for the repositories in `gulp setup` task (`--ghost` -> `-g`, `--admin` -> `-a` and `--casper` -> `-c`) to type less 😊
- Installs dependencies on `gulp dev`, if called with `--deps` or `-d`
- Sets `verbose` option nodemon to default (=`false`) to have less unneccessary logging.
- Will do a delete of all dependencies and install them again ('FFS'), if `gulp deps` is called with a force flag.
- Will update submodules not matter what, if `gulp submodules` is called with a force flag. Calling `gulp submodules` without the force flag will only update/initiate the submodules, if the folders don't exist.
- Better logging messages and sequential task handling.
- Removes `gulp-shell` as dependency, as this is on gulp's blacklist
- Refactors code, that used `gulp-shell` to use `child_process.exec` or `spawn` instead.
- Exits properly if node crashes
-----------------------

Tasks available after this PR:

- `gulp server`: Starts a nodemon server with livereload of the ghost core only. No client build here.

- `gulp dev`: [ --deps | -d ] Starts development mode for Ghost, incl. client build and livereload for both. Will also update the submodules if the directories are missing. If called with with `--deps` flag, it will install client and core dependencies.

- `gulp submodules`: [ --force | -f ] Will update the submodules, if directories are missing. Will update no matter what, if called with force flag.

- `gulp deps`: [ --force | -f ] Will update client and core dependencies. Does a fresh install of both (delete, cache clear and install) if called with force flag.

- `gulp setup`: </br>[ --ghost | -g 'branch' or 'pr/1234' ]
		[ --admin | -a 'branch' or 'pr/1234' ]
		[ --casper | -c 'branch' or 'pr/1234' ]
		[ --force | -f ]
		Takes various - optional - parameters. If called without parameters, this task will update submodules first (if directory doesn't exist) and then install client and core dependendies.
		If called with branch 'master', submodules will be updated.
		Calling with the force flag will do a clean install of the dependencies.
		There's no autocomplete for branchnames at the moment 😔
		To check out a PR (e. g. `--ghost pr/7444`), it is necessary, that you add an additional fetch line in the `.git/config` file for each repository: `fetch = +refs/pull/*/head:refs/remotes/upstream/pr/*`. See https://dev.ghost.org/easy-git-pr-test/ for further information.
2016-09-29 19:32:17 +02:00
kirrg001
1a93cfd67e Version bump to 1.0.0-alpha.2 2016-09-26 19:22:11 +02:00
Aileen Nowak
3ee7f5cdbd 🛠 Gulp setup (#7439)
refs #7427

With this PR, we'll get some development tooling magic:
`gulp setup`
Will update dependecies and submodules (if submodule branches are on master) for
currently chosen branches.

`gulp setup --force`
Will delete all dependencies and install them again, incl. submodules for
currently chosen branches.

`gulp setup --ghost some-branch --admin some-branch --casper some-branch`
Will checkout the branches for each repository.
Can also be used to checkout only selected branches e. g.
`gulp setup --admin some-branch`
Will leave the current branch for `ghost` and `casper`, but checkout the named
branch for admin. Will also install dependencies.

`gulp setup --admin pr/123 --ghost pr/1234 --casper pr/123`
Will fetch the named PR of the repository and checkout to this new branch.
Will also install dependencies. NOTE: This works only with an additional fetch line
in the .git/config file for each repository: `fetch = +refs/pull/*/head:refs/remotes/upstream/pr/*`.
See https://dev.ghost.org/easy-git-pr-test/ for further information.

All the combinations above can be executed with the `--force` or `-f` flag, which
will delete the dependencies and install them again, but for the chosen branches.
2016-09-26 18:17:40 +02:00
Ryan McCarvill
7edc518d5a [WIP] Mobile-Doc based renderer (#7437)
Refs #7429

Added mobile-doc renderer

------------

- Added generic mobiledoc-renderer
- Kept the existing showdown editor for legacy mode.
2016-09-26 15:23:49 +02:00
Hannah Wolfe
b729597bf5 🔥 Remove the contributor list from Gruntfile (#7428)
refs #7427

- Moving all release-specific code out of the core repository
- Also found a different way to do this, without needing API access :)
2016-09-26 07:16:55 -05:00
Greenkeeper
f0a4186f9c chore(package): update intl to version 1.2.5 (#7411)
https://greenkeeper.io/
2016-09-26 11:13:38 +02:00
kirrg001
6c100a171e 🛠 update lodash,knex and bookshelf to latest versions
refs #7189
- we had a memory leak after upgrading to knex 0.11.x
- knex has published a new version 0.12.x
- the memory leak does not longer exists
- knex has reverted their pool logic, see https://github.com/tgriesser/knex/pull/1665
2016-09-26 10:20:55 +02:00
Hannah Wolfe
1c6f9b85f4 Merge pull request #7407 from AileenCGN/let-grunt-die
🛠 Gulp tooling for Ghost
2016-09-23 13:46:42 +01:00
Greenkeeper
34363ec2c3 chore(package): update superagent to version 2.3.0 (#7413)
https://greenkeeper.io/
2016-09-23 13:58:11 +02:00
Greenkeeper
fbf25b7653 chore(package): update moment to version 2.15.1 (#7415)
https://greenkeeper.io/
2016-09-23 13:04:48 +02:00
Aileen Nowak
f9ea55d57b 🛠 Gulp tooling for ghost
refs #7427

Use `gulp dev` to start development mode. Starts ember build and does livereload for client and server changes.

Use `gulp server` to start server development mode. Doesn't start ember build and livereloads for server changes only.
2016-09-22 18:01:26 +02:00
Hannah Wolfe
568b48fc5b Version bump to 1.0.0-alpha.1 2016-09-20 16:39:30 +01:00
Katharina Irrgang
32a5982430 utf8mb4 support (#7409)
closes #5519, closes #6197

- default encoding is utf8mb4 instead of utf8
- support emojis
- read here why: http://dev.mysql.com/doc/refman/5.7/en/innodb-restrictions.html
- read here why: https://dev.mysql.com/doc/refman/5.5/en/charset-unicode-conversion.html
2016-09-20 15:59:34 +01:00
Hannah Wolfe
9a520f39fb 🎨 Preparation for going alpha (#7404)
- Don't let people start Ghost Alpha with non-alpha databases.
- Provide a new welcome message for development mode (a little bit of positive reinforcment)
- Provide a RED WARNING when in production mode (will still be used for developing, but we can ignore)
- Change package.json to 1.0.0-alpha.0, we won't relelase this, will bump to .1 for release
2016-09-20 15:59:34 +01:00
Austin Burdine
25a9b4aa3a 🔥 remove preinstall node version check (#7403)
no issue
- this is now handled in Ghost-CLI
2016-09-20 15:59:34 +01:00
kirrg001
8115d83782 🔥 remove postgres support
refs #1333, refs #5878, refs #5321
2016-09-20 15:59:34 +01:00
kirrg001
6275fdbb25 🔥 remove node 0.10 support, add node 6 support
refs #6899, refs #7098
2016-09-20 15:59:34 +01:00
kirrg001
03cc8ea3ff 🛠 add nconf as dependency
refs #6982
[ci skip]
2016-09-20 15:59:34 +01:00
Greenkeeper
a98e134fe4 chore(package): update sinon to version 1.17.6 (#7401)
https://greenkeeper.io/
2016-09-19 14:42:22 +01:00
Greenkeeper
b61e870737 chore(package): update tmp to version 0.0.29 (#7397)
https://greenkeeper.io/
2016-09-19 14:42:13 +01:00
Greenkeeper
9ca83b9875 chore(package): update jsonpath to version 0.2.7 (#7285)
https://greenkeeper.io/
2016-09-19 14:42:03 +01:00
Greenkeeper
b5ef1da584 chore(package): update validator to version 5.7.0 (#7356)
https://greenkeeper.io/
2016-09-19 13:51:36 +01:00
Greenkeeper
0af5f5960a chore(package): update istanbul to version 0.4.5 (#7239)
https://greenkeeper.io/
2016-09-19 13:51:25 +01:00
Greenkeeper
fe19b26e44 chore(package): update bluebird to version 3.4.6 (#7311)
https://greenkeeper.io/
2016-09-19 12:38:57 +01:00
Greenkeeper
4b61dd8971 chore(package): update cheerio to version 0.22.0 (#7260)
https://greenkeeper.io/
2016-09-19 12:32:40 +01:00
Greenkeeper
db7d87c249 chore(package): update archiver to version 1.1.0 (#7287)
https://greenkeeper.io/
2016-09-19 12:31:47 +01:00
Greenkeeper
f64c13af36 chore(package): update csv-parser to version 1.11.0 (#7238)
https://greenkeeper.io/
2016-09-19 11:25:37 +01:00
Hannah Wolfe
fbb60adde7 Version bump to 0.11.0 2016-09-15 10:23:15 +01:00
Greenkeeper
1dc3ca354f chore(package): update gscan to version 0.0.15 (#7386)
https://greenkeeper.io/
2016-09-14 22:47:28 +01:00
Hannah Wolfe
a40ff3b276 🎨 Return gscan warnings from theme API (#7367)
- return warnings from gscan so we can let users know about potential issues
2016-09-14 18:49:41 +01:00
Hannah Wolfe
8d7254aca5 ⬆️ Upgrade extract-zip to extract-zip-fork@1.5.1 (#7383) 2016-09-14 17:13:36 +00:00
Greenkeeper
a9561cfbd7 chore(package): update netjet to version 1.1.3 (#7274)
https://greenkeeper.io/
2016-09-14 15:59:54 +01:00
Greenkeeper
ae18a48b35 chore(package): update express-hbs to version 1.0.3 (#7301)
https://greenkeeper.io/
2016-09-14 15:50:35 +01:00
Hannah Wolfe
e0970bff8e 🛠 Pin knex, bookshelf & lodash until later (#7375)
refs #7189, refs #7291

- We will upgrade these when we are able to locate and resolve the memory leak that is caused by upgrading them
2016-09-14 14:23:38 +02:00
Greenkeeper
0c628049fb chore(package): update moment to version 2.15.0 (#7364)
https://greenkeeper.io/
2016-09-14 13:22:03 +01:00
Greenkeeper
177c0fba07 chore(package): update cors to version 2.8.1 (#7343)
https://greenkeeper.io/
2016-09-14 13:16:18 +01:00
Aileen Nowak
a4427952e2 ⬆️ 🚨 Update Amperize dep and fix test (#7374)
no issue

Updates Amperize dep to v0.3.1 and fixes test for `amp_content`.
2016-09-14 12:30:37 +01:00
Katharina Irrgang
8c1e5fbc61 🐛 add missing dependency lodash.orderBy (#7333)
no issue
2016-09-14 11:22:16 +01:00
Hannah Wolfe
fe321a15c6 Version bump to 0.10.1 2016-09-06 17:15:49 +02:00
Hannah Wolfe
a5c0dd1dd1 ⬆️ Updating extract-zip to bugfixed version (#7331)
- This version has a fix for maxogden/extract-zip#30, where directories are not always identified correctly
2016-09-06 17:15:07 +02:00
Aileen Nowak
b3b1bcca94 🐛 Return reg. HTML on Amperize time-out (#7324)
no issue

`{{amp_content}}` helper can handle error now, if returned from `Amperize` module. In case of on error, we return the unprocessed HTML, which will then get validated by the `Sanitize` functionality.

The unprocessed HTML will be stored in the cache, until the post is updated.

Points to Amperize fork of AileenCGN as dependency to have include the error handling changes incl. timeouts.
2016-09-06 15:29:21 +02:00
Greenkeeper
4e6b1d7471 chore(package): update gscan to version 0.0.13 (#7328)
https://greenkeeper.io/
2016-09-06 10:45:52 +02:00
Greenkeeper
c80f481b95 chore(package): update gscan to version 0.0.12 (#7307)
https://greenkeeper.io/
2016-09-01 13:42:00 +02:00
Katharina Irrgang
54559f24f9 fix: memory leak (#7291)
closes #7189

- downgrade lodash to 3.x
- downgrade bookshelf to 0.9.x
- downgrade knex to 0.10.x
- keep lodash 4.x functions
2016-09-01 10:53:08 +02:00
kirrg001
6dfca64521 Version bump to 0.10.0 2016-08-29 19:12:46 +02:00
Aileen Nowak
9d76004807 🛠 Change Amperize dep (#7271)
no issue

Changes the Amperize module to point at tarball
2016-08-25 18:48:33 +02:00
Aileen Nowak
93ee19f36e 🐛 fix: make small media types not stretch (#7265)
no issue

Fixes a bug with displaying small media types like images or gif. Two reasons for that:
1. In many cases, we only have the relative URL instead of the absolute URL for the media source and therefore, `Amperize` module wasn't able to detect the image size and set the default image size of `width="600"` and `height="400"`.
2. Even if we have detected the correct image size, the attribute `layout="default"` would still make it strech. This issue is fixed in `Amperize`, but it wasn't merged at this time, so I set the dependency on my fork.

Adds `amp-anim` to the `.post-content` class, to have same CSS style as an image.
2016-08-25 11:09:25 +02:00
Hannah Wolfe
545d2cb8b0 Use node-archiver to create zips (#7268)
closes #7266, closes #7267

- Adds node-archiver as a dependency
- Adds new zip-folder utility
- Switch out exec 'zip' for zip folder utility
- Store generated zips in os.tmpdir
- Don't delete zips from content/themes when uploading or deleting
- Fixes path resolution for delete
2016-08-25 09:22:22 +02:00
Greenkeeper
01bac00e61 chore(package): update gscan to version 0.0.11 (#7259)
https://greenkeeper.io/
2016-08-24 14:45:37 +02:00
Katharina Irrgang
a91e54cf1a feature: theme upload/download/delete (#7209)
refs #7204

- added 3 new themes permissions
- change core/client
- add theme upload/download logic
- extended local file storage to serve zips
- added gscan dependency
- add ability to handle the express response within the api layer
- restrict theme upload to local file storage
- added 007 migration
2016-08-23 13:07:25 +01:00
Katharina Irrgang
f174d4d56b Revert "Update supertest to version 2.0.0 🚀" (#7243) 2016-08-22 19:53:45 +02:00
Aileen Nowak
a5c29dfc34 [FEATURE] AMP (#7229)
closes #6588, #7095

* `ImageObject` with image dimensions (#7152, #7151, #7153)
- Returns meta data as promise
    - returns a new Promise from meta data
    - uses `Promise.props()` to resolve `getClient()` and `getMetaData()`

- Adds 'image-size' util
The util returns an object like this
```
{
    height: 50,
    url: 'http://myblog.com/images/cat.jpg',
    width: 50
};
```
if the dimensions can be fetched and rejects with error, if not.
In case we get a locally stored image or a not complete url (like `//www.gravatar.com/andsoon`), we add the protocol to the incomplete one and use `urlFor()` to get the absolute URL. If the request fails or `image-size` is not able to read the file, we reject with error.
- adds 'image-size' module to dependencies
- adds `getImageSizeFromUrl` function that returns image dimensions

- In preparation of AMP support and to improve our schema.org JSON-LD and structured data, I made the following changes:
    - Changes the following properties to be `Objects`, which have a `url` property by default and a `dimensions` property, if `width` and `height` are available:
        - `metaData.coverImage`
        - `metaData.authorImage`
        - `metaData.blog.logo`
    - Checks cache by calling `getCachedImageSizeFromUrl`. If image dimensions were fetched already, returns them from cache instead of fetching them again.
    - If we have image dimensions on hand, the output in our JSON-LD changes from normal urls to be full `ImageObjects`. Applies to all images and logos.
    - Special case for `publisher.logo` as it has size restrictions: if the image doesn't fulfil the restrictions (<=600 width and <=60 height), we simply output the url instead, so like before.
    - Adds new property for schema.org JSON-LD: `mainEntityOfPage` as an Object.
    - Adds additional Open Graph data (if we have the image size): `og:image:width` and `og:image:height`
    - Adds/updates tests

* AMP router and controller (#7171, #7157)
Implements AMP in `/apps/`:
- renders `amp.hbs` if route is `/:slug/amp/`
- updates `setResponseContext` to set context to `['amp', 'post']` for a amp post and `['amp', 'page']` for a page, but will not render amp template for a page
- updates `context_spec`
- registers 'amp' as new internal app
- adds the `amp.hbs` template to `core/server/apps/amp` which will be the default template for AMP posts.
- adds `isAmpURL` to `post-lookup`

* 🎨 Use `context` in meta as array (#7205)
Instead of reading the first value of the context array, we're checking if it includes certain context values.
This is a preparation change for AMP, where the context will be delivered as `['amp', 'post']`.

*  AMP helpers (#7174, #7216, #7215, #7223)
- Adds AMP helpers `{{amp_content}}`, `{{amp_component}}` and  `{{amp_ghost_head}}` to support AMP:
- `{{amp_content}}`:
    - Adds `Amperize` as dependency
    - AMP app uses new helper `{{amp_content}}` to render AMP HTML
    - `Amperize` transforms regular HTML into AMP HTML
    - Adds test for `{{amp_content}}` helper
    - Adds 'Sanitize-HTML` as dependendy
    - After the HTML get 'amperized' we still might have some HTML tags, which are prohibited in AMP HTML, so we use `sanitize-html` to remove those. With every update, `Amperize` gets and it is able to transform more HTML tags, they valid AMP HTML tags (e. g. `video` and `amp-video`) and will therefore not be removed.
- `{{amp_ghost_head}}`:
    - registers `{{amp_ghost_head}}` helper, but uses `{{ghost_head}}` code
    - uses `{{amp_ghost_head}}` in `amp.hbs` instead of `{{ghost_head}}`
- `{{ghost_head}}`:
    - Render `amphtml` link in metadata for post, which links to the amp post (`getAmpUrl`)
    - Updates all test in metadata to support `amp` context
    - Changes context conditionals to work with full array instead of first array value
    - Adds conditionals, so no additional javascript gets rendered in `{{ghost_head}}`
    - Removes trailing `/amp/` in URLs, so only `amphtml` link on regular post renders it
    - Adds a conditional, so no code injection will be included, for an `amp` context.
- `{{amp_components}}`:
    - AMP app uses new helper `{{amp_components}}` to render necessary script tags for AMP extended components as `amp-iframe`, `amp-anime` and `amp-form`
    - Adds test for `{{amp_components}}`
2016-08-22 18:49:27 +02:00
Greenkeeper
3c13c98d7f chore(package): update supertest to version 2.0.0 (#7159)
https://greenkeeper.io/
2016-08-22 18:38:41 +02:00
Greenkeeper
61d66a4007 chore(package): update oauth2orize to version 1.5.0 (#7226)
https://greenkeeper.io/
2016-08-19 07:34:18 +01:00
Greenkeeper
e0f83f31ac chore(package): update oauth2orize to version 1.4.1 (#7211)
https://greenkeeper.io/
2016-08-17 18:24:19 +02:00
Greenkeeper
49e77711df chore(package): update should to version 11.1.0 (#7201)
https://greenkeeper.io/
2016-08-15 09:24:46 +02:00
Greenkeeper
749e906556 chore(package): update superagent to version 2.2.0 (#7200)
https://greenkeeper.io/
2016-08-15 09:24:31 +02:00
Greenkeeper
55e7b659e0 chore(package): update grunt-shell to version 1.3.1 (#7198)
https://greenkeeper.io/
2016-08-13 06:39:42 -06:00
Greenkeeper
d1b17f86d0 chore(package): update lodash to version 4.15.0 (#7197)
https://greenkeeper.io/
2016-08-12 22:16:39 -06:00
Greenkeeper
dd5775c018 Update mocha to version 3.0.2 🚀 (#7165)
* chore(package): update mocha to version 3.0.2

https://greenkeeper.io/

* fix duplicate done/promise handling
2016-08-11 08:51:19 +01:00
Austin Burdine
cd4fb88236 deps: knex@0.11.10 (#7195)
- add `useNullAsDefault` flag to sqlite test config to fix breaking
  sqlite builds
- fixes npm install issue with lodash dependency
2016-08-11 08:40:51 +01:00
Greenkeeper
da52e92f3e chore(package): update should to version 11.0.0 (#7193)
https://greenkeeper.io/
2016-08-10 14:37:09 -06:00
Greenkeeper
c4c3978e39 chore(package): update grunt-mocha-istanbul to version 5.0.2 (#7181)
https://greenkeeper.io/
2016-08-10 12:09:59 -06:00
Greenkeeper
ff05ff2043 chore(package): update lodash to version 4.14.2 (#7188)
https://greenkeeper.io/
2016-08-10 10:27:40 -06:00
Austin Burdine
03d4137b86 Move remainder of ember tasks to client repo (#7172)
* Updating Ghost-Admin: Gruntfile work

* move remainder of ember tasks to client repo

refs #6977
- move ember build tasks to client repo
- remove unneeded dependencies
2016-08-07 11:53:28 +02:00
Greenkeeper
bd2f59b5f9 chore(package): update multer to version 1.2.0 (#7176)
https://greenkeeper.io/
2016-08-06 10:30:30 +02:00
Greenkeeper
6cab400b69 chore(package): update gh-contrib-list to version 0.1.2 (#7126)
https://greenkeeper.io/
2016-08-01 09:21:38 -06:00
Greenkeeper
ce615a0244 chore(package): update sinon to version 1.17.5 (#7148)
https://greenkeeper.io/
2016-08-01 08:13:14 -06:00
Greenkeeper
cefec5767d chore(package): update lodash to version 4.14.1 (#7160)
https://greenkeeper.io/
2016-07-29 18:02:40 -06:00
Greenkeeper
26eff9be8f chore(package): update lodash to version 4.14.0 (#7128)
https://greenkeeper.io/
2016-07-28 10:21:56 -06:00
Greenkeeper
81b2e4bc42 chore(package): update moment-timezone to version 0.5.5 (#7150)
https://greenkeeper.io/
2016-07-27 10:59:07 -06:00
Kevin Ansfield
e203eb8fb3 Version bump to 0.9.0 2016-07-26 14:24:31 +01:00
Austin Burdine
77464c59bd improve Ghost contributor tooling (#7042)
refs #6977
- update client ref
- add gh-contrib-list dependency
- remove buildAboutPage task
2016-07-22 12:53:48 +01:00
Greenkeeper
449b1ce01c chore(package): update netjet to version 1.1.2 (#7114)
https://greenkeeper.io/
2016-07-21 17:55:02 -06:00
Greenkeeper
0cf7dda884 chore(package): update validator to version 5.5.0 (#7112)
https://greenkeeper.io/
2016-07-21 07:08:19 -06:00
Greenkeeper
5e6b952e90 chore(package): update superagent to version 2.1.0 (#7090)
https://greenkeeper.io/
2016-07-20 05:25:56 -06:00
greenkeeperio-bot
879629a015 chore(package): update express to version 4.14.0
https://greenkeeper.io/
2016-07-19 17:04:34 +01:00
Greenkeeper
717183a3bb chore(package): update grunt-contrib-uglify to version 2.0.0 (#7111)
https://greenkeeper.io/
2016-07-19 10:04:20 -06:00
Greenkeeper
3b6326ec8b chore(package): update oauth2orize to version 1.4.0 (#7108)
https://greenkeeper.io/
2016-07-18 17:27:54 -06:00
Greenkeeper
94a5f618bf chore(package): update should to version 10.0.0 (#7104)
https://greenkeeper.io/
2016-07-18 09:14:33 -06:00
Hannah Wolfe
37da544dcc Node version check w/o semver (#7097)
closes #6691

- removes dependency on semver & package.json in preinstall script
- has a simplified proxy of semver to look for the right version numbers
2016-07-16 01:20:05 +02:00
Greenkeeper
00a676110d chore(package): update semver to version 5.3.0 (#7094)
https://greenkeeper.io/
2016-07-15 12:07:07 +01:00
Greenkeeper
9f547b640f chore(package): update ghost-gql to version 0.0.5 (#7092)
https://greenkeeper.io/
2016-07-14 15:07:10 +01:00
Hannah Wolfe
71282a241e Various post-repo-split cleanup (#6910)
no issue

- remove bower from dependencies, greenkeeper ignores & .editorconfig
- remove old custom jscs rule for ember
2016-07-12 11:55:46 -06:00
Greenkeeper
7b0226247b chore(package): update express-hbs to version 1.0.2 (#7078) 2016-07-08 21:35:00 -06:00
Austin Burdine
9e93c2b6aa deps: bookshelf@0.10.0 (#7074)
merged in fix for lodash
2016-07-06 10:31:24 +01:00
Greenkeeper
bbaad73f87 chore(package): update rewire to version 2.5.2 (#7061)
https://greenkeeper.io/
2016-07-05 17:25:23 +01:00
Greenkeeper
495bbee594 chore(package): update moment to version 2.14.1 (#7071) 2016-07-04 11:05:28 -06:00
Greenkeeper
62859fbb57 chore(package): update jsonpath to version 0.2.6 (#7063) 2016-07-01 20:29:25 -06:00
Greenkeeper
0b23bb007d chore(package): update html-to-text to version 2.1.3 (#7056) 2016-06-30 11:46:21 -06:00
Greenkeeper
204e99b331 chore(package): update body-parser to version 1.15.2 (#7013) 2016-06-29 15:23:03 -06:00
Greenkeeper
72f7b0bc6c chore(package): update html-to-text to version 2.1.1 (#7051)
https://greenkeeper.io/
2016-06-29 13:02:33 -06:00
Greenkeeper
78b19d80e3 chore(package): update semver to version 5.2.0 (#7049)
https://greenkeeper.io/
2016-06-29 10:28:23 -06:00
Hannah Wolfe
67522ea25a Merge pull request #7041 from acburdine/bookshelf-upgrade-test
Bookshelf Lodash Fix
2016-06-28 18:43:47 +02:00