Commit Graph

6867 Commits

Author SHA1 Message Date
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
c87e680764 Upgrading Casper to 1.3.2 2016-10-02 17:58:14 +01:00
Katharina Irrgang
1867e1a75e 🎨 run database population in transaction (#7448)
* 🎨  run database population in transaction

refs #6574, refs #7432

- create transaction for creating tables
- if an error occurs or a container get's destroyed before population finishes, transaction is rolled back

* 🎨  simplify transaction creation and test
2016-09-30 14:05:17 +01: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
Kevin Ansfield
599d5cf87d Update Ghost-Admin: Ghost OAuth 2016-09-30 12:48:04 +01: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
Hannah Wolfe
3e727d01f7 Refresh assetHash on theme activation (#7464)
closes #7423

- asset hashes have never been refreshed properly!
- Ghost(Pro)'s 1-theme-only limitation has been hiding this bug for 3 years 🙄
2016-09-30 13:13:16 +02: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
Sebastian Gierlinger
02c7d039d8 Merge pull request #7446 from kirrg001/fix/circular-dependency-bootup
🐛  fix circular dependency in new bootUp script
2016-09-27 13:10:07 +02:00
kirrg001
d0356a257e 🐛 fix circular dependency in new bootUp script
closes #7440
2016-09-27 12:18:45 +02:00
kirrg001
1a93cfd67e Version bump to 1.0.0-alpha.2 2016-09-26 19:22:11 +02:00
kirrg001
5e8baace22 Updated Ghost-Admin 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
6c24084e68 Merge pull request #7422 from kirrg001/feature/users-invites-separation
🎨  Separate invites from user

refs #7420

- remove invite logic from user
- add invite model and adapt affected logic for inviting team members
2016-09-26 13:26:01 +01: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
Hannah Wolfe
b0af496c98 💄 Ensure all middleware use named functions (#7434)
no issue

- anonymous functions are hard to debug in memory traces etc
- having anonymous middleware functions makes it hard to inspect or debug the middleware stack (something I like to do)
- these 2 are the only ones atm, including all 3rd party middleware
2016-09-26 11:10:44 +02:00
kirrg001
b79a18ca8f 🎨 Separate invites from user
refs #7420
- remove invite logic from user
- add invite model and adapt affected logic for inviting team members
2016-09-26 11:08:43 +02:00
Hannah Wolfe
6d092ada99 Merge pull request #7402 from kirrg001/tooling/latest-lodash-bookshelf-knex
🛠  update lodash,knex and bookshelf to latest versions
2016-09-26 09:39:57 +01: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
Hannah Wolfe
264661ee09 🐛 Refresh assetHash on theme override (#7430)
closes #7423

- Extend our dirty theme override cache clear hack to also reset the asset hash
_ This brings alpha into line with the LTS branch
- This still needs a rewrite for Ghost 1.0.0 🙄
2016-09-23 13:05:44 +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
Hannah Wolfe
26efcc4936 Updated Ghost-Admin to 1.0.0-alpha.1 2016-09-20 16:39:30 +01:00
Hannah Wolfe
58c5b96b30 Merge pull request #7412 from TryGhost/playground
Refactored config, utf8mb4 support, and more alpha features
2016-09-20 16:33:21 +01:00
Hannah Wolfe
6a4c58073d Update Ghost-Admin to 1.0.0-alpha.0 2016-09-20 15:59:34 +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
John O'Nolan
fa07cc7f52 Update readme for 1.0 😱 (#7405) 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
79bf09a7c1 🚨 fix admin_spec && module_spec
no issue
2016-09-20 15:59:34 +01:00
kirrg001
231fea4766 🎨 adaption from master merge
no issue
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
6a97873f98 🎨 🔦 refactor content paths (images, apps, themes, storage, scheduling)
refs #6982
- create config util fn: getContentPath
- we can later let the user change the folder names in contentPath
- get rid of custom/default storage paths

[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
0487ac5a1b 🔥 🔦 we no longer keep config and configExample in config
refs #6982
- see https://github.com/TryGhost/Ghost/blob/master/core/server/config/index.js#L217
- remove tests for it

[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
66129ed9da 🔥 remove all config tests for file and deprecated config
refs #6982
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
ef50c6a149 🎨 🔦 theme url is no longer defined in config
refs #6982
- it's for now defined where all theme properties get set: in api/settings.js
- it's not the best place, but for now the place where i think it makes the most sense
- see https://github.com/TryGhost/Ghost/blob/playground/core/server/api/settings.js#L63

[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
bd4590d0b5 🎨 🔦 no support for active storage adapter as string
refs #6982
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
3e02dbf734 🎨 missing get/set config changes
refs #6982
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
248ceba72b 🎨 adapt bootstrap file because of nconf changes
refs #6982
- remove load config
- remove checkDeprecated
- adapt arguments for scheduling init

[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
042e0da1c9 🎨 🔦 read ghost version from package.json
refs #6982
[ci skip]
2016-09-20 15:59:34 +01:00