Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Errors with SQLAlchemy 1.4 #330

Open
magical opened this issue Mar 19, 2021 · 1 comment · May be fixed by #361
Open

Errors with SQLAlchemy 1.4 #330

magical opened this issue Mar 19, 2021 · 1 comment · May be fixed by #361

Comments

@magical
Copy link
Member

magical commented Mar 19, 2021

Attempting to run pokedex setup when using SQLAlchemy 1.4 throws an error and spews a bunch of warnings.

/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: 
  relationship 'Language.names_local' will copy column languages.id to column language_names.language_id, 
  which conflicts with relationship(s): 'Language.names' (copies languages.id to language_names.language_id).
  If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True
  should be applied to one or more if they are read-only. For the less common case that foreign key constraints
  are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.
  The 'overlaps' parameter may be used to remove this warning.
sqlalchemy.exc.StatementError: (sqlalchemy.exc.InvalidRequestError) A value is required for bind parameter '_default_language_id'
[SQL: SELECT abilities.id AS abilities_id, abilities.identifier AS abilities_identifier, abilities.generation_id AS abilities_generation_id, abilities.is_main_series AS abilities_is_main_series, ability_names_1.ability_id AS ability_names_1_ability_id, ability_names_1.local_language_id AS ability_names_1_local_language_id, ability_names_1.name AS ability_names_1_name 
FROM abilities LEFT OUTER JOIN ability_names AS ability_names_1 ON ability_names_1.ability_id = abilities.id AND ability_names_1.local_language_id = ? ORDER BY abilities.id]

Here's the relevant portion of the Travis CI log:

/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Language.names_local' will copy column languages.id to column language_names.language_id, which conflicts with relationship(s): 'Language.names' (copies languages.id to language_names.language_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Ability.names_local' will copy column abilities.id to column ability_names.ability_id, which conflicts with relationship(s): 'Ability.names' (copies abilities.id to ability_names.ability_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Ability.prose_local' will copy column abilities.id to column ability_prose.ability_id, which conflicts with relationship(s): 'Ability.prose' (copies abilities.id to ability_prose.ability_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'AbilityChangelog.prose_local' will copy column ability_changelog.id to column ability_changelog_prose.ability_changelog_id, which conflicts with relationship(s): 'AbilityChangelog.prose' (copies ability_changelog.id to ability_changelog_prose.ability_changelog_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'BerryFirmness.names_local' will copy column berry_firmness.id to column berry_firmness_names.berry_firmness_id, which conflicts with relationship(s): 'BerryFirmness.names' (copies berry_firmness.id to berry_firmness_names.berry_firmness_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Characteristic.text_local' will copy column characteristics.id to column characteristic_text.characteristic_id, which conflicts with relationship(s): 'Characteristic.text' (copies characteristics.id to characteristic_text.characteristic_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestEpisode.names_local' will copy column conquest_episodes.id to column conquest_episode_names.episode_id, which conflicts with relationship(s): 'ConquestEpisode.names' (copies conquest_episodes.id to conquest_episode_names.episode_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestKingdom.names_local' will copy column conquest_kingdoms.id to column conquest_kingdom_names.kingdom_id, which conflicts with relationship(s): 'ConquestKingdom.names' (copies conquest_kingdoms.id to conquest_kingdom_names.kingdom_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestMoveDisplacement.prose_local' will copy column conquest_move_displacements.id to column conquest_move_displacement_prose.move_displacement_id, which conflicts with relationship(s): 'ConquestMoveDisplacement.prose' (copies conquest_move_displacements.id to conquest_move_displacement_prose.move_displacement_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestMoveEffect.prose_local' will copy column conquest_move_effects.id to column conquest_move_effect_prose.conquest_move_effect_id, which conflicts with relationship(s): 'ConquestMoveEffect.prose' (copies conquest_move_effects.id to conquest_move_effect_prose.conquest_move_effect_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestMoveRange.prose_local' will copy column conquest_move_ranges.id to column conquest_move_range_prose.conquest_move_range_id, which conflicts with relationship(s): 'ConquestMoveRange.prose' (copies conquest_move_ranges.id to conquest_move_range_prose.conquest_move_range_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestStat.names_local' will copy column conquest_stats.id to column conquest_stat_names.conquest_stat_id, which conflicts with relationship(s): 'ConquestStat.names' (copies conquest_stats.id to conquest_stat_names.conquest_stat_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestWarrior.names_local' will copy column conquest_warriors.id to column conquest_warrior_names.warrior_id, which conflicts with relationship(s): 'ConquestWarrior.names' (copies conquest_warriors.id to conquest_warrior_names.warrior_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestWarriorSkill.names_local' will copy column conquest_warrior_skills.id to column conquest_warrior_skill_names.skill_id, which conflicts with relationship(s): 'ConquestWarriorSkill.names' (copies conquest_warrior_skills.id to conquest_warrior_skill_names.skill_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ConquestWarriorStat.names_local' will copy column conquest_warrior_stats.id to column conquest_warrior_stat_names.warrior_stat_id, which conflicts with relationship(s): 'ConquestWarriorStat.names' (copies conquest_warrior_stats.id to conquest_warrior_stat_names.warrior_stat_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ContestEffect.prose_local' will copy column contest_effects.id to column contest_effect_prose.contest_effect_id, which conflicts with relationship(s): 'ContestEffect.prose' (copies contest_effects.id to contest_effect_prose.contest_effect_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ContestType.names_local' will copy column contest_types.id to column contest_type_names.contest_type_id, which conflicts with relationship(s): 'ContestType.names' (copies contest_types.id to contest_type_names.contest_type_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'EggGroup.names_local' will copy column egg_groups.id to column egg_group_prose.egg_group_id, which conflicts with relationship(s): 'EggGroup.names' (copies egg_groups.id to egg_group_prose.egg_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'EncounterCondition.prose_local' will copy column encounter_conditions.id to column encounter_condition_prose.encounter_condition_id, which conflicts with relationship(s): 'EncounterCondition.prose' (copies encounter_conditions.id to encounter_condition_prose.encounter_condition_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'EncounterConditionValue.prose_local' will copy column encounter_condition_values.id to column encounter_condition_value_prose.encounter_condition_value_id, which conflicts with relationship(s): 'EncounterConditionValue.prose' (copies encounter_condition_values.id to encounter_condition_value_prose.encounter_condition_value_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'EncounterMethod.prose_local' will copy column encounter_methods.id to column encounter_method_prose.encounter_method_id, which conflicts with relationship(s): 'EncounterMethod.prose' (copies encounter_methods.id to encounter_method_prose.encounter_method_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'EvolutionTrigger.prose_local' will copy column evolution_triggers.id to column evolution_trigger_prose.evolution_trigger_id, which conflicts with relationship(s): 'EvolutionTrigger.prose' (copies evolution_triggers.id to evolution_trigger_prose.evolution_trigger_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Generation.names_local' will copy column generations.id to column generation_names.generation_id, which conflicts with relationship(s): 'Generation.names' (copies generations.id to generation_names.generation_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'GrowthRate.prose_local' will copy column growth_rates.id to column growth_rate_prose.growth_rate_id, which conflicts with relationship(s): 'GrowthRate.prose' (copies growth_rates.id to growth_rate_prose.growth_rate_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'GrowthRate.max_experience_obj' will copy column growth_rates.id to column experience.growth_rate_id, which conflicts with relationship(s): 'GrowthRate.experience_table' (copies growth_rates.id to experience.growth_rate_id), 'Experience.growth_rate' (copies growth_rates.id to experience.growth_rate_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Item.names_local' will copy column items.id to column item_names.item_id, which conflicts with relationship(s): 'Item.names' (copies items.id to item_names.item_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Item.prose_local' will copy column items.id to column item_prose.item_id, which conflicts with relationship(s): 'Item.prose' (copies items.id to item_prose.item_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Item.flavor_summaries_local' will copy column items.id to column item_flavor_summaries.item_id, which conflicts with relationship(s): 'Item.flavor_summaries' (copies items.id to item_flavor_summaries.item_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ItemCategory.prose_local' will copy column item_categories.id to column item_category_prose.item_category_id, which conflicts with relationship(s): 'ItemCategory.prose' (copies item_categories.id to item_category_prose.item_category_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ItemFlag.prose_local' will copy column item_flags.id to column item_flag_prose.item_flag_id, which conflicts with relationship(s): 'ItemFlag.prose' (copies item_flags.id to item_flag_prose.item_flag_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ItemFlingEffect.prose_local' will copy column item_fling_effects.id to column item_fling_effect_prose.item_fling_effect_id, which conflicts with relationship(s): 'ItemFlingEffect.prose' (copies item_fling_effects.id to item_fling_effect_prose.item_fling_effect_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ItemPocket.names_local' will copy column item_pockets.id to column item_pocket_names.item_pocket_id, which conflicts with relationship(s): 'ItemPocket.names' (copies item_pockets.id to item_pocket_names.item_pocket_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'ItemPocket.categories' will copy column item_pockets.id to column item_categories.pocket_id, which conflicts with relationship(s): 'ItemCategory.pocket' (copies item_pockets.id to item_categories.pocket_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Location.names_local' will copy column locations.id to column location_names.location_id, which conflicts with relationship(s): 'Location.names' (copies locations.id to location_names.location_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'LocationArea.prose_local' will copy column location_areas.id to column location_area_prose.location_area_id, which conflicts with relationship(s): 'LocationArea.prose' (copies location_areas.id to location_area_prose.location_area_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Machine.item' will copy column items.id to column machines.item_id, which conflicts with relationship(s): 'Item.machines' (copies items.id to machines.item_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Move.names_local' will copy column moves.id to column move_names.move_id, which conflicts with relationship(s): 'Move.names' (copies moves.id to move_names.move_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Move.flavor_summaries_local' will copy column moves.id to column move_flavor_summaries.move_id, which conflicts with relationship(s): 'Move.flavor_summaries' (copies moves.id to move_flavor_summaries.move_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'MoveBattleStyle.prose_local' will copy column move_battle_styles.id to column move_battle_style_prose.move_battle_style_id, which conflicts with relationship(s): 'MoveBattleStyle.prose' (copies move_battle_styles.id to move_battle_style_prose.move_battle_style_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'MoveDamageClass.prose_local' will copy column move_damage_classes.id to column move_damage_class_prose.move_damage_class_id, which conflicts with relationship(s): 'MoveDamageClass.prose' (copies move_damage_classes.id to move_damage_class_prose.move_damage_class_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'MoveEffect.prose_local' will copy column move_effects.id to column move_effect_prose.move_effect_id, which conflicts with relationship(s): 'MoveEffect.prose' (copies move_effects.id to move_effect_prose.move_effect_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'MoveEffectChangelog.prose_local' will copy column move_effect_changelog.id to column move_effect_changelog_prose.move_effect_changelog_id, which conflicts with relationship(s): 'MoveEffectChangelog.prose' (copies move_effect_changelog.id to move_effect_changelog_prose.move_effect_changelog_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'MoveFlag.prose_local' will copy column move_flags.id to column move_flag_prose.move_flag_id, which conflicts with relationship(s): 'MoveFlag.prose' (copies move_flags.id to move_flag_prose.move_flag_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'MoveMetaAilment.names_local' will copy column move_meta_ailments.id to column move_meta_ailment_names.move_meta_ailment_id, which conflicts with relationship(s): 'MoveMetaAilment.names' (copies move_meta_ailments.id to move_meta_ailment_names.move_meta_ailment_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'MoveMetaCategory.prose_local' will copy column move_meta_categories.id to column move_meta_category_prose.move_meta_category_id, which conflicts with relationship(s): 'MoveMetaCategory.prose' (copies move_meta_categories.id to move_meta_category_prose.move_meta_category_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'MoveTarget.prose_local' will copy column move_targets.id to column move_target_prose.move_target_id, which conflicts with relationship(s): 'MoveTarget.prose' (copies move_targets.id to move_target_prose.move_target_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Nature.names_local' will copy column natures.id to column nature_names.nature_id, which conflicts with relationship(s): 'Nature.names' (copies natures.id to nature_names.nature_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PalParkArea.names_local' will copy column pal_park_areas.id to column pal_park_area_names.pal_park_area_id, which conflicts with relationship(s): 'PalParkArea.names' (copies pal_park_areas.id to pal_park_area_names.pal_park_area_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokeathlonStat.names_local' will copy column pokeathlon_stats.id to column pokeathlon_stat_names.pokeathlon_stat_id, which conflicts with relationship(s): 'PokeathlonStat.names' (copies pokeathlon_stats.id to pokeathlon_stat_names.pokeathlon_stat_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Pokedex.prose_local' will copy column pokedexes.id to column pokedex_prose.pokedex_id, which conflicts with relationship(s): 'Pokedex.prose' (copies pokedexes.id to pokedex_prose.pokedex_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Ability.pokemon' will copy column abilities.id to column pokemon_abilities.ability_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.all_abilities' (copies abilities.id to pokemon_abilities.ability_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Ability.pokemon' will copy column pokemon.id to column pokemon_abilities.pokemon_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.all_abilities' (copies pokemon.id to pokemon_abilities.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Pokemon.abilities' will copy column pokemon.id to column pokemon_abilities.pokemon_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.all_abilities' (copies pokemon.id to pokemon_abilities.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Pokemon.abilities' will copy column abilities.id to column pokemon_abilities.ability_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.all_abilities' (copies abilities.id to pokemon_abilities.ability_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Ability.hidden_pokemon' will copy column abilities.id to column pokemon_abilities.ability_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.all_abilities' (copies abilities.id to pokemon_abilities.ability_id), 'Ability.pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.abilities' (copies abilities.id to pokemon_abilities.ability_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Ability.hidden_pokemon' will copy column pokemon.id to column pokemon_abilities.pokemon_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.all_abilities' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Ability.pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.abilities' (copies pokemon.id to pokemon_abilities.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Pokemon.hidden_ability' will copy column pokemon.id to column pokemon_abilities.pokemon_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.all_abilities' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Ability.pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.abilities' (copies pokemon.id to pokemon_abilities.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Pokemon.hidden_ability' will copy column abilities.id to column pokemon_abilities.ability_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.all_abilities' (copies abilities.id to pokemon_abilities.ability_id), 'Ability.pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.abilities' (copies abilities.id to pokemon_abilities.ability_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonAbility.pokemon' will copy column pokemon.id to column pokemon_abilities.pokemon_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.all_abilities' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Ability.pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.abilities' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Ability.hidden_pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.hidden_ability' (copies pokemon.id to pokemon_abilities.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Pokemon.pokemon_abilities' will copy column pokemon.id to column pokemon_abilities.pokemon_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.all_abilities' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Ability.pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.abilities' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Ability.hidden_pokemon' (copies pokemon.id to pokemon_abilities.pokemon_id), 'Pokemon.hidden_ability' (copies pokemon.id to pokemon_abilities.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Pokemon.default_form' will copy column pokemon.id to column pokemon_forms.pokemon_id, which conflicts with relationship(s): 'Pokemon.forms' (copies pokemon.id to pokemon_forms.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonAbility.ability' will copy column abilities.id to column pokemon_abilities.ability_id, which conflicts with relationship(s): 'Ability.all_pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.all_abilities' (copies abilities.id to pokemon_abilities.ability_id), 'Ability.pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.abilities' (copies abilities.id to pokemon_abilities.ability_id), 'Ability.hidden_pokemon' (copies abilities.id to pokemon_abilities.ability_id), 'Pokemon.hidden_ability' (copies abilities.id to pokemon_abilities.ability_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonColor.names_local' will copy column pokemon_colors.id to column pokemon_color_names.pokemon_color_id, which conflicts with relationship(s): 'PokemonColor.names' (copies pokemon_colors.id to pokemon_color_names.pokemon_color_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonForm.names_local' will copy column pokemon_forms.id to column pokemon_form_names.pokemon_form_id, which conflicts with relationship(s): 'PokemonForm.names' (copies pokemon_forms.id to pokemon_form_names.pokemon_form_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonForm.pokemon' will copy column pokemon.id to column pokemon_forms.pokemon_id, which conflicts with relationship(s): 'Pokemon.forms' (copies pokemon.id to pokemon_forms.pokemon_id), 'Pokemon.default_form' (copies pokemon.id to pokemon_forms.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonHabitat.names_local' will copy column pokemon_habitats.id to column pokemon_habitat_names.pokemon_habitat_id, which conflicts with relationship(s): 'PokemonHabitat.names' (copies pokemon_habitats.id to pokemon_habitat_names.pokemon_habitat_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Machine.pokemon_moves' will copy column pokemon_moves.version_group_id to column machines.version_group_id, which conflicts with relationship(s): 'Machine.version_group' (copies version_groups.id to machines.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Machine.pokemon_moves' will copy column pokemon_moves.move_id to column machines.move_id, which conflicts with relationship(s): 'Machine.move' (copies moves.id to machines.move_id), 'Move.machines' (copies moves.id to machines.move_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonMove.machine' will copy column pokemon_moves.version_group_id to column machines.version_group_id, which conflicts with relationship(s): 'Machine.version_group' (copies version_groups.id to machines.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonMove.machine' will copy column pokemon_moves.move_id to column machines.move_id, which conflicts with relationship(s): 'Machine.move' (copies moves.id to machines.move_id), 'Move.machines' (copies moves.id to machines.move_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonMoveMethod.prose_local' will copy column pokemon_move_methods.id to column pokemon_move_method_prose.pokemon_move_method_id, which conflicts with relationship(s): 'PokemonMoveMethod.prose' (copies pokemon_move_methods.id to pokemon_move_method_prose.pokemon_move_method_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonShape.prose_local' will copy column pokemon_shapes.id to column pokemon_shape_prose.pokemon_shape_id, which conflicts with relationship(s): 'PokemonShape.prose' (copies pokemon_shapes.id to pokemon_shape_prose.pokemon_shape_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonSpecies.names_local' will copy column pokemon_species.id to column pokemon_species_names.pokemon_species_id, which conflicts with relationship(s): 'PokemonSpecies.names' (copies pokemon_species.id to pokemon_species_names.pokemon_species_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonSpecies.flavor_summaries_local' will copy column pokemon_species.id to column pokemon_species_flavor_summaries.pokemon_species_id, which conflicts with relationship(s): 'PokemonSpecies.flavor_summaries' (copies pokemon_species.id to pokemon_species_flavor_summaries.pokemon_species_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonSpecies.prose_local' will copy column pokemon_species.id to column pokemon_species_prose.pokemon_species_id, which conflicts with relationship(s): 'PokemonSpecies.prose' (copies pokemon_species.id to pokemon_species_prose.pokemon_species_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonSpecies.forms' will copy column pokemon_species.id to column pokemon.species_id, which conflicts with relationship(s): 'PokemonSpecies.pokemon' (copies pokemon_species.id to pokemon.species_id), 'Pokemon.species' (copies pokemon_species.id to pokemon.species_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonSpecies.forms' will copy column pokemon.id to column pokemon_forms.pokemon_id, which conflicts with relationship(s): 'Pokemon.forms' (copies pokemon.id to pokemon_forms.pokemon_id), 'Pokemon.default_form' (copies pokemon.id to pokemon_forms.pokemon_id), 'PokemonForm.pokemon' (copies pokemon.id to pokemon_forms.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonSpecies.default_form' will copy column pokemon_species.id to column pokemon.species_id, which conflicts with relationship(s): 'PokemonSpecies.pokemon' (copies pokemon_species.id to pokemon.species_id), 'Pokemon.species' (copies pokemon_species.id to pokemon.species_id), 'PokemonSpecies.forms' (copies pokemon_species.id to pokemon.species_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonSpecies.default_form' will copy column pokemon.id to column pokemon_forms.pokemon_id, which conflicts with relationship(s): 'Pokemon.forms' (copies pokemon.id to pokemon_forms.pokemon_id), 'Pokemon.default_form' (copies pokemon.id to pokemon_forms.pokemon_id), 'PokemonForm.pokemon' (copies pokemon.id to pokemon_forms.pokemon_id), 'PokemonSpecies.forms' (copies pokemon.id to pokemon_forms.pokemon_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonSpecies.default_pokemon' will copy column pokemon_species.id to column pokemon.species_id, which conflicts with relationship(s): 'PokemonSpecies.pokemon' (copies pokemon_species.id to pokemon.species_id), 'Pokemon.species' (copies pokemon_species.id to pokemon.species_id), 'PokemonSpecies.forms' (copies pokemon_species.id to pokemon.species_id), 'PokemonSpecies.default_form' (copies pokemon_species.id to pokemon.species_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Region.names_local' will copy column regions.id to column region_names.region_id, which conflicts with relationship(s): 'Region.names' (copies regions.id to region_names.region_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Region.generation' will copy column regions.id to column generations.main_region_id, which conflicts with relationship(s): 'Generation.main_region' (copies regions.id to generations.main_region_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Region.version_groups' will copy column regions.id to column version_group_regions.region_id, which conflicts with relationship(s): 'VersionGroupRegion.region' (copies regions.id to version_group_regions.region_id), 'Region.version_group_regions' (copies regions.id to version_group_regions.region_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Stat.names_local' will copy column stats.id to column stat_names.stat_id, which conflicts with relationship(s): 'Stat.names' (copies stats.id to stat_names.stat_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'SuperContestEffect.prose_local' will copy column super_contest_effects.id to column super_contest_effect_prose.super_contest_effect_id, which conflicts with relationship(s): 'SuperContestEffect.prose' (copies super_contest_effects.id to super_contest_effect_prose.super_contest_effect_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Type.names_local' will copy column types.id to column type_names.type_id, which conflicts with relationship(s): 'Type.names' (copies types.id to type_names.type_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Version.names_local' will copy column versions.id to column version_names.version_id, which conflicts with relationship(s): 'Version.names' (copies versions.id to version_names.version_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Version.version_group' will copy column version_groups.id to column versions.version_group_id, which conflicts with relationship(s): 'Generation.versions' (copies version_groups.id to versions.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'VersionGroup.versions' will copy column version_groups.id to column versions.version_group_id, which conflicts with relationship(s): 'Generation.versions' (copies version_groups.id to versions.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'Generation.version_groups' will copy column generations.id to column version_groups.generation_id, which conflicts with relationship(s): 'Generation.versions' (copies generations.id to version_groups.generation_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'VersionGroup.generation' will copy column generations.id to column version_groups.generation_id, which conflicts with relationship(s): 'Generation.versions' (copies generations.id to version_groups.generation_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'VersionGroupRegion.version_group' will copy column version_groups.id to column version_group_regions.version_group_id, which conflicts with relationship(s): 'Region.version_groups' (copies version_groups.id to version_group_regions.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'VersionGroup.version_group_regions' will copy column version_groups.id to column version_group_regions.version_group_id, which conflicts with relationship(s): 'Region.version_groups' (copies version_groups.id to version_group_regions.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'VersionGroup.machines' will copy column version_groups.id to column machines.version_group_id, which conflicts with relationship(s): 'Machine.version_group' (copies version_groups.id to machines.version_group_id), 'Machine.pokemon_moves' (copies pokemon_moves.version_group_id to machines.version_group_id), 'PokemonMove.machine' (copies pokemon_moves.version_group_id to machines.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'VersionGroup.version_group_move_methods' will copy column version_groups.id to column version_group_pokemon_move_methods.version_group_id, which conflicts with relationship(s): 'PokemonMoveMethod.version_groups' (copies version_groups.id to version_group_pokemon_move_methods.version_group_id), 'VersionGroup.pokemon_move_methods' (copies version_groups.id to version_group_pokemon_move_methods.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'VersionGroupPokemonMoveMethod.version_group' will copy column version_groups.id to column version_group_pokemon_move_methods.version_group_id, which conflicts with relationship(s): 'PokemonMoveMethod.version_groups' (copies version_groups.id to version_group_pokemon_move_methods.version_group_id), 'VersionGroup.pokemon_move_methods' (copies version_groups.id to version_group_pokemon_move_methods.version_group_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'PokemonMoveMethod.version_group_move_methods' will copy column pokemon_move_methods.id to column version_group_pokemon_move_methods.pokemon_move_method_id, which conflicts with relationship(s): 'PokemonMoveMethod.version_groups' (copies pokemon_move_methods.id to version_group_pokemon_move_methods.pokemon_move_method_id), 'VersionGroup.pokemon_move_methods' (copies pokemon_move_methods.id to version_group_pokemon_move_methods.pokemon_move_method_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/relationships.py:3454: SAWarning: relationship 'VersionGroupPokemonMoveMethod.pokemon_move_method' will copy column pokemon_move_methods.id to column version_group_pokemon_move_methods.pokemon_move_method_id, which conflicts with relationship(s): 'PokemonMoveMethod.version_groups' (copies pokemon_move_methods.id to version_group_pokemon_move_methods.pokemon_move_method_id), 'VersionGroup.pokemon_move_methods' (copies pokemon_move_methods.id to version_group_pokemon_move_methods.pokemon_move_method_id). If this is not the intention, consider if these relationships should be linked with back_populates, or if viewonly=True should be applied to one or more if they are read-only. For the less common case that foreign key constraints are partially overlapping, the orm.foreign() annotation can be used to isolate the columns that should be written towards.   The 'overlaps' parameter may be used to remove this warning.
  for (pr, fr_) in other_props
Traceback (most recent call last):
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1609, in _execute_context
    dialect, self, conn, execution_options, *args, **kw
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 942, in _init_compiled
    for grp, m in enumerate(parameters)
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 942, in <listcomp>
    for grp, m in enumerate(parameters)
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/sql/compiler.py", line 1005, in construct_params
    code="cd3x",
sqlalchemy.exc.InvalidRequestError: A value is required for bind parameter '_default_language_id' (Background on this error at: http://sqlalche.me/e/14/cd3x)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/travis/virtualenv/python3.7.1/bin/pokedex", line 33, in <module>
    sys.exit(load_entry_point('Pokedex', 'console_scripts', 'pokedex')())
  File "/home/travis/build/veekun/pokedex/pokedex/main.py", line 28, in setuptools_entry
    main(*sys.argv)
  File "/home/travis/build/veekun/pokedex/pokedex/main.py", line 24, in main
    args.func(parser, args)
  File "/home/travis/build/veekun/pokedex/pokedex/main.py", line 269, in command_setup
    get_lookup(args, session=session, recreate=True)
  File "/home/travis/build/veekun/pokedex/pokedex/main.py", line 181, in get_lookup
    lookup.rebuild_index()
  File "/home/travis/build/veekun/pokedex/pokedex/lookup.py", line 199, in rebuild_index
    for row in q:
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/query.py", line 2772, in __iter__
    return self._iter().__iter__()
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/query.py", line 2782, in _iter
    execution_options={"_sa_orm_load_options": self.load_options},
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 1653, in execute
    result = conn._execute_20(statement, params or {}, execution_options)
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1520, in _execute_20
    return meth(self, args_10style, kwargs_10style, execution_options)
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/sql/elements.py", line 314, in _execute_on_connection
    self, multiparams, params, execution_options
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1399, in _execute_clauseelement
    cache_hit=cache_hit,
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1615, in _execute_context
    e, util.text_type(statement), parameters, None, None
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1930, in _handle_dbapi_exception
    sqlalchemy_exception, with_traceback=exc_info[2], from_=e
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/util/compat.py", line 198, in raise_
    raise exception
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1609, in _execute_context
    dialect, self, conn, execution_options, *args, **kw
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 942, in _init_compiled
    for grp, m in enumerate(parameters)
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 942, in <listcomp>
    for grp, m in enumerate(parameters)
  File "/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/sqlalchemy/sql/compiler.py", line 1005, in construct_params
    code="cd3x",
sqlalchemy.exc.StatementError: (sqlalchemy.exc.InvalidRequestError) A value is required for bind parameter '_default_language_id'
[SQL: SELECT abilities.id AS abilities_id, abilities.identifier AS abilities_identifier, abilities.generation_id AS abilities_generation_id, abilities.is_main_series AS abilities_is_main_series, ability_names_1.ability_id AS ability_names_1_ability_id, ability_names_1.local_language_id AS ability_names_1_local_language_id, ability_names_1.name AS ability_names_1_name 
FROM abilities LEFT OUTER JOIN ability_names AS ability_names_1 ON ability_names_1.ability_id = abilities.id AND ability_names_1.local_language_id = ? ORDER BY abilities.id]
magical added a commit that referenced this issue Mar 19, 2021
Temporary fix for #330
@Parnassius
Copy link
Contributor

Using this patch the tests pass with sqlalchemy 1.4, while maintaining compatibility with 1.0-1.3. Unfortunatly the Query._execute_and_instances method doesn't seem to be subclassable anymore, and the docs suggest using do_orm_execute instead.

The warnings are still there, but silencing them with viewonly=True should be safe to do (the data is never modified outside of the setup/load/dump functions, is that correct?)

@Parnassius Parnassius linked a pull request Dec 11, 2021 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants