Owez / yark

YouTube archiving made simple.
https://pypi.org/project/yark/
MIT License
2.13k stars 63 forks source link

Tech debt crushing and contributing file #87

Closed Owez closed 1 year ago

Owez commented 1 year ago

Spending today removing any slack and tech debt from the core archiving system because some has been building up with documentation and conventions.

To help fix this in the future (and to encourage new contributors) there's also a first draft of a CONTRIBUTING file included. This will be expanded and changed over time because there are a lot of conventions not included, but it's a nice starting point.

Closes #32

Owez commented 1 year ago

Still got a lot to do, this will overflow into tomorrow because I've got to study

Owez commented 1 year ago

Still a lot to do, plus fixing 500 circular deps because of the nice restructure

yark/
    global files
    archiver/
        core archiver files
        video/
            video files
Owez commented 1 year ago

Will need to merge changes from #89

Owez commented 1 year ago

Just need a new ctx class, a ton of nice oddjobs have been done here

Owez commented 1 year ago

Biig PR and still some polish to do but its mostly nice. If your contributing something for Yark 1.3 its best to use this branch as a base otherwise there will be a lot of merge conflicts

Owez commented 1 year ago

Few big changes left still. This has became a hog of a PR so hopefully I can get it finished tomorrow and focus on comments again

Owez commented 1 year ago

Viewer doesnt work on current commit because of that NotImplementedError. This PR has done a ton of work to get Yark into better shape at least

Owez commented 1 year ago

I think this is ready to merge into master. Everything has been improved a lot, but there is still a ways to go with:

None of these affect the typical end-user, but for Yark to be properly maintained for ages to come these need to be worked on. Seperating the business logic will also let derivative projects thrive because Yark is no longer tied to being a single CLI application.