3.0.0-alpha.0

6602 단어 opensource
이 릴리스는 최근 도커 변경 사항 덕분에 매우 원활하고 빠르게 진행되었으며 이제 도커 이미지를 빌드하는 대신 가져옵니다.

파서의 e2e 테스트 개선:



문제는 내가 실제 피드를 feedQueue에 로드하고 네트워크 요청을 통해 실제 리소스를 다운로드하도록 만들었다는 것입니다. 이 접근 방식은 올바르지 않고 무작위 실패가 발생하기 쉽습니다. David는 test-web-content 의 리소스를 사용하도록 제안했습니다. 돌이켜보면 다른 피드xml를 만들어야 할 것 같습니다. 아래 피드는 중복됩니다. PR #3773

const valid = [
      {
        author: 'Tue Nguyen',
        url: 'http://localhost:8888/feed.xml',
      },
      {
        author: 'Antonio Bennett',
        url: 'http://localhost:8888/feed.xml',
      },
    ];


유효하지 않은 피드의 경우 대기열에 존재하지 않는 피드 URL을 제공했습니다.

const invalid = [
      {
        author: 'John Doe',
        url: 'https://johnhasinvalidfeed.com/feed',
      },
      {
        author: 'Jane Doe',
        url: 'https://janehasinvalidfeed.com/feed',
      },
    ];


Supabase에서 피드를 가져오도록 파서를 변경합니다.


SUPABASE_URL & ANON_KEYparser 컨테이너에 추가하여 데이터베이스에 연결하고 모든 피드를 반환하는 함수를 작성했습니다. PR #3363

  async getAllFeeds() {
    const { data: feeds, error } = await supabase.from('feeds').select('wiki_author_name, url');
    if (error) {
      logger.warn({ error });
      throw Error(error.message, "can't fetch feeds from supabase");
    }
    const formattedFeeds = feeds.map((feed) => ({
      author: feed.wiki_author_name,
      url: feed.url,
    }));
    return formattedFeeds;
  },


테스트의 일부를 수정해야 했고wiki parsing 코드가 제거되었습니다.

src/백엔드 제거:



This one은 거대하지만 적어도 새 코드를 작성할 필요는 없었습니다 😅. 대부분의 작업은 레거시backend의 어떤 부분이 다른 서비스에서 여전히 사용되고 있는지 확인하는 것이었습니다. Jerry는 이 PR에 많은 도움을 주었습니다. 파일을 검토한 결과 API_URL가 여전히 서비스로 전달되었지만 /src/web/app/src/pages/_document.tsx 에서 한 번만 사용되었습니다.
PR은 작동하지만 여전히 수행하고 테스트해야 할 작업이 있습니다.

리뷰를 하거나 다른 PR을 보고 배운 것 😛:


  • PR #3240의 SWR 반응 후크
  • 백업 문제를 해결하는 흥미로운 방법PR #3405
  • ORM을 사용하여 데이터베이스 변경 관리PR #3418
  • 좋은 웹페이지 즐겨찾기