{"html_url": "https://github.com/simonw/sqlite-utils/issues/99#issuecomment-612727814", "issue_url": "https://api.github.com/repos/simonw/sqlite-utils/issues/99", "id": 612727814, "node_id": "MDEyOklzc3VlQ29tbWVudDYxMjcyNzgxNA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-13T03:05:04Z", "updated_at": "2020-04-13T03:05:04Z", "author_association": "OWNER", "body": "Bit trick from an implementation point of view this, since we want to be able to handle input that is a generator - so we can't scan through the input to validate that every dictionary has the same exact keys without consuming the entire iterator.\r\n\r\nThe alternative would be to raise an error the first time we spot a dictionary with keys that differ... but that's weird because we commit changes in batches, so we may end up only applying half of the changes before exiting with the error.\r\n\r\nOn that basis, I'm going to leave this as-is and mark this as wontfix.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 598640234, "label": ".upsert_all() should maybe error if dictionaries passed to it do not have the same keys"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/sqlite-utils/issues/99#issuecomment-612727400", "issue_url": "https://api.github.com/repos/simonw/sqlite-utils/issues/99", "id": 612727400, "node_id": "MDEyOklzc3VlQ29tbWVudDYxMjcyNzQwMA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-13T03:03:09Z", "updated_at": "2020-04-13T03:03:09Z", "author_association": "OWNER", "body": "I think I'm going to leave this as intended behaviour. Or maybe passing multiple dictionaries to `.upsert_all()` with different numbers of keys should raise an error?", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 598640234, "label": ".upsert_all() should maybe error if dictionaries passed to it do not have the same keys"}, "performed_via_github_app": null}