Hannah Wolfe
e40290af5d
🎨 Use GhostAuth name and example emails ( #7475 )
...
refs #7452
- remove references to 'patronus' in favour of GhostAuth, Note: this will require databases to be deleted ;)
- remove email addresses from test data
2016-10-03 15:11:43 +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
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
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
kirrg001
d0356a257e
🐛 fix circular dependency in new bootUp script
...
closes #7440
2016-09-27 12:18:45 +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
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
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
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
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
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
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
kirrg001
d42f4f6058
🎨 replace config.getSocket()
...
refs #6982
- was a function in ConfigManager
- does belong to the GhostServer logic
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
f4bee50e86
🎨 create assetHash if not available in asset_url helper
...
refs #6982
- was before generated in ConfigManager
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
b3bafa4ba8
🎨 🔦 restrict themes storage to local-file-store
...
refs #6982
- this was handled before by the old ConfigManager
- this logic belongs into the storage logic itself
- for now we only allow uploading themes via the local-file-store
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
1f85604d09
🎨 remove circular dependency solution in errors/index.js
...
refs #6982
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
34e48dc49a
🎨 🔦 do not append isPostgreSQL to config
...
refs #6982
- we cannot add functions to nconf
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
0ae0a0b490
🎨 change how we get and set config
...
refs #6982
- a replace for all config usages
- always use config.get or config.set
- this a pure replacement, no logic has changed
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
7d3e8fa8a9
✨ 🔦 add nconf files
...
refs #6982
- add defaults.json
- add overrides.json
- add env specific default values
- add nconf wrapper in /config
- add config utils in /config/utils.js
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
96203a46dc
🔥 remove config.example.js and ConfigManager
...
refs #6982
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
e3c0200f73
🔥 remove startup checks
...
refs #6982
- we will execute the startup checks in Ghost-CLI
[ci skip]
2016-09-20 15:59:34 +01:00
kirrg001
0b2940d587
🎨 add getSubdir and getProtectedSlugs
...
refs #6982
- do not add the subdir property as static config value
- create functions to read subdir and protected slugs on runtime
2016-09-20 15:59:34 +01:00
Katharina Irrgang
c8119eee1f
🎨 source out url utils from ConfigManager ( #7347 )
...
refs #6982
2016-09-20 15:59:34 +01:00
Katharina Irrgang
dc1ef35f0c
🎨 do not load apps in ConfigManager ( #7344 )
...
refs #6982
2016-09-20 15:59:34 +01:00
Katharina Irrgang
a639e48715
🎨 load themes not in ConfigManager ( #7342 )
...
refs #6982
2016-09-20 15:59:34 +01:00
Austin Burdine
756d9bcb6e
show correct error message the first time account is locked ( #7263 )
...
closes #7251
- check if remaining attemps is 0, if so then show account locked error
- adds test
2016-09-19 14:56:55 +01:00
Katharina Irrgang
9349e99e54
🐛 fix delete by author as transaction ( #7145 )
...
closes #7137
Deleting the content from the database runs in a transaction. see
https://github.com/TryGhost/Ghost/blob/master/core/server/api/users.js#L390
`destroyByAuthor` is one of the operations we trigger to delete all the conent, see https://github.com/TryGhost/Ghost/blob/master/core/server/models/post.js#L647
The post model has a specific hook for deleting content to delete the relations as well, see https://github.com/TryGhost/Ghost/blob/master/core/server/models/post.js#L122
This hook is part of the transaction. But the `options` are ignored. `(model/*, attr, options*/)`
We use the `options` to forward the transaction reference, which we need to pass into the bookshelf queries. So `return model.load('tags').call('related', 'tags').call('detach')` does not forward the transaction and that's why it stucks when deleting the content.
2016-09-19 14:45:36 +01:00
Katharina Irrgang
265f058466
🎨 use apiUrl helper for scheduling initialisation ( #7400 )
...
no issue
- extend apiUrl to return either an admin url for CORS or not
2016-09-19 14:41:50 +01:00
Cezary Kluczyński
83b426ad14
Changed formatting of run time to human readable ( #7318 )
2016-09-19 11:28:18 +01:00
Katharina Irrgang
ed9e90419d
🐛 generate correct apiUrl for scheduling ( #7389 )
...
closes #7388
2016-09-15 10:22:38 +01:00
Hannah Wolfe
a791b43f1e
🐛 😱 Fixing extract-zip derp-moment
...
There are no words for this!
2016-09-14 22:47:41 +01:00
David Wolfe
1cf0b940ad
Do not show internal tags in RSS feed ( #7385 )
...
closes #7367
- checks tags are visibile if internal tags are enabled in labs
- dirty quick update to tests
2016-09-14 19:14:08 +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
de66a61f59
hides internal tags from displaying in meta data ( #7379 )
...
closes #7348
- only filter keywords if the internal tag lab feature is turned on
2016-09-14 17:33:24 +00:00
Hannah Wolfe
43bcf5b374
🐛 better theme name consistency ( #7380 )
...
closes #7313
- Adds `getSanitizedFileName` function to storage/base.js which replaces non A-Z0-9@. chacracters with -
- modifies /api/theme.js so that zip.shortName is consistent throughout.
2016-09-14 17:24:28 +00:00
Austin Burdine
2b07f7a15b
Add application/octet-stream to allowed types for theme uploads ( #7382 )
...
closes #7292 (again)
- fix more uploads
2016-09-14 17:53:36 +01:00
Katharina Irrgang
774a662fb2
🐛 re-run migration for sqlite/pg ( #7323 )
...
closes #7192
- add 008 migration
- added script to re-run 006/01
- re-run 006/01 migration for postgres in any timezone (transform formats only)
- re-run 006/01 migration for sqlite (transform formats only)
- rely on format checks for sqlite, do not check server TZ
2016-09-14 17:52:45 +01:00
Aileen Nowak
b598656ff1
✨ Use migration to add AMP column in posts table ( #7370 )
...
no issue
Uses migration to '008' to add an `amp` column to the `posts` table.
2016-09-14 16:02:35 +01:00
Katharina Irrgang
94fdbdd267
🐛 move overrides into core folder ( #7371 )
...
closes #7336
- make sure overrides is still the first package to call
2016-09-14 15:50:17 +01:00
Austin Burdine
78f580763f
ensure amp works when blog is running in subdirectory ( #7353 )
...
closes #7352
- use relative url instead of absolute url for post lookup
- add test that passes w/these changes
2016-09-14 12:47:25 +01:00
Sebastian Gierlinger
03ca49ca5e
Respect subdirectory for preview pages ( #7365 )
...
no issue
- added subdirectory for preview route when doing cache invalidation
2016-09-14 12:32:48 +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