Historique de versions de MOC Source - 3 versions
MOC Source par moc-source
Historique de versions de MOC Source - 3 versions
Attention aux anciennes versions ! Elles sont affichées seulement à des fins de test et de référence.Vous devriez toujours utiliser la dernière version d’un module complémentaire.
Dernière version
Version 0.4.18
Publié le 19 juil. 2026 - 119,1 KoFonctionne avec firefox 142.0 et versions supérieures- Fixed (actual root cause): every Wanted List / Cart detail page has been permanently unable to load PAB prices since v0.4.17. That release's Project-detail listener-stacking fix accidentally also touched
attachDetailListeners(a completely unrelated function used by all list/cart detail pages), converting a workingcontent.addEventListener("click", ...)call intoaddClick(...)— butaddClickis only defined as a local helper insiderenderProjectDetail, not here. Calling it threwReferenceError: addClick is not definedon every single page visit, which abortedrenderDetailView()— and since that call happens beforerenderListDetail's PAB-price fetch loop, the fetch loop never ran at all, leaving every row frozen at its initial "…" placeholder. (Confirmed viagit log -pshowing the accidental find-replace, and by reproducing the exact call chain in Node to verify the fetch never fires once the throw happens.) GaveattachDetailListenersits own cleanup-trackedaddListener/addClickhelpers (same pattern asrenderProjectDetail's, since this function has the identical repeated-call-on-persistent-container structure) and converted its other two directcontent.addEventListenercalls to use them too, so they stop stacking across re-renders as well. - Hardened (real but secondary):
renderListDetailand the Project pool section each fetch every part's PAB price in parallel viaPromise.all, which fails the whole batch if even onechrome.runtime.sendMessagerejects (e.g. a transient MV3 message-channel hiccup). Switched toPromise.allSettledso one bad fetch can't block the rest of a page's prices from rendering. This wasn't the cause of the "stuck at …" reports above (theaddClickcrash was), but it's a legitimate robustness gap worth closing regardless. - Changed: standardized price rounding across the extension. User-facing prices now always show exactly 2 decimals — the BrickLink-page "below PAB"/"BL avg" caption dropped from 3 decimals, and the Cart Jigsaw SPA's Store Price columns (which previously showed BrickLink's raw scraped text verbatim, e.g.
$0.0812US) now parse and format to$X.XX. Cart cost calculations still sum true, unrounded per-item prices as before (no change there — they already did this correctly) but the final "what you'll pay" totals (LEGO cart total, BrickLink cart total incl. shipping, Project Grand Total) now round up to the next cent instead of to the nearest cent, via a newceilToCents()helper, so a total is never shown lower than what the real sum comes to. Per-channel subtotals and savings/delta figures (PAB Savings, "switch to save ~$X", Store Savings Scanner) are unaffected — still plain nearest-cent display, since they're informational breakdowns/estimates, not a standalone amount owed. Also widenedcontent.js'sscrapeRowPrice()regex, which previously truncated BrickLink's own displayed price to exactly 2 decimals before using it
Code source publié sous licence GNU Affero General Public License v3.0 uniquement
- Fixed (actual root cause): every Wanted List / Cart detail page has been permanently unable to load PAB prices since v0.4.17. That release's Project-detail listener-stacking fix accidentally also touched
Anciennes versions
Version 0.4.17
Publié le 17 juil. 2026 - 116,46 KoFonctionne avec firefox 142.0 et versions supérieuresFixed: On the Project page, clicking things (dialogs, saving Scratch Space) could sometimes require multiple clicks or show duplicate popups after using the page for a while in one session. Now works correctly every time.
Fixed: Projects now correctly account for parts you already have. If you want 4 of a part and already have 2, the Project pool now only counts 2 as still needed — previously it ignored "Have" and could try to source more than you actually needed.Code source publié sous licence GNU Affero General Public License v3.0 uniquement
Version 0.4.13
Publié le 14 juil. 2026 - 115,62 KoFonctionne avec firefox 142.0 et versions supérieuresv0.4.13
Fixed unescaped part/list names in a handful of DOM-rendering locations (BrickLink wanted-list picker, cart-update modal, and the Projects pool/scratch-space row renderers) — names now consistently pass through HTML-escaping before being inserted into the page, matching the pattern already used everywhere else in the codebase.
Added browser_specific_settings.gecko.data_collection_permissions per Mozilla's new disclosure requirement (declared: websiteContent — part/color identifiers derived from BrickLink page content, sent to our own API for price lookups; nothing else is collected or transmitted).
First submission built from a shared Chrome/Firefox source tree — functionality matches the existing Chrome Web Store listing (ID hoglacgnlglnbpeffbdndnhaokiojigh), no Firefox-specific behavior differences.Code source publié sous licence GNU Affero General Public License v3.0 uniquement