[ruby-core:118733] [Ruby master Bug#20514] Open3#capture3 does not receive correct exit code from Heroku but Kernel#system does
From:
"mame (Yusuke Endoh) via ruby-core" <ruby-core@...>
Date:
2024-07-30 07:18:34 UTC
List:
ruby-core #118733
SXNzdWUgIzIwNTE0IGhhcyBiZWVuIHVwZGF0ZWQgYnkgbWFtZSAoWXVzdWtlIEVuZG9oKS4NCg0K U3RhdHVzIGNoYW5nZWQgZnJvbSBPcGVuIHRvIEZlZWRiYWNrDQoNClNvbWUgcHJvY2VzcyBtYXkg YmVoYXZlIGRpZmZlcmVudGx5IHdpdGggYE9wZW4zLmNhcHR1cmUzYCBhbmQgYHN5c3RlbWAsIGZv ciBleGFtcGxlLCBhIHByb2Nlc3MgdGhhdCBjaGFuZ2VzIGl0cyBiZWhhdmlvciBkZXBlbmRpbmcg b24gd2hldGhlciBzdGRpbyBpcyB0dHkgb3Igbm90Lg0KQXMgZmFyIGFzIEkga25vdywgdGhlcmUg aXMgbm8gZGlmZmVyZW5jZSBpbiB0aGUgaW50ZXJwcmV0ZXRpb24gb2YgY29tbWFuZC1saW5lIHN0 cmluZyBiZXR3ZWVuIE9wZW4zLmNhcHR1cmUzIGFuZCBzeXN0ZW0uDQpJbiBhbnkgY2FzZSwgSSBk b24ndCB0aGluayB3ZSBjYW4gcHJvY2VlZCB3aXRoIHRoaXMgdGlja2V0IHVubGVzcyB5b3UgY29u ZHVjdCBmdXJ0aGVyIGFuYWx5c2lzIG9uIHlvdXIgc2lkZS4NCg0KLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KQnVnICMyMDUxNDogT3BlbjMjY2FwdHVyZTMgZG9lcyBu b3QgcmVjZWl2ZSBjb3JyZWN0IGV4aXQgY29kZSBmcm9tIEhlcm9rdSBidXQgS2VybmVsI3N5c3Rl bSBkb2VzDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMjA1MTQjY2hhbmdlLTEw OTI3Mg0KDQoqIEF1dGhvcjogbGFrZWhzIChBc2hsZXkgTGFrZSkNCiogU3RhdHVzOiBGZWVkYmFj aw0KKiBydWJ5IC12OiBydWJ5IDMuMy4xICgyMDI0LTA0LTIzIHJldmlzaW9uIGM1NmNkODYzODgp IFthcm02NC1kYXJ3aW4yM10NCiogQmFja3BvcnQ6IDMuMTogVU5LTk9XTiwgMy4yOiBVTktOT1dO LCAzLjM6IFVOS05PV04NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N Ckhlcm9rdSBoYXMgYSBjb21tYW5kLWxpbmUgc3dpdGNoIGZvciByZXR1cm5pbmcgdGhlIGV4aXQg Y29kZSBmcm9tIGEgZGV0YWNoZWQgcHJvY2VzcyB0byB0aGUgY2FsbGluZyB0ZXJtaW5hbCB2aWEg dGhlaXIgQ0xJLiBIb3dldmVyLCBPcGVuMyBkb2Vzbid0IGFwcGVhciB0byByZWNlaXZlIHRoaXMg ZXhpdCBjb2RlIHByb3Blcmx5Og0KDQpgYGAgcnVieQ0KaXJiKG1haW4pOjAwNz4gY29tbWFuZCA9 ICdoZXJva3UgcnVuICJyYWlscyBkYjptaWdyYXRlOnN0YXR1cyB8IGdyZXAgXCJkb3duICAgIFwi IiAtLWV4aXQtY29kZSAtYSByZW1vdGVfYXBwJw0KPT4gImhlcm9rdSBydW4gXCJyYWlscyBkYjpt aWdyYXRlOnN0YXR1cyB8IGdyZXAgXFxcImRvd24gICAgXFxcIlwiIC0tZXhpdC1jb2RlIC1hIHJl bW90ZV9hcHAiDQppcmIobWFpbik6MDA4PiBwYXJhbXMgPSB7fQ0KPT4ge30NCmlyYihtYWluKTow MDk+IHN0ZG91dF9zdHIsIHN0ZGVycl9zdHIsIHN0YXR1cyA9IE9wZW4zLmNhcHR1cmUzKGNvbW1h bmQsIHBhcmFtcykNCj0+IFsiIiwgIlJ1bm5pbmcgcmFpbHMgZGI6bWlncmF0ZTpzdGF0dXMgfCBn cmVwIFwiZG93biAgICBcIiBvbiByZW1vdGVfYXBwLi4uIHByb3Zpc2lvbmluZywgcnVuLjIwNzAg KFNoaWVsZC1NKVxuIiwgIzxQcm9jZXNzOjpTdGF0dXM6IHBpZCAzNDkxMiBleGl0IDA+XQ0KaXJi KG1haW4pOjAxMD4gc3RhdHVzDQo9PiAjPFByb2Nlc3M6OlN0YXR1czogcGlkIDM0OTEyIGV4aXQg MD4NCmlyYihtYWluKTowMTE+IHN0YXR1cy5leGl0c3RhdHVzDQo9PiAwDQpgYGANCg0KSW4gdGhp cyBjYXNlLCBzaW5jZSBJIGtub3cgdGhhdCB0aGVyZSBhcmUgbm8gbWlncmF0aW9ucyB3aXRoIHN0 YXR1cyAiZG93biIsIGdyZXAgc2hvdWxkIHJldHVybiBhbiBleGl0IGNvZGUgb2YgMSwgbm90IDAu IFJ1bm5pbmcgdGhlIHNhbWUgY29tbWFuZCB3aXRoIHN5c3RlbSBnaXZlcyB0aGUgZXhwZWN0ZWQg cmVzdWx0Og0KDQpgYGAgcnVieQ0KaXJiKG1haW4pOjAyNT4gY29tbWFuZCA9ICdoZXJva3UgcnVu ICJyYWlscyBkYjptaWdyYXRlOnN0YXR1cyB8IGdyZXAgXCJkb3duICAgIFwiIiAtLWV4aXQtY29k ZSAtYSByZW1vdGVfYXBwJw0KPT4gImhlcm9rdSBydW4gXCJyYWlscyBkYjptaWdyYXRlOnN0YXR1 cyB8IGdyZXAgXFxcImRvd24gICAgXFxcIlwiIC0tZXhpdC1jb2RlIC1hIHJlbW90ZV9hcHAiDQpp cmIobWFpbik6MDI2PiByZXMgPSBzeXN0ZW0oY29tbWFuZCkNClJ1bm5pbmcgcmFpbHMgZGI6bWln cmF0ZTpzdGF0dXMgfCBncmVwICJkb3duICAgICIgb24g4qyiIHJlbW90ZV9hcHAuLi4gcHJvdmlz aW9uaW5nLCBydW4uOTIwMiAoU2hpZWxkLU0pDQoNCiMgaW50ZXJtZWRpYXRlIG91dHB1dCBzbmlw cGVkDQoNCiDigLogICBFcnJvcjogUHJvY2VzcyBleGl0ZWQgd2l0aCBjb2RlIDENCiDigLogICBD b2RlOiAxDQo9PiBmYWxzZQ0KYGBgDQoNClN3aXRjaGluZyAidXAiIGZvciAiZG93biIgaW4gdGhl IGFib3ZlIGdyZXAgc3RhdGVtZW50IHlpZWxkcyBgdHJ1ZWAgZm9yIGV4aXQgY29kZSAwIHdoZW4g Y2FsbGVkIHdpdGggS2VybmVsI3N5c3RlbS4NCg0KVGhpcyBkb2Vzbid0IGhhcHBlbiBsb2NhbGx5 LCBidXQgc2luY2UgS2VybmVsI3N5c3RlbSBnaXZlcyB0aGUgcmlnaHQgcmVzdWx0cyBidXQgT3Bl bjMjY2FwdHVyZTMgZG9lcyBub3QsIEkgZG9uJ3QgdGhpbmsgdGhlIHByb2JsZW0gaXMgb24gSGVy b2t1J3MgZW5kLg0KDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8NCiBfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiBydWJ5LWNvcmUgbWFp bGluZyBsaXN0IC0tIHJ1YnktY29yZUBtbC5ydWJ5LWxhbmcub3JnCiBUbyB1bnN1YnNjcmliZSBz ZW5kIGFuIGVtYWlsIHRvIHJ1YnktY29yZS1sZWF2ZUBtbC5ydWJ5LWxhbmcub3JnCiBydWJ5LWNv cmUgaW5mbyAtLSBodHRwczovL21sLnJ1YnktbGFuZy5vcmcvbWFpbG1hbjMvbGlzdHMvcnVieS1j b3JlLm1sLnJ1YnktbGFuZy5vcmcv