Skip to content

Commit 93aea4c

Browse files
committed
Release
Version 2.1.0 with security improvements and code refactoring
1 parent 0c3bae1 commit 93aea4c

8 files changed

Lines changed: 15 additions & 11 deletions

File tree

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
1+
# Test and build artifacts
12
/vendor/
23

4+
# Local private files
5+
/.private/
6+
37
# PHP tooling caches
48
/.phpunit.cache/
59
/.phpunit.result.cache

CHANGELOG.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changelog for EngineScript Site Exporter
22

3-
## Unreleased
3+
## 2.1.0 - May 14, 2026
44

55
### Security
66

@@ -45,7 +45,7 @@
4545
- **DirectoryIterator**: Replaced `scandir()` with `DirectoryIterator` in `sse_bulk_cleanup_exports_handler()` for more efficient file iteration.
4646
- **PHPStan Level Increase**: Increased PHPStan analysis level from 5 to 6, added `includes/` directory to scan paths.
4747
- **Inline CSS Removal**: Extracted 7 inline `style` attributes from admin page and success notice into dedicated `css/admin.css` file with semantic CSS classes (`sse-section-spacing`, `sse-form-table`, `sse-warning-text`, `sse-action-button`).
48-
- **Inline JS Removal**: Extracted inline `onclick` confirmation dialog into dedicated `js/admin.js` file with `sse-confirm-delete` class-based event listener.
48+
- **Inline JS Removal**: Extracted inline `onclick` confirmation dialog into dedicated `js/admin.js` file with a `sse-confirm-delete` form submit listener.
4949
- **Asset Enqueueing**: Added `sse_enqueue_admin_assets()` function hooked to `admin_enqueue_scripts` with page-slug check (`tools_page_enginescript-site-exporter`) to load CSS/JS only on the plugin's admin page. Uses `wp_localize_script()` for i18n of JavaScript confirmation string.
5050
- **EngineScript Documentation**: Clarified that the plugin does not detect EngineScript servers; it produces an EngineScript-compatible archive format usable from any supported WordPress server.
5151
- **Copilot Instructions Revision**: Rewrote `.github/copilot-instructions.md` to remove irrelevant references (WooCommerce, package.json, admin.php), consolidate redundant security subsections, add plugin-specific naming conventions (`sse_`, `SSE_`), and fix version file list.

GEMINI.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ This is a secure WordPress site export plugin that creates complete site backups
77
## Plugin Details
88

99
- **Name:** EngineScript Site Exporter
10-
- **Version:** 2.0.0
10+
- **Version:** 2.1.0
1111
- **WordPress Compatibility:** 6.8+
1212
- **PHP Compatibility:** 8.2+
1313
- **License:** GPL-3.0-or-later

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
[![PHP Compatible](https://img.shields.io/badge/PHP-8.2%2B-purple.svg?logo=php)](https://www.php.net/)
77

88
## Current Version
9-
[![Version](https://img.shields.io/badge/Version-2.0.0-orange.svg?logo=github)](https://github.com/EngineScript/enginescript-site-exporter/releases/latest/download/enginescript-site-exporter-2.0.0.zip)
9+
[![Version](https://img.shields.io/badge/Version-2.1.0-orange.svg?logo=github)](https://github.com/EngineScript/enginescript-site-exporter/releases/latest/download/enginescript-site-exporter-2.1.0.zip)
1010

1111
## Description
1212
A WordPress plugin that exports your entire site, including files and the database, as a secure, downloadable EngineScript-compatible ZIP archive.

enginescript-site-exporter.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
/**
33
* Plugin Name: EngineScript Site Exporter
44
* Description: Exports the site files and the database as an EngineScript-compatible site archive.
5-
* Version: 2.0.0
5+
* Version: 2.1.0
66
* Author: EngineScript
77
* Requires at least: 6.8
88
* Tested up to: 6.9
@@ -22,7 +22,7 @@
2222

2323
// Define plugin version.
2424
if ( ! defined( 'ES_SITE_EXPORTER_VERSION' ) ) {
25-
define( 'ES_SITE_EXPORTER_VERSION', '2.0.0' );
25+
define( 'ES_SITE_EXPORTER_VERSION', '2.1.0' );
2626
}
2727

2828
// Define allowed file extensions for export operations.

includes/admin-page.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,11 +147,11 @@ function sse_render_export_success_notice( array $zip_result ): void {
147147
<a href="<?php echo esc_url( $download_url ); ?>" class="button sse-action-button">
148148
<?php esc_html_e( 'Download Export File', 'enginescript-site-exporter' ); ?>
149149
</a>
150-
<form method="post" action="<?php echo esc_url( admin_url( 'admin-post.php' ) ); ?>" class="sse-inline-form">
150+
<form method="post" action="<?php echo esc_url( admin_url( 'admin-post.php' ) ); ?>" class="sse-inline-form sse-confirm-delete">
151151
<input type="hidden" name="action" value="sse_delete_export">
152152
<input type="hidden" name="file" value="<?php echo esc_attr( $zip_result['filename'] ); ?>">
153153
<?php wp_nonce_field( 'sse_delete_export_' . $zip_result['filename'] ); ?>
154-
<button type="submit" class="button button-secondary sse-action-button sse-confirm-delete">
154+
<button type="submit" class="button button-secondary sse-action-button">
155155
<?php esc_html_e( 'Delete Export File', 'enginescript-site-exporter' ); ?>
156156
</button>
157157
</form>

languages/enginescript-site-exporter.pot

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# This file is distributed under the GPL-3.0-or-later.
33
msgid ""
44
msgstr ""
5-
"Project-Id-Version: EngineScript Site Exporter 2.0.0\n"
5+
"Project-Id-Version: EngineScript Site Exporter 2.1.0\n"
66
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/enginescript-site-exporter\n"
77
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
88
"Language-Team: LANGUAGE <LL@li.org>\n"

readme.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ Contributors: enginescript
33
Tags: backup, export, migration, site export, database export
44
Requires at least: 6.8
55
Tested up to: 6.9
6-
Stable tag: 2.0.0
6+
Stable tag: 2.1.0
77
Requires PHP: 8.2
88
License: GPLv3 or later
99
License URI: https://www.gnu.org/licenses/gpl-3.0.html
@@ -97,7 +97,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
9797

9898
== Changelog ==
9999

100-
= Unreleased =
100+
= 2.1.0 =
101101
* **Security**: Added `.htaccess` file to export directory with `Deny from all` rules to prevent direct HTTP access to export files
102102
* **Security**: Removed usage of `_get_cron_array()` private WordPress API from cron failure diagnostics
103103
* **Security**: Replaced `glob()` with `scandir()` in bulk cleanup handler for cross-platform compatibility

0 commit comments

Comments
 (0)