Commit Graph

1792 Commits

Author SHA1 Message Date
Fabien 'egg' O'Carroll
758497839b
Updated @tryghost/bookshelf-plugins & @nexes/nql (#13212)
refs https://github.com/TryGhost/Team/issues/944

This updates both libraries to include support for custom foreign keys
on relations, as well as relations with a "virtual" table, defined by a
query.

This will allow us to filter members based on aggregates of their
events, as well as on properties of their stripe subscriptions which are
linked not by the `id` column but by thir external stripe id, e.g. `customer_id`.
2021-08-04 17:01:23 +01:00
Fabien 'egg' O'Carroll
424f621414
Moved NQL relations and expansions into the models (#13204)
refs https://github.com/TryGhost/framework/pull/19

The @tryghost/bookshelf-filter plugin no longer bundles hardcoded
relations and expansion definitions, instead leaving it up to the
library consumer to implement.

This PR adds the preexisting relations and expansions to the relevant
models, in order to preserve our existing filtering functionality.
2021-08-04 15:30:53 +01:00
Kevin Ansfield
db4a596d92 Added top/bottom divider and button alignment support to email-cta card
refs https://github.com/TryGhost/Team/issues/928

- bumped `kg-default-cards` which adds necessary output to the rendered `email-cta` card
2021-08-02 15:31:45 +01:00
Renovate Bot
4a4f98ffe2
Update metascraper to v5.24.0 2021-08-02 10:20:50 +00:00
Renovate Bot
501a7d9734 Lock file maintenance 2021-08-02 04:40:21 +00:00
Renovate Bot
deb971dad6
Update metascraper to v5.23.3 2021-08-02 00:21:03 +00:00
Renovate Bot
cb46e14c9c
Update dependency eslint to v7.32.0 2021-07-30 23:58:43 +00:00
Kevin Ansfield
ac0bf227f5 Added missing yarn.lock changes
refs dbbf80bc6a
2021-07-29 15:49:41 +01:00
Kevin Ansfield
eb92610df2 Added accent color button styles to labs email template
refs https://github.com/TryGhost/Team/issues/928

- duplicated email template so email-cta changes can go into the labs version
- added `accentContrastColor` to template settings for using white/black depending on the accent color
- added `.gh-btn-accent` styles to the email template (email-cta card already uses those for the button)
2021-07-29 15:25:09 +01:00
Kevin Ansfield
152702c27b Fixed error when rendering email-cta card with button and no contents
refs https://github.com/TryGhost/Team/issues/928

- bumped `kg-default-cards` to version with a fix for `payload.html` being `undefined`
- bumped other `kg-*` packages to that had sub-dependency bumps
2021-07-29 14:39:25 +01:00
Naz
5fd1ed5bcb Added an escalation email when import triggers a limit
refs https://github.com/TryGhost/Team/issues/912

- When the improt acceedes the threshold for the first time we need a way to notify configured escalationAddress to verify the instance owner's email address.
2021-07-29 20:30:30 +12:00
Renovate Bot
9d60936c56
Update metascraper to v5.23.1 2021-07-27 16:07:05 +00:00
Kevin Ansfield
82032fb7c2 Added first pass at email-cta card button rendering in emails
refs https://github.com/TryGhost/Team/issues/927

- bumped `@tryghost/kg-default-cards` to version with button output when rendering
- bumped `@tryghost/kg-card-factory` and `@tryghost/kg-markdown-html-renderer` as they had (unrelated) sub-dependency updates
2021-07-27 17:05:38 +01:00
Renovate Bot
b5334fe831
Update dependency sinon to v11.1.2 2021-07-27 12:52:52 +00:00
Renovate Bot
91ab07d0d1
Update metascraper to v5.23.0 2021-07-26 12:02:57 +00:00
Renovate Bot
149101a87b Update dependency gscan to v4.2.1 2021-07-26 11:15:15 +01:00
Renovate Bot
c92a379e74 Lock file maintenance 2021-07-26 02:08:59 +00:00
Renovate Bot
75f6e733d1
Update dependency mocha to v9.0.3 2021-07-26 00:07:06 +00:00
Naz
a7dd7bb64b Added email verification limit check
refs https://github.com/TryGhost/Team/issues/912

- When the import threshold is reached we want to trigger an "email" limit. See details in the refed issue
2021-07-23 20:37:29 +04:00
Daniel Lockyer
191f732115
Updated lockfile
no issue

- the lockfile was outdated with pending local changes if we ran `yarn`
- not sure where this came from - Sentry was recently updated and GScan
  was also bumped
2021-07-23 09:45:45 +01:00
Daniel Lockyer
dcca28a45b v4.10.1
-----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTqYa7kNs8D7Oo9dgLSEYbwtHKVrQUCYPmn5QAKCRDSEYbwtHKV
 rZ7GAP44uQbWr4HFW7cAdEBG3YRDA5EC7S0uy2fdizzxuvPr2AEAqpU51eOpUPgm
 SY43m3su6G2QUoMMUJEt6HJ0xzH4FQU=
 =Qvoa
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTqYa7kNs8D7Oo9dgLSEYbwtHKVrQUCYPmoNQAKCRDSEYbwtHKV
 rY8SAQDDoVnCn5KBFk7F4pMBEsH9CV5olF1URJf5wShFdVZrpwD/bNOf/kN/xn1R
 X2SMUaG4uZav969eRRU36h3Ky64Hdw4=
 =2WgO
 -----END PGP SIGNATURE-----

Merged v4.10.1 into main

v4.10.1
2021-07-22 18:17:34 +01:00
Thibaut Patel
bdb6e950db
🐛 Fixed GScan errors when handling partials with undefined names
refs 81b89e9289

- The mark-used-partials util was recording `undefined` partials, it's not anymore
- Also fixed the `normalizePath` function that was breaking when given `undefined`
- This solves the two ends of a bug that prevented some Ghost instances to boot due to a theme with dynamic partials
- this commit bumps GScan to the fixed version
2021-07-22 18:12:43 +01:00
Renovate Bot
fa14e4bf5f
Update dependency @sentry/node to v6.10.0 2021-07-22 09:18:13 +00:00
Rishabh
dbcd222620 Updated member identity data for labels
refs https://github.com/TryGhost/Team/issues/909
refs 4b315348aa

Adds back `labels` and `products` to member identity data as its used for content gating with segmented post access
2021-07-22 13:01:07 +05:30
Rishabh
4b315348aa Removed unused data queries for member identity
refs https://github.com/TryGhost/Team/issues/909

The request for fetching logged-in member data was making several extra DB queries to fetch data points that are not used on frontend, like `labels`, `products`, `stripe customer`. This refactor removes these extra data points and cuts DB queries in half for fetching logged in member.
2021-07-22 12:42:45 +05:30
Renovate Bot
49a1367ff0 Update CSS preprocessors 2021-07-22 08:11:11 +01:00
Renovate Bot
c4f2864cc6 Update dependency supertest to v6.1.4 2021-07-22 08:10:50 +01:00
Naz
57c4afdea2 Integrated @tryghost/members-importer
closes https://github.com/TryGhost/Team/issues/916

- The members importer module was extracted into an ouside module as per project structuring standards
2021-07-21 19:34:30 +04:00
Fabien O'Carroll
ba7ddc88c1 🐛 Fixed 500 error when creating Products
refs https://github.com/TryGhost/Team/issues/919

This version of @tryghost/members-api has a patch to the loading of the
benefits relation for products, which previously was erroring and
causing a 500 error.
2021-07-20 13:22:21 +01:00
Fabien 'egg' O'Carroll
264fb51a87
Exposed Members pub keys on /members/.well-known/ (#13163)
refs https://github.com/TryGhost/Team/issues/664

The new WellKnownController and middleware handles exposing a JSON Web
Key Set for us.

In order to serve the keys on /members/.well-known/jwks.json without a
trailing slash, we must mount the wellKnown middleware before the
frontend.
2021-07-20 13:19:31 +01:00
Kevin Ansfield
ea3bf8ad7f Bumped Koenig-related packages
refs https://github.com/TryGhost/Team/issues/910

- fixed missing `alt` attributes on images in bookmark cards
- added `email-cta` card
- dropped node 10 support
2021-07-20 12:20:36 +01:00
renovate[bot]
6646c1bb65
🐛 Fixed member cookies remaining after signout
refs https://github.com/TryGhost/Team/issues/908

The `cookies` module inside `@tryghost/members-ssr` was being used incorrectly
and resulted in cookies being set with `'[Object object]'`

Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-20 11:16:00 +01:00
Thibaut Patel
8425fb480d 🐛 Fixed gscan path issues on windows
issue https://github.com/TryGhost/Team/issues/901

- The main issue was in the AST linter, where partials could have either forward- or backward-slash separators depending on the operating system. We have normalized all partial names to only have forward-slashes, which matches the handlebars syntax, like `{{> icons/avatar}}`.
- The second issue was in the 005-template-compile, where we wouldn't check partials even though they were used. This also comes from the path separator difference.
- We have also updated all regular expressions to account for paths with backward-slashes
2021-07-19 18:17:17 +02:00
Renovate Bot
ab4694db47
Update dependency eslint-plugin-ghost to v2.6.0 2021-07-19 12:50:50 +00:00
Rishabh
41717a53a0 Fixed migration to avoid incorrect default prices
refs https://github.com/TryGhost/Team/issues/778

- cleans up the stripe migration to add default monthly/yearly prices for sites, which had a possibility of using complimentary (0 amount prices) in edge cases
- adds missing return in the same migration for an unlikely failure to parse stripe plans
2021-07-19 18:19:17 +05:30
Renovate Bot
dbf6c783a5
Update metascraper to v5.22.11 2021-07-19 11:38:44 +00:00
Renovate Bot
846db16071 Update dependency analytics-node to v5 2021-07-19 11:28:51 +01:00
Renovate Bot
21fcdaa69b Lock file maintenance 2021-07-19 11:26:48 +01:00
Renovate Bot
566615f014 Update dependency jwks-rsa to v2.0.4 2021-07-19 08:16:08 +01:00
Renovate Bot
97f19b1650
Update dependency eslint to v7.31.0 2021-07-19 01:06:44 +00:00
renovate[bot]
a292a4ba18
Update dependency eslint-plugin-ghost to v2.5.0 (#13149)
Co-authored-by: Renovate Bot <bot@renovateapp.com>

This version of eslint contains changes for Admin only
2021-07-16 13:13:04 +01:00
Fabien 'egg' O'Carroll
81e7d71391
Fixed created_at dates for member events on import (#13151)
refs https://github.com/TryGhost/Team/issues/542

The members-api has been updated to use the passed `created_at`
property when creating members for the status change events, as well as
using the subscription start_date for members paid subscription events

This is a duplicate of 7eb821b3f5 but
with updated dependencies.
2021-07-16 12:06:46 +01:00
Fabien O'Carroll
768709ce88 Revert "Fixed created_at dates for member events on import"
This reverts commit 7eb821b3f5.

This package version is broken.
2021-07-15 18:45:47 +01:00
Fabien O'Carroll
7eb821b3f5 Fixed created_at dates for member events on import
refs https://github.com/TryGhost/Team/issues/542

The members-api has been updated to use the passed `created_at`
property when creating members for the status change events, as well as
using the subscription start_date for members paid subscription events
2021-07-15 17:44:22 +01:00
Renovate Bot
167da5addd Update dependency @tryghost/root-utils to v0.3.2 2021-07-12 13:45:09 +01:00
Renovate Bot
494de507a8 Update dependency @tryghost/validator to v0.1.3 2021-07-12 13:44:54 +01:00
Renovate Bot
16649386b7 Update dependency @tryghost/version to v0.1.2 2021-07-12 13:16:54 +01:00
Renovate Bot
0750e37793
Update dependency @sentry/node to v6.9.0 2021-07-12 11:02:08 +00:00
Renovate Bot
65111c9464 Update dependency @tryghost/logging to v0.1.4 2021-07-12 10:41:34 +01:00
Renovate Bot
571e63691e Update dependency @tryghost/request to v0.1.3 2021-07-12 10:41:24 +01:00
Renovate Bot
b4f6985634 Update dependency @tryghost/debug to v0.1.3 2021-07-12 10:41:06 +01:00
Renovate Bot
74c956d06b Lock file maintenance 2021-07-12 04:06:17 +00:00
Renovate Bot
a494f3d3ac
Update metascraper 2021-07-12 00:37:41 +00:00
Thibaut Patel
92b55b7b01 🐛 Fixed a gscan bug that was causing Ghost to throw http 500s.
refs https://github.com/TryGhost/Team/issues/864

- gscan was breaking when parsing double-quoted helpers like `{{"pagination"}}`.
- re-used a function to convert StringLiterals to PathExpressions, which fixes the issue.
2021-07-09 11:06:59 +02:00
Renovate Bot
2ffad75b9d
Update metascraper to v5.22.7 2021-07-08 20:16:37 +00:00
Sam Lord
cfc8b2152a 🐛 Upgrade Gscan to 4.1.1
issue TryGhost/Team#864

Use latest gscan to fix issue where custom themes didn't work
2021-07-08 10:54:33 +01:00
Thibaut Patel
2e731f91a7 Revert " Added detection of conditional partials in themes"
This reverts commit 4c551fcde6.
2021-07-08 09:54:05 +02:00
Hannah Wolfe
0f9e3ea8df
Removed grunt-mocha-cli
- we no longer rely on grunt for any testing, and call mocha directly
2021-07-07 09:19:13 +01:00
Renovate Bot
afb81a5c73 Update dependency @tryghost/members-csv to v1.1.1 2021-07-06 16:26:54 +01:00
Fabien O'Carroll
feae70d7c1 Restricted Stripe Checkout to Members without products
refs https://github.com/TryGhost/Team/issues/858

Previously when complimentary access used a Stripe subscription under
the hood, we were able to restrict access to Stripe Checkout based on
whether or not a Member had an active Stripe subscription. This updates
the logic in members-api to instead check for whether or not the member
has 1-or-more products.
2021-07-06 14:21:55 +01:00
Renovate Bot
59dc2a9bc9 Update dependency @tryghost/magic-link to v1.0.5 2021-07-06 14:05:58 +01:00
Renovate Bot
6aeb5af454 Update dependency @tryghost/members-ssr to v1.0.5 2021-07-06 14:05:48 +01:00
Fabien O'Carroll
904a10a2ec Supported 'comped' status in MemberRepository
refs https://github.com/TryGhost/Team/issues/790

This makes the create, update & linkSubscription methods correctly
handle the comped status for members.
2021-07-06 12:02:15 +01:00
Rishabh
ec7cf99279 Updated missing yarn lock changes
no refs

- cleans up the yarn lock file with missing dependency changes from previous commits.
2021-07-06 13:15:56 +05:30
Rishabh
6988dadb1e Added visibility filter string to post/page admin schema
refs https://github.com/TryGhost/Team/issues/849

With multiple products back behind alpha flag, we want to bring back segmented post access for members which allows site owners to set post access to specific products. This change -

- updates admin-api-schema to allow `visibility_filter` attribute to post/page response
2021-07-05 17:10:45 +05:30
Renovate Bot
fec534f833
Pin dependency mocha-slow-test-reporter to 0.1.2 2021-07-05 09:53:57 +00:00
Hannah Wolfe
8f496fb447
Added yarn test:slow tool to show slow tests
- We have a lot of tests, so it can be hard to see if any are problematic
- We have a problem with some tests being too slow, this highlights these in particular
- Very slow tests that take seconds are not really unit tests, we should look for different ways to run these
- Also we should tailor our mocha settings more, so that we have more lenient settings for acceptance/regression tests but not for unit tests
- Note: You have to wait for all tests to run to see the output
2021-07-05 10:42:27 +01:00
Renovate Bot
4a27096af5 Update dependency nock to v13.1.1 2021-07-05 08:45:28 +01:00
Renovate Bot
4ae5cff740 Update dependency @tryghost/helpers to v1.1.49 2021-07-05 08:43:21 +01:00
Renovate Bot
0a032acf99 Update dependency @tryghost/social-urls to v0.1.25 2021-07-05 08:43:02 +01:00
Renovate Bot
ecc33f63de Lock file maintenance 2021-07-05 02:55:08 +00:00
Renovate Bot
d5f457fbb6
Update Test & linting packages 2021-07-05 00:37:17 +00:00
Naz
0f49e19127 Removed unneded i18n and logging parametes from update check
refs https://github.com/TryGhost/Team/issues/727

- @tryghost/update-check-service v0.2.0 does not require either i18n or logging parameters - makes things less tangled up!
2021-07-02 19:07:13 +04:00
renovate[bot]
4c551fcde6
Added detection of conditional partials in themes
closes https://github.com/TryGhost/Team/issues/781
refs 076ad99593
refs https://github.com/TryGhost/Ghost/commit/2b73d0f66
refs https://github.com/TryGhost/Ghost/commit/bab12ca3d

- With refs 076ad99593 
landing in main there is no more 500 error stopping us from bumping the version
- Previous versions of gscan wasn't able to detect partial usage inside
of a helper, e.g.: "{{#if author}}{{> "missing_partial"}}{{/if}}". It's
important to be able to detect these on theme upload/validation stage to
avoid errors during the runtime.
- The updated version provides additional information about used and
unused partials and helpers.
- With this change users might start seeing a "fatal" error during an
upload/activation of a theme previously passing validation. Currently
active themes with partials used in the context will still allow for a
 boot, but will log a 422 error pointing to missing partial.
2021-07-02 22:43:35 +12:00
Naz
2f2c11bbe0 Added alpha support for segmented email cards
refs https://github.com/TryGhost/Team/issues/827

- Ghost needs an ability to insert email-only content for defined segments of members - at the moment distinguishing only free&paid ones.
- The card with a "segment" payload should contain a valid NQL statement to target specific members
2021-06-30 17:43:27 +04:00
Renovate Bot
5d960556f9
Update metascraper to v5.22.5 2021-06-29 18:11:11 +00:00
Fabien O'Carroll
a6592566bb Added support for benefits to Admin Products API
refs https://github.com/TryGhost/Team/issues/806
2021-06-29 16:53:15 +01:00
Renovate Bot
25479364a9 Update dependency @tryghost/logging to v0.1.3 2021-06-29 07:28:06 +01:00
Hannah Wolfe
77996d1ee4
Moved vhost arg logic out of the parent app
- Makes the logic for determining the admin and frontend vhost args independent and easier to test
- Moved the tests to specifically test the vhost utils & removed proxyquire as a dependency
- We want to breakdown the current parent app into the existing core/app.js and boot code, allowing us to decouple the backend and frontend further
- This is all part of the refactoring to separate server and frontend completely
2021-06-28 19:38:42 +01:00
Renovate Bot
620b490be6
Update dependency @sentry/node to v6.8.0 2021-06-28 15:14:52 +00:00
Hannah Wolfe
fcce649600
🔥 Removed netjet support
refs: https://github.com/cloudflare/netjet/issues/46

- HTTP2/Push never made it, this module is therefore defunct
2021-06-28 16:13:46 +01:00
Renovate Bot
4fe723cd1b Update dependency @tryghost/url-utils to v2.0.1 2021-06-28 11:25:20 +01:00
Renovate Bot
3d5beb0c2a Update dependency @tryghost/helpers to v1.1.48 2021-06-28 11:01:23 +01:00
Renovate Bot
ce3a57a8ac
Update metascraper to v5.22.4 2021-06-28 00:15:47 +00:00
Renovate Bot
10d02e8343
Update dependency eslint-plugin-ghost to v2.4.0 2021-06-24 16:43:21 +00:00
Fabien O'Carroll
ccd917ff8c Handled products column for CSV import & export
refs https://github.com/TryGhost/Team/issues/765

This includes the changes to @tryghost/members-csv so that we can read
and write the `product` column from/to csv files. Allowing us to include
products in exports, as well as use them in imports.
2021-06-23 13:53:34 +01:00
Renovate Bot
f9dab79d2e
Update metascraper to v5.22.2 2021-06-23 11:32:05 +00:00
Naz
0d2c990013 Reverted Added detection of conditional partials in themes"
This reverts commit bab12ca3d1.

- Revert was due to 500 errors which would come up when the Ghost instance runst in "production" mode.
2021-06-22 17:49:12 +04:00
Renovate Bot
2f93ce7495 Update dependency @tryghost/logging to v0.1.2 2021-06-22 09:10:44 +01:00
Renovate Bot
7e05c402c9
Update dependency @sentry/node to v6.7.2 2021-06-21 16:25:40 +00:00
Renovate Bot
aae9388098 Update dependency @tryghost/version to v0.1.1 2021-06-21 17:24:43 +01:00
Renovate Bot
d379e18728 Update dependency @tryghost/validator to v0.1.2 2021-06-21 16:47:51 +01:00
Renovate Bot
ed4bdbd6e7 Update dependency @tryghost/root-utils to v0.3.1 2021-06-21 16:47:40 +01:00
Renovate Bot
d6ea82dbd0 Update dependency @tryghost/request to v0.1.2 2021-06-21 16:33:18 +01:00
Renovate Bot
b91cb8172d Update dependency @tryghost/debug to v0.1.2 2021-06-21 16:33:02 +01:00
Renovate Bot
8275a52204 Update dependency @tryghost/bookshelf-plugins to v0.1.3 2021-06-21 14:48:25 +01:00
Renovate Bot
484387ba51 Update dependency nconf to v0.11.3 2021-06-21 13:13:38 +01:00
Renovate Bot
d87d6a7d4e Update dependency @tryghost/members-ssr to v1.0.4 2021-06-21 13:13:25 +01:00
Renovate Bot
968543f967 Update dependency @tryghost/magic-link to v1.0.4 2021-06-21 13:12:53 +01:00
Renovate Bot
ace1513e9f Update dependency @tryghost/image-transform to v1.0.13 2021-06-21 13:12:03 +01:00
Renovate Bot
9aadfdf1bd Update dependency @tryghost/package-json to v1.0.2 2021-06-21 12:14:25 +01:00
Renovate Bot
587f6806df Update dependency @tryghost/session-service to v0.1.24 2021-06-21 08:26:36 +01:00
Renovate Bot
ced89e3777 Update dependency @tryghost/tpl to v0.1.3 2021-06-21 08:26:07 +01:00
Renovate Bot
9b5fc217dc Update dependency @tryghost/adapter-manager to v0.2.14 2021-06-21 08:26:01 +01:00
Renovate Bot
249f316177 Update dependency @tryghost/request to v0.1.1 2021-06-21 08:25:38 +01:00
Renovate Bot
e47c2e6fd9 Update dependency @tryghost/mw-session-from-token to v0.1.22 2021-06-21 08:25:28 +01:00
Renovate Bot
43b9084c86 Update dependency @tryghost/helpers to v1.1.47 2021-06-21 08:25:17 +01:00
Renovate Bot
df4c8ed1c9
Update dependency eslint to v7.29.0 2021-06-18 20:53:18 +00:00
Hannah Wolfe
2f3d60c87e
Updated to use config-url-helpers in urlUtils 2021-06-18 21:49:28 +01:00
Renovate Bot
3a43f0a776 Pin dependency @tryghost/config-url-helpers to 0.1.0 2021-06-18 21:29:00 +01:00
Hannah Wolfe
6aafb735b1
Added config-url-helpers to config
- getSubdir, getSiteUrl & getAdminUrl were currently part of @tryghost/url-utils
- They have been split out into their own library, and refactored so that they expect to be bound to nconf
- With this commit we can do e.g. config.getSubdir() rather than needing @tryghost/url-utils
- These functions will be passed to url-utils via DI
- This is the first step in breaking down url-utils into smaller pieces
- This commit only does a single change in Gruntfile.js to use the new funtions - this will be rolled out slowly
2021-06-18 20:05:00 +01:00
Renovate Bot
536d7a76d6 Update dependency mocha to v9.0.1 2021-06-18 17:02:20 +00:00
Fabien O'Carroll
5b66933981 Supported directly assigning products to members
refs https://github.com/TryGhost/Team/issues/748

This updates the @tryghost/members-api MemberRepository to stop ignoring
the `products` data passed to write operations, and to attach products
directly to members. As this logic is part of a new feature, we are
maintaining existing functionality by deleting the products data when
the feature flag is not enabled.

This functionality allows us to give members complimentary access to a
product without needing to use a Stripe Subscription internally.
2021-06-17 16:57:53 +01:00
Renovate Bot
bab12ca3d1 Added detection of conditional partials in themes
refs https://github.com/TryGhost/Team/issues/781
refs https://github.com/TryGhost/Team/issues/774

- Previous versions of gscan weren't able to detect partial usage inside
of a heprer, e.g.: "{{#if author}}{{> "missingpartial"}}{{/if}}". It's
important to be able to detect these on theme upload/validation stage to
avoid errors during the runtime.
- The updated version provides additional information about used and
unused partials and helpers.
- With this change users might start seeing a "fatal" error during an
upload/activation of a theme previously passing validation. Currently
active themes with partials used in the context will still allow for a
 boot, but will log a 422 error pointing to missing partial.
2021-06-17 16:33:03 +04:00
Naz
2b73d0f66f Revert "Update dependency gscan to v4.1.0"
This reverts commit d010ab4490.
2021-06-17 16:33:03 +04:00
Naz
3092f779ec Revemod stray gulp dependency
refs 44a6e399dd

- The change seems unintentionall and prevents from clean revert of gscan commit
2021-06-17 16:11:50 +04:00
Sam Lord
44a6e399dd Upgrade @tryghost/validator
no issue
Fixes the build - as test checks for instanceof ValidationError, and
we were using 2 versions of @tryghost/errors between Ghost and
@tryghost/validator.
2021-06-17 12:59:59 +01:00
Sam Lord
44053553f5 Upgrade @tryghost/errors to use @tryghost/ignition-errors
no issue
Part of the de-coupling project - takes us closer to an Ignition-free
Ghost.
2021-06-17 11:11:03 +01:00
Renovate Bot
941635508e Update dependency postcss to v8.3.5 2021-06-17 10:44:22 +01:00
Renovate Bot
d010ab4490
Update dependency gscan to v4.1.0 2021-06-16 15:53:16 +00:00
Renovate Bot
0ebf8e0161 Update dependency @tryghost/logging to v0.1.1 2021-06-16 15:57:03 +01:00
Renovate Bot
26356b8a5e Update dependency @tryghost/bookshelf-plugins to v0.1.2 2021-06-16 15:33:59 +01:00
Renovate Bot
c394b82cd7 Update dependency @tryghost/package-json to v1.0.1 2021-06-16 15:33:45 +01:00
Renovate Bot
736c878dcf Update dependency @tryghost/tpl to v0.1.2 2021-06-16 15:33:38 +01:00
Sam Lord
3f0bab4389 Replaced request module with @tryghost/request
no issue
Part of the effort to break up Ghost into smaller, decoupled modules.
2021-06-16 13:16:15 +01:00
Sam Lord
24332c3d24 Replaced ghost-version.js with @tryghost/version
no issue
Part of the effort to break up the Ghost codebase into smaller, decoupled modules.
2021-06-16 13:16:15 +01:00
Fabien 'egg' O'Carroll
8ea577b58b
Added support for canceling subscriptions (#13039)
refs https://github.com/TryGhost/Team/issues/775

As we currently do not delete canceled subscriptions and they are
exposed via the API, this functionality has been added to the
editSubscription controller method under the PUT HTTP method.

The cancelSubscription method in @tryghost/members-api was updated to
handle deleting by member id
2021-06-16 11:25:19 +01:00
Hannah Wolfe
526993965a
Switch to @trghost/validator, remove validator
- Part of the effort to split Ghost down into smaller, decoupled pieces
- Moved out our internal validator tooling to a separate library
- Replaced all usage of our own tooling and validatorjs directly with @tryghost/validator
- Removed the validatorjs dependency and removed the renovate pin
- This gives us a consistant, smaller, clearer public API for validations
- It will eventually be used on Ghost Admin too
- This way we can start getting up to date with validator whilst not increasing build size
2021-06-16 08:11:22 +01:00
Sam Lord
35e51e364b Switch to @tryghost/debug, remove ghost-ignition
no issue
The only pieces of Ghost-Ignition used in Ghost were debug and
logging. Both of these modules have been superceded by the Framework
monorepo, and all usages of Ignition have now been removed, replaced
with @tryghost/debug and @tryghost/logging.
2021-06-15 17:24:22 +01:00
Hannah Wolfe
f8524cb0a9
Bumped validator to same version as admin
- validator has seen a lot of change, this one bump is safe
- after this we need to go through and make API updates as isURL has changed quite significantly!
2021-06-15 16:45:48 +01:00
Sam Lord
caea330647 Change to use @tryghost/logging
no issue

Logging is now controlled by a logginrc.js file in the root of the project - and now we can just import @tryghost/logging everywhere
2021-06-15 15:59:11 +01:00
Sam Lord
160cb07e02 Added @tryghost/root-utils to the ghost-version module
no issue
Part of the effort to split ghost into smaller, decoupled parts. The
@root-utils package lets us avoid hard-coding a path to package.json,
and means that the ghost-version.js file could eventually be moved
into a separate module.

This commit uses a patched version of @tryghost/root-utils which
checks for the existence of a `current` directory, as used in
Ghost-CLI. Since this is very specific to Ghost and Ghost CLI, there's
a new method called "getGhostRoot" for this purpose.
2021-06-15 15:06:31 +01:00
Renovate Bot
5b2e7d2c71
Update dependency @sentry/node to v6.7.1 2021-06-15 12:48:02 +00:00
Daniel Lockyer
495ef867c2 Extracted Bookshelf plugins from Ghost to Framework repo
refs:
  - cf15f60085
  - dd20cc649b
  - ccf27f7009
  - abf146d61f
  - 2b54c92a14
  - bb029a53f6
  - 95bd7ee675
  - 9018b4df22
  - df01a6e5f4
  - d313726b34

- these plugins were in a state where they were independent enough to be
  pulled out into their own packages, which is what we did in the
  referenced commits above
- each package is named like `@tryghost/bookshelf-<plugin>`
- to avoid requiring multiple packages into Ghost, we've also created a
  wrapper package called `@tryghost/bookshelf-plugins` which re-exports
  all these plugins, so the changes in Ghost are very simple - dbebdd43b5
- this commit deletes the plugins + tests, and replaces with our new
  package with some minor code changes
2021-06-15 12:49:38 +01:00
Renovate Bot
3092eb344d Update dependency postcss to v8.3.4 2021-06-15 08:55:48 +01:00
Renovate Bot
7cc021c114 Update dependency ghost-ignition to v4.6.3 2021-06-14 18:55:39 +00:00
Sam Lord
1ec79bfaea Revert "Added @root-utils to the ghost-version module"
This reverts commit 846e9f1bbc.
2021-06-14 18:42:40 +01:00
Sam Lord
846e9f1bbc Added @root-utils to the ghost-version module
no issue
Part of the effort to split ghost into smaller, decoupled parts. The
@root-utils package lets us avoid hard-coding a path to package.json,
and means that the ghost-version.js file could eventually be moved
into a separate module.
2021-06-14 16:33:53 +01:00
Renovate Bot
1ec7c70c6f
Update dependency @sentry/node to v6.7.0 2021-06-14 10:06:31 +00:00
Renovate Bot
ed87d1837a Update dependency postcss to v8.3.3 2021-06-14 09:41:29 +01:00
Renovate Bot
aa531dc28b Update dependency @tryghost/members-csv to v1.0.1 2021-06-11 17:44:57 +01:00
Renovate Bot
aee829db15 Update dependency @tryghost/helpers to v1.1.46 2021-06-11 13:37:21 +01:00
Renovate Bot
8d9f06f7c9 Update dependency @tryghost/tpl to v0.1.1 2021-06-11 13:29:43 +01:00
Renovate Bot
07bc610e7e Update dependency @tryghost/session-service to v0.1.23 2021-06-11 13:27:04 +01:00
Renovate Bot
1811e0029f Update dependency @tryghost/vhost-middleware to v1.0.15 2021-06-11 13:26:04 +01:00
Renovate Bot
6cbb6c3c17 Update dependency @tryghost/image-transform to v1.0.12 2021-06-11 13:23:56 +01:00
Renovate Bot
8f7bba3a0e Update dependency @tryghost/mw-session-from-token to v0.1.21 2021-06-11 13:23:50 +01:00
Renovate Bot
d312a05f22 Update dependency @tryghost/promise to v0.1.9 2021-06-11 13:23:43 +01:00
Renovate Bot
def12e0951 Update CSS preprocessors 2021-06-11 13:23:29 +01:00
Renovate Bot
8baad6af30 Update dependency @tryghost/errors to v0.2.12 2021-06-11 13:23:17 +01:00
Renovate Bot
d89ef63317 Update dependency @tryghost/constants to v0.1.8 2021-06-11 13:23:07 +01:00
Renovate Bot
cd5b186b00 Update dependency @tryghost/bootstrap-socket to v0.2.9 2021-06-11 12:29:08 +01:00
Renovate Bot
d9883d6060 Update dependency @tryghost/adapter-manager to v0.2.13 2021-06-11 12:28:50 +01:00
Renovate Bot
13c2d84e1e Update dependency @tryghost/job-manager to v0.8.7 2021-06-11 12:28:38 +01:00
Renovate Bot
3bd03d2bca Update dependency @tryghost/limit-service to v0.6.1 2021-06-11 12:28:32 +01:00
Renovate Bot
99b06682f5 Update dependency @tryghost/security to v0.2.9 2021-06-11 12:28:20 +01:00
Renovate Bot
ff5b1be4e1 Update dependency @tryghost/zip to v1.1.14 2021-06-11 12:28:06 +01:00
Kevin Ansfield
1bc57b584a
Added posts_meta.feature_image_{alt,caption} columns (#13030)
refs https://github.com/TryGhost/Team/issues/770

We want post feature image functionality to better match what's available inside the editor, to do that we'll need somewhere to store alt and caption meta data. `posts_meta` chosen because even though we want to make this generic for other tables in the future those tables also have a `feature_image` (or closely related) field.

- updated schema with new columns
- added migration to create columns
- cleaned new columns from API output
  - not output on v2/v3
  - conditionally output on v4/canary output based on labs flag
- bumped `@tryghost/admin-api-schema` to allow new columns through in canary API requests
  - silently clean properties from input when labs flag is disabled
  - updated acceptance tests so they fail if `admin-api-schema` is not letting the new fields through
2021-06-10 20:35:56 +01:00
Renovate Bot
b53de12e12
Update dependency eslint-plugin-ghost to v2.3.0 2021-06-10 16:13:31 +00:00
Renovate Bot
3472d7b63d
Update dependency @sentry/node to v6.6.0 2021-06-10 14:30:48 +00:00
Renovate Bot
139cf448d7
Update metascraper to v5.22.1 2021-06-09 15:53:54 +00:00
Hannah Wolfe
1f11bd9012
Updated package-json lib to not need DI
- The underlying package-json package has had i18n ripped out using the new tpl utility instead
- It's also then been refactored to not be a class that needs instantiating
- This means it can be required directly and its public interface methods used where needed
- This is a much nicer, neater pattern for what is a mature utility library :)
2021-06-09 16:48:19 +01:00
Daniel Lockyer
1e54db2720
Moved @tryghost/tpl to dependencies
refs 971ac479dc

- `@tryghost/tpl` was accidentally placed in `devDependencies` but
  Ghost needs this to run so it would cause Ghost-CLI to fail when it
  only installs `dependencies`
- this commit moves the dependency to `dependencies`
- also pins the dependency to `0.1.0`
2021-06-09 13:48:32 +01:00
Hannah Wolfe
971ac479dc
Updated ghost-server to use new minimal tpl helper
- We are going to get rid of the internal i18n tool because it doesn't solve a real use case
- Instead, we have a new tpl utility that does basic string interpolation
- This pattern will make it easier for us to decouple the codebase, and the new tool helps to keep the refactor surface area really small
- This is the first example of using the new tpl helper, so it also adds @tryghost/tpl
2021-06-09 12:20:59 +01:00
Renovate Bot
a0f11282d3
Update dependency mocha to v9 2021-06-07 17:05:28 +00:00
Renovate Bot
8e0b097c2c
Update dependency eslint to v7.28.0 2021-06-04 23:10:06 +00:00
Rishabh
e2e2925f9e Added missing lockfile
refs def46df589

Previous commit missed adding the lockfile for `@tryghost/members-api` bump.
2021-06-04 19:34:49 +05:30
Renovate Bot
a947f7f829 Pin dependency @tryghost/update-check-service to 0.1.0 2021-06-04 13:37:54 +01:00
Kevin Ansfield
b81e5c26dc Added postcss as explicit dev dependency
no issue

- `cssnano` requires `postcss` as a peer dependency which was causing warnings when running `yarn`
- `postcss` was available because it's a sub-dependency of `sanitize-html` so nothing was broken but explicitly adding it to `package.json` resolves the warnings
2021-06-04 12:46:09 +01:00
Fabien O'Carroll
def07d595e Added monthly & yearly price support to products
refs https://github.com/TryGhost/Team/issues/712

The ProductRepository in members-api has been updated to accept
monthly_price & yearly_price when creating and updating products, as
well as including them when reading.
2021-06-03 17:02:32 +01:00
Naz
7d05da6185 Removed update check service in favor of external package
refs https://github.com/TryGhost/Team/issues/728

- The code of update check has been extracted into it's own package as a part of TryGhost/Core monorepo. This commit is a cleanup of the leftover files
2021-06-03 13:24:19 +04:00
Renovate Bot
71a0572f8a
Update dependency @sentry/node to v6.5.1 2021-06-02 18:07:24 +00:00
Fabien O'Carroll
c066dd157a Migrated members_{month,year}ly_price_id settings
refs https://github.com/TryGhost/Team/issues/711

Since we need to support multiple products, which will each have a
monthly and yearly price, we are moving away from storing these ids in
settings, and instead in a column on the products table. The migration
depends on the settings being prepopulated, which is done outside of
knex-migrator, in members-api, so this migration must also be done there.
2021-06-02 10:04:38 +01:00
Renovate Bot
f6d67fc92d Lock file maintenance 2021-06-01 16:45:04 +01:00
Renovate Bot
66924486cf Update dependency nock to v13.1.0 2021-06-01 16:44:43 +01:00
Kevin Ansfield
035a38680e Bumped Koenig packages
no issue

- includes sub-dependency bumps for `markdown-it` packages for markdown renderer bug fixes and to keep Ghost and Admin markdown rendering in sync
2021-06-01 09:40:20 +01:00
Renovate Bot
fa2e116474
Update metascraper to v5.22.0 2021-05-31 15:30:42 +00:00
Renovate Bot
514e2ca821
Update dependency @sentry/node to v6.5.0 2021-05-31 10:52:51 +00:00
Renovate Bot
56fb8efccb Update dependency papaparse to v5.3.1 2021-05-31 08:59:54 +01:00
Renovate Bot
900f46bb8c Update dependency cssnano to v5.0.5 2021-05-31 08:59:28 +01:00
Renovate Bot
377fd85d98
Update dependency sinon to v11.1.1 2021-05-26 15:58:01 +00:00
renovate[bot]
f3defb98f3
Update dependency @tryghost/members-ssr to v1.0.3 (#12978)
no-issue

This bumps internal dependencies inside @tryghost/members-ssr

Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-26 10:46:21 +01:00
renovate[bot]
c641929bdf
Update dependency @tryghost/magic-link to v1.0.3 (#12977)
no-issue

This just bumps dependencies within @tryghost/magic-link

Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-26 10:45:35 +01:00
Renovate Bot
ef49e5683f Update dependency juice to v8 2021-05-26 10:15:13 +01:00
Renovate Bot
9ae55eecfb
Update dependency sinon to v11.1.0 2021-05-25 14:14:19 +00:00
Renovate Bot
fbdb0c1bb9 Update dependency grunt to v1.4.1 2021-05-25 09:16:32 +01:00
Renovate Bot
572d4ee15c
Update metascraper to v5.21.10 2021-05-24 23:29:32 +00:00
Renovate Bot
93896acf5d
Update dependency sinon to v11 2021-05-24 21:44:33 +00:00
Fabien O'Carroll
40e1a09083 Fixed error message when Stripe not connected
refs https://github.com/TryGhost/Team/issues/704

Previously a customer message was not passed, and the default message
was used. This made a reference to, "someone else is editing the post"
which is incorrect in this context! The members-api has been updated
with an appropriate error message, with a link to our documentation.
2021-05-24 17:45:33 +01:00
Fabien O'Carroll
2000c3c156 Errored when Stripe is used without a connection
refs https://github.com/TryGhost/Team/issues/704

Currently when attempting to create stripe_prices without a Stripe
connection, it will fail silently. This is an issue when initially
configuring Members as the Stripe connection can take some time to be
established. By erroring we allow the client to be notifed that the
connection does not yet exist, so that it can be retried later.
2021-05-24 11:54:45 +01:00
renovate[bot]
01ac1acfcb
Fixed indescribable error in custom themes limit
refs f51c640fb0

- This should not affect any of the current code but should improve edge case errors related to "allowlist" types of limits
- See referenced commit for details when this edgecase was happening
2021-05-24 22:09:18 +12:00
Renovate Bot
2cd687b7cf Update dependency cssnano to v5.0.4 2021-05-24 08:50:36 +01:00
Renovate Bot
e03f99a8f3
Update dependency eslint to v7.27.0 2021-05-24 00:31:56 +00:00
Fabien O'Carroll
730811fb6e Handled week & day interval in population of mrr events
refs https://github.com/TryGhost/Team/issues/635

This is to ensure we don't break migrations for any sites which have
imported external subscriptions which have an interval of 'week' or
'day'

The bump to members-api includes the handling of these intervals for
ongoing population of mrr events
2021-05-21 17:57:17 +01:00
Renovate Bot
6d2890c1a8
Update metascraper to v5.21.9 2021-05-21 10:16:46 +00:00
Renovate Bot
d08ea611b7 Update dependency cssnano to v5.0.3 2021-05-21 09:14:36 +01:00
Renovate Bot
5aaa910a2e Update dependency @tryghost/job-manager to v0.8.6 2021-05-21 09:08:54 +01:00
Renovate Bot
9010932466
Update dependency sanitize-html to v2.4.0 2021-05-20 16:28:50 +00:00
Fabien O'Carroll
253eee627c Removed boot precondition checks from members-api
refs https://github.com/TryGhost/Team/issues/598
refs https://github.com/TryGhost/Ghost/commit/5cdf910e

Since we have moved the preconditon checks into this codebase, we no
longer need the members-api module to run them. This bump includes the
changes to remove the last of those checks.
2021-05-20 12:14:14 +01:00
Renovate Bot
d98334eb89
Update dependency express-session to v1.17.2 2021-05-19 20:47:30 +00:00