PluginProbe
ووسلام – همگام سازی ووکامرس و باسلام / 1.1.26
ووسلام – همگام سازی ووکامرس و باسلام v1.1.26
1.1.26 1.10.27 1.10.24 1.10.25 1.10.23 1.10.22 1.10.21 1.10.19 1.10.20 1.10.18 1.10.17 1.10.15 1.10.14 1.10.13 1.10.12 1.10.10 1.10.9 1.10.8 1.10.7 1.10.6 1.10.5 1.10.4 1.10.3 1.10.2 1.10.1 All 60 releases
← All changes | CHANGELOG.md +239 -0 1.10.6 → 1.1.26 View file →
@@ -1,8 +1,247 @@
1 1 # Changelog
2 2
3 3 <details>
4 4
5 +<summary>1.10.26 - 2026-10-01</summary>
6 +
7 +### Added
8 +- Show the Basalam product name as visible order item meta (`نام محصول در باسلام`) on WooCommerce orders, for both mapped products and the "not defined in your site" placeholder product
9 +- Show a clickable link to the Basalam product page (`لینک محصول در باسلام`) as visible order item meta
10 +
11 +</details>
12 +
13 +<details>
14 +
15 +<summary>1.10.25 - 2026-09-30</summary>
16 +
17 +### Changed / Improved
18 +- Revoke the stored Basalam vendor authorization on upgrade so every store reconnects and grants the currently required scopes
19 +
20 +### Note
21 +- Existing connections must reauthenticate after updating to this version
22 +
23 +</details>
24 +
25 +<details>
26 +
27 +<summary>1.10.24 - 2026-09-30</summary>
28 +
29 +### Added
30 +- Request the `vendor.product.read` scope when connecting to Basalam
31 +
32 +### Note
33 +- Existing connections must reauthenticate to grant the new product read scope
34 +
35 +</details>
36 +
37 +<details>
38 +
39 +<summary>1.10.23 - 2026-09-28</summary>
40 +
41 +### Added
42 +- Request the `vendor.financial.read` and `vendor.financial.write` scopes when connecting to Basalam
43 +
44 +### Changed / Improved
45 +- Blur and lock the financial management page when a financial API request returns HTTP 403, with a direct button to reconnect to Basalam
46 +
47 +### Note
48 +- Existing connections must reauthenticate to grant the new financial scopes
49 +
50 +</details>
51 +
52 +<details>
53 +
54 +<summary>1.10.22 - 2026-09-27</summary>
55 +
56 +### Added
57 +- Added an optional recurring full product update every 24 or 48 hours, configured beside the product sync control; new and existing stores default to 48 hours and can turn the schedule off
58 +
59 +### Changed / Improved
60 +- Automatic product connection now searches for safe title matches among Basalam products after scanning the vendor catalog
61 +- Aligned the dashboard controls and advanced settings on narrow screens, and centered the add and update product dialogs at matching mobile sizes
62 +
63 +### Fixed
64 +- The product update dialog now reads live queue status when opened and while visible, clearing completed-job messages without a page reload
65 +- Empty-queue probes no longer hold the async dispatch lease, so newly created jobs can start promptly while shutdown dispatch continues to repair the database connection
66 +
67 +</details>
68 +
69 +<details>
70 +
71 +<summary>1.10.21 - 2026-09-17</summary>
72 +
73 +### Fixed
74 +- "All fields" and "price & stock" update modes always send one complete product request with the variants array (without Basalam variation ids), matching earlier major versions; the dedicated variation endpoint is only used in "custom" mode with the variation price/stock fields enabled
75 +- Product updates now recover automatically when WooCommerce contains stale Basalam variation IDs, rebuilding and saving the current variation mapping instead of repeatedly failing with HTTP 404
76 +- Commission lookup now uses Basalam's product-specific commission API for products already connected to Basalam; new or unconnected products continue to use category-based commission lookup, with product commission responses cached during the sync request
77 +
78 +</details>
79 +
80 +<details>
81 +
82 +<summary>1.10.20 - 2026-09-17</summary>
83 +
84 +### Fixed
85 +- Basalam authorization callbacks no longer fail when Redis or Memcached drops the temporary OAuth marker; the single-use authorization proof is now carried in a signed, time-limited HttpOnly cookie
86 +
87 +</details>
88 +
89 +<details>
90 +
91 +<summary>1.10.19 - 2026-09-17</summary>
92 +
93 +### Changed / Improved
94 +- Single-product update jobs now run before bulk and full-update coordinator jobs
95 +
96 +</details>
97 +
98 +<details>
99 +
100 +<summary>1.10.18 - 2026-09-12</summary>
101 +
102 +### Fixed
103 +- Public plugin metadata, help, terms, and privacy links now use the live canonical Hamsalam and Basalam URLs instead of the retired `wp.hamsalam.ir` host
104 +- Product create and update requests now retry once without product or variation SKUs when Basalam rejects a duplicate SKU
105 +
106 +</details>
107 +
108 +<details>
109 +
110 +<summary>1.10.17 - 2026-09-09</summary>
111 +
112 +### Fixed
113 +- Async job dispatch runs during shutdown again, keeping queue probes and loopback requests out of the storefront response path
114 +- The dispatch lease is reserved before checking the queue, preventing concurrent requests from launching duplicate async runners
115 +
116 +</details>
117 +
118 +<details>
119 +
120 +<summary>1.10.16 - 2026-09-08</summary>
121 +
122 +### Fixed
123 +- Installing a newer plugin package now clears the previous version's force-update gate, allowing migrations, hooks, and the background jobs runner to start normally
124 +- Hotfix builds newer than the latest published package are no longer disabled when the version API has not registered them yet
125 +
126 +</details>
127 +
128 +<details>
129 +
130 +<summary>1.10.15 - 2026-09-08</summary>
131 +
132 +### Fixed
133 +- Large product queues no longer spawn overlapping AJAX runners from normal site traffic; one runner now owns the entire processing batch and duplicate workers exit immediately
134 +- Async runner dispatches are leased for 25 seconds instead of one second, preventing PHP worker exhaustion and storefront 503/504 errors during full or quick product updates
135 +- Installing a newer plugin package now clears the previous version's force-update gate, allowing migrations, hooks, and the background jobs runner to start normally
136 +- Hotfix builds newer than the latest published package are no longer disabled when the version API has not registered them yet
137 +
138 +</details>
139 +
140 +<details>
141 +
142 +<summary>1.10.14 - 2026-09-08</summary>
143 +
144 +### Added
145 +- Product SKUs are now sent to Basalam when creating or updating products, and variation SKUs are sent with variant payloads and per-variation updates; a new "کد محصول (SKU)" option controls the field in custom update mode (enabled by default)
146 +
147 +### Fixed
148 +- The async job runner now dispatches from init instead of shutdown, avoiding database "commands out of sync" errors caused by unread result sets left by other shutdown callbacks
149 +
150 +</details>
151 +
152 +<details>
153 +
154 +<summary>1.10.13 - 2026-09-01</summary>
155 +
156 +### Added
157 +- Added a manual vendor-status recheck button to inactive-vendor notices so store owners can immediately restore synchronization after reactivating their Basalam booth
158 +
159 +### Changed / Improved
160 +- Local environments now bypass vendor-status checks and inactive-vendor restrictions; the daily vendor-status cron is also unscheduled locally
161 +- The category detection endpoint now uses API v2.0 while preserving the existing response consumer contract
162 +
163 +</details>
164 +
165 +<details>
166 +
167 +<summary>1.10.12 - 2026-08-29</summary>
168 +
169 +### Fixed
170 +- Restored the AJAX click handlers for product update, archive, restore, and disconnect actions on the WooCommerce product editor
171 +
172 +### Changed / Improved
173 +- The authenticated Woosalam chat widget now loads on every WordPress admin screen while other Woosalam assets remain scoped to their relevant pages
174 +
175 +</details>
176 +
177 +<details>
178 +
179 +<summary>1.10.11 - 2026-08-26</summary>
180 +
181 +### Fixed
182 +- Product media MIME types are now detected from the actual file contents before checking the filename extension
183 +- Non-standard image MIME aliases such as `image/jpg`, `image/pjpeg`, and vendor-specific PNG/BMP values are normalized to the canonical values accepted by Basalam Uploadio
184 +- The media upload request and multipart file transfer now use the same canonical MIME type, preventing valid JPEG images from failing with a `422` unsupported-MIME response
185 +
186 +</details>
187 +
188 +<details>
189 +
190 +<summary>1.10.10 - 2026-08-25</summary>
191 +
192 +### Added
193 +- Added a daily vendor-status check with persistent inactive-duration tracking and automatic recovery when the vendor becomes active again
194 +- Added state-specific admin notices, dashboard badges, disabled controls, and explanatory UI for limited and suspended synchronization modes
195 +
196 +### Changed / Improved
197 +- Vendors inactive for less than 21 days can no longer create products; manual, bulk, queued, and automatic updates are restricted to price and stock
198 +- Vendors inactive for 21 days or longer can no longer create, update, archive, restore, or discount products until the vendor becomes active again
199 +- Product jobs revalidate the vendor policy at execution time so queued work cannot bypass a later status change
200 +- Improved background job dispatch and limited admin assets and notices to relevant Woosalam, product, and order screens
201 +- Aligned the connection-status header, card, and inner synchronization panel across active and inactive states
202 +
203 +</details>
204 +
205 +<details>
206 +
207 +<summary>1.10.9 - 2026-08-16</summary>
208 +
209 +### Fixed
210 +- The ticket reply access form is now shown only after site access is rejected; it stays hidden while access is pending, after approval, and when the status is missing or unknown
211 +
212 +</details>
213 +
214 +<details>
215 +
216 +<summary>1.10.8 - 2026-08-15</summary>
217 +
218 +### Added
219 +- Added independent settings for updating variation prices and variation stock
220 +
221 +### Changed / Improved
222 +- Connected variations are now updated individually through Core v4
223 +- Price-only variation updates send only `primary_price`, while stock-only updates send only `stock`
224 +- Variation price updates work independently from the product price setting
225 +- Custom update mode now requires at least one selected field and shows the plugin error toast without refreshing the page when none is selected
226 +- Full, quick, selected, and automatic updates no longer create jobs or API requests when the custom field selection is empty
227 +- Product admin JavaScript now uses a file-aware cache version so the latest validation behavior is loaded immediately after deployment
228 +
229 +</details>
230 +
231 +<details>
232 +
233 +<summary>1.10.7 - 2026-08-11</summary>
234 +
235 +### Fixed
236 +- Ticket validation and API failures are now shown as admin toasts instead of WordPress `admin-post.php` error pages
237 +- New-ticket submissions now use AJAX, preserving entered text, credentials, and uploaded-image previews when a request fails; if the ticket was created before access storage failed, retrying updates only the access data and does not create a duplicate ticket
238 +- Ticket JavaScript now uses a file-aware cache version so updated validation and submission behavior is loaded immediately after deployment
239 +
240 +</details>
241 +
242 +<details>
243 +
5 244 <summary>1.10.6 - 2026-08-11</summary>
6 245
7 246 ### Fixed
8 247 - Product images in AVIF or another image format unsupported by Basalam are now converted to JPEG before the upload request, preventing the `422` unsupported-MIME error