{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":1280180,"defaultBranch":"master","name":"phabricator","ownerLogin":"phacility","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2011-01-21T22:08:29.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/4840775?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1613517697.367445","currentOid":""},"activityList":{"items":[{"before":"40b272fa51eadf9cfb5420b1ddc69c96818c3f90","after":"5720a38cfe95b00ca4be5016dd0d2f3195f4fa04","ref":"refs/heads/master","pushedAt":"2023-11-13T19:04:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Correct Aphlict websocket URI construction after PHP8 compatibility changes\n\nSummary:\nSee D21862. Ref T13700. D21862 affected notification server URI generation behavior when a notification server client is configured with:\n\n 1. no \"path\" argument; and\n 2. \"cluster.instance\" not set.\n\nCondition (1) is not true default, and condition (2) is not true in my local environment, so it was easy for this to slip through the cracks. Apply the change suggested in D21862.\n\nAlso fix a couple other string-null issues I caught locally.\n\nTest Plan: Generated notification server URIs under various simulated local conditions (no instance, path set) and everything seemed to be working correctly.\n\nManiphest Tasks: T13700\n\nDifferential Revision: https://secure.phabricator.com/D21875","shortMessageHtmlLink":"Correct Aphlict websocket URI construction after PHP8 compatibility c…"}},{"before":"dd94e2efcfb7253a96378da58543e9fb5ba6f1c5","after":"40b272fa51eadf9cfb5420b1ddc69c96818c3f90","ref":"refs/heads/master","pushedAt":"2023-05-30T16:06:21.370Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Addressing PHP8 incompatibilities - Miscellaneous\n\nSummary:\nMore perusing through Phabricator to find and address incompatibilities.\n\nRefs T13588\n\nTest Plan:\n- Creating macros, changing their text.\n- Upload to use existing SSH key instead of generate one.\n- Modify alt text of an uploaded file.\n- Create phame post\n- Delete phriction document\n- Move tasks around on workboard, assign story points\n- Generate Diviner docs\n- Bulk modify tasks\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley\n\nManiphest Tasks: T13588\n\nDifferential Revision: https://secure.phabricator.com/D21869","shortMessageHtmlLink":"Addressing PHP8 incompatibilities - Miscellaneous"}},{"before":"60158470d04a6aa708991e8d5b38b0b75f31a85f","after":"dd94e2efcfb7253a96378da58543e9fb5ba6f1c5","ref":"refs/heads/master","pushedAt":"2023-05-30T15:58:47.980Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Addressing PHP8 incompatibilities - Conduit\n\nSummary:\nNavigate through all the conduit pages and address PHP8 incompatibilities. Additionally test out empty form submissions on many of the \"create\" or \"update\" APIs and return more contextual errors rather than PHP8 errors.\n\nRefs T13588\n\nTest Plan:\n- Clicked through all the conduit APIs.\n- Clicked submit on empty forms, or minimally filled-in forms.\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley, PHID-OPKG-gm6ozazyms6q6i22gyam\n\nManiphest Tasks: T13588\n\nDifferential Revision: https://secure.phabricator.com/D21872","shortMessageHtmlLink":"Addressing PHP8 incompatibilities - Conduit"}},{"before":"cf400694c717fdb57eaafcbb575bd698cd9e0948","after":"60158470d04a6aa708991e8d5b38b0b75f31a85f","ref":"refs/heads/master","pushedAt":"2023-05-30T15:48:30.189Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Addressing some PHP8 incompatibilities - Dashboard\n\nSummary:\nUsing dashboard/panels and addressing PHP8 incompatibilities.\n\nRefs T13588\n\nTest Plan: Create a dashboard with multiple panels, including a tabbed panel. Update the tabbed panel to have multiple tabs of content. Try to have a tabbed panel contain itself.\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley\n\nManiphest Tasks: T13588\n\nDifferential Revision: https://secure.phabricator.com/D21871","shortMessageHtmlLink":"Addressing some PHP8 incompatibilities - Dashboard"}},{"before":"0b6e758978a9691bd5ad25db4aa4c4301640a9a9","after":"cf400694c717fdb57eaafcbb575bd698cd9e0948","ref":"refs/heads/master","pushedAt":"2023-05-29T14:41:07.109Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Addressing some PHP8 incompatibilities - Misc. Applications\n\nSummary: Browsing through all other non-prototype applications and using them a bit to track down PHP8 incompatibilities.\n\nTest Plan:\nI tried basic usage of the following applications which found & fixed:\n- Almanac, creating resources, networks, services, etc.\n- Drydock, creating blue prints\n- Pholio mocks\n- Setting up TOTP MFA\n- Phame blog and post\n- Creating default Space\n- Creating and signing a legalpad document\n- Creating a conpherence room\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley\n\nDifferential Revision: https://secure.phabricator.com/D21868","shortMessageHtmlLink":"Addressing some PHP8 incompatibilities - Misc. Applications"}},{"before":"ec9ebe532e521e9eb9cb2f6d11e97045e35fb368","after":"0b6e758978a9691bd5ad25db4aa4c4301640a9a9","ref":"refs/heads/master","pushedAt":"2023-05-29T03:12:25.604Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Updates for Mercurial's HTTP protocol\n\nSummary:\nWhile testing https://secure.phabricator.com/D21864 I ran into some issues getting mercurial HTTP access working. Using wireshark I confirmed that my local mercurial 6.4 was not including command arguments as HTTP headers but in the querystring.\n\nI didn't dig too deep into understanding when/why this started happening. The protocol documents this in [[ https://repo.mercurial-scm.org/hg/file/tip/mercurial/helptext/internals/wireprotocol.txt | wireprotocol.txt ]].\n\n>Command arguments can be sent multiple ways. The simplest is part of the URL query string using ``x-www-form-urlencoded`` encoding (see Python's ``urllib.urlencode()``. However, many servers impose length limitations on the URL. So this mechanism is typically only used if the server doesn't support other mechanisms.\n\nBased on that either the mercurial on the server is really old (it's 6.1.1 tho) or maybe some other parsing/info passing in Phab's handling of the wire protocol is causing the client to downgrade the wire protocol support.\n\nTest Plan: Host mercurial repo using HTTP, test push/pull.\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley\n\nDifferential Revision: https://secure.phabricator.com/D21867","shortMessageHtmlLink":"Updates for Mercurial's HTTP protocol"}},{"before":"ce3d484b0ec7c59f72aad93c7cf5bea81d7757d7","after":"ec9ebe532e521e9eb9cb2f6d11e97045e35fb368","ref":"refs/heads/master","pushedAt":"2023-05-29T03:12:00.887Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Addressing some PHP 8 incompatibilities - Remarkup\n\nSummary:\nUpdating compatibility for PHP 8.2 for remarkup-related functionality.\n\nThis also resolves an issue introduced by https://secure.phabricator.com/D21860. Of all the flags when opening the zip the one I chose was not introduced in 5.2 but in 7.4\n\nTest Plan: I rendered comments using figlet, cowsay, images, object references.\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley\n\nDifferential Revision: https://secure.phabricator.com/D21866","shortMessageHtmlLink":"Addressing some PHP 8 incompatibilities - Remarkup"}},{"before":"58995268dd97acf008d12ce0146dcb786aecb10c","after":"ce3d484b0ec7c59f72aad93c7cf5bea81d7757d7","ref":"refs/heads/master","pushedAt":"2023-05-29T03:10:00.383Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Addressing some PHP8 incompatibilities - Diffusion & Differential\n\nSummary: Running through setting up and using Diffusion repositories and addressing PHP8 issues that come up.\n\nTest Plan:\nI set up a hosted mercurial repository and pushed commits to it over ssh.\nI set up a hosted git repository and pushed commits to it over ssh.\nI set up a mirrored mercurial repository over ssh.\nI set up a mirrored git repository over ssh.\n\nI created a diff on a git repository and landed it.\nI created a diff on a mercurial repository and landed it.\n\nI cloned and pushed a commit to a mercurial repo over http.\nI cloned and pushed a commit to a git repo over http.\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley\n\nDifferential Revision: https://secure.phabricator.com/D21864","shortMessageHtmlLink":"Addressing some PHP8 incompatibilities - Diffusion & Differential"}},{"before":"f6214f060e780ecf7b565c5a0edbd28d85c03275","after":"58995268dd97acf008d12ce0146dcb786aecb10c","ref":"refs/heads/master","pushedAt":"2023-05-24T21:11:44.386Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Addressing some PHP8 incompatibilities - ProfileMenuItem\n\nSummary:\nUpdates to all of the `ProfileMenuItem` classes to be compatible with PHP 8.\n\nThese changes were moved from D21862.\n\nRefs T13588\n\nTest Plan:\nI loaded the profile page for a user and saw all the items I expected to see.\nI navigated through the different profile nav items.\nI loaded the settings page for a user and saw all the items I expected to see.\nI navigated through the differnt setting nave items.\nI added Cat Facts to my navigation.\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley\n\nManiphest Tasks: T13588\n\nDifferential Revision: https://secure.phabricator.com/D21863","shortMessageHtmlLink":"Addressing some PHP8 incompatibilities - ProfileMenuItem"}},{"before":"bc6f4786a2e36441d17b765fde8e8e047840bc58","after":"f6214f060e780ecf7b565c5a0edbd28d85c03275","ref":"refs/heads/master","pushedAt":"2023-05-24T21:10:18.886Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Addressing some PHP 8 incompatibilities\n\nSummary:\nStarting with a new instance running PHP 8.2, address all exceptions that come up through some basic browsing/usage.\n\nFor `strlen(null)` issues I generally tried to resolve if the value should be non-null at the point of issue, and attempt to address at earlier call-site. There were not many of these that I could determine. In the rest of those cases I would replace with a null-and-strlen check, or use `phutil_nonempty_string` if I was certain the value was a string and it was more convenient.\n\nHitting all code-paths is challenging, so I would search for `strlen` within radius of files I was modifying and evaluate to address those uses in the same manner.\n\nNotes:\n- `AphrontRequest::getStr` only ever returns a string, and is safe to use `phutil_nonempty_string`.\n- `PhabricatorEnv::getEnvConfig` can return non-string things so any values coming from there should never use `phutil_nonempty_string`.\n- `AphrontRequest::getHTTPHeader` indicates it could return wild so `phutil_nonempty_string` should not be used.\n- `AphrontRequest::getURIData` isn't clear if it could return non-string data, so never use `phutil_nonempty_string`.\n\nRefs T13588\n\nTest Plan: I'm running an instance on 8.2 and went through the basic setup/installation, startup and usage, including setup issues and configurations/settings.\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: aklapper, Korvin, epriestley\n\nManiphest Tasks: T13588\n\nDifferential Revision: https://secure.phabricator.com/D21862","shortMessageHtmlLink":"Addressing some PHP 8 incompatibilities"}},{"before":"d5c63c86e7e4e87d5f72b35b1bdb1e888aea49bc","after":"bc6f4786a2e36441d17b765fde8e8e047840bc58","ref":"refs/heads/master","pushedAt":"2023-04-25T20:30:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Fix support for pk-zip compressed figlet font files\n\nSummary: The change from https://secure.phabricator.com/D21860 introduced a PHP error due to an invalid variable reference (`zip` instead of `$zip`). This fixes that issue as well as confirms that pk-zip compressed figlet font files can continue to be used/loaded.\n\nTest Plan:\n1. I ensured I had numerous figlet font files installed in `resources/figlet/custom` and used `file` to verify that `univers.flf` and `puffy.flf` are pk-zip archives.\n2. With this change applied I added a comment with `figlet(font=univers){{{hello}}}` and verified that the comment used the univers font to render `hello`, and like-wise with the `puffy` font.\n\nReviewers: epriestley, #blessed_reviewers\n\nReviewed By: epriestley, #blessed_reviewers\n\nSubscribers: Korvin, epriestley\n\nDifferential Revision: https://secure.phabricator.com/D21861","shortMessageHtmlLink":"Fix support for pk-zip compressed figlet font files"}},{"before":"a83cb99e856a70ac355dc51547949b50485bb768","after":"d5c63c86e7e4e87d5f72b35b1bdb1e888aea49bc","ref":"refs/heads/master","pushedAt":"2023-04-25T15:03:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"epriestley","name":"Evan Priestley","path":"/epriestley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/102631?s=80&v=4"},"commit":{"message":"Update Figlet implementation to be PHP8 compatible\n\nSummary:\nAs of PHP ~v8 the `zip_open` and associated functions have been deprecated and\nremoved. The replacement is the `ZipArchive` API. This updates the figlet\nimplementation to use this API which has been present in PHP since 5.2.\n\nAdditionally in PHP 8 the use of squiggly brackets for indexing into arrays is\nalso deprecated. This updates to remove two uses of squiggly brackets and\nreplace with square brackets.\n\nThese two deprecations would result in being unable to load differential\nrevisions in which someone had commented using figlet remarkup.\n\nRefs T13588\n\nTest Plan:\nApplied these changes to an install and loaded a revision that had comments\nwhere someone utilized figlet remarkup. The revision loaded properly and the\nfiglet comment rendered properly.\n\nReviewers: epriestley, #blessed_reviewers\n\nReviewed By: epriestley, #blessed_reviewers\n\nSubscribers: Korvin\n\nManiphest Tasks: T13588\n\nDifferential Revision: https://secure.phabricator.com/D21860","shortMessageHtmlLink":"Update Figlet implementation to be PHP8 compatible"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAADriER1gA","startCursor":null,"endCursor":null}},"title":"Activity · phacility/phabricator"}