Search API Pantheon 8.5.0
--------------------------------------------------

### What's New

- Added support for Apache Solr 9 (9.10.1)
- Added compatibility for PHP 8.5

### Bug Fixes

- Resolved SSL and Solr connection issues with Lando

### Improvements

- Increased schema upload timeout to prevent failures on large config-sets
- Added automatic retry on temporary server errors during schema uploads

See README.md for installation and UPGRADE.md for upgrade instructions:
- https://git.drupalcode.org/project/search_api_pantheon/-/blob/8.5.x/README.md
- https://git.drupalcode.org/project/search_api_pantheon/-/blob/8.5.x/UPGRADE.md

Search API Pantheon 8.5.0-beta1
--------------------------------------------------

### What's New

- Added support for Apache Solr 9
- search_api_solr module dependency updated from ^4.2 to ^4.3

See README.md for installation and UPGRADE.md for upgrade instructions:
- https://git.drupalcode.org/project/search_api_pantheon/-/blob/8.5.x/README.md
- https://git.drupalcode.org/project/search_api_pantheon/-/blob/8.5.x/UPGRADE.md

Search API Pantheon 8.4.1
--------------------------------------------------

This is a patch release for 8.4.0. If upgrading from 8.2.x or 8.3.x,
please review the 8.4.0 section below for major architectural changes and breaking
changes. All features, changes and requirements from 8.4.0 still apply.

### What's Changed

- The search_api_pantheon_admin submodule (removed in 8.4.0) has been restored
  as an empty, obsolete module to ensure smooth upgrades from 8.3.x.
  An update hook will automatically uninstall it if not manually uninstalled
  beforehand.

### Upgrade Instructions

1. Back up database

2. Uninstall search_api_pantheon_admin submodule (if installed):
   drush pm:uninstall search_api_pantheon_admin

3. Update the module:
   composer require 'drupal/search_api_pantheon:^8.4'

4. (Optional) Skip search server migration (available since 8.3.x):
   To keep using 'pantheon_solr8' search server, add the following to settings.php
   before running database updates:
   $settings['default_search_server'] = 'pantheon_solr8';

5. Run database updates:
   drush updb

6. Export configuration:
   drush cex

7. Clear cache:
   drush cr

8. Reindex content (Required only if search server was migrated):
   Admin UI: admin/config/search/search-api → select index → "Index now"
   Drush: drush search-api:index <INDEX_NAME>

9. Update custom code (if applicable):
   Update any custom code referencing 'pantheon_solr8' to use 'pantheon_search'

10. Test search functionality thoroughly before deploying to live site

Please read README.md before proceeding with installation or upgrade:
https://git.drupalcode.org/project/search_api_pantheon/-/blob/8.4.x/README.md

Search API Pantheon 8.4.0
--------------------------------------------------

This is a major cleanup release with significant architectural improvements
and enhanced developer experience.

### What's Changed

- License updated from MIT to GNU General Public License v2.0 or later (GPL-2.0+)
- Major code refactoring resulting in a 60% reduction in code length.
- Simplified service architecture for better maintainability.
- Removed unnecessary overrides for Guzzle, Endpoint, and the Solarium client.

**Dependency Updates:**
- Removed direct dependencies on guzzlehttp/guzzle, symfony/finder, symfony/yaml,
  and other packages now provided transitively through search_api_solr
  (these dependencies are still available but come through search_api_solr instead).
  **Impact:** No action required unless custom code directly uses these services
- Removed kint-php/kint dependency.

**Feature Changes:**
- Removed the search_api_pantheon_admin submodule. Its sole functionality
  (posting the schema) is already provided by the `drush search-api-pantheon:postSchema` command.
  - Before updating the module to 8.4.0, uninstall the search_api_pantheon_admin submodule by running:
    `drush pm:uninstall search_api_pantheon_admin`
- Improved local development experience. Server connector configuration fields
  are now editable in local environments and automatically overridden when
  deployed to Pantheon.
- Drush commands automatically use the first enabled server with the Pantheon
  connector. The server_id argument is no longer needed or accepted.
  - For more details, see the diagnostic commands section in README.md:
     https://git.drupalcode.org/project/search_api_pantheon/-/blob/8.4.x/README.md#diagnostic-commands

### Upgrade Instructions

1. Back up database

2. Uninstall search_api_pantheon_admin submodule (if installed):
   drush pm:uninstall search_api_pantheon_admin

3. Update the module:
   composer require 'drupal/search_api_pantheon:^8.4'

4. (Optional) Skip search server migration (available since 8.3.x):
   To keep using 'pantheon_solr8' search server, add the following to settings.php
   before running database updates:
   $settings['default_search_server'] = 'pantheon_solr8';

5. Run database updates:
   drush updb

6. Clear cache:
   drush cr

7. Reindex content (Required only if search server was migrated):
   Admin UI: admin/config/search/search-api → select index → "Index now"
   Drush: drush search-api:index <INDEX_NAME>

8. Update custom code (if applicable):
   Update any custom code referencing 'pantheon_solr8' to use 'pantheon_search'

9. Export configuration:
   drush cex

10. Test search functionality thoroughly before deploying to live site

Please read README.md before proceeding with installation or upgrade:
https://git.drupalcode.org/project/search_api_pantheon/-/blob/8.4.x/README.md

Search API Pantheon 8.3.4
--------------------------------------------------
This release addresses issues from version 8.3.3 and includes bug fix and improvements to Drush commands provided by the search_api_pantheon module:

### Drush Commands

drush search-api-pantheon:postSchema
Fixed  error where the command failed when run without a server id argument.

drush search-api-pantheon:force-cleanup
When no server argument is provided, the command previously defaulted to pantheon_search.
It now supports the pantheon_solr8 server if it is set as the default in settings.php.
$settings['default_search_server'] = 'pantheon_solr8';

drush search-api-pantheon:test-index-and-query
When no server argument is provided, the command previously defaulted to pantheon_search.
It now supports the pantheon_solr8 server if it is set as the default in settings.php.
$settings['default_search_server'] = 'pantheon_solr8';

Search API Pantheon 8.3.3
--------------------------------------------------
This release includes an important bug fix that simplifies the transition of search configurations when upgrading from earlier versions to 8.3.x.

### What's Changed

Bug Fix #3505065: This fix significantly improves the upgrade experience from previous versions to 8.3.x.
- In version 8.3.0, the Pantheon Search server id was updated to 'pantheon_search',and the 'Basic Content Index'  configuration previously found in the config/optional folder has been replaced with  new 'Primary' index in  config/install folder.
- This release now provides a smoother migration of the  search server id from 'pantheon_solr8' to 'pantheon_search' and  all indexes previously linked to 'pantheon_solr8' will be updated to use the new 'pantheon_search' server.
- If you're using the default content_index from earlier versions of the module, no changes are required. It will continue to work as expected.

### Optional: Skip Search Server Migration
If you prefer to keep using the old server with  id 'pantheon_solr8'  and skip the migration, add the following line to your settings.php file before running database updates:

$settings['default_search_server'] = 'pantheon_solr8';

This will prevent the migration of 'pantheon_solr8' to 'pantheon_search'.

### Upgrade Instructions

If you're upgrading from version 8.2.x or earlier to 8.3.x, you must run database updates to complete the migration.
Run 'drush updb' in your terminal or visit /update.php in your browser.
Unless you elect to skip the search server migration (see above), running the database update will:
- Update the search server id from 'pantheon_solr8' to 'pantheon_search'.
- Migrate all existing search indexes from the old 'pantheon_solr8' server to the new 'pantheon_search' server.

### Post-Update Steps:

- After running the database updates, your search server will be updated, which causes previously indexed items to be flagged(queued) for reindexing.
Please re-index using either the Admin UI or Drush.

Admin UI:
Go to admin/config/search/search-api → select your index → Index Status tab → click "Index now"

Drush:
drush search-api:index <INDEX_NAME>  // Replace  <INDEX_NAME>  with the  machine  name of the  index

- After re-indexing is complete and you've verified your search setup, please export the configuration changes using the command:
'drush cex'

Search API Pantheon 8.3.0
--------------------------------------------------
- Compatible with Pantheon Search (Solr 8)
- Compatible with Drupal 11.x
- Versions of Drupal less than 10 are not supported.
- Versions of PHP less than 8.1 are not supported

Search API Pantheon 8.x-8.x-alpha1
--------------------------------------------------
- Compatible with Pantheon Search (Solr 8)
- Compatible with Drupal 9.x

Search API Pantheon 8.x-1.x-alpha2
--------------------------------------------------
- Issue #2818001 by stevector: Refactor for SolrConnector Plugin
- Issue #2761831 by stevector: Update .gitattributes file

Search API Pantheon 8.x-1.x-alpha1
--------------------------------------------------
- Issue #2821769 by stevector: Initial release. Compatible with Search API Solr alpha6.
