Skip to content
This repository was archived by the owner on Sep 14, 2021. It is now read-only.

feat(dart_doc_syncer): sync selected projects and other improvements #13

Merged
merged 1 commit into from
Jun 8, 2016

Conversation

chalin
Copy link
Contributor

@chalin chalin commented Jun 6, 2016

While maintain the ability to sync a single project by name, this commit obviates the need to maintain a list of examples to sync. Now dart_doc_syncer considers any example project with a doc syncer data file (.docsync.json) as a potential candidate for syncing.

Multiple projects can be synced at a time by use of the --match <path-regexp> command-line option.

Other changes:

  • Fatal errors from git commands are now reported (rather than ignored).
  • docsync.json "schema" and SyncData class have changed:
    • name is now taken to represent the example folder name; e.g.,
      'architecture'; it is omitted from the data file since its value can be
      derived.
    • Added title, e.g. 'Architecture Overview'.
    • Added docPart, e.g. 'guide' (from 'guide/architecture').
    • docHref and liveExampleHref can now be relative URIs.
  • By default gh-pages not built unless there our source changes (this makes processing all examples much quicker); use --force-build to change this default behavior.
  • New command-line flags (see command help for details):
    • An ng.io branch other than master can be specified.
    • --keep-tmp, --no-push, --force-build
  • Tmp directory is set to ~/tmp or /tmp if possible, otherwise fallback to script bin
    folder.
  • Dry-run no longer forces verbosity.
  • Updates to README.md file generation.

Note, the behavior of sync_add has not be changed.

@thso
Copy link
Contributor

thso commented Jun 6, 2016

Thanks for the PR! I'll review this one tomorrow as I don't have much time today.

@chalin chalin force-pushed the chalin-new-sync-all-option-0604 branch from 3df7c22 to 966b971 Compare June 6, 2016 16:58
While maintain the ability to sync a single project by name,
this commit obviates the need to maintain a list of examples to sync.
Now dart_doc_syncer considers any example project with
a doc syncer data file (`.docsync.json`) as a potential candidate for
syncing.
Multiple projects can be synced at a time by use of
the `--match <path-regexp>` command-line option.

Other changes:

- Dry-run no longer forces verbosity.
- Updates to README.md file generation.
- docsync.json "schema" has changed:
  - `name` is now taken to represent the example folder name; e.g.,
'architecture'; it is omitted from the data file since its value can be
derived.
  - Added `title`, e.g. 'Architecture Overview'.
  - Added `docPart`, e.g. 'guide' (from 'guide/architecture').
  - `docHref` and `liveExampleHref` can now be relative URIs.
- New command-line flags (see command help for details):
  - An ng.io branch other than master can be specified.
  - `--keep-tmp`, `--no-push`.
- Tmp directory is set to ~/tmp if it exists instead of the script bin
folder.

Note, the behavior of `sync_add` has not be changed.
@chalin chalin force-pushed the chalin-new-sync-all-option-0604 branch from 966b971 to 6e4d6f4 Compare June 7, 2016 17:01
@chalin
Copy link
Contributor Author

chalin commented Jun 7, 2016

Any update on this?

@thso
Copy link
Contributor

thso commented Jun 8, 2016

I'll merge it as is, it's awesome!

Nit: It would be easier to review if you split this into mutliple PRs next time.

@thso thso merged commit 26d64c8 into dart-archive:master Jun 8, 2016
@chalin chalin deleted the chalin-new-sync-all-option-0604 branch June 8, 2016 14:01
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants