요즘 좀 바빠서 오픈소스에 기여할 시간이 많지 않았습니다. 나는 다시 궤도에 오르기를 기대했지만 몇 가지 장애에 부딪혔습니다. 지난 게시물에서 저는 Mattermost Mobile에 대해 어떻게 설정하고 이전에 웹앱에서 작업했던 것과 동일한 기능을 구현하도록 설정했는지에 대해 논의했습니다. 즉, 이모티콘(:D) 렌더링을 이모티콘(?)으로 전환하는 설정을 추가하는 것이었습니다. 그 생각을 아주 빨리 포기하세요. WSL(Linux용 Windows 하위 시스템)은 모바일 개발에 그다지 적합하지 않은 것으로 나타났습니다.
Mattermost 개발은 공식적으로 MacOS 및 Linux에서만 지원됩니다. webapp에서 작업할 때는 문제가 되지 않았습니다. 웹 앱 작업을 하는 동안 WSL을 사용할 수 있었고 모든 것이 완벽하게 작동했습니다. 그런데 모바일 앱으로 작업을 시작하려다 보니 문제가 계속 발생했습니다.
Linux용 개발 환경 설정 지침에 따라 Android 에뮬레이터를 설정해야 했지만 WSL 내에서 실행하려고 하면 작동하지 않았습니다. 에뮬레이터를 감지하지 못했습니다. 또한 사전 설치 스크립트가 .sh 스크립트를 실행했기 때문에 Windows에서만 개발할 수 없었습니다. 그래서 WSL 내부에서 Windows에서 실행되는 Android 에뮬레이터에 연결하려고 며칠을 보냈지만 소용이 없었습니다. WSL의 에뮬레이터 목록에는 표시되지 않았습니다. 포럼 게시물과 GitHub 요점을 검토하는 데 몇 시간을 보냈지만 잘 풀리지 않을 것 같았습니다.
또한 내 장치에서 개발을 시도하기 위해 내 장치의 USB 연결을 WSL로 전달해 보았습니다. 아마도 Microsoft Learn의 이 기사에 언급된 대로 usbipd-win이 이 작업을 수행해야 하지만 장치를 WSL로 다시 전달하려고 시도할 때마다 연결된 장치 목록이 비어 있게 됩니다.
Mattermost Contributors 공식 채팅에서 메시지 기록을 검색해 보았지만 같은 문제로 어려움을 겪고 있는 다른 사람들의 게시물만 찾았습니다. 그래서 제가 시도할 수 있는 마지막 일은 제 자신의 게시물을 작성하고 도움을 요청하는 것이라고 생각했습니다. 고맙게도 누군가가 시도하고 도움을 주려고 응답했지만 불행히도 그들은 모바일 팀에 없었으며 저에게 모바일에서 요청하도록 지시했습니다. 팀 채팅인데 아직 답변을 받지 못했습니다.
불행하게도 당분간은 이 문제를 해결해 드릴 수 없을 것 같습니다.
그동안 저는 다른 문제를 해결하기 위해 노력하고 있습니다. "도움말 구함"이라고 표시된 문제를 탐색하는 동안 GitHub CLI에 대한 다음 문제를 발견했습니다.
gh 실행 뷰는 브랜치를 괄호 안에 나열하지만 Primer 지침에 맞게 대괄호 안에 나열해야 한다고 생각합니다.
괄호 및/또는 청록색으로 지점 이름 표시
아 실행뷰
gh 실행 보기 프롬프트는 대괄호 안에 분기를 표시해야 합니다.
❯ gh run view ? Select a workflow run [Use arrows to move, type to filter] > - Verifying attestations offline fails, Discussion Triage (trunk) 4h55m1s ago - Decoding, Discussion Triage (patch-1) 4h59m32s ago ✓ Decoding, PR Automation (patch-1) 4h59m43s ago ✓ Issue Automation, Issue Automation (trunk) 5h20m31s ago - `gh repo rename myorg/newname` results in `myorg/myorg-newname`, Discussion Triage (trunk) 10h13m50s ago - 401 Error at every turn, Discussion Triage (trunk) 10h15m20s ago - 401 Error at every turn, Discussion Triage (trunk) 10h15m20s ago
아주 간단한 변화처럼 보였고 지금까지 안고 있던 엄청난 문제에서 벗어나 다시 괜찮은 속도로 돌아갈 수 있는 좋은 휴식이 될 것이라고 생각했습니다.
개발 설정이 매우 간단해서 만족스러웠습니다. 이미 Go가 설치되어 있었기 때문에 바이너리만 컴파일하면 되었습니다.
저는 매우 도움이 되는 기여 문서를 읽었고 관련 코드를 어디서 찾을 수 있는지 알아내는 데 도움이 되었습니다. 나는 그것을 조사하는 데 약간의 시간을 보냈고 실행 명령에서 분기 이름을 표시하는 기능을 찾았습니다. 나는 이전에 Go를 작성해 본 적이 없지만 C의 printf()를 연상시키는 느낌이 들었습니다. 변경하고 PR을 열었는데, 설레는 마음에 테스트 업데이트를 잊어버리고 리뷰어가 알려주더군요.
수정 #10038
pkg/cmd/run/shared: selectRun()의 괄호를 대괄호로 전환했습니다.
func selectRun() { ... fmt.Sprintf("%s %s, %s (%s) %s", ...) ... }
func selectRun() { ... fmt.Sprintf("%s %s, %s [%s] %s", ...) ... }
테스트를 자세히 살펴보고 실패한 부분을 찾아 업데이트했습니다. 불행하게도, 관리자로부터 실제로 이 문제에 대한 분류 과정에 있으며 "도움말 구함" 라벨을 선제적으로 적용했으며 내 PR이 병합되지 않을 수 있다는 알림을 받았습니다. 조금 실망했지만 제 역할은 다 했다고 생각해서 별 문제는 아니었습니다.
? 안녕하세요 @uday-rana님, 관심 가져주셔서 감사합니다!
이번 주에 순환 근무하는 최초 대응 담당자가 이 문제를 분류할 때까지 기다리고 싶습니다.
구함 라벨을 추가할 때 너무 열심이었던 것 같습니다. 그래도 첫 번째 응답자가 이를 분류하여 구현하기 전에 작업에 동의하는지 확인하기를 원합니다 ❤ ?
어떤 문제도 예상되지는 않지만 어쨌든 저희 중 한 명이 PR을 검토하기 전에 무엇을 기다리고 있는지 알 수 있도록 알려드립니다. 최초 대응자가 동의하면 기꺼이 PR을 수락하겠습니다 ?
혼란을 드려 죄송합니다! 앞으로는 이러한 라벨을 조기에 추가하지 않을 것입니다. 이로 인해 의도치 않게 분류 프로세스가 생략되었나요?
GitHub를 통해 "도움말 구함" 라벨로 작업할 더 많은 문제를 검색하는 동안 또 다른 Mattermost 문제를 발견했는데, 이번에는 웹앱에 관한 문제였습니다. 이미 웹앱에 대한 개발 환경을 설정해 두었기 때문에 빠르게 실행에 옮길 수 있을 것이라고 생각했습니다.
클립보드의 이미지를 메시지 입력에 붙여넣으면 파일 이름이 image.png가 됩니다. 여러 이미지를 붙여넣으면 모두 동일한 image.png 파일 이름을 갖게 됩니다. 이는 덮어쓸 위험이 있는 동일한 이름의 파일을 각각 다운로드할 때 문제가 될 수 있습니다.
다음 형식의 타임스탬프가 포함된 파일 이름을 자동 생성합니다.
이미지-2024-11-18-6-29-57-PM
중요한 스레드: https://hub.mattermost.com/private-core/pl/xryg3tedg3bbxq3xuwnrj9ymyc
관심이 있으시면 여기에 댓글을 달고 일일 빌드 서버의 "Contributors" 커뮤니티 채널에 가입하세요. 여기서 커뮤니티 구성원 및 Mattermost 핵심 팀과 질문에 대해 토론할 수 있습니다. 기술적인 조언이나 질문이 있는 경우 "개발자" 커뮤니티 채널에 가입하세요.
새로운 기여자는 개발자 가이드를 참조하세요.
JIRA: https://mattermost.atlassian.net/browse/MM-62003
이 블로그 게시물을 작성하는 현재 이 문제를 조사 중이며 문제의 원인을 확인했습니다. 브라우저 또는 브라우저와 유사한(La Electron 앱) 환경에서 클립보드의 이미지를 게시할 때 이미지에 이름이 없으면 브라우저는 자동으로 "image.png"라는 이름을 부여합니다. 나는 이것을 Firefox와 Edge에서 테스트했으며 둘 다에 해당됩니다. 이것이 왜 문제가 됩니까? 앱에는 이름이 지정되지 않은 파일에 타임스탬프를 추가하는 로직이 이미 있습니다. 하지만 이러한 이미지에는 클립보드에서 붙여넣을 때 자동으로 이름이 지정되므로 타임스탬프가 설정되지 않습니다.
가장 쉬운 해결 방법은 'image.png' 이름에 대한 검사를 하드코딩하는 것입니다. 하지만 이미지가 PNG가 아니면 어떻게 되는지 궁금합니다. 클립보드에서도 가능한가요? 그리고 사용자가 실제로 "image.png"라는 파일을 업로드한다면 어떻게 될까요? 이 부분은 개발자들과 상의해 봐야 할 부분입니다.
어쨌든 저는 이 문제를 해결하기로 결심했습니다. 일이 순조롭게 진행되기를 바랍니다.
위 내용은 더 많은 오픈 소스 작업 수행: 잃어버린 시간 보충의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!