pzoj / pzoj-contest

Contest instance of PZOJ. Separate from the main instance, this instance has more contest-specific functionality.
GNU Affero General Public License v3.0
29 stars 0 forks source link

PZOJ (original repo) is far behind PZOJ-contest #5

Open kevlu8 opened 2 months ago

kevlu8 commented 2 months ago

This fork was meant to be a fork of PZOJ with contest-specific functionality, such as live leaderboards and a more locked down environment. However, I am a shit developer, and have pushed many QoL changes as well as crucial bug fixes to the contest repo instead of the original repo. This has resulted in the original repo being several versions behind of the contest repo.

Some examples of changes implemented in pzoj-contest but not in pzoj are:

At this point, we have 2 options:

  1. Deprecate pzoj, and instead add both contest functionality and upsolving functionality to pzoj-contest
  2. Manually re-commit all changes from pzoj-contest to pzoj

There might also be another option using some kind of git magic that allows us to merge repos excluding certain lines, but I am by no means a git expert.

wdotmathree commented 2 months ago

I am also no git expert so the solution I would go with would be to run a git merge --no-ff in the original repo and then resolve the massive merge conflict after. However I don't believe this is an optimal solution at all and any help with finding a better solution would be greatly appreciated.

kevlu8 commented 2 months ago

Another issue is how we can continue forward - will we need to commit changes to both pzoj and pzoj-contest? This is resolved through option 1, but option 1 will likely require another rewrite of the codebase.

kevlu8 commented 2 months ago

Option 1 is likely more scalable in the future as well. I'm honestly leaning towards doing option 1, but this rewrite may take a few weeks, especially since school has started and I cannot rot in my room all day.

kevlu8 commented 2 months ago

I have started working on option 1, which involves (another) rework of the web backend. ETA for completion is around 2 weeks.

wdotmathree commented 2 months ago

Could we get that as a T-shirt size please, it would really help with keeping us on track. Additionally, please free up time in your schedule for 7hrs of meetings every day to track the progression of this change.

kevlu8 commented 2 months ago

🖕

wdotmathree commented 2 months ago

🖕

kevlu8 commented 1 month ago

ETA for completion has been pushed back, since I have expert level time management skills and can definitely balance my school work with working on projects.