이것을 누르십시오: 귀하의 WordPress 플러그인은 GPL과 호환됩니까?

게시 됨: 2023-10-06

WMR의 WordPress 커뮤니티 팟캐스트인 Press This에 오신 것을 환영합니다. 각 에피소드에는 커뮤니티 주변의 게스트와 WordPress 개발자가 직면한 가장 큰 문제에 대한 토론이 포함됩니다. 다음은 원본 녹음의 필사본입니다 .

제공: RedCircle

Doc Pop : 당신은 WMR의 WordPress 커뮤니티 팟캐스트인 Press This를 듣고 계십니다. 매주 우리는 WordPress 커뮤니티 회원을 조명합니다. 저는 여러분의 호스트인 Doc Pop입니다. 저는 WP Engine에서의 역할과 TorqueMag.io에서의 기여를 통해 WordPress 커뮤니티를 지원합니다. RedCircle, iTunes, Spotify 또는 즐겨 사용하는 팟캐스트 앱에서 Press This를 구독하거나 WMR.fm에서 직접 에피소드를 다운로드할 수 있습니다.

오픈 소스 프로젝트에 기여해 본 적이 있다면 협업과 혁신이 중요하다는 사실을 아실 것입니다. 하지만 많은 개발자가 플러그인을 GPL, GNU, 일반 공중 라이선스. 단순히 준수의 문제가 아닙니다. 오픈소스의 정신을 보존하는 것입니다.

오늘은 10up의 오픈 소스 이사인 Jeff Paul이 특별 손님으로 모셨습니다. 그는 올해 WordCamp US에서 발표한 판도를 바꾸는 솔루션을 공유할 예정입니다. 새로운 기능과 종속성을 추가하는 경우에도 플러그인의 GPL 호환성을 보장하기 위해 코드베이스를 자동으로 검사하는 도구가 있다고 상상해 보십시오.

그것이 오늘 우리가 이야기할 내용입니다. 하지만 본격적으로 알아보기 전에 Jeff, 당신의 WordPress 탄생 스토리를 들려주실 수 있나요?

제프 폴 : 물론이죠. 정확한 연도가 있는지는 모르겠습니다. 아마 2000년대 초반이었을 겁니다. 예전 CMS에 있던 개인 사이트가 있었는데, 이름이 Geeklog였던 것 같아요. 그리고 그 당시 호스팅 제공업체와 다른 요인이 얼마나 많은지 누가 알겠습니까? CMS의 콘텐츠 붕괴가 있었습니다.

그래서 저는 당시에 그것을 대체할 수 있는 것을 찾고 있었습니다. 나는 WordPress를 찾았고 그것은 내가 필요한 것에 효과가 있었습니다. 아시다시피 CMS를 직접 구축하는 길을 택한 것은 아닙니다. 이는 많은 사람들에게 좋은 유래 이야기인 것 같습니다. 하지만 그것은 2004년부터 2007년까지 그 범위 어딘가에 있었을 것입니다. 그러나 저는 WordPress 4.7 릴리스가 나올 때까지 기여에 기여하지 않았습니다. Helen Hou-Sandi와 Aaron Jorbin. 그래서 저는 프로젝트의 소비자로 수년을 보냈고, 꽤 오랜 시간이 지나서야 기여자가 되었고 그 이후로 그 길을 계속 이어왔습니다. 글쎄요, 현재로서는 이중 소비자이자 기여자입니다.

DP : 그리고 WordPress 코어에도 매우 적극적으로 기여하셨습니다. 10up은 ElasticPress, Distributor, ClassifAI를 포함하여 플러그인 저장소에 수십 개의 플러그인을 유지 관리합니다. 이것들은 모두 wordpress.org 저장소에서 사용할 수 있으며 GitHub에서 공개적으로 유지 관리되며 오픈 소스 방식을 사용합니다.

당신은 우리가 다룰 주제에 대해 매우 잘 알고 있습니다. WordPress 플러그인 저장소와 같은 WordPress 저장소부터 시작해 보는 것이 어떨까요? WordPress 저장소가 무엇이고 여기에 무엇이든 업로드할 수 있는 규칙은 무엇인지 빠르게 알려주십시오.

JP : 물론이죠. 따라서 WordPress 저장소는 오픈 소스 프로젝트인 WordPress.org에서 호스팅되며 WordPress.com과 별도로, 생태계의 다른 호스트와는 별도로, 타사 플러그인 회사나 배포자와는 별도로 호스팅됩니다. 그리고 이는 모든 WordPress 설치에 직접 연결되거나 묶여 있습니다. WordPress 관리자에 있는 누군가가 플러그인이나 테마를 검색하는 경우 해당 검색은 WordPress.org 플러그인 저장소와 WordPress 관리자에서 사용할 수 있는 테마 저장소를 통해 이루어집니다. WordPress.org에서도 마찬가지입니다. 사실상 동일한 검색, 동일한 콘텐츠를 사용할 수 있습니다.

거기에 뭔가를 나열하는 것과 관련해, wordpress.org 플러그인 검토 팀은 플러그인 개발자를 위한 해야 할 일과 하지 말아야 할 일에 대한 일련의 상세한 지침을 가지고 있습니다. 그런 다음 wordpress.org 플러그인 저장소에 초기 제출을 수행하기 위해 거쳐야 하는 실제 제출 작업 흐름이 있습니다. 승인되면 플러그인용 SVN 저장소가 생성됩니다. 그리고 아시다시피 모든 업데이트, 릴리스 등이 SVN으로 푸시됩니다. WordPress.org 또는 WordPress 관리자 내에서 검색할 수 있는 항목에 대한 모든 것이 현재 존재하고 숨쉬는 곳입니다.

DP : 제가 믿는 첫 번째 규칙 중 하나는 WordPress 저장소에 넣는 모든 것이 코드뿐만 아니라 글꼴과 이미지를 포함하여 GPL을 준수해야 한다는 것입니다. 그 맞습니까?

JP : 맞습니다. 오른쪽. 따라서 문자 그대로 플러그인 팀의 첫 번째 규칙은 플러그인 전체가 GPL과 호환되어야 한다는 것입니다. 이는 WordPress가 따르는 것과 동일한 라이센스이며, 언급한 대로 코드, 이미지 및 타사 라이브러리가 모두 GPL과 호환되어야 합니다. 실제 GPLv2 라이선스일 필요는 없습니다. GPL과 호환되는 다른 라이선스도 있지만 글꼴, 이미지, 타사 라이브러리, 종속성 등 모든 것이 GPL과 호환되어야 하며, 플러그인 개발자가 작성하는 코드죠? 다른 모든 것들도 GPL과 호환되어야 합니다.

DP : 그리고 청취자들을 기다리게 하지 않기 위해 바로 뛰어들 수 있었습니다. 귀하의 강연은 GitHub 작업을 사용하여 GPL 호환성을 확인하는 방법에 관한 것이었습니다. 그 과정을 안내해 주실 수 있나요?

JP : 네, 그래서 이것은 10Up에서 오픈 소스 디렉터로서의 역할에서 비롯된 것입니다. 이는 단일 플러그인 또는 여러 플러그인의 일상적인 플러그인 작성자가 알고 있거나 귀찮게 할 수 있는 것이 아닐 수도 있습니다. 하지만 어느 순간 한밤중에 잠에서 깨어나서 다음과 같은 생각을 하게 된 것 같습니다. “당신이 알고 있는 모든 이미지, 모든 타사 종속성, 모든 글꼴을 내가 확실히 알고 있는지는 모르겠습니다. 등은 GPL과 호환되며 말씀하신 것처럼 wordpress.org 저장소나 GitHub에서도 사용할 수 있는 수십 개의 플러그인이 있는 10up에서 규모에 맞는 방법을 찾으려고 노력하고 있습니다. 거기 소스입니다.

저는 이 모든 것을 가느다란 빗으로 처리하고 우리가 플러그인에 사용하고 있던 업스트림 종속성을 확인하고 라이선스가 어떻게 부여되는지 알아내야 하는 것을 원하지 않았습니다. 여러 플러그인은 말할 것도 없고 단일 플러그인의 경우 이는 골치 아픈 일이 될 수 있습니다. 그리고 온라인 검색을 통해 저는 해당 프로세스를 효과적으로 자동화하는 데 사용할 수 있는 몇 가지 도구, 몇 가지 GitHub 작업이 있다는 것을 확인했습니다. 저장소를 한 번만 스캔하는 것이 아니라 다음과 같이 말할 수 있습니다. 당신은 호환 가능하거나 아니거나 그렇지 않습니다. 그러나 향후 버그 수정, 개선 사항 등이 새로운 종속성을 추가하거나 플러그인의 종속성을 충돌시켜 무언가의 방식을 변경할 수 있도록 계속 스캔합니다. 라이선스를 취득하고 진행 중인 작업을 확인할 수 있다는 점과 최초 통과를 수행할 수 있다는 점은 수동적이고 집중적인 프로세스가 되지 않고 계속해서 악몽과 같은 일이 되지 않도록 하기 위해 제가 알아내려고 노력한 것이었습니다. , 그 호환성.

그러니까, 내 말은, 제가 처음에 가졌던 우려는 그것을 몰랐다는 것이었습니다. 우리가 추가하는 일부 기능이 새로운 종속성을 포함한다면 그것이 GPL과 호환되는지 알 방법이 없었습니다. , 그리고 이미 출시된 플러그인이 소프트웨어 내에서 이미 비호환성이 있는 경우 반복적으로 발생하는 더 나쁜 시나리오가 있을 수 있다는 것을 깨달았습니다.

그래서 그것은 제가 시도하고 해결하고 싶었던 첫 번째 문제였습니다. 첫 번째 초기 스캔이죠? 우리의 개별 플러그인과 10up이 지원하는 모든 플러그인이 우리가 선언한 라이선스와 실제로 호환됩니까? 그리고 다행히도 그들은 그랬습니다. 그런 다음 거기에서 향후 PR이 내 팀과 10up의 오픈 소스 관행인지, 광범위하게는 프로젝트에 기여하는 다른 10uper인지, 아니면 실제로 커뮤니티의 누구인지 확인하는 지속적인 확인이 이루어졌습니다. 우리가 플러그인 자체에 명시한 라이센스를 유지했다는 것입니다.

DP : 그리고 여기서 명확히 하자면, 만약 그렇지 않다면, 이것을 통해 발견했다면, 어, 기존 종속성이나 그 안에 뭔가가 있었는데, 이는 규정을 준수하지 않은 것이 일종의 부끄러움을 주는 파급효과라는 것입니다. 아니면 규칙을 따르지 않아 징벌적 손해를 입을 가능성이 있나요?

JP : 그럼 저는 변호사가 아니죠? 아시다시피 저는 이 의견을 말할 자격이 없습니다. 따라서 유효한 법적 조언은 아니지만 플러그인에서 이러한 스캔을 실행하면서 제가 취한 접근 방식은 다시 한번 말씀드리지만, 저는 그렇게 하지 않았습니다. 사실 저는 이 모든 것을 실행하면서 결과가 어떨지 꽤 긴장했습니다.

내 계획은 GPL과 호환되지 않는 것을 사용하는 플러그인이 있다는 것을 발견했을 때 가장 좋은 접근 방식은 해당 종속성을 제거하거나 다른 것으로 교체하고 문제가 무엇이든 효과적으로 해결하는 것이었습니다. 새 버전을 빨리 출시했지요?

이미 출판되고 출시된 내용에 대해 내가 할 수 있는 일이 많지 않다고 느꼈습니다. 내 관점에서는 그 어느 것도 고의적으로 라이센스를 우회하려는 방식으로 수행되지 않았을 것입니다. 아시다시피 어느 시점에서는 플러그인 작성자에게 보고되는 보안 문제와 유사한 인적 오류였을 것입니다. 마찬가지로 가장 좋은 접근 방식은 문제를 해결하고 신속하게 릴리스를 출시하여 최신 플러그인을 사용하는 사람들이 보안 문제든 이 경우 라이선스 문제든 더 안전한 상태에 있도록 하는 것입니다. 확실히, 만약 상당한 수익을 창출하는 플러그인이 있었다면, 그리고 아마도 라이센스가 없는 플러그인을 갖는 것이 알려진 실수였다는 것을 보여줄 이유가 있다면, 제쳐두고, 나는 그 공간에 있는 누구도 믿지 않을 것입니다. 의도적으로 그렇게 하고 있지만 잠재적으로 법적 위험에 처할 수 있는 유일한 것은 상당한 수익을 창출하는 것, 라이센스 대상이 될 것이라고 생각합니다.

예, 짧게 말하면 누군가가 스캔을 실행하여 기존 코드 베이스에서 문제를 발견하면 가장 좋은 접근 방식은 실제로 릴리스, 업데이트된 버전을 발행하고 변경 로그에서 호출하는 것입니다. 릴리스 노트에서 변경된 내용과 이유를 설명하고 이에 대해 투명하게 설명하세요. 하지만 그 시점에서는 그것이 플러그인 작성자가 할 수 있는 최선의 방법이라고 생각합니다. 10up 플러그인의 경우 다행스럽게도 해당 시나리오는 발생하지 않았습니다. 다행스럽게도 모든 것이 호환되었으며, 이 길을 따라가는 대다수의 사람들이 그 수준의 편안함을 제공하기 위해 일부 자동화를 설정하면 비슷한 경험을 하게 되기를 바랍니다.

GitHub 작업이 실행되기까지 몇 초 또는 몇 분 동안 약간 긴장되고 불안한 기다림이 있을 수 있습니다. 하지만 일단 모든 것이 지나간다는 것이 보여지면 아마도 대부분의 사람들이 그런 상태에 이르게 될 것이라고 생각합니다.

DP : 편안해지라고 해서 잠시 쉬어가겠습니다. 그러니 편안히 앉아 휴식을 취하세요. 잠시 광고가 끝난 후 플러그인 GPL 준수 유지에 관한 10up의 오픈 소스 이니셔티브 이사인 Jeff Paul과의 더 많은 인터뷰를 통해 다시 돌아오겠습니다. 이 짧은 휴식 후에 더 많은 내용을 기대해 주세요.

DP : WordPress 커뮤니티 팟캐스트인 Press This에 다시 오신 것을 환영합니다. 저는 박사입니다. 나는 GitHub 작업을 사용하여 코드와 플러그인이 GPL을 준수하는지 확인하는 방법에 대해 Jeff Paul과 이야기하고 있습니다. 휴식 시간 전에 우리는 이에 대해 조금 자세히 살펴보고 완전히 규정을 준수하지 않을 경우 발생할 수 있는 결과에 대해 이야기했습니다. 그리고 저는 이 특정한 일로 돌아가고 싶었던 것 같습니다. 누구나 만들 수 있는 GitHub 작업이 있습니다. 하지만 Jeff, 당신은 WordCamp 강연에서 공식 GitHub 작업을 사용한다고 언급했는데, 약간의 변화가 있었던 것 같습니다. 사람들이 이를 수행하기 위해 찾아야 하는 작업의 이름이 무엇인지 알려주실 수 있나요?

JP : 물론이죠. 이것이 바로 종속성 검토 작업입니다. 그래서 GitHub.com, 슬래시 동작, 슬래시 종속성, 하이픈 검토, 하이픈 동작. 바라건대, 성적표가 올바르게 전달되기를 바랍니다. 내 사이트의 해당 강연을 다루는 게시물에 이에 대한 메모가 있다는 것을 찾는 데 문제가 있는 경우. 따라서 사용할 수 있는 링크가 있지만 GitHub 작업 마켓플레이스에서 종속성 검토 작업을 검색하면 제가 사용한 공식 작업을 찾을 수 있을 것이며 이는 단순히 플러그인 종속성을 확인하는 것 이상의 작업을 수행합니다. 라이센스 이상의 것을 확인합니다. 또한 플러그인 종속성의 취약점 및 기타 사항을 확인할 수도 있습니다. 하지만 제가 사용하는 유일한 용도, 제가 사용하는 핵심 용도는 플러그인 내의 종속성에서 유효하지 않은 라이센스를 확인하는 것입니다.

DP : 그리고 이것은 당신이 따르고 싶은 GPL 유형을 설정할 수 있는 작업입니다. 라이센스를 포함하면 이를 확인합니다. 그리고 예를 들어 수십 개의 플러그인을 유지 관리하는 경우에도 동일한 소스를 계속 제공할 수 있는 가능성도 있습니다. 유지관리하는 모든 플러그인을 여전히 해당 디렉토리에 보관할 수 있으므로 매번 가서 업데이트할 필요가 없습니다. 그렇죠?

JP : 맞습니다. 응. WordCamp US에서 제 강연을 끝까지 시청하셨군요. 청중석에 앉아 깨어서 경청해 주셔서 감사합니다. 또는 YouTube나 WordPress.tv에서 그 내용을 포착하셨지만, 그렇습니다. 제가 사람들에게 기대하는 두 가지 표준 흐름이 있습니다. 여기를 따르세요.

하나, 하나 또는 매우 적은 수의 플러그인을 담당하는 플러그인 작성자 또는 일대일 규모로 더 많은 플러그인을 보유한 사람은 지원하는 플러그인이 그만큼 많습니다. 따라서 단 하나의 작업만 있는 사용자의 경우 정의한 대로 GitHub 작업은 해당 종속성 검토 작업을 효과적으로 호출하고 저장소를 검색하도록 하는 워크플로 파일 내에서 효과적으로 수행할 수 있습니다. 두 가지 환경 변수가 있습니다. 또는 귀하가 제공할 수 있는 매개변수입니다. 첫 번째 작업은 라이센스를 허용하는 것이고 그에 따른 결과는 라이센스를 거부하는 것입니다. 동시에 두 가지를 모두 할 수는 없습니다. 제가 취한 접근 방식은 거부 라이센스가 아닌 허용 라이센스를 사용하는 것이었습니다. 그런 생각이 들었습니다... 차라리 허용 라이센스 목록에 GPL 호환 라이센스를 포함하는 것을 잊어버려 사실상 오탐지가 발생하는 경우가 있었으면 좋겠습니다. 그렇죠? 예를 들어 해당 라이센스가 목록에 추가하는 것을 잊어버렸기 때문에 내 라이센스와 호환되지 않는 것으로 플래그가 지정된 종속성을 얻는 것과 달리 라이센스 거부 목록을 사용하고 원하지 않는 라이센스를 거부하는 것을 잊어버린 경우 그럴 수 있습니다. 이는 종속성이 통과되고 이 검사에 의해 포착되지 않을 것임을 의미합니다.

따라서 제가 강력히 권장하는 것은 허용 라이선스 목록을 사용하는 것입니다. 그리고 누군가가 단일 플러그인을 유지 관리하는 경우에는 워크플로 파일에서 해당 매개변수와 라이선스 목록을 사용하면 됩니다. 따라서 10up의 경우 플러그인의 경우 점 GitHub 디렉터리이고 그 다음에는 워크플로 하위 디렉터리입니다. 그런 다음 해당 종속성 검토 작업을 호출하는 종속성 검토 워크플로가 있고 라이선스 허용 목록이 있습니다. 내 사이트에서 내 프레젠테이션을 가져오거나 온라인에서 강연을 찾아 보유한 라이선스 목록을 볼 수 있습니다. 또한 GitHub에서 10up의 리포지토리를 탐색하고 우리가 탐색하는 라이선스를 볼 수도 있습니다.

우리의 작업 흐름 파일은 상당히 잘 문서화되어 있으며 우리가 플러그인과 호환되는 라이센스라고 생각하는 것을 식별하게 된 방법을 설명합니다. 그래서 사람들은 우리가 가지고 있는 목록을 사용하는 것을 환영할 것이고, 그 목록의 하위 집합을 사용하는 것을 환영할 것이며, 그들 자신의 연구를 수행하는 것을 환영할 것이고, 아마도 그 수준의 편안함을 느낄 것입니다. 그러나 우리는 허용 라이센스 목록에서 사용하고 있던 것이 실제로 우리가 선언한 것과 호환되는지 확인하기 위해 상당히 긴 조사를 수행했습니다. 그리고 10up의 경우 기본적으로 GPLv2 이상을 사용하므로 우리가 나열하는 모든 라이선스는 특히 GPLv2와 호환됩니다.

따라서 유지 관리하는 단일 플러그인을 사용하는 플러그인 작성자의 경우도 마찬가지입니다. 언급한 대로 누군가가 둘 이상의 라이선스를 갖고 있는 경우 해당 라이선스가 모두 선언되어 있는 별도의 라이선스 정책 파일을 가질 수 있습니다. 그런 다음 플러그인의 작업 흐름에서 해당 구성 파일, 해당 라이센스 정책 파일을 참조하면 언급한 것처럼 실제로 그 시점에서는 호환되는 라이센스 목록을 유지하는 데 필요한 위치가 한 곳뿐입니다. 만약 우리에게 GPLv2와 호환되는 새로운 오픈 소스 이니셔티브 승인 라이선스가 있다면, 그렇죠? 새로운 항목이 나타나면 목록에 추가할 수 있습니다. 또는 어떤 이유로든 제거해야 하는 경우 수십 개의 위치에서 해당 작업을 수행할 필요가 없습니다. 한 위치에서 작업을 수행하면 해당 구성을 참조하는 모든 워크플로 파일이 새 라이선스 목록을 사용하여 즉시 업데이트됩니다.

DP : 이 작업은 모두 자동화되어 있으므로 누군가 끌어오기 요청을 하면 귀하에게만 해당 작업이 수행됩니다. 오른쪽?

JP : 맞습니다, 맞습니다. 따라서 리포지토리에서 워크플로 파일을 생성할 때 풀 요청에 대한 트리거가 있습니다. 따라서 CRON 일정에 따라 실행되도록 설정할 수도 있고 매주 또는 매월 실행되도록 할 수도 있지만 실제로 처음 실행을 수행하면 종속성의 전체 코드 기반을 스캔하고 실제로 진행됩니다. 앞으로는 들어오는 풀 요청만 확인하면 됩니다. 플러그인에 대한 기본 또는 안정적인 브랜치에 관계없이 PR을 요구하는 상당히 엄격한 시스템을 사용하지 않는 경우 개별 커밋을 확인할 수도 있습니다.

따라서 사람들이 사용하고 싶어할 수 있는 추가 트리거가 있을 수 있습니다. 10up의 경우, 우리는 이 작업을 안정적으로 사용할 수 있도록 PR이 분기를 개발하고 트렁크하도록 상당히 엄격하게 요구하는 경향이 있으며, 새 항목을 도입하거나 라이센스를 변경하는 버전을 범하는 종속성에 대한 모든 변경 사항이 이에 의해 포착된다는 것을 알고 있습니다. . 예, 우리는 끌어오기 요청을 사용하고 피벗하거나 트리거하지만, 사람들이 얼마나 엄격한지에 따라 특정 브랜치에 대한 개별 커밋을 확인하도록 할 수도 있고 매일, 매주, 매월, 단지 일정에 따라 실행하도록 할 수도 있습니다. 귀하의 코드가 여전히 통과되고 있고, 이 경우 10up용 GPLv2와 호환되지 않는 라이선스가 없다는 사실을 알고 편안함을 누리고 싶습니다.

DP : 여기서 또 잠시 휴식을 취하겠습니다. 돌아오면 Jeff Paul과의 GPL 라이센스에 대한 대화를 마무리하고 이전에 다루지 않은 내용을 다룰 수도 있습니다. 그러니 이 짧은 휴식 후에 더 많은 것을 기대해 주세요.

DP : WordPress 커뮤니티 팟캐스트인 Press This에 다시 오신 것을 환영합니다. 우리는 쇼를 마무리하고 있으며 약간의 장비를 전환할 예정입니다. 최근 플러그인 저장소의 검토 프로세스에 대한 이야기가 있었는데, 기본적으로 이 사실을 언급하면 ​​과거보다 속도가 조금 느려졌습니다.

어떤 사람들은 내가 WordPress에서 보낸 대부분의 해 동안 최고조에 달한 것을 본 적이 있는 내용을 검토하는 데 몇 달이 걸린다는 것을 알고 있다고 말합니다. 그래서 제프, 그들이 그것에 대해 어떤 변화를 줄 것인지에 대해 이야기했다는 것을 알고 있습니다. 현재 팀에서 어떤 작업을 하고 있는지 알려주실 수 있나요?

JP : 물론이죠. 응. 그리고 나는 당신이 말한 것을 증폭시켰습니다. 역사적으로 볼 때 제가 제출한 모든 내용은 2주도 채 안 걸려서 일반적으로 보고되는 것보다 훨씬 빠른 속도로 진행된 것 같습니다. 그리고 그것은 약 88일 정도가 되었고 관련된 모든 사람들에게 불행한 일이 되었습니다.

내 생각엔 그 팀에 약간의 이직이 있었던 것 같아. 매우 경험이 풍부한 고위 지식이 손실되었습니다. 그리고 그 공백을 메우기 위해 기꺼이 개입한 사람들은 여전히 ​​플러그인 처리 및 초기 제출물 검토에 대해 동일한 종류의 처리량을 가질 수 있는 지점에 도달하고 있다고 생각합니다. 그리고 그 중 일부를 자동화하기 위해 그들이 하고 있는 작업이 있습니다. 그러니까 인간보다 컴퓨터가 더 나은 것 중에는 아마도 WordPress 코딩 표준을 실행하고 보고된 심각한 오류가 있는 부분을 연마하는 것과 같은 것들이 있을 것입니다. 그렇죠? 인간이 이러한 작업을 수행하고 처리하는 대신 자동화할 수 있는 작업을 실행하고 확인하는 플러그인 검사기를 사용하여 플러그인 검토 팀이 초기에 빠르게 일시 중지할 수 있도록 돕는 것이 자동화된 전달입니까? 그렇다면 인적 검토를 진행하고 속도를 높이세요. 자동으로 통과되지 않는 사항이 보고된 경우 해당 플러그인 개발자에게 더 빠른 응답이 될 것이라고 생각합니다. 스캔에서 이러한 초기 사항을 식별했습니다. 문제를 해결하십시오. 그런 다음 업데이트된 zip 파일을 제출하여 다시 과정을 진행하세요.

그래서 나는 그들이 자동화를 추가하기 위해 노력하고 있다는 것을 알고 있으며, 그 길에서 그들을 돕기 위해 더 많은 일을 할수록 더 좋다고 생각합니다. 왜냐하면 이 시점에서 수천 개가 넘는 플러그인이 있고 백로그가 길기 때문입니다. , 거기에는 아무도 돕지 않습니다. 그렇습니다. 그들은 자동화 작업을 하고 있습니다. 나는 그들이 더 많은 일을 하고 싶어한다는 것을 알고 있으며, 그것이 누군가 자동화에 특히 재능이 있고 기여하고 싶어하는 영역이라면 플러그인 검토 팀이 그 분야에 도움을 주고 싶어할 것이라고 생각합니다. 그렇다면 Slack에 문의해 보세요.

DP : 사람들이 WordCampUS에서 발표한 강연이나 10uP가 오픈 소스 공간에서 진행 중인 일부 프로젝트에 대해 질문이 있는 경우 사람들이 귀하에게 연락할 수 있는 가장 좋은 방법은 무엇입니까? ?

JP : 물론이죠. 그래서 제 웹사이트는 jeffpaul.com입니다. 거기에 제 프레젠테이션이 있습니다. GPL을 검색해 보면 아마도 어떤 경우든 첫 번째 게시물 중 하나가 될 것입니다. 그렇지 않으면 내 이메일은 [email protected] 이고, 직장 이메일은 음, 그리고 거의 모든 소셜 네트워크입니다. WordPress.org, GitHub, Twitter, 슬래시 X, 저는 @Jeff Paul입니다. 그런 식으로 소셜 네트워크에서 저를 찾으실 수 있습니다.

DP : 마찬가지로 청취자가 GitHub에서 10uP 작업의 예를 찾고 싶다면 그것이 GitHub의 10up일 것이라고 가정하겠습니다.

JP : 맞습니다. 예, github.com/10up입니다. 우리 플러그인의 모든 저장소는 공개되어 있습니다. 우리 팀은 새로운 이슈와 PR을 면밀히 추적합니다. 이 모든 내용은 Slack 채널로 전송되므로 사람들이 갖고 있는 질문, 토론 등 무엇이든 거기에서 열 수 있습니다. 우리 팀은 이에 대해 상당히 반응해야 하지만 그렇지 않은 경우 WordPress Slack, Twitter에서 이메일을 통해 저에게 연락합니다. 저는 항상 커뮤니티 사람들과 오픈 소스에 대해 이야기하는 것을 기쁘게 생각합니다.

DP : 오늘 함께해주셔서 정말 감사합니다, Jeff. 당신과 이야기를 나눌 수 있어서 정말 즐거웠고 GitHub에서 풀 요청을 수행하고 해당 경험을 자동화하는 방법에 대해 많은 것을 배웠습니다. 매우 도움이 됩니다.

지난주 Press This 에피소드를 놓치셨다면 Carmen Johnson과 MySQL 5.7의 수명 종료에 맞춰 사이트를 준비하기 위해 취할 수 있는 단계와 MySQL 8을 준비하는 방법에 대해 이야기했습니다. 정말 좋은 에피소드입니다. 확인해 보세요. 그리고 더 많은 정보가 있습니다. 복사된 버전을 찾으려면 TorqueMag.io에서 찾을 수 있습니다. WMR의 WordPress 커뮤니티 팟캐스트인 Press This를 들어주셔서 감사합니다. Twitter의 Torque Mag에서 우리의 모험을 따라가실 수 있습니다.

RedCircle, iTunes, Spotify 또는 즐겨 사용하는 팟캐스트 앱에서 Press This를 구독하거나 WMR.fm에서 직접 에피소드를 다운로드할 수 있습니다. 저는 여러분의 호스트인 Dr. Popular입니다. 저는 WP Engine에서의 역할을 통해 WordPress 커뮤니티를 지원하고 있으며 매주 PressThis에서 해당 커뮤니티의 구성원을 조명하는 것을 좋아합니다.