code-corps / code-corps/code-corps-api

Reorganize GitHub modules

未关闭
#1,092 4 条评论 0 个 reaction 已指派 1 人 已被 @begedin 认领 在 GitHub 查看
in progress needs estimate
主要语言
Elixir
星标
234
派生
82
PR 合并指标
30 天内没有已合并 PR

描述

# Problem

Much of the GitHub syncing can be reorganized as follows:

- [x] `CommentSyncer` and `TaskSyncer` need to move out of `Event`; structure could be like:
- `sync/issue/issue.ex` `Sync.Issue` (main entry point for handling the syncing of an issue)
- `sync/issue/body_parser.ex` `Sync.Issue.BodyParser` (parses issue body)
- `sync/issue/task/task.ex` `Sync.Issue.Task` (syncs the issue to a `Task`)
- `sync/issue/task/changeset.ex` `Sync.Issue.Task.Changeset` (deals with changesets)
- `sync/issue/github_issue/github_issue.ex` `Sync.Issue.GithubIssue` (syncs the issue to a `GithubIssue`)
- etc.
- [x] `ChangesetBuilder`s
- [x] need to move out event to wherever syncing goes
- [x] `map` can be removed
- [x] naming needs to be rethought to reflect that these are changesets for Code Corps models (`Task`, `Comment`, etc)
- [ ] `GithubRepo` installation events need to have `common/repo_finder` (renamed to `repo_linker`)
- [x] `CommentDeleter` needs to move out of `Event`
- [x] `CommentDeleter` needs to delete `GithubComment`
- [x] `ChangesetBuilder`s need `create_` and `update_` functions made public, `build_` fns removed, unit tests added
- [ ] Replace instances of `find_or_init` and `commit` with insert_or_update and find


贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。