Skip to content

Commit fd6050d

Browse files
release(major): fixes
### New Features - [Free] Created a new Feedzy Loop block that provides greater flexibility. This new block allows you to easily modify the design of feed items using the Gutenberg editor, giving you enhanced control over layout and styling. - [PRO] Auto-delete featured image after a number of days set up together with the post. - [PRO] Added the possibility to choose more, randomly selected fallback images for posts. - [PRO] Assign individual imports to specific authors (existing usernames) using the Feedzy UI. - [PRO] Allow actions to be used on custom fields in Feedzy import jobs. You can now translate, trim, search & replace, or even rephrase with AI custom fields that you import to your posts from different tags. - [PRO] Added the ability to export and upload import jobs. This feature helps with re-creating existing imports, transferring them to a different server where Feedzy is also used, and saves significant time. - [PRO] Global management for assigning imported posts to categories based on keywords used in titles with [#auto_categories]. - [PRO] Added OpenRouter integration for enhanced connectivity, allowing users to utilize more large language models (LLMs) beyond OpenAI. - [PRO] Allowed cron settings to be configured per import job instead of globally. ### Improvements - [Free] Made the default tags created with new import actionable. - [Free] Improved the run_cron method to enhance compatibility and stability across various server setups. - [Free] Made the image URL an available option for use as a featured image. This enhancement allows you to use a direct URL of an online image in your import job instead of the [#item_image] tag, setting it as the featured image for imported posts. - [Free] Renamed "Feed Categories" to "Feed Groups" for better clarity. - [Free] Improved error logging next to each import job to provide more detailed insights. - [Free] Added regex and wildcard support in the Search and Replace action. - [Free] Use the Action Scheduler when available for better reliability. - [Free] Added a new integrations tab for managing service connections. - [PRO] Improved filtering systems for the import process and the Feedzy Loop block. With robust filtering options, you can include items matching any condition, filter by fields like title, description, or custom fields, and use operators like contains, equals, or regex for precise control. - [PRO] Improved the way duplicates are removed during imports [Option to filter duplicates by magic tags]. - [PRO] Simplified the translation user experience by incorporating translations into the action tags. - [PRO] Added more OpenAI models for enhanced selection options. - [PRO] Created a prompt for passing parameters to OpenAI to generate featured images more accurately. - [PRO] Moved the license key field from General Settings to Feedzy Settings for better accessibility. ### Bug Fixes - [Free] Added the option to exclude the default category (ID not equal to 1) from being assigned to imported posts. - [Free] Fixed reappearing notices for a smoother user experience. - [Free] Updated the demo URL in the onboarding process. - [Free] Ensured that an author is always assigned to imported posts. - [PRO] Fixed the helper link to direct users to the correct OpenAI API key page. - [PRO] Fixed compatibility issues with certain third-party products when Feedzy External Image is used. - [PRO] Fixed a bug where content paraphrased with OpenAI returned quotes unexpectedly. - [PRO] Clarified that the PRO version requires the free plugin for seamless functionality.
2 parents a438e16 + ce99e96 commit fd6050d

File tree

105 files changed

+9192
-4565
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

105 files changed

+9192
-4565
lines changed

.DS_Store

-6 KB
Binary file not shown.

.distignore

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,11 @@ composer.lock
1818
package-lock.json
1919
key.enc
2020
js/FeedzyBlock
21-
js/Onboarding/import-onboarding.js
22-
js/ActionPopup/action-popup.js
23-
js/ActionPopup/Actions.js
24-
js/ActionPopup/SortableItem.js
21+
js/Conditions/
22+
js/Onboarding/
23+
js/ActionPopup/
24+
js/FeedBack/
25+
js/Review/
2526
webpack.config.js
2627
dist
2728
cypress
@@ -39,5 +40,5 @@ docker-compose.travis.yml
3940
.nvmrc
4041
.releaserc.yml
4142
docker-compose.ci.yml
42-
FeedBack/feedback.js
43-
FeedBack/feedback-form.js
43+
.wp-env.json
44+
artifacts

.eslintrc

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
{
2+
"root": true,
3+
"env": {
4+
"browser": true
5+
},
6+
"extends": "plugin:@wordpress/eslint-plugin/recommended",
7+
"parserOptions": {
8+
"ecmaFeatures": {
9+
"jsx": true
10+
},
11+
"ecmaVersion": "latest"
12+
},
13+
"ignorePatterns": ["**/vendor/**", "**/build/**", "**/*.min.js", "**/node_modules/**"],
14+
"rules": {
15+
"@wordpress/i18n-text-domain": ["error", {
16+
"allowedTextDomain": ["feedzy-rss-feeds"]
17+
}],
18+
"@wordpress/i18n-no-flanking-whitespace": "error",
19+
"@wordpress/data-no-store-string-literals": "error",
20+
"@wordpress/wp-global-usage": "error",
21+
"prettier/prettier": "warn",
22+
"import/no-extraneous-dependencies": "warn",
23+
"prefer-const": "warn",
24+
"dot-notation": "warn",
25+
"react/jsx-key": "warn",
26+
"jsx-a11y/no-static-element-interactions": "warn",
27+
"no-undef": "warn",
28+
"object-shorthand": "warn",
29+
"no-else-return": "warn",
30+
"jsx-a11y/click-events-have-key-events": "warn",
31+
"jsx-a11y/anchor-is-valid": "warn",
32+
"camelcase": "warn",
33+
"jsdoc/check-line-alignment": "warn",
34+
"jsdoc/check-alignment": "warn",
35+
"jsx-a11y/label-has-associated-control": "warn",
36+
"react/no-unknown-property": "warn",
37+
"@wordpress/no-unused-vars-before-return": "warn",
38+
"jsdoc/empty-tags": "warn",
39+
"no-lonely-if": "warn",
40+
"no-var": "warn",
41+
"no-unused-vars": "warn",
42+
"no-console": "warn",
43+
"jsx-a11y/alt-text": "warn",
44+
"react/no-deprecated": "warn",
45+
"jsx-a11y/no-noninteractive-element-interactions": "warn",
46+
"jsx-a11y/no-autofocus": "warn",
47+
"no-nested-ternary": "warn",
48+
"jsdoc/require-param": "warn",
49+
"jsdoc/require-returns-description": "warn",
50+
"jsdoc/require-returns-type": "warn"
51+
}
52+
}

.github/workflows/build-dev-artifacts.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,11 @@ jobs:
3737
- name: Create zip
3838
run: |
3939
npm ci
40-
npm run build
40+
npm run build
41+
CURRENT_VERSION=$(node -p -e "require('./package.json').version")
42+
COMMIT_HASH=$(git rev-parse --short HEAD)
43+
DEV_VERSION="${CURRENT_VERSION}-dev.${COMMIT_HASH}"
44+
npm run grunt version::${DEV_VERSION}
4145
npm run dist
4246
- name: Retrieve branch name
4347
id: retrieve-branch-name

.github/workflows/test-lint-js.yml

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,27 @@
1-
name: NPM Tests
1+
name: Check JS files and build
22
concurrency:
33
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.ref }}
44
cancel-in-progress: true
55
on:
66
push:
77
branches-ignore:
8-
- 'master'
9-
- 'dependabot/**'
8+
- "master"
9+
- "dependabot/**"
1010

1111
jobs:
1212
npm:
1313
runs-on: ubuntu-latest
14-
env:
15-
CYPRESS_INSTALL_BINARY: 0
16-
strategy:
17-
matrix:
18-
node-version: [18.x]
1914
steps:
2015
- name: Checkout source code
21-
uses: actions/checkout@v2
16+
uses: actions/checkout@v4
2217
- name: Setup node
23-
uses: actions/setup-node@v1
18+
uses: actions/setup-node@v4
2419
with:
25-
node-version: ${{ matrix.node-version }}
20+
node-version: "18"
21+
cache: "npm"
2622
- name: Install Dependencies
2723
run: npm install
2824
- name: Run JS check
29-
run: npm run lint:js || true # Remove `|| true` when working on https://github.com/Codeinwp/feedzy-rss-feeds/issues/948
30-
- name: Build source
25+
run: npm run lint:js
26+
- name: Check if we can build the project
3127
run: npm run build

.github/workflows/test-php.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ jobs:
5656
tools: phpunit-polyfills
5757
- name: Checkout source code
5858
uses: actions/checkout@v2
59+
- name: Install Subversion
60+
run: sudo apt-get update && sudo apt-get install -y subversion
5961
- name: Install WordPress Test Suite
6062
run: |
6163
bash bin/install-wp-tests.sh wordpress_test root root 127.0.0.1:${{ job.services.mysql.ports['3306'] }}

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,6 @@ cypress/fixtures
1212
cypress.env.json
1313
.phpunit.result.cache
1414
js/build
15+
/build
1516
artifacts
17+
.DS_Store

.wp-env.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
{
22
"core": null,
33
"plugins": [ "." ],
4+
"lifecycleScripts": {
5+
"afterStart": "wp-env run tests-cli wp option update feedzy_legacyv5 1"
6+
7+
},
48
"env": {
59
"tests": {
610
"config": {

bin/cli-setup.sh

Lines changed: 0 additions & 22 deletions
This file was deleted.

bin/mysql/init-db.sql

Lines changed: 0 additions & 1 deletion
This file was deleted.

bin/run-e2e-tests-default.sh

Lines changed: 0 additions & 5 deletions
This file was deleted.

bin/run-e2e-tests-gutenberg.sh

Lines changed: 0 additions & 2 deletions
This file was deleted.

bin/wp-down.sh

Lines changed: 0 additions & 3 deletions
This file was deleted.

bin/wp-init.sh

Lines changed: 0 additions & 13 deletions
This file was deleted.

composer.json

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,22 +30,24 @@
3030
},
3131
"scripts": {
3232
"format": "phpcbf --standard=phpcs.xml --report-summary --report-source",
33-
"lint": "phpcs --standard=phpcs.xml"
33+
"lint": "phpcs --standard=phpcs.xml",
34+
"test": "phpunit"
3435
},
3536
"minimum-stability": "dev",
3637
"prefer-stable": true,
3738
"config": {
3839
"optimize-autoloader": true,
3940
"platform": {
40-
"php": "5.6"
41+
"php": "7.2"
4142
},
4243
"allow-plugins": {
4344
"dealerdirect/phpcodesniffer-composer-installer": true
4445
}
4546
},
4647
"require-dev": {
47-
"wp-coding-standards/wpcs": "^2.3",
48+
"wp-coding-standards/wpcs": "^3.1",
4849
"dealerdirect/phpcodesniffer-composer-installer": "^1.0.0",
49-
"phpcompatibility/phpcompatibility-wp": "*"
50+
"phpcompatibility/phpcompatibility-wp": "^2.1",
51+
"yoast/phpunit-polyfills": "^3.0"
5052
}
5153
}

0 commit comments

Comments
 (0)