{"action":"created","comment":{"url":"https://api.github.com/repos/hoburg/gpkit/pulls/comments/77073446","id":77073446,"diff_hunk":"@@ -0,0 +1,136 @@\n+Common Errors and Warnings\n+*********************\n+\n+A number of errors and warnings can be returned when attempting to solve a model. Most errors and warnings are indicative of particular bugs, some of which are listed below.\n+\n+\n+-``AttributeError: 'bool' object has no attribute 'subinplace’`` - indicative of a ``==`` being used where an inequality is required, such as between a monorail and posynomial \n+ \n+-``TypeError: unhashable type: ‘xxxx’`` - normally caused by passing something other than a constraint set as the second argument of a ``Model`` constructor\n+ \n+-``TypeError: SignomialInequality could not simplify to a PosynomialInequality`` - this error occurs when there is a signomial constraint in a problem not solved with ``localsolve``. Either signomials must be enabled and ``localsolve`` used, or the signomial constraint must be turned into a GP constraint.\n+ \n+-``AttributeError: 'str' object has no attribute 'sub’`` - this is caused by attempting a quantity in the solution dict with an invalid varkey\n+ \n+-``TypeError: unsupported operand type(s) for ** or pow(): 'int' and 'ParserHelper’`` - this normally indicates a ``Variable`` has been created with invalid units (i.e. units not supported by ``pint``)\n+ \n+-``RuntimeWarning: Primal solution violates constraint: 1.0000149786 is greater than 1`` - this warning is typically seen in dual infeasible models, see *Dual Infeasible Models* below for more tips on debugging a dual infeasible model.\n+\n+-``RuntimeWarning: Dual cost nan does not match primal cost 1.00122315152`` - this warning is typically seen in dual infeasible models, see *Dual Infeasible Models* below for more tips on debugging a dual infeasible model.\n+\n+-``RuntimeWarning: final status of solver 'cvxopt' was 'unknown', not 'optimal’`` or - this is the most difficult warning to debug. It can be thrown when attempting to solve a dual infeasible model or a primal infeasible model. See *Dual Infeasible Models* and *Primal Infeasible Models* below for more information.\n+\n+-``RuntimeWarning: final status of solver 'mosek' was 'DUAL_INFEAS_CER', not 'optimal’`` - this error is thrown when attempting to solve a dual infeasible model with MOSEK,  see *Dual Infeasible Models* below for more tips on debugging a dual infeasible model.\n+\n+\n+Dual Infeasible Models\n+=============\n+\n+A dual infeasible error typically means that more than one unique solution meets the objective and satisfies the constraints. Usually, this means that one or more variables are not sufficiently constrained.  When solving with ``mosek``, the error message will tell you that the solution is dual-infeasible.  When solving with ``cvxopt``, the error for a dual-feasible solution will usually display as a ``Rank`` error or ``cvxopt`` will return ``unknown``.  An example of a dual-feasible model is shown below. This model is dual-infeasible because there are multiple values of ``x`` and ``y`` that satisfy the constraint set even though the obvious value of the objective should be 1.","path":"docs/source/debuggin.rst","position":29,"original_position":29,"commit_id":"85297c96133e0d51728f0c6c2954f6e83fd3c24d","original_commit_id":"85297c96133e0d51728f0c6c2954f6e83fd3c24d","user":{"login":"mayork","id":6796415,"avatar_url":"https://avatars.githubusercontent.com/u/6796415?v=3","gravatar_id":"","url":"https://api.github.com/users/mayork","html_url":"https://github.com/mayork","followers_url":"https://api.github.com/users/mayork/followers","following_url":"https://api.github.com/users/mayork/following{/other_user}","gists_url":"https://api.github.com/users/mayork/gists{/gist_id}","starred_url":"https://api.github.com/users/mayork/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mayork/subscriptions","organizations_url":"https://api.github.com/users/mayork/orgs","repos_url":"https://api.github.com/users/mayork/repos","events_url":"https://api.github.com/users/mayork/events{/privacy}","received_events_url":"https://api.github.com/users/mayork/received_events","type":"User","site_admin":false},"body":"@mjburton11 ...this was your writeup that I copied over","created_at":"2016-08-31T21:06:05Z","updated_at":"2016-08-31T21:06:05Z","html_url":"https://github.com/hoburg/gpkit/pull/823#discussion_r77073446","pull_request_url":"https://api.github.com/repos/hoburg/gpkit/pulls/823","_links":{"self":{"href":"https://api.github.com/repos/hoburg/gpkit/pulls/comments/77073446"},"html":{"href":"https://github.com/hoburg/gpkit/pull/823#discussion_r77073446"},"pull_request":{"href":"https://api.github.com/repos/hoburg/gpkit/pulls/823"}}},"pull_request":{"url":"https://api.github.com/repos/hoburg/gpkit/pulls/823","id":82890927,"html_url":"https://github.com/hoburg/gpkit/pull/823","diff_url":"https://github.com/hoburg/gpkit/pull/823.diff","patch_url":"https://github.com/hoburg/gpkit/pull/823.patch","issue_url":"https://api.github.com/repos/hoburg/gpkit/issues/823","number":823,"state":"open","locked":false,"title":"Doc changes and minor tweaks to enhance usability","user":{"login":"mayork","id":6796415,"avatar_url":"https://avatars.githubusercontent.com/u/6796415?v=3","gravatar_id":"","url":"https://api.github.com/users/mayork","html_url":"https://github.com/mayork","followers_url":"https://api.github.com/users/mayork/followers","following_url":"https://api.github.com/users/mayork/following{/other_user}","gists_url":"https://api.github.com/users/mayork/gists{/gist_id}","starred_url":"https://api.github.com/users/mayork/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mayork/subscriptions","organizations_url":"https://api.github.com/users/mayork/orgs","repos_url":"https://api.github.com/users/mayork/repos","events_url":"https://api.github.com/users/mayork/events{/privacy}","received_events_url":"https://api.github.com/users/mayork/received_events","type":"User","site_admin":false},"body":"documentation updates and a few minor tweaks to make some of our tools more usable","created_at":"2016-08-26T13:49:25Z","updated_at":"2016-08-31T21:06:05Z","closed_at":null,"merged_at":null,"merge_commit_sha":"5e13467d242eedc34d5e71acad0dfdb1b8af6d1e","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/hoburg/gpkit/pulls/823/commits","review_comments_url":"https://api.github.com/repos/hoburg/gpkit/pulls/823/comments","review_comment_url":"https://api.github.com/repos/hoburg/gpkit/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hoburg/gpkit/issues/823/comments","statuses_url":"https://api.github.com/repos/hoburg/gpkit/statuses/85297c96133e0d51728f0c6c2954f6e83fd3c24d","head":{"label":"hoburg:mymods","ref":"mymods","sha":"85297c96133e0d51728f0c6c2954f6e83fd3c24d","user":{"login":"hoburg","id":16762937,"avatar_url":"https://avatars.githubusercontent.com/u/16762937?v=3","gravatar_id":"","url":"https://api.github.com/users/hoburg","html_url":"https://github.com/hoburg","followers_url":"https://api.github.com/users/hoburg/followers","following_url":"https://api.github.com/users/hoburg/following{/other_user}","gists_url":"https://api.github.com/users/hoburg/gists{/gist_id}","starred_url":"https://api.github.com/users/hoburg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hoburg/subscriptions","organizations_url":"https://api.github.com/users/hoburg/orgs","repos_url":"https://api.github.com/users/hoburg/repos","events_url":"https://api.github.com/users/hoburg/events{/privacy}","received_events_url":"https://api.github.com/users/hoburg/received_events","type":"Organization","site_admin":false},"repo":{"id":20954246,"name":"gpkit","full_name":"hoburg/gpkit","owner":{"login":"hoburg","id":16762937,"avatar_url":"https://avatars.githubusercontent.com/u/16762937?v=3","gravatar_id":"","url":"https://api.github.com/users/hoburg","html_url":"https://github.com/hoburg","followers_url":"https://api.github.com/users/hoburg/followers","following_url":"https://api.github.com/users/hoburg/following{/other_user}","gists_url":"https://api.github.com/users/hoburg/gists{/gist_id}","starred_url":"https://api.github.com/users/hoburg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hoburg/subscriptions","organizations_url":"https://api.github.com/users/hoburg/orgs","repos_url":"https://api.github.com/users/hoburg/repos","events_url":"https://api.github.com/users/hoburg/events{/privacy}","received_events_url":"https://api.github.com/users/hoburg/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/hoburg/gpkit","description":"Python package for defining and manipulating geometric programming models.","fork":false,"url":"https://api.github.com/repos/hoburg/gpkit","forks_url":"https://api.github.com/repos/hoburg/gpkit/forks","keys_url":"https://api.github.com/repos/hoburg/gpkit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hoburg/gpkit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hoburg/gpkit/teams","hooks_url":"https://api.github.com/repos/hoburg/gpkit/hooks","issue_events_url":"https://api.github.com/repos/hoburg/gpkit/issues/events{/number}","events_url":"https://api.github.com/repos/hoburg/gpkit/events","assignees_url":"https://api.github.com/repos/hoburg/gpkit/assignees{/user}","branches_url":"https://api.github.com/repos/hoburg/gpkit/branches{/branch}","tags_url":"https://api.github.com/repos/hoburg/gpkit/tags","blobs_url":"https://api.github.com/repos/hoburg/gpkit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hoburg/gpkit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hoburg/gpkit/git/refs{/sha}","trees_url":"https://api.github.com/repos/hoburg/gpkit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hoburg/gpkit/statuses/{sha}","languages_url":"https://api.github.com/repos/hoburg/gpkit/languages","stargazers_url":"https://api.github.com/repos/hoburg/gpkit/stargazers","contributors_url":"https://api.github.com/repos/hoburg/gpkit/contributors","subscribers_url":"https://api.github.com/repos/hoburg/gpkit/subscribers","subscription_url":"https://api.github.com/repos/hoburg/gpkit/subscription","commits_url":"https://api.github.com/repos/hoburg/gpkit/commits{/sha}","git_commits_url":"https://api.github.com/repos/hoburg/gpkit/git/commits{/sha}","comments_url":"https://api.github.com/repos/hoburg/gpkit/comments{/number}","issue_comment_url":"https://api.github.com/repos/hoburg/gpkit/issues/comments{/number}","contents_url":"https://api.github.com/repos/hoburg/gpkit/contents/{+path}","compare_url":"https://api.github.com/repos/hoburg/gpkit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hoburg/gpkit/merges","archive_url":"https://api.github.com/repos/hoburg/gpkit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hoburg/gpkit/downloads","issues_url":"https://api.github.com/repos/hoburg/gpkit/issues{/number}","pulls_url":"https://api.github.com/repos/hoburg/gpkit/pulls{/number}","milestones_url":"https://api.github.com/repos/hoburg/gpkit/milestones{/number}","notifications_url":"https://api.github.com/repos/hoburg/gpkit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hoburg/gpkit/labels{/name}","releases_url":"https://api.github.com/repos/hoburg/gpkit/releases{/id}","deployments_url":"https://api.github.com/repos/hoburg/gpkit/deployments","created_at":"2014-06-18T08:04:06Z","updated_at":"2016-08-29T13:48:32Z","pushed_at":"2016-08-31T17:20:49Z","git_url":"git://github.com/hoburg/gpkit.git","ssh_url":"git@github.com:hoburg/gpkit.git","clone_url":"https://github.com/hoburg/gpkit.git","svn_url":"https://github.com/hoburg/gpkit","homepage":"http://gpkit.readthedocs.org","size":30183,"stargazers_count":10,"watchers_count":10,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"open_issues_count":187,"forks":6,"open_issues":187,"watchers":10,"default_branch":"master"}},"base":{"label":"hoburg:master","ref":"master","sha":"780750bdc7fd8070120c6312926dfec43253e5af","user":{"login":"hoburg","id":16762937,"avatar_url":"https://avatars.githubusercontent.com/u/16762937?v=3","gravatar_id":"","url":"https://api.github.com/users/hoburg","html_url":"https://github.com/hoburg","followers_url":"https://api.github.com/users/hoburg/followers","following_url":"https://api.github.com/users/hoburg/following{/other_user}","gists_url":"https://api.github.com/users/hoburg/gists{/gist_id}","starred_url":"https://api.github.com/users/hoburg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hoburg/subscriptions","organizations_url":"https://api.github.com/users/hoburg/orgs","repos_url":"https://api.github.com/users/hoburg/repos","events_url":"https://api.github.com/users/hoburg/events{/privacy}","received_events_url":"https://api.github.com/users/hoburg/received_events","type":"Organization","site_admin":false},"repo":{"id":20954246,"name":"gpkit","full_name":"hoburg/gpkit","owner":{"login":"hoburg","id":16762937,"avatar_url":"https://avatars.githubusercontent.com/u/16762937?v=3","gravatar_id":"","url":"https://api.github.com/users/hoburg","html_url":"https://github.com/hoburg","followers_url":"https://api.github.com/users/hoburg/followers","following_url":"https://api.github.com/users/hoburg/following{/other_user}","gists_url":"https://api.github.com/users/hoburg/gists{/gist_id}","starred_url":"https://api.github.com/users/hoburg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hoburg/subscriptions","organizations_url":"https://api.github.com/users/hoburg/orgs","repos_url":"https://api.github.com/users/hoburg/repos","events_url":"https://api.github.com/users/hoburg/events{/privacy}","received_events_url":"https://api.github.com/users/hoburg/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/hoburg/gpkit","description":"Python package for defining and manipulating geometric programming models.","fork":false,"url":"https://api.github.com/repos/hoburg/gpkit","forks_url":"https://api.github.com/repos/hoburg/gpkit/forks","keys_url":"https://api.github.com/repos/hoburg/gpkit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hoburg/gpkit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hoburg/gpkit/teams","hooks_url":"https://api.github.com/repos/hoburg/gpkit/hooks","issue_events_url":"https://api.github.com/repos/hoburg/gpkit/issues/events{/number}","events_url":"https://api.github.com/repos/hoburg/gpkit/events","assignees_url":"https://api.github.com/repos/hoburg/gpkit/assignees{/user}","branches_url":"https://api.github.com/repos/hoburg/gpkit/branches{/branch}","tags_url":"https://api.github.com/repos/hoburg/gpkit/tags","blobs_url":"https://api.github.com/repos/hoburg/gpkit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hoburg/gpkit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hoburg/gpkit/git/refs{/sha}","trees_url":"https://api.github.com/repos/hoburg/gpkit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hoburg/gpkit/statuses/{sha}","languages_url":"https://api.github.com/repos/hoburg/gpkit/languages","stargazers_url":"https://api.github.com/repos/hoburg/gpkit/stargazers","contributors_url":"https://api.github.com/repos/hoburg/gpkit/contributors","subscribers_url":"https://api.github.com/repos/hoburg/gpkit/subscribers","subscription_url":"https://api.github.com/repos/hoburg/gpkit/subscription","commits_url":"https://api.github.com/repos/hoburg/gpkit/commits{/sha}","git_commits_url":"https://api.github.com/repos/hoburg/gpkit/git/commits{/sha}","comments_url":"https://api.github.com/repos/hoburg/gpkit/comments{/number}","issue_comment_url":"https://api.github.com/repos/hoburg/gpkit/issues/comments{/number}","contents_url":"https://api.github.com/repos/hoburg/gpkit/contents/{+path}","compare_url":"https://api.github.com/repos/hoburg/gpkit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hoburg/gpkit/merges","archive_url":"https://api.github.com/repos/hoburg/gpkit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hoburg/gpkit/downloads","issues_url":"https://api.github.com/repos/hoburg/gpkit/issues{/number}","pulls_url":"https://api.github.com/repos/hoburg/gpkit/pulls{/number}","milestones_url":"https://api.github.com/repos/hoburg/gpkit/milestones{/number}","notifications_url":"https://api.github.com/repos/hoburg/gpkit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hoburg/gpkit/labels{/name}","releases_url":"https://api.github.com/repos/hoburg/gpkit/releases{/id}","deployments_url":"https://api.github.com/repos/hoburg/gpkit/deployments","created_at":"2014-06-18T08:04:06Z","updated_at":"2016-08-29T13:48:32Z","pushed_at":"2016-08-31T17:20:49Z","git_url":"git://github.com/hoburg/gpkit.git","ssh_url":"git@github.com:hoburg/gpkit.git","clone_url":"https://github.com/hoburg/gpkit.git","svn_url":"https://github.com/hoburg/gpkit","homepage":"http://gpkit.readthedocs.org","size":30183,"stargazers_count":10,"watchers_count":10,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"open_issues_count":187,"forks":6,"open_issues":187,"watchers":10,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/hoburg/gpkit/pulls/823"},"html":{"href":"https://github.com/hoburg/gpkit/pull/823"},"issue":{"href":"https://api.github.com/repos/hoburg/gpkit/issues/823"},"comments":{"href":"https://api.github.com/repos/hoburg/gpkit/issues/823/comments"},"review_comments":{"href":"https://api.github.com/repos/hoburg/gpkit/pulls/823/comments"},"review_comment":{"href":"https://api.github.com/repos/hoburg/gpkit/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hoburg/gpkit/pulls/823/commits"},"statuses":{"href":"https://api.github.com/repos/hoburg/gpkit/statuses/85297c96133e0d51728f0c6c2954f6e83fd3c24d"}}}}
{"actor":{"display_login":"mayork"}}