templateflow / templateflow

The TemplateFlow Archive - A DataLad super-dataset
72 stars 14 forks source link

Add template: China Typical school-age children #85

Open Vincent-wq opened 3 years ago

Vincent-wq commented 3 years ago

Hi, dear Oscar, we would like to add China typical school-agae children template into templateflow. Human brain undergoes significant structrual and fucntional changes during the adolescent stage, ethnicity-specific developing path shows the neccesity of using ethnicity-specific brain template in imaging studies (https://doi.org/10.1016/j.scib.2020.07.027), we are very interested in integrating the templates created from Chinese Color Net Project (CCNP), the largest long-term study of brain development and child health in China. This template can serve as a standard brain template for the "eastern standard adolescent brain".

oesteban commented 3 years ago

HI @Vincent-wq, sorry this fell through the cracks.

Please check https://www.templateflow.org/contributing/guidelines/ and the other two subsections under guidelines (see menu on the left).

Perhaps, the most important question is: what is the license of this template? We can add it only if the license allows redistribution. And to be useful to our tools, we probably need permission to create derived works.

Vincent-wq commented 3 years ago

Hi oesteban, I have already oragnized the template tpl-CCNP according to BIDS format. While I was following the instructions from https://www.templateflow.org/contributing/submission/, I found some problems:

  1. I have upllod tpl-CCNP on OSF here: https://osf.io/5uk3s/, I also have a local copy here: ~/tpl-CCNP
  2. tfmgr add tpl-Name --osf-project '<project_id>' no longer has --osf-project '<project_id>' as inputs;
  3. Instead, I run tfmgr get tpl-CCNP --osf-project '5uk3s' first and then tfmgr add tpl-CCNP, then I got the following errors, can you help me with tfmgr?
  4. BTW, I have folked templateflow with my github account, can I directly make a PR?

Great thanks! Cheers, Qing (Vincent)

(py38) vincent@vincent-ThinkPad-T480s:~$ tfmgr add tpl-CCNP
GitHub personal authentication token: 
Preparing Pull-Request (wd=/tmp/tmpexkyp0wj).
Cloning into 'templateflow'...
remote: Enumerating objects: 295, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 295 (delta 0), reused 3 (delta 0), pack-reused 291
Receiving objects: 100% (295/295), 65.63 KiB | 908.00 KiB/s, done.
Resolving deltas: 100% (92/92), done.
[INFO   ] Creating a new annex repo at /tmp/tmpexkyp0wj/templateflow/tpl-CCNP 
[ERROR  ] CommandError: 'git -c diff.ignoreSubmodules=none -C /tmp/tmpexkyp0wj/templateflow/tpl-CCNP init --initial-branch=main' failed with exitcode 129 under /tmp/tmpexkyp0wj/templateflow/tpl-CCNP [err: 'error: unknown option `initial-branch=main'
| usage: git init [-q | --quiet] [--bare] [--template=<template-directory>] [--shared[=<permissions>]] [<directory>]
| 
|     --template <template-directory>
|                           directory from which templates will be used
|     --bare                create a bare repository
|     --shared[=<permissions>]
|                           specify that the git repository is to be shared amongst several users
|     -q, --quiet           be quiet
|     --separate-git-dir <gitdir>
|                           separate git dir from working tree'] [cmd.py:run:408] 
Traceback (most recent call last):
  File "/home/vincent/anaconda3/envs/py38/bin/tfmgr", line 8, in <module>
    sys.exit(cli())
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/click/core.py", line 1137, in __call__
    return self.main(*args, **kwargs)
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/click/core.py", line 1062, in main
    rv = self.invoke(ctx)
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/click/core.py", line 1668, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/click/core.py", line 763, in invoke
    return __callback(*args, **kwargs)
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/tfmanager/cli.py", line 219, in add
    dl.create(
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/interface/utils.py", line 481, in eval_func
    return return_func(generator_func)(*args, **kwargs)
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/interface/utils.py", line 474, in return_func
    results = list(results)
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/interface/utils.py", line 393, in generator_func
    for r in _process_results(
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/interface/utils.py", line 556, in _process_results
    for res in results:
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/core/local/create.py", line 396, in __call__
    tbrepo = AnnexRepo(
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/support/repo.py", line 154, in __call__
    instance = type.__call__(cls, *new_args, **new_kwargs)
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/support/annexrepo.py", line 191, in __init__
    super(AnnexRepo, self).__init__(
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/support/gitrepo.py", line 941, in __init__
    self._create_empty_repo(path, create_sanity_checks, **git_opts)
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/support/gitrepo.py", line 1010, in _create_empty_repo
    stdout, stderr = self._call_git(
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/support/gitrepo.py", line 2140, in _call_git
    res = runner.run(
  File "/home/vincent/anaconda3/envs/py38/lib/python3.8/site-packages/datalad/cmd.py", line 408, in run
    raise CommandError(
datalad.support.exceptions.CommandError: CommandError: 'git -c diff.ignoreSubmodules=none -C /tmp/tmpexkyp0wj/templateflow/tpl-CCNP init --initial-branch=main' failed with exitcode 129 under /tmp/tmpexkyp0wj/templateflow/tpl-CCNP [err: 'error: unknown option `initial-branch=main'
usage: git init [-q | --quiet] [--bare] [--template=<template-directory>] [--shared[=<permissions>]] [<directory>]

    --template <template-directory>
                          directory from which templates will be used
    --bare                create a bare repository
    --shared[=<permissions>]
                          specify that the git repository is to be shared amongst several users
    -q, --quiet           be quiet
    --separate-git-dir <gitdir>
                          separate git dir from working tree']
oesteban commented 3 years ago

Hi @Vincent-wq, I commented on Neurostars, but considering there's been progress on setting up the submission pipeline I thought I would write.

I've skimmed out your data structure on OSF. The only prominent issue I could find is that the overall id (CCNP) does not match that in the filenames. e.g., tpl-Dong2020_cohort-12_res-1_T1w.nii.gz should be tpl-CCNP_cohort-12_res-1_T1w.nii.gz. Other than that, this is looking good. I'll let you know when everything is ready for you to try.

Vincent-wq commented 3 years ago

Hi @Vincent-wq, I commented on Neurostars, but considering there's been progress on setting up the submission pipeline I thought I would write.

I've skimmed out your data structure on OSF. The only prominent issue I could find is that the overall id (CCNP) does not match that in the filenames. e.g., tpl-Dong2020_cohort-12_res-1_T1w.nii.gz should be tpl-CCNP_cohort-12_res-1_T1w.nii.gz. Other than that, this is looking good. I'll let you know when everything is ready for you to try.

Great thanks for you reply. We have discussed about the tpl name with PIs, and have agreed on "devCCNP2020Dong". I have updated the tpl name for the tpls on OSF (https://osf.io/5uk3s/) as well. Looking forward to the new tfmgr tool!