{"action":"created","issue":{"url":"https://api.github.com/repos/buttonmen-dev/buttonmen/issues/1488","labels_url":"https://api.github.com/repos/buttonmen-dev/buttonmen/issues/1488/labels{/name}","comments_url":"https://api.github.com/repos/buttonmen-dev/buttonmen/issues/1488/comments","events_url":"https://api.github.com/repos/buttonmen-dev/buttonmen/issues/1488/events","html_url":"https://github.com/buttonmen-dev/buttonmen/pull/1488","id":53251914,"number":1488,"title":"pull changes from dev to production on 2015-01-02","user":{"login":"cgolubi1","id":2898207,"avatar_url":"https://avatars.githubusercontent.com/u/2898207?v=3","gravatar_id":"","url":"https://api.github.com/users/cgolubi1","html_url":"https://github.com/cgolubi1","followers_url":"https://api.github.com/users/cgolubi1/followers","following_url":"https://api.github.com/users/cgolubi1/following{/other_user}","gists_url":"https://api.github.com/users/cgolubi1/gists{/gist_id}","starred_url":"https://api.github.com/users/cgolubi1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cgolubi1/subscriptions","organizations_url":"https://api.github.com/users/cgolubi1/orgs","repos_url":"https://api.github.com/users/cgolubi1/repos","events_url":"https://api.github.com/users/cgolubi1/events{/privacy}","received_events_url":"https://api.github.com/users/cgolubi1/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-01-02T13:12:39Z","updated_at":"2015-01-02T14:26:13Z","closed_at":"2015-01-02T13:32:14Z","pull_request":{"url":"https://api.github.com/repos/buttonmen-dev/buttonmen/pulls/1488","html_url":"https://github.com/buttonmen-dev/buttonmen/pull/1488","diff_url":"https://github.com/buttonmen-dev/buttonmen/pull/1488.diff","patch_url":"https://github.com/buttonmen-dev/buttonmen/pull/1488.patch"},"body":"This update brings these pulls, already on dev, to production:\r\n* New functionality:\r\n    * #1365, #1422, #1445: radioactive skill\r\n    * #1384, #1454: doppelganger and morphing dice now gain swing/option when they target swing and option dice (listed as new functionality because it's a major refactor)\r\n    * #1397, #1443: button art for more fanatics, Cesare\r\n    * #1354, #1461: new buttons: Kublacon, Cowboy Bebop, ZOECon, 50 States, Blade Masters, Megatokyo, Order of the Dolls, modified Las Vegas, etc\r\n* Bugfixes and improvements to existing functionality:\r\n    * #1436: fix corner case bug in which a player could reroll chance dice more than once\r\n    * #1451: fix bug in which game continuation messages are lost when continuation game is random\r\n    * #1391, #1392, #1428, #1437, #1446, #1466: improve action logging for size-changing attacks (morphing, mighty/weak, berserk, etc)\r\n    * #1447: don't allow trip attacks which can't succeed due to konstant\r\n    * #1465: don't allow twin stinger dice to contribute 1 to an attack\r\n    * #1470: modify the API to handle asymmetric twin dice correctly\r\n    * #1457, #1473: miscellaneous zero-sided dice bugfixes\r\n    * #1456: if the game erroneously gets into ADJUST_FIRE_DICE, report an internal error, don't just sit there\r\n* Refactoring and other invisible functionality:\r\n    * #1405: change BMDie->roll() to catch internal logic bugs earlier\r\n    * #1410, #1413: fix the success message for the API loadGameData method\r\n    * #1425, #1427, #1438, #1455: miscellaneous test/jenkins changes\r\n    * #1424: fix whitespace in some new button recipes\r\n    * #1460: make player_auth field larger so we won't hit a limit there any time soon\r\n\r\nDev pulls which collectively cover the same changes in this prod pull:\r\n* #1408: 2014-11-15\r\n* #1419: 2014-11-19\r\n* #1429: 2014-11-23\r\n* #1439: 2014-11-27\r\n* #1448: 2014-12-01\r\n* #1462: 2014-12-04\r\n* #1469: 2014-12-07\r\n* #1472: 2014-12-11\r\n* #1475: 2014-12-24\r\n* #1476: 2014-12-27\r\n\r\nDatabase updates:\r\n```\r\n01329_remaining_button_sets.sql\r\n01329j_incomplete_sets.sql\r\n01423_recipe_whitespace.sql\r\n01459_player_auth.sql \r\n```\r\n\r\nOnce this pull is merged, i will load the changes on www.buttonweavers.com as part of #700.\r\n"},"comment":{"url":"https://api.github.com/repos/buttonmen-dev/buttonmen/issues/comments/68529589","html_url":"https://github.com/buttonmen-dev/buttonmen/pull/1488#issuecomment-68529589","issue_url":"https://api.github.com/repos/buttonmen-dev/buttonmen/issues/1488","id":68529589,"user":{"login":"cgolubi1","id":2898207,"avatar_url":"https://avatars.githubusercontent.com/u/2898207?v=3","gravatar_id":"","url":"https://api.github.com/users/cgolubi1","html_url":"https://github.com/cgolubi1","followers_url":"https://api.github.com/users/cgolubi1/followers","following_url":"https://api.github.com/users/cgolubi1/following{/other_user}","gists_url":"https://api.github.com/users/cgolubi1/gists{/gist_id}","starred_url":"https://api.github.com/users/cgolubi1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cgolubi1/subscriptions","organizations_url":"https://api.github.com/users/cgolubi1/orgs","repos_url":"https://api.github.com/users/cgolubi1/repos","events_url":"https://api.github.com/users/cgolubi1/events{/privacy}","received_events_url":"https://api.github.com/users/cgolubi1/received_events","type":"User","site_admin":false},"created_at":"2015-01-02T14:26:13Z","updated_at":"2015-01-02T14:26:13Z","body":"Alright.  The ordering here is a little weird:\r\n```\r\nmysql> select id from buttonset where name='Kubla Con' or name='ZOECon' or name='Cowboy Bebop' or name='50 States' or name='Japanese Beetle (unofficial)' or name='Blademasters' or name='Order of the Dolls' or name='Blademasters: The Second Shot' or name='Blademasters: Third Attack' or name='MegaTokyo';\r\n+----+\r\n| id |\r\n+----+\r\n| 52 |\r\n| 58 |\r\n| 66 |\r\n| 67 |\r\n| 68 |\r\n| 69 |\r\n| 70 |\r\n| 71 |\r\n| 72 |\r\n| 74 |\r\n| 76 |\r\n| 77 |\r\n| 78 |\r\n| 79 |\r\n| 80 |\r\n| 81 |\r\n| 82 |\r\n| 83 |\r\n| 84 |\r\n| 85 |\r\n+----+\r\n20 rows in set (0.00 sec)\r\n```\r\n\r\nbut it does corroborate that everything is doubled.  If i delete IDs 76-85, will i be deleting one of each duplicate?  Looks like it:\r\n```\r\nmysql> select distinct name from buttonset where id >= 76 and id <= 85;\r\n+-------------------------------+\r\n| name                          |\r\n+-------------------------------+\r\n| Kubla Con                     |\r\n| ZOECon                        |\r\n| Cowboy Bebop                  |\r\n| 50 States                     |\r\n| Japanese Beetle (unofficial)  |\r\n| Blademasters                  |\r\n| Order of the Dolls            |\r\n| Blademasters: The Second Shot |\r\n| Blademasters: Third Attack    |\r\n| MegaTokyo                     |\r\n+-------------------------------+\r\n10 rows in set (0.00 sec)\r\n```\r\n\r\nOkay, next check, are any of these sets attached to buttons right now?\r\n```\r\nmysql> select * from button where set_id=52 or set_id=58 or set_id=66 or set_id=67 or set_id=68 or set_id=69 or set_id=70 or set_id=71 or set_id=72 or set_id=74 or set_id=76 or set_id=77 or set_id=78 or set_id=79 or set_id=80 or set_id=81 or set_id=82 or set_id=83 or set_id=84 or set_id=85;\r\n+-----+------------------------+-------------------------+-------------+-------------+--------+-------------+\r\n| id  | name                   | recipe                  | btn_special | tourn_legal | set_id | flavor_text |\r\n+-----+------------------------+-------------------------+-------------+-------------+--------+-------------+\r\n| 562 | The Japanese Beetle(u) | (6) (12) (12) _(V) (X)  |           0 |           0 |     68 | NULL        |\r\n| 563 | The Flying Squirrel(u) | (4) (6) (12) (20) (X)   |           0 |           0 |     68 | NULL        |\r\n| 564 | Joe McCarthy           | (10) (12) (12) (20) (X) |           0 |           0 |     68 | NULL        |\r\n| 565 | Kremlina               | (6) (8) (10) (12) (X)   |           0 |           0 |     68 | NULL        |\r\n| 566 | Max Factor             | (6) (8) (12) (X) (X)    |           0 |           0 |     68 | NULL        |\r\n| 567 | The Frenchman          | (8) (10) (10) (12) (X)  |           0 |           0 |     68 | NULL        |\r\n+-----+------------------------+-------------------------+-------------+-------------+--------+-------------+\r\n6 rows in set (0.00 sec)\r\n```\r\n\r\nThat's set_id 68, `Japanese Beetle (unofficial)`, and 68 is the correct ID, not the dupe.  (This makes sense, presumably we couldn't have inserted buttons into any of these sets after the dupes happened, but it can't hurt to check.)\r\n\r\nWhere else do set IDs show up?\r\n* `open_game_possible_buttonsets`: i think this table is unused.  It's empty, anyway.\r\n* `player.favorite_buttonset_id`: this looks fine now, but i should run this test on prod to double-check after the update:\r\n```mysql\r\nmysql> select * from player where favorite_buttonset_id >= 76 and favorite_buttonset_id <= 85;\r\nEmpty set (0.00 sec)\r\n```\r\n* `open_game_possible_button_view`: again, i think this is irrelevant since `open_game_possible_buttonsets` is empty\r\n* `player_view`, `button_view`: covered by player and button stuff above\r\n\r\nThat seems to be it.\r\n"}}