coala / coala-html

Interactive website generator using results from coala
GNU Affero General Public License v3.0
17 stars 40 forks source link

Make the package hackable and updatable #84

Open tushar-rishav opened 8 years ago

tushar-rishav commented 8 years ago

tl;dr

The goal is to allow user to fetch the latest updates from coalahtml main package and also let me hack on the local package. An ideal solution would be that allows both.

Imagine user has a local copy of coalahtml angular app which is generated the first time user runs coala-html. Let's call it A. Now he didn't like certain feature and so he decided to make changes to A locally, so now it's A -> A*. Also user may want to fetch the latest changes from coalahtml main pacakge and Ideally any updates from coalahtml main package should be applied to A* keeping the local changes(applied by the user) intact and not overwriting it. Now the sugegsted patch basically checks if the user asks for reload, if yes then just ignore the local changes and replace the local files with coalahtml main angular package files that means A* -> A Which user wouldn't want User would rather want to keep A* and still apply the patch from main package. otherwise keep the A* intact and just update the json configs

For reference the patch is at http://pastebin.com/TA8xqNB2 It doesn't work completely as there are flaws in this approach. Also I gave up working on this approach because we needed something better solution. The patch has been added to support the explanation above.

CC @Uran198

gitmate-bot commented 8 years ago

Thanks for reporting this issue!

@coala-analyzer/coala-contributors, your aid is required, fellow coalaian. Help us triage and solving this issue!

tushar-rishav commented 8 years ago

One approach was to just check if certain files exist. This approach isn't nice because @Uran198 pointed out that checking only index.html is bad for several reasons:

attila0x2A commented 8 years ago

Another approach could be to use git clone to get angular app and separate it into separate repo. This way if user will hack, he can merge it, or use entirely different application for presenting. Seems very flexible, not sure about the ease of implementation, though.