Drop property_setter.json fixture to stop migrate overwrites#191
Merged
Conversation
frappe/utils/fixtures.py:import_fixtures() loads every .json in apps/<app>/fixtures/ on migrate, regardless of hooks.fixtures. The earlier 430ddd3 removed Property Setter from hooks.fixtures (stopping re-exports) but left this snapshot file on disk, so every bench update still re-applied 781 stale rows — including Purchase Receipt field_order — silently reverting any UI customization made after the last snapshot. User-created Property Setters live in the DB with is_system_generated=0 and persist on their own; no seeding needed. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
calicut_textiles/fixtures/property_setter.json(781 entries, 12,498 lines) — a snapshot file thatbench migratewas re-applying on every deploy, silently overwriting UI customizations (observed: Purchase Receipt field layout kept reverting after updates).430ddd3removed Property Setter fromhooks.fixtures(stopping re-exports) but left the on-disk file. Frappe'simport_fixtures()reads every.jsoninfixtures/on migrate regardless ofhooks.fixtures, so the stale snapshot kept being replayed.is_system_generated=0and persist on their own — no seeding needed.Test plan
bench migraterun with this branch.Purchase Receipt-main-field_order(199 fields) andPurchase Receipt Item-main-field_order(155 fields) unchanged pre vs post-migrate.modifiedtimestamps on those Property Setters unchanged — migrate did not touch them.bench start) boots clean; Purchase Receipt form renders with expected custom layout.bench updates.🤖 Generated with Claude Code