3.0.0
Note that this is a major release of ClassifAI that restructures most of the codebase and will have some breaking changes. If you're extending ClassifAI in any way, please ensure you fully test those integrations prior to running this update on production. For more details on what is changing, see the migration guide.
Due to this restructuring, settings are now stored slightly differently. For any existing ClassifAI users, these settings should automatically be migrated but you'll want to verify all of your settings and resave each of them in order to ensure they are set properly.
This release also updates the Azure AI Vision API to v3.2 from v3.0. We recommend changing your threshold for the Descriptive Text Generator Feature to be around 55%, down from the previous recommendation of 75%.
Added
- New Moderation Feature that utilizes the OpenAI Moderation API to moderate comments (props @kirtangajjar, @dkotter, @Sidsector9 via #531).
- Added the option to use Google's Gemini API as a Provider for the Title Generation, Excerpt Generation and Content Resizing Features (props @iamdharmesh, @dkotter via #700).
- Added the option to use Azure OpenAI as a Provider for the Title Generation, Excerpt Generation and Content Resizing Features (props @dkotter, @jeffpaul, @iamdharmesh via #716).
- Role and user-based access control for all Features (props @iamdharmesh, @Sidsector9 via #635).
- Ability to preview which terms will be added before they get added when using the Embeddings provider (props @dkotter, @iamdharmesh via #709).
- Show error message if generating excerpts or titles fails in the Classic Editor (props @dkotter, @faisal-alvi via #688).
- Tool to automatically migrate settings from the old settings structure to the new feature-first settings structure (props @Sidsector9, @iamdharmesh, @qasumitbagthariya, @dkotter via #711).
- Migration guide for the feature-first refactoring (props @iamdharmesh, @dkotter via #726).
- Repo Automator GitHub Action to automate repo operations (props @iamdharmesh, @dkotter via #681).
Changed
- Major refactoring of the plugin to a feature-first architecture (props @Sidsector9, @dkotter via #611).
- Update the Azure AI Vision Image Analyze API from v3.0 to v3.2 and the Azure AI Vision Smart Cropping API from v3.1 to v3.2. Note that we recommend lowering the threshold values for the Descriptive Text Generator Feature to 55% for best results (props @kmgalanakis, @dkotter, @sksaju, @iamdharmesh via #559).
- Update from using DALL·E 2 to using DALL·E 3 in our Image Generation Feature (props @dkotter, @jeffpaul, @iamdharmesh via #717).
- Refactor ClassifAI onboarding to work with the new feature-first refactoring (props @iamdharmesh, @Sidsector9 via #642).
- Ensure the Classification functionality works the same for all Providers (props @dkotter, @iamdharmesh via #709).
- Introduce a filter to add new arguments to the Image Generation REST route, instead of registering that route twice (props @iamdharmesh, @dkotter via #727).
- If on a multisite install, when handling user access based on role, if a Super Admin does not have a specific role on a site, treat that user as an administrator (props @dkotter, @jeffpaul, @gsarig, @iamdharmesh via #689).
- Remove the "Enable role-based access" and "Enable user-based access" settings options and instead set those to be enabled by default (props @iamdharmesh, @dkotter, @jeffpaul via #692).
- Update minimum node version to 20 (props @Sidsector9, @dkotter via #722).
- Updated E2E tests to work with the new feature-first refactoring (props @Sidsector9, @dkotter via #653).
Fixed
- Ensure the classification popup works after feature-first refactoring (props @faisal-alvi, @dkotter, @Sidsector9 via #634).
- Ensure we only run image updates once (props @dkotter, @Sidsector9, @sksaju via #677).
- Ensure the Classification preview works as expected after feature-first refactoring (props @dkotter, @QAharshalkadu, @Sidsector9 via #679).
- Ensure all
WP_CLI
commands work after the feature-first refactoring (props @Sidsector9, @dkotter via #682). - Ensure the jQuery UI Dialog CSS is loaded properly (props @dkotter, @faisal-alvi via #687).
- Ensure the classification button has proper bottom spacing (props @dkotter, @QAharshalkadu, @faisal-alvi via #694).
- Load the dashicon font when the Text to Speech block is used to ensure icons display (props @dkotter, @QAharshalkadu, @iamdharmesh via #695).
- Ensure the Text to Speech block is rendered for non-logged in users (props @dkotter, @QAharshalkadu, @iamdharmesh via #695).
- Ensure the IBM Watson NLU credentials toggle link works properly in the ClassifAI onboarding (props @iamdharmesh, @dkotter via #697).
- Ensure the connection status shows properly in the ClassifAI onboarding (props @Sidsector9, @QAharshalkadu, @dkotter via #702).
- Ensure the "Extract text from PDF" row action works properly in the media list table view (props @iamdharmesh, @qasumitbagthariya, @dkotter via #706).
- Fix fatal error if both the Classification Feature and Moderation Features are active (props @dkotter, @QAharshalkadu, @iamdharmesh via #709).
- Ensure the stand-alone Generate Image page works if the Media Library is loaded in list mode (props @dkotter, @qasumitbagthariya, @Sidsector9 via #712).
Removed
- Subscriber from the list of allowed roles (props @dkotter, @ankitguptaindia, @Sidsector9 via #690).
AccessControl
class as it is no longer in use after the feature-first refactoring (props @iamdharmesh, @dkotter via #680).- Type declaration from the
attachment_is_pdf
parameter (props @iamdharmesh, @peterwilsoncc, @dkotter via #719). - Eliminate all dead code that is no longer needed after the feature-first refactoring (props @Sidsector9, @dkotter via #678).
Deprecated
- Show deprecation notice for the Azure AI Personalizer provider, as this will be removed in a coming release (props @dkotter, @jeffpaul, @iamdharmesh via #698).
Security
- Protect against potential prompt injection when using OpenAI's ChatGPT (props @iamdharmesh, @dkotter via #683).
- Bump
ip
from 1.1.8 to 1.1.9 (props @dependabot[bot], @iamdharmesh via #721).
New Contributors
- @kirtangajjar made their first contribution in #531
- @sksaju made their first contribution in #559
- @QAharshalkadu made their first contribution in #679
- @gsarig made their first contribution in #689
- @qasumitbagthariya made their first contribution in #706
Full Changelog: 2.5.1...3.0.0
View closed items in the milestone.