Ghost/package.json
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

154 lines
3.8 KiB
JSON

{
"name": "ghost",
"version": "1.0.0-alpha.3",
"description": "Just a blogging platform.",
"author": "Ghost Foundation",
"homepage": "http://ghost.org",
"keywords": [
"ghost",
"blog",
"cms"
],
"repository": {
"type": "git",
"url": "git://github.com/TryGhost/Ghost.git"
},
"bugs": "https://github.com/TryGhost/Ghost/issues",
"contributors": "https://github.com/TryGhost/Ghost/graphs/contributors",
"license": "MIT",
"main": "./core/index",
"scripts": {
"start": "node index",
"test": "grunt validate --verbose"
},
"engines": {
"node": "~0.12.0 || ^4.2.0 || ^6.5.0"
},
"dependencies": {
"amperize": "0.3.1",
"archiver": "1.1.0",
"bcryptjs": "2.3.0",
"bluebird": "3.4.6",
"body-parser": "1.15.2",
"bookshelf": "0.10.1",
"bunyan": "1.8.1",
"chalk": "1.1.3",
"cheerio": "0.22.0",
"compression": "1.6.2",
"connect-slashes": "1.3.1",
"cookie-session": "1.2.0",
"cors": "2.8.1",
"csv-parser": "1.11.0",
"debug": "2.2.0",
"downsize": "0.0.8",
"express": "4.14.0",
"express-hbs": "1.0.3",
"extract-zip-fork": "1.5.1",
"fs-extra": "0.30.0",
"ghost-gql": "0.0.5",
"glob": "5.0.15",
"gscan": "0.0.15",
"html-to-text": "2.1.3",
"image-size": "0.5.0",
"intl": "1.2.5",
"intl-messageformat": "1.3.0",
"jsonpath": "0.2.7",
"knex": "0.12.2",
"lodash": "4.16.0",
"mobiledoc-html-renderer": "0.3.0",
"moment": "2.15.1",
"moment-timezone": "0.5.5",
"multer": "1.2.0",
"nconf": "0.8.4",
"netjet": "1.1.3",
"node-uuid": "1.4.7",
"nodemailer": "0.7.1",
"oauth2orize": "1.5.0",
"passport": "0.3.2",
"passport-ghost": "1.0.0",
"passport-http-bearer": "1.0.1",
"passport-oauth2-client-password": "0.1.2",
"path-match": "1.2.4",
"prettyjson": "1.1.3",
"rss": "1.2.1",
"sanitize-html": "1.13.0",
"semver": "5.3.0",
"showdown-ghost": "0.3.6",
"sqlite3": "3.1.4",
"superagent": "2.3.0",
"unidecode": "0.1.8",
"validator": "5.7.0",
"xml": "1.0.1"
},
"optionalDependencies": {
"mysql": "2.11.1"
},
"devDependencies": {
"grunt": "1.0.1",
"grunt-bg-shell": "2.3.3",
"grunt-cli": "1.2.0",
"grunt-contrib-clean": "1.0.0",
"grunt-contrib-compress": "1.3.0",
"grunt-contrib-copy": "1.0.0",
"grunt-contrib-jshint": "1.0.0",
"grunt-contrib-uglify": "2.0.0",
"grunt-contrib-watch": "1.0.0",
"grunt-docker": "0.0.11",
"grunt-express-server": "0.5.3",
"grunt-jscs": "3.0.1",
"grunt-mocha-cli": "2.1.0",
"grunt-mocha-istanbul": "5.0.2",
"grunt-shell": "1.3.1",
"grunt-subgrunt": "1.2.0",
"grunt-update-submodules": "0.4.1",
"gulp": "3.9.1",
"gulp-git-submodule": "1.0.1",
"gulp-help": "1.6.1",
"gulp-jscs": "4.0.0",
"gulp-jshint": "2.0.1",
"gulp-jsonlint": "1.1.2",
"gulp-livereload": "3.8.1",
"gulp-nodemon": "2.1.0",
"gulp-util": "3.0.7",
"istanbul": "0.4.5",
"jshint": "2.9.3",
"jshint-stylish": "2.2.1",
"matchdep": "1.0.1",
"minimist": "1.2.0",
"mocha": "3.1.0",
"nock": "8.0.0",
"rewire": "2.5.2",
"run-sequence": "1.2.2",
"should": "11.1.0",
"should-http": "0.0.4",
"sinon": "1.17.6",
"supertest": "1.2.0",
"tmp": "0.0.29"
},
"greenkeeper": {
"ignore": [
"glob",
"mysql",
"nodemailer",
"showdown-ghost",
"grunt",
"grunt-bg-shell",
"grunt-cli",
"grunt-contrib-clean",
"grunt-contrib-compress",
"grunt-contrib-copy",
"grunt-contrib-jshint",
"grunt-contrib-uglify",
"grunt-contrib-watch",
"grunt-docker",
"grunt-express-server",
"grunt-jscs",
"grunt-mocha-cli",
"grunt-mocha-istanbul",
"grunt-shell",
"grunt-subgrunt",
"grunt-update-submodules"
]
}
}