Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DONTMERGER: Debug bk webinterface #769

Closed
wants to merge 113 commits into from

Conversation

debanjum
Copy link
Contributor

@debanjum debanjum commented Sep 8, 2016

No description provided.

debanjum and others added 30 commits June 14, 2016 01:28
datalad ls -w results in filesystem traversal at
mentioned location. stores data in list with a flat
sublist of files, directories per git/annex submodule.
can handle recursive case too.

Next: format to json for web UI consumption
reduce code in fsmodel class by inheriting from dsmodel
fix bugs in list flattening

date not working, parent submodule incorrect after first,
symlink unicode coercion error in non datalad modules
modify DsModel for usability in FsModel after inheritance
work on issue datalad#520
prints json as it computes each directory node information.
not storing json in variable/memory as expect a lot of files in annex.

this json is to be consumed by the web UI for the datasets.
refer issue datalad#520.
Add DOC-strings to _ls_web class, follow convention
Based on comments on pull#541
use dicts to allow json.dumps to handle conversion to json
refactor to traverse complete directory tree only once
improve node names using leaf_node function
remove redundant parent repo extraction code
Each subdirectory has a json containing the metadata on
files etc available in that subdirectory only, no deeper

standardizes json to simplify rendering dirs for website
adds search for file at each directory level,
adds css styling based on file/folder type(i.e annex, git etc)
uses datatables library for rendering json as table and dir traversal
no need to unwrap each submodule before passing to fs_traverse
ignored index.html, ignore root's parent for web publish
handle GET parameters in URL to specify directory to load
useful for adding permalink feature
remove local assets, caching should take care of asset load speed
update browser url to reflect current directory being visualized
use the dir argument passed in url to find and load dir metadata json
allows accessing previous location in dataset with browser back button
passing file, display, delete option explicitly prevents users
from inadvertently populating their dataset with json metadata files

minor bug fix in column rendering of html
automatically update dataset metadata post-update
scp web interface html from local datalad repository
while initialising publication target
hardcoded path to datalad virtualenv on datalad.org server,
so just works for our use-case currently, fix will require
post-update hook to know location of datalad on server automagically/etc
datatable sorted by node.type, datatable doesn't support custom order
need sorter to create custom ordering with directories at the top
Removes '../' parent row from top dataset in html
instead of datalad ls.
…rely in the future

We might not bother with those relative paths until we are actually printing those
models and they might all get "relpath" property if they are provided "toppath"
debanjum and others added 28 commits September 1, 2016 14:25
Add basic tests for web user interface utility functions
Fix traversal issues with the new separate metadata_dir
and GET param based traversal in root_ds.

Needed to know when current location a dataset to pick its metadata
from its metadata_dir with its hash computed using root('/') string

Wrote regression tests for fixed bugs
return window.location in loc to allow mocking all window.location
make click_handler, metadata locator into function for testability
test click_handler
git can't see `git submodule` from inside .git as post-update hook
run from inside .git directory, doesn't see submodules

hook updated to get out of .git to run metadata refresh (ls --json)
Add JS testing tools QUnit, Sinon license information to COPYING
Add test to ensure replace when existing=replace
resolves datalad#732
Enable publish in test for hierarchical dataset
…ace-bisect-ssh-test-fail

Conflicts:
	datalad/tests/utils.py - support both strip and re ok_file_has_content
Conflicts:
	.travis.yml -- kept both symlinked TMPDIR logic and gruntfile one
@coveralls
Copy link

coveralls commented Sep 8, 2016

Coverage Status

Coverage decreased (-1.9%) to 87.028% when pulling 88ac999 on debanjum:debug-bk-webinterface into 014a507 on datalad:master.

@yarikoptic yarikoptic closed this Sep 8, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants