커스텀 Ruby gem 사용

안녕하세요! 며칠째 이 문제로 고생하고 있어서 도움이 필요합니다!

discordrb Ruby 게мом을 필요로 하는 플러그인의 포크를 개발하고 있습니다. 이유를 알 수 없지만, discordrb | RubyGems.org | your community gem host 에 있는 최신 버전은 약 2년 전 버전인 3.4.0이며 버그가 많습니다.

다행히 GitHub - shardlab/discordrb: Discord API for Ruby · GitHub 에서 최신 버전의 플러그인을 찾을 수 있지만, RubyGems에 게시되지 않았습니다 :confused:

이 게모/의존성의 GitHub 버전을 어떻게 사용할 수 있을까요? 거의 모든 방법을 시도해 본 것 같습니다.

보셨나요?: Discord Bot Construction Kit 🤖

아직도 활발하게 개발 중입니다. 최근 개발자들과 이야기해 본 결과, 다음 버전은 “완성될 때” 나올 예정이라고 합니다. 그 외에도 Threading(쓰레딩) 지원 기능을 개발하고 있습니다.

이것들은 같은 것입니다. 단지 gem 문서만 최신 버전으로 3.4.0이라고 표기하고 있을 뿐입니다. 다른 하나는 공식 저장소입니다. 첫 번째 링크에서 Homepage 링크를 클릭하면 두 번째 링크로 이동합니다 ;). gem 문서에 3.4.1이 나열되지 않은 이유는 전혀 알 수 없습니다.

정말 필요하다면 GitHub 저장소를 참조할 수 있습니다: https://stackoverflow.com/questions/2823492/install-gem-from-github-branch

네, 봤습니다! 저희 플러그인은 그 프로젝트의 포크의 포크인 것 같습니다. 저희 경우 특정 로직이 필요하기 때문에 자체 버전을 개발하는 것이 합리적입니다.

이것이 Discourse 설정에서 어떻게 적용되는지 궁금합니다. 이미 plugin.rb에서 GitHub를 통해 종속성을 선언하는 거의 모든 방법을 시도해 보았다고 생각합니다(저희 커밋 히스토리를 확인해 보세요 :smile:)

image

GitHub 소스를 가리키려는 제가 시도한 모든 gem 문법에서 빌드가 실패합니다. 이는 discourse/lib/plugin_gem.rb at main · discourse/discourse · GitHub 가 플러그인 gem의 .gemspec 파일을 찾는 방식과 관련이 있을 것 같습니다. 우회 방법에 대한 단계를 알려주실 수 있으신가요?

안녕하세요 @FerrariFlunker
holidays 지엄의 로컬 카피를 사용하는 공식 플러그인의 예시입니다. 비슷한 패턴을 사용하실 수 있을 것 같습니다.

아래는 포함되는 방법입니다.

git 저장소의 로컬 버전(참고: 서브모듈이 될 수 없으며, 진정한 로컬 복사본이어야 함)과 libdir 포함 라인이 완벽하게 작동했습니다! @fzngagan님과 @merefield님, 도움을 주셔서 정말 감사합니다. 진심으로 감사드립니다 :+1:

이 주제가 다른 사람들이 이 답변을 찾는 데 도움이 되기를 바랍니다. 이 문제를 해결하는 데 꽤나 긴 여정이었거든요 :smile:

또한 GitHub Packages를 통해 gem을 게시할 수도 있습니다. Publishing a Ruby gem to the GitHub Package Registry | michaelheap.com