From 42cd30ce0ba628cb9062957d8d5bbfabfb5ea9b4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Jun 2026 14:29:49 +0000 Subject: [PATCH 1/2] Initial plan From c9ddae4b5990842d0959473f69838a2ee901083a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 9 Jun 2026 14:46:52 +0000 Subject: [PATCH 2/2] Prepare WordPress.org metadata and licensing for plugin submission --- LICENSE | 31 ++++++++--------- README.md | 6 ++-- readme.txt | 74 +++++++++++++++++++++++++++++++++++++++++ wp-puller/LICENSE | 31 ++++++++--------- wp-puller/wp-puller.php | 8 ++--- 5 files changed, 109 insertions(+), 41 deletions(-) create mode 100644 readme.txt diff --git a/LICENSE b/LICENSE index 78692b2..8bb9dc7 100644 --- a/LICENSE +++ b/LICENSE @@ -1,21 +1,18 @@ -MIT License +GNU GENERAL PUBLIC LICENSE +Version 2, June 1991 -Copyright (c) 2025 WP Puller Contributors +Copyright (C) 2025 WP Puller Contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +You should have received a copy of the GNU General Public License +along with this program; if not, see +https://www.gnu.org/licenses/gpl-2.0.html diff --git a/README.md b/README.md index 15b2e69..d62b2e7 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Auto-update WordPress themes from GitHub. Free and open source. [![WordPress 5.0+](https://img.shields.io/badge/WordPress-5.0%2B-0073aa.svg)](https://wordpress.org/) [![PHP 7.4+](https://img.shields.io/badge/PHP-7.4%2B-777bb4.svg)](https://php.net/) -[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) +[![License: GPLv2%2B](https://img.shields.io/badge/License-GPLv2%2B-blue.svg)](LICENSE) --- @@ -117,7 +117,7 @@ The theme needs a valid `style.css` with a `Theme Name` header. ## FAQ **Is this actually free?** -Yes. MIT license, no premium tier, no feature gates. +Yes. GPLv2-or-later license, no premium tier, no feature gates. **How does it compare to WP Pusher?** Same core idea—deploy WordPress themes from GitHub. WP Puller is free and open source. WP Pusher has more features (plugins, GitLab, Bitbucket) but costs money. @@ -177,4 +177,4 @@ Issues and PRs welcome. Fork it, make changes, submit a PR. ## License -MIT. Do whatever you want with it. +GPLv2 or later. diff --git a/readme.txt b/readme.txt new file mode 100644 index 0000000..bdd2fdd --- /dev/null +++ b/readme.txt @@ -0,0 +1,74 @@ +=== WP Puller === +Contributors: cnbrkdmrci +Tags: github, deployment, theme, updater, webhook +Requires at least: 5.0 +Tested up to: 7.0 +Requires PHP: 7.4 +Stable tag: 1.0.8 +License: GPLv2 or later +License URI: https://www.gnu.org/licenses/gpl-2.0.html + +Automatically update WordPress themes from GitHub with webhook-based deployments. + +== Description == + +WP Puller connects your WordPress theme to a GitHub repository so pushes can be deployed quickly from the WordPress admin. + +Features include: + +* Webhook-based updates from GitHub push events. +* Public and private repository support. +* Automatic backups before each update. +* Branch and subdirectory deployment support. + += External services = + +This plugin uses third-party services to perform its core functionality: + +* `https://api.github.com` (GitHub API) + * Purpose: Reads repository metadata and downloads update zipballs for the configured repository. + * Data sent: Repository owner/name, selected branch/tag, and (for private repositories) the configured GitHub token in an authorization header. + * Triggered when: Testing repository connection, checking for updates, and downloading updates. + * Service terms/privacy: https://docs.github.com/en/site-policy/privacy-policies/github-general-privacy-statement + +* `https://www.cloudflare.com/ips-v4` and `https://www.cloudflare.com/ips-v6` + * Purpose: Refreshes trusted Cloudflare proxy IP ranges used for webhook source validation, with bundled ranges as fallback. + * Data sent: None beyond a standard outbound HTTP GET request from your server. + * Triggered when: The cached trusted-proxy ranges expire and the plugin refreshes them. + * Service terms/privacy: https://www.cloudflare.com/privacypolicy/ + +== Installation == + +1. In WordPress admin, go to Plugins > Add New > Upload Plugin. +2. Upload the plugin zip and activate **WP Puller**. +3. Open **WP Puller** in the admin menu and enter your GitHub repository URL. +4. Configure optional branch/path settings and save. +5. (Optional) Add the provided webhook URL and secret in your GitHub repository settings for automatic push deployments. + +== Frequently Asked Questions == + += Does WP Puller support private repositories? = + +Yes. Add a GitHub Personal Access Token with repository read access in plugin settings. + += What happens if an update fails? = + +WP Puller creates backups before updates so you can restore a previous version. + += Can I update plugins with WP Puller? = + +Not yet. WP Puller currently targets WordPress themes. + +== Screenshots == + +1. Plugin settings screen with repository configuration. +2. Connected status and manual update controls. +3. Backup and restore panel. + +== Changelog == + += 1.0.8 = + +* Current stable release. +* Added Cloudflare trusted-proxy range refresh with bundled fallback ranges. +* Security and hardening improvements for update and webhook paths. diff --git a/wp-puller/LICENSE b/wp-puller/LICENSE index 78692b2..8bb9dc7 100644 --- a/wp-puller/LICENSE +++ b/wp-puller/LICENSE @@ -1,21 +1,18 @@ -MIT License +GNU GENERAL PUBLIC LICENSE +Version 2, June 1991 -Copyright (c) 2025 WP Puller Contributors +Copyright (C) 2025 WP Puller Contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +You should have received a copy of the GNU General Public License +along with this program; if not, see +https://www.gnu.org/licenses/gpl-2.0.html diff --git a/wp-puller/wp-puller.php b/wp-puller/wp-puller.php index a395f7c..aa65ad3 100644 --- a/wp-puller/wp-puller.php +++ b/wp-puller/wp-puller.php @@ -6,10 +6,10 @@ * Version: 1.0.8 * Requires at least: 5.0 * Requires PHP: 7.4 - * Author: Developer - * Author URI: https://github.com/developer - * License: MIT - * License URI: https://opensource.org/licenses/MIT + * Author: Codician Team + * Author URI: https://github.com/codician-team + * License: GPLv2 or later + * License URI: https://www.gnu.org/licenses/gpl-2.0.html * Text Domain: wp-puller * Domain Path: /languages */