Repository: PokemonGoF/PokemonGo-Bot

Issue:
[Issue] donot_evolve_list not obeyed
### Expected Behavior

In my config.json, i have mentioned not to evolve dratini. So the bot should not evolve dratini.
### Actual Behavior

bot evolved dratini.
### Your FULL config.json (remove your username, password, gmapkey and any other private info)

<!-- Provide your FULL config file, feel free to use services such as pastebin.com to reduce clutter -->
### Output when issue occurred

[2016-09-01 05:34:16] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Dratini [IV 0.91] [CP 552] [2 candies] [+1000 xp]
[2016-09-01 05:34:37] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Geodude [IV 0.6] [CP 589] [63 candies] [+500 xp]
[2016-09-01 05:35:06] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Geodude [IV 0.89] [CP 583] [39 candies] [+500 xp]
[2016-09-01 05:35:34] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Tentacool [IV 0.53] [CP 605] [1 candies] [+500 xp]
[2016-09-01 05:36:07] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Bellsprout [IV 0.93] [CP 627] [63 candies] [+500 xp]
[2016-09-01 05:36:30] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Bellsprout [IV 0.73] [CP 597] [39 candies] [+500 xp]
[2016-09-01 05:37:05] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Machop [IV 0.62] [CP 779] [60 candies] [+500 xp]
### Steps to Reproduce

Use latest master bot with latest config.json
### Other Information

OS: 
Win 10
Branch: 
Master
Git Commit: 
42d670a411b4f8dc9a6206dd10a88cc51744026d
Python Version: 
2.3.6

[Issue] donot_evolve_list not obeyed
### Expected Behavior

In my config.json, i have mentioned not to evolve dratini. So the bot should not evolve dratini.
### Actual Behavior

bot evolved dratini.
### Your FULL config.json (remove your username, password, gmapkey and any other private info)

<!-- Provide your FULL config file, feel free to use services such as pastebin.com to reduce clutter -->
### Output when issue occurred

[2016-09-01 05:34:16] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Dratini [IV 0.91] [CP 552] [2 candies] [+1000 xp]
[2016-09-01 05:34:37] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Geodude [IV 0.6] [CP 589] [63 candies] [+500 xp]
[2016-09-01 05:35:06] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Geodude [IV 0.89] [CP 583] [39 candies] [+500 xp]
[2016-09-01 05:35:34] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Tentacool [IV 0.53] [CP 605] [1 candies] [+500 xp]
[2016-09-01 05:36:07] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Bellsprout [IV 0.93] [CP 627] [63 candies] [+500 xp]
[2016-09-01 05:36:30] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Bellsprout [IV 0.73] [CP 597] [39 candies] [+500 xp]
[2016-09-01 05:37:05] [EvolvePokemon] [INFO] [pokemon_evolved] Evolved Machop [IV 0.62] [CP 779] [60 candies] [+500 xp]
### Steps to Reproduce

Use latest master bot with latest config.json
### Other Information

OS: 
Win 10
Branch: 
Master
Git Commit: 
42d670a411b4f8dc9a6206dd10a88cc51744026d
Python Version: 
2.3.6



Discussion:
`{
    "websocket_server": false,
    "heartbeat_threshold": 10,
    "enable_social": true,
    "live_config_update": {
      "enabled": true,
      "tasks_only": false
    },
    "tasks": [
      {
        "type": "TelegramTask",
        "config": {
          "enabled": false,
          "master": null,
          "// old syntax, still supported: alert_catch": ["all"],
          "// new syntax:": {},
          "alert_catch": {
            "all": {"operator": "and", "cp": 1300, "iv": 0.95},
            "Snorlax": {"operator": "or", "cp": 900, "iv": 0.9}
          }
        }
      },
      {
        "//NOTE: This task MUST be placed on the top of task list": {},
        "type": "RandomAlivePause",
        "config": {
          "enabled": true,
          "min_duration": "00:00:10",
          "max_duration": "00:10:00",
          "min_interval": "00:05:00",
          "max_interval": "01:30:00"
        }
      },
      {
        "type": "HandleSoftBan"
      },
      {
        "type": "RandomPause",
        "config": {
          "enabled": true,
          "min_duration": "00:00:10",
          "max_duration": "00:10:00",
          "min_interval": "00:10:00",
          "max_interval": "02:00:00"
        }
      },
      {
        "type": "CompleteTutorial",
        "config": {
          "enabled": false,
          "// set a name": "",
          "nickname": ""
        }
      },
      {
        "type": "CollectLevelUpReward",
        "config": {
          "collect_reward": true,
          "level_limit": -1
        }
      },
      {
        "type": "IncubateEggs",
        "config": {
          "enabled": true,
          "infinite_longer_eggs_first": false,
          "breakable_longer_eggs_first": true,
          "min_interval": 120,
         "infinite": [2,5,10],
         "breakable": [2,5,10]
        }
      },
      {
        "type": "UpdateLiveStats",
        "config": {
          "enabled": true,
          "min_interval": 10,
          "stats": ["username", "uptime", "stardust_earned", "xp_earned", "xp_per_hour", "stops_visited"],
          "terminal_log": true,
          "terminal_title": true
        }
      },
      {
        "type": "UpdateLiveInventory",
        "config": {
          "enabled": true,
          "min_interval": 120,
          "show_all_multiple_lines": false,
          "items": ["pokemon_bag", "space_info", "pokeballs", "greatballs", "ultraballs", "razzberries", "luckyegg"]
        }
      },
      {
        "type": "ShowBestPokemon",
        "config": {
          "enabled": true,
          "min_interval": 60,
          "amount": 2,
          "order_by": "cp",
          "info_to_show": ["cp", "ivcp", "dps", "hp"]
        }
      },
      {
        "type": "TransferPokemon",
        "config": {
          "enabled": true,
          "min_free_slot": 5,
          "transfer_wait_min": 3,
          "transfer_wait_max": 5
        }
      },
      {
        "type": "NicknamePokemon",
        "config": {
          "enabled": false,
          "nickname_above_iv": 0.9,
          "nickname_template": "{iv_pct}_{iv_ads}"
        }
      },
      {
        "type": "EvolvePokemon",
        "config": {
          "enabled": true,

```
        "// evolve only pidgey and drowzee": "",
        "// evolve_list": "pidgey, drowzee",
        "// donot_evolve_list": "none",

        "// evolve all but pidgey and drowzee": "",
        "// evolve_list": "all",
        "// donot_evolve_list": "pidgey, drowzee",

        "evolve_list": "all",
        "donot_evolve_list": "dratini,dragonair,bulbasaur,squirtle,ivysaur,wartortle,bellsprout,exeggcute",

      "first_evolve_by": "cp",
      "evolve_above_cp": 100,
      "evolve_above_iv": 0.8,
      "logic": "or",
      "min_evolve_speed": 25,
      "max_evolve_speed": 30,
      "use_lucky_egg": false
    }
  },
  {
    "type": "RecycleItems",
    "config": {
      "enabled": true,
      "min_empty_space": 15,
      "max_balls_keep": 240,
      "max_potions_keep": 30,
      "max_berries_keep": 60,
      "max_revives_keep": 20,
      "item_filter": {
        "Pokeball":       { "keep" : 20 },
        "Potion":         { "keep" : 0 },
        "Super Potion":   { "keep" : 0 },
        "Hyper Potion":   { "keep" : 0 },
        "Revive":         { "keep" : 20 },
        "Razz Berry":     { "keep" : 60 }
      },
      "recycle_wait_min": 3,
      "recycle_wait_max": 5,
      "recycle_force": true,
      "recycle_force_min": "00:01:00",
      "recycle_force_max": "00:05:00"
    }
  },
  {
    "type": "CatchPokemon",
    "config": {
      "enabled": true,
      "catch_visible_pokemon": true,
      "catch_lured_pokemon": true,
      "min_ultraball_to_keep": 5,
      "berry_threshold": 0.35,
      "vip_berry_threshold": 0.9,
      "treat_unseen_as_vip": true,
      "daily_catch_limit": 800,
      "catch_throw_parameters": {
        "excellent_rate": 0.1,
        "great_rate": 0.5,
        "nice_rate": 0.3,
        "normal_rate": 0.1,
        "spin_success_rate" : 0.6,
        "hit_rate": 0.90
      },
      "catch_simulation": {
        "flee_count": 3,
        "flee_duration": 2,
        "catch_wait_min": 3,
        "catch_wait_max": 6,
        "berry_wait_min": 3,
        "berry_wait_max": 5,
        "changeball_wait_min": 3,
        "changeball_wait_max": 5,
        "newtodex_wait_min": 20, 
        "newtodex_wait_max": 30
      }
    }
  },
  {
    "type": "SpinFort",
    "config": {
      "enabled": true,
      "spin_wait_min": 3,
      "spin_wait_max": 5,
      "daily_spin_limit": 1900
    }
  },
  { "type": "UpdateWebInventory",
    "config": {
      "enabled": true
    }
  },
  {
    "type": "MoveToFort",
    "config": {
      "enabled": true,
      "lure_attraction": true,
      "lure_max_distance": 2000,
      "walker": "StepWalker",
      "log_interval": 5
    }
  },
  {
    "type": "FollowSpiral",
    "config": {
      "enabled": true,
      "diameter": 4,
      "step_size": 70
    }
  }
],
"map_object_cache_time": 5,
"forts": {
  "avoid_circles": true,
  "max_circle_size": 50,
  "cache_recent_forts": true
},
"pokemon_bag": {
  "// if 'show_at_start' is true, it will log all the pokemons in the bag (not eggs) at bot start": {},
  "show_at_start": false,
  "// if 'show_count' is true, it will show the amount of each pokemon (minimum 1)": {},
  "show_count": false,
  "// if 'show_candies' is true, it will show the amount of candies for each pokemon": {},
  "show_candies": false,
  "// 'pokemon_info' parameter define which info to show for each pokemon": {},
  "// the available options are": {},
  "// ['cp', 'iv_ads', 'iv_pct', 'ivcp', 'ncp', 'level', 'hp', 'moveset', 'dps']": {},
  "pokemon_info": ["cp", "iv_pct"]
},
"walk_max": 9.16,
"walk_min": 7.16,
"alt_min": 500,
"alt_max": 1000,
"sleep_schedule": [
  {
    "time": "2:00",
    "duration": "4:30",
    "time_random_offset": "00:30",
    "duration_random_offset": "00:30",
    "wake_up_at_location": ""
  },
  {
    "time": "17:45",
    "duration": "3:00",
    "time_random_offset": "01:00",
    "duration_random_offset": "00:30",
    "wake_up_at_location": ""
  }
],
"gps_default_altitude": 8.0,
"replicate_gps_xy_noise": false,
"replicate_gps_z_noise": false,
"gps_xy_noise_range": 0.000125,
"gps_z_noise_range": 12.5,
"debug": false,
"test": false,
"walker_limit_output": false,
"health_record": true,
"location_cache": true,
"distance_unit": "km",
"reconnecting_timeout": 15,
"logging": {
  "color": true,
  "show_datetime": true,
  "show_process_name": true,
  "show_log_level": true
},
"catch": {
  "any": {"candy_threshold" : 800 ,"catch_above_cp": 100, "catch_above_iv": 0, "logic": "or"},
  "// Example of always catching Rattata:": {},
  "// Rattata": { "always_catch" : true }
},
"release": {
  "any": {"keep_best_cp": 2},
  "// Example of always releasing Rattata:": {},
  "// Rattata": {"always_release": true},
  "// Example of keeping 3 stronger (based on CP) Pidgey:": {},
  "// Pidgey": {"keep_best_cp": 3},
  "// Example of keeping 2 best (based on IV) Zubat:": {},
  "// Zubat": {"keep_best_iv": 2},
  "// Keep no more than 3 best IV pokemon for every pokemon type": {},
  "// any": {"keep_best_iv": 3},
  "// Discard all pokemon in bag except 100 pokemon with best CP": {},
  "// all": {"keep_best_cp": 100},
  "// Example of keeping the 2 strongest (based on CP) and 3 best (based on IV) Zubat:": {},
  "// Zubat": {"keep_best_cp": 2, "keep_best_iv": 3},
  "// Example of custom order of static criterion": {},
  "// Zubat": {"keep_best_custom": "iv, cp, hp_max", "amount":2}
},
"vips" : {
    "Any pokemon put here directly force to use Berry & Best Ball to capture, to secure the capture rate": {},
    "any": {"catch_above_cp": 1500, "catch_above_iv": 0.9, "logic": "or" },
    "Lapras": {},
    "Moltres": {},
    "Zapdos": {},
    "Articuno": {},

    "// S-Tier pokemons (if pokemon can be evolved into tier, list the representative)": {},
    "Mewtwo": {},
    "Dragonite": {},
    "Snorlax": {},
    "// Mew evolves to Mewtwo": {},
    "Mew": {},
    "Arcanine": {},
    "Vaporeon": {},
    "Gyarados": {},
    "Exeggutor": {},
    "Muk": {},
    "Weezing": {},
    "Flareon": {}
},
"websocket": {
    "start_embedded_server": true,
    "server_url": "127.0.0.1:4000"
}
```

}
`

@pranavperfect Will this be solved if you put **D**ratini instead dratini?

Wouldn't know for a long time. Dratinis are hard to come by. Will let you know if something else on the list doesn't evolve in the future.

@pranavperfect You definitely need to capitalise the first letter of each Pokemon in the do not_evolve_list. I had the same issue yesterday and this resolved it..
I changed "eevee" to "Eevee" and it stopped trying to evolve my Eevee's. I checked this with a number of other Pokemon evolutions and confirmed they need capitalised first letters

`{
    "websocket_server": false,
    "heartbeat_threshold": 10,
    "enable_social": true,
    "live_config_update": {
      "enabled": true,
      "tasks_only": false
    },
    "tasks": [
      {
        "type": "TelegramTask",
        "config": {
          "enabled": false,
          "master": null,
          "// old syntax, still supported: alert_catch": ["all"],
          "// new syntax:": {},
          "alert_catch": {
            "all": {"operator": "and", "cp": 1300, "iv": 0.95},
            "Snorlax": {"operator": "or", "cp": 900, "iv": 0.9}
          }
        }
      },
      {
        "//NOTE: This task MUST be placed on the top of task list": {},
        "type": "RandomAlivePause",
        "config": {
          "enabled": true,
          "min_duration": "00:00:10",
          "max_duration": "00:10:00",
          "min_interval": "00:05:00",
          "max_interval": "01:30:00"
        }
      },
      {
        "type": "HandleSoftBan"
      },
      {
        "type": "RandomPause",
        "config": {
          "enabled": true,
          "min_duration": "00:00:10",
          "max_duration": "00:10:00",
          "min_interval": "00:10:00",
          "max_interval": "02:00:00"
        }
      },
      {
        "type": "CompleteTutorial",
        "config": {
          "enabled": false,
          "// set a name": "",
          "nickname": ""
        }
      },
      {
        "type": "CollectLevelUpReward",
        "config": {
          "collect_reward": true,
          "level_limit": -1
        }
      },
      {
        "type": "IncubateEggs",
        "config": {
          "enabled": true,
          "infinite_longer_eggs_first": false,
          "breakable_longer_eggs_first": true,
          "min_interval": 120,
         "infinite": [2,5,10],
         "breakable": [2,5,10]
        }
      },
      {
        "type": "UpdateLiveStats",
        "config": {
          "enabled": true,
          "min_interval": 10,
          "stats": ["username", "uptime", "stardust_earned", "xp_earned", "xp_per_hour", "stops_visited"],
          "terminal_log": true,
          "terminal_title": true
        }
      },
      {
        "type": "UpdateLiveInventory",
        "config": {
          "enabled": true,
          "min_interval": 120,
          "show_all_multiple_lines": false,
          "items": ["pokemon_bag", "space_info", "pokeballs", "greatballs", "ultraballs", "razzberries", "luckyegg"]
        }
      },
      {
        "type": "ShowBestPokemon",
        "config": {
          "enabled": true,
          "min_interval": 60,
          "amount": 2,
          "order_by": "cp",
          "info_to_show": ["cp", "ivcp", "dps", "hp"]
        }
      },
      {
        "type": "TransferPokemon",
        "config": {
          "enabled": true,
          "min_free_slot": 5,
          "transfer_wait_min": 3,
          "transfer_wait_max": 5
        }
      },
      {
        "type": "NicknamePokemon",
        "config": {
          "enabled": false,
          "nickname_above_iv": 0.9,
          "nickname_template": "{iv_pct}_{iv_ads}"
        }
      },
      {
        "type": "EvolvePokemon",
        "config": {
          "enabled": true,

```
        "// evolve only pidgey and drowzee": "",
        "// evolve_list": "pidgey, drowzee",
        "// donot_evolve_list": "none",

        "// evolve all but pidgey and drowzee": "",
        "// evolve_list": "all",
        "// donot_evolve_list": "pidgey, drowzee",

        "evolve_list": "all",
        "donot_evolve_list": "dratini,dragonair,bulbasaur,squirtle,ivysaur,wartortle,bellsprout,exeggcute",

      "first_evolve_by": "cp",
      "evolve_above_cp": 100,
      "evolve_above_iv": 0.8,
      "logic": "or",
      "min_evolve_speed": 25,
      "max_evolve_speed": 30,
      "use_lucky_egg": false
    }
  },
  {
    "type": "RecycleItems",
    "config": {
      "enabled": true,
      "min_empty_space": 15,
      "max_balls_keep": 240,
      "max_potions_keep": 30,
      "max_berries_keep": 60,
      "max_revives_keep": 20,
      "item_filter": {
        "Pokeball":       { "keep" : 20 },
        "Potion":         { "keep" : 0 },
        "Super Potion":   { "keep" : 0 },
        "Hyper Potion":   { "keep" : 0 },
        "Revive":         { "keep" : 20 },
        "Razz Berry":     { "keep" : 60 }
      },
      "recycle_wait_min": 3,
      "recycle_wait_max": 5,
      "recycle_force": true,
      "recycle_force_min": "00:01:00",
      "recycle_force_max": "00:05:00"
    }
  },
  {
    "type": "CatchPokemon",
    "config": {
      "enabled": true,
      "catch_visible_pokemon": true,
      "catch_lured_pokemon": true,
      "min_ultraball_to_keep": 5,
      "berry_threshold": 0.35,
      "vip_berry_threshold": 0.9,
      "treat_unseen_as_vip": true,
      "daily_catch_limit": 800,
      "catch_throw_parameters": {
        "excellent_rate": 0.1,
        "great_rate": 0.5,
        "nice_rate": 0.3,
        "normal_rate": 0.1,
        "spin_success_rate" : 0.6,
        "hit_rate": 0.90
      },
      "catch_simulation": {
        "flee_count": 3,
        "flee_duration": 2,
        "catch_wait_min": 3,
        "catch_wait_max": 6,
        "berry_wait_min": 3,
        "berry_wait_max": 5,
        "changeball_wait_min": 3,
        "changeball_wait_max": 5,
        "newtodex_wait_min": 20, 
        "newtodex_wait_max": 30
      }
    }
  },
  {
    "type": "SpinFort",
    "config": {
      "enabled": true,
      "spin_wait_min": 3,
      "spin_wait_max": 5,
      "daily_spin_limit": 1900
    }
  },
  { "type": "UpdateWebInventory",
    "config": {
      "enabled": true
    }
  },
  {
    "type": "MoveToFort",
    "config": {
      "enabled": true,
      "lure_attraction": true,
      "lure_max_distance": 2000,
      "walker": "StepWalker",
      "log_interval": 5
    }
  },
  {
    "type": "FollowSpiral",
    "config": {
      "enabled": true,
      "diameter": 4,
      "step_size": 70
    }
  }
],
"map_object_cache_time": 5,
"forts": {
  "avoid_circles": true,
  "max_circle_size": 50,
  "cache_recent_forts": true
},
"pokemon_bag": {
  "// if 'show_at_start' is true, it will log all the pokemons in the bag (not eggs) at bot start": {},
  "show_at_start": false,
  "// if 'show_count' is true, it will show the amount of each pokemon (minimum 1)": {},
  "show_count": false,
  "// if 'show_candies' is true, it will show the amount of candies for each pokemon": {},
  "show_candies": false,
  "// 'pokemon_info' parameter define which info to show for each pokemon": {},
  "// the available options are": {},
  "// ['cp', 'iv_ads', 'iv_pct', 'ivcp', 'ncp', 'level', 'hp', 'moveset', 'dps']": {},
  "pokemon_info": ["cp", "iv_pct"]
},
"walk_max": 9.16,
"walk_min": 7.16,
"alt_min": 500,
"alt_max": 1000,
"sleep_schedule": [
  {
    "time": "2:00",
    "duration": "4:30",
    "time_random_offset": "00:30",
    "duration_random_offset": "00:30",
    "wake_up_at_location": ""
  },
  {
    "time": "17:45",
    "duration": "3:00",
    "time_random_offset": "01:00",
    "duration_random_offset": "00:30",
    "wake_up_at_location": ""
  }
],
"gps_default_altitude": 8.0,
"replicate_gps_xy_noise": false,
"replicate_gps_z_noise": false,
"gps_xy_noise_range": 0.000125,
"gps_z_noise_range": 12.5,
"debug": false,
"test": false,
"walker_limit_output": false,
"health_record": true,
"location_cache": true,
"distance_unit": "km",
"reconnecting_timeout": 15,
"logging": {
  "color": true,
  "show_datetime": true,
  "show_process_name": true,
  "show_log_level": true
},
"catch": {
  "any": {"candy_threshold" : 800 ,"catch_above_cp": 100, "catch_above_iv": 0, "logic": "or"},
  "// Example of always catching Rattata:": {},
  "// Rattata": { "always_catch" : true }
},
"release": {
  "any": {"keep_best_cp": 2},
  "// Example of always releasing Rattata:": {},
  "// Rattata": {"always_release": true},
  "// Example of keeping 3 stronger (based on CP) Pidgey:": {},
  "// Pidgey": {"keep_best_cp": 3},
  "// Example of keeping 2 best (based on IV) Zubat:": {},
  "// Zubat": {"keep_best_iv": 2},
  "// Keep no more than 3 best IV pokemon for every pokemon type": {},
  "// any": {"keep_best_iv": 3},
  "// Discard all pokemon in bag except 100 pokemon with best CP": {},
  "// all": {"keep_best_cp": 100},
  "// Example of keeping the 2 strongest (based on CP) and 3 best (based on IV) Zubat:": {},
  "// Zubat": {"keep_best_cp": 2, "keep_best_iv": 3},
  "// Example of custom order of static criterion": {},
  "// Zubat": {"keep_best_custom": "iv, cp, hp_max", "amount":2}
},
"vips" : {
    "Any pokemon put here directly force to use Berry & Best Ball to capture, to secure the capture rate": {},
    "any": {"catch_above_cp": 1500, "catch_above_iv": 0.9, "logic": "or" },
    "Lapras": {},
    "Moltres": {},
    "Zapdos": {},
    "Articuno": {},

    "// S-Tier pokemons (if pokemon can be evolved into tier, list the representative)": {},
    "Mewtwo": {},
    "Dragonite": {},
    "Snorlax": {},
    "// Mew evolves to Mewtwo": {},
    "Mew": {},
    "Arcanine": {},
    "Vaporeon": {},
    "Gyarados": {},
    "Exeggutor": {},
    "Muk": {},
    "Weezing": {},
    "Flareon": {}
},
"websocket": {
    "start_embedded_server": true,
    "server_url": "127.0.0.1:4000"
}
```

}
`

@pranavperfect Will this be solved if you put **D**ratini instead dratini?

Wouldn't know for a long time. Dratinis are hard to come by. Will let you know if something else on the list doesn't evolve in the future.

@pranavperfect You definitely need to capitalise the first letter of each Pokemon in the do not_evolve_list. I had the same issue yesterday and this resolved it..
I changed "eevee" to "Eevee" and it stopped trying to evolve my Eevee's. I checked this with a number of other Pokemon evolutions and confirmed they need capitalised first letters


Resolving patch:
diff --git a/pokemongo_bot/cell_workers/evolve_pokemon.py b/pokemongo_bot/cell_workers/evolve_pokemon.py
--- a/pokemongo_bot/cell_workers/evolve_pokemon.py
+++ b/pokemongo_bot/cell_workers/evolve_pokemon.py
@@ -28,10 +28,10 @@ def initialize(self):
 
     def _validate_config(self):
         if isinstance(self.evolve_list, basestring):
-            self.evolve_list = [str(pokemon_name).strip() for pokemon_name in self.evolve_list.split(',')]
+            self.evolve_list = [str(pokemon_name).strip().lower() for pokemon_name in self.evolve_list.split(',')]
             
         if isinstance(self.donot_evolve_list, basestring):
-            self.donot_evolve_list = [str(pokemon_name).strip() for pokemon_name in self.donot_evolve_list.split(',')]
+            self.donot_evolve_list = [str(pokemon_name).strip().lower() for pokemon_name in self.donot_evolve_list.split(',')]
 
         if 'evolve_speed' in self.config:
             self.logger.warning("evolve_speed is deprecated, instead please use 'min_evolve_speed' and 'max_evolved_speed'.")
@@ -46,10 +46,10 @@ def work(self):
         filtered_list = self._sort_and_filter()
 
         if (len(self.evolve_list) > 0) and self.evolve_list[0] != 'all':
-            filtered_list = filter(lambda x: x.name in self.evolve_list, filtered_list)
+            filtered_list = filter(lambda x: x.name.lower() in self.evolve_list, filtered_list)
 
         if (len(self.donot_evolve_list) > 0) and self.donot_evolve_list[0] != 'none':
-            filtered_list = filter(lambda pokemon: pokemon.name not in self.donot_evolve_list, filtered_list)
+            filtered_list = filter(lambda pokemon: pokemon.name.lower() not in self.donot_evolve_list, filtered_list)
 
         cache = {}
         for pokemon in filtered_list:


Test patch: