Add a .jazzy.yml file and scripts that create and update it

This commit is contained in:
Jesse Farless 2016-06-08 15:19:50 +02:00
parent e26bce70af
commit 3ebb38c681
3 changed files with 308 additions and 0 deletions

278
.jazzy.yml Normal file
View File

@ -0,0 +1,278 @@
---
custom_categories:
- name: RxSwift
children:
- AnyObserver
- Cancelable
- ConnectableObservableType
- Disposable
- Errors
- Event
- ImmediateSchedulerType
- Observable+Extensions
- Observable
- ObservableConvertibleType
- ObservableType
- ObserverType
- Rx
- RxMutableBox
- SchedulerType
- name: RxSwift/Concurrency
children:
- AsyncLock
- Lock
- LockOwnerType
- SynchronizedDisposeType
- SynchronizedOnType
- SynchronizedSubscribeType
- SynchronizedUnsubscribeType
- name: RxSwift/DataStructures
children:
- Bag
- InfiniteSequence
- PriorityQueue
- Queue
- name: RxSwift/Disposables
children:
- AnonymousDisposable
- BinaryDisposable
- BooleanDisposable
- CompositeDisposable
- DisposeBag
- DisposeBase
- NAryDisposable
- NopDisposable
- RefCountDisposable
- ScheduledDisposable
- SerialDisposable
- SingleAssignmentDisposable
- StableCompositeDisposable
- SubscriptionDisposable
- name: RxSwift/Extensions
children:
- String+Rx
- name: RxSwift/Observables/Implementations
children:
- AddRef
- Amb
- AnonymousObservable
- Buffer
- Catch
- CombineLatest+arity
- CombineLatest+CollectionType
- CombineLatest
- Concat
- ConnectableObservable
- Debug
- Deferred
- DelaySubscription
- DistinctUntilChanged
- Do
- ElementAt
- Empty
- Error
- Filter
- Generate
- Just
- Map
- Merge
- Multicast
- Never
- ObserveOn
- ObserveOnSerialDispatchQueue
- Producer
- Range
- Reduce
- RefCount
- Repeat
- RetryWhen
- Sample
- Scan
- Sequence
- ShareReplay1
- ShareReplay1WhileConnected
- SingleAsync
- Sink
- Skip
- SkipUntil
- SkipWhile
- StartWith
- SubscribeOn
- Switch
- Take
- TakeLast
- TakeUntil
- TakeWhile
- Throttle
- Timeout
- Timer
- ToArray
- Using
- Window
- WithLatestFrom
- Zip+arity
- Zip+CollectionType
- Zip
- name: RxSwift/Observables
children:
- Observable+Aggregate
- Observable+Binding
- Observable+Concurrency
- Observable+Creation
- Observable+Debug
- Observable+Multiple
- Observable+Single
- Observable+StandardSequenceOperators
- Observable+Time
- name: RxSwift/Observers
children:
- AnonymousObserver
- ObserverBase
- TailRecursiveSink
- name: RxSwift/Platform
children:
- Platform.Darwin
- Platform.Linux
- name: RxSwift/Schedulers
children:
- ConcurrentDispatchQueueScheduler
- ConcurrentMainScheduler
- CurrentThreadScheduler
- DispatchQueueSchedulerQOS
- HistoricalScheduler
- HistoricalSchedulerTimeConverter
- ImmediateScheduler
- MainScheduler
- OperationQueueScheduler
- RecursiveScheduler
- SchedulerServices+Emulation
- SerialDispatchQueueScheduler
- VirtualTimeConverterType
- VirtualTimeScheduler
- name: RxSwift/Schedulers/Internal
children:
- AnonymousInvocable
- InvocableScheduledItem
- InvocableType
- ScheduledItem
- ScheduledItemType
- name: RxSwift/Subjects
children:
- BehaviorSubject
- PublishSubject
- ReplaySubject
- SubjectType
- Variable
- name: RxCocoa/Common
children:
- CLLocationManager+Rx
- DelegateProxy
- DelegateProxyType
- KVORepresentable+CoreGraphics
- KVORepresentable+Swift
- KVORepresentable
- Logging
- NSLayoutConstraint+Rx
- Observable+Bind
- Reactive
- RxCocoa
- RxTarget
- RxTextInput
- SectionedViewDataSourceType
- name: RxCocoa/Common/CocoaUnits
children:
- ControlEvent
- ControlProperty
- UIBindingObserver
- name: RxCocoa/Common/CocoaUnits/Driver
children:
- ControlEvent+Driver
- ControlProperty+Driver
- Driver+Operators+arity
- Driver+Operators
- Driver+Subscription
- Driver
- ObservableConvertibleType+Driver
- Variable+Driver
- name: RxCocoa/Common/Observables/Implementations
children:
- ControlTarget
- DeallocObservable
- KVOObservable
- KVOObserver
- MessageSentObserver
- name: RxCocoa/Common/Observables
children:
- NSNotificationCenter+Rx
- NSObject+Rx+KVORepresentable
- NSObject+Rx+RawRepresentable
- NSObject+Rx
- NSURLSession+Rx
- name: RxCocoa/Common/Proxies
children:
- RxCLLocationManagerDelegateProxy
- name: RxCocoa/iOS/DataSources
children:
- RxCollectionViewReactiveArrayDataSource
- RxTableViewReactiveArrayDataSource
- name: RxCocoa/iOS/Events
children:
- ItemEvents
- name: RxCocoa/iOS
children:
- NSTextStorage+Rx
- UIActivityIndicatorView+Rx
- UIAlertAction+Rx
- UIApplication+Rx
- UIBarButtonItem+Rx
- UIButton+Rx
- UICollectionView+Rx
- UIControl+Rx
- UIDatePicker+Rx
- UIGestureRecognizer+Rx
- UIImagePickerController+Rx
- UIImageView+Rx
- UILabel+Rx
- UINavigationItem+Rx
- UIPageControl+Rx
- UIPickerView+Rx
- UIProgressView+Rx
- UIRefreshControl+Rx
- UIScrollView+Rx
- UISearchBar+Rx
- UISearchController+Rx
- UISegmentedControl+Rx
- UISlider+Rx
- UIStepper+Rx
- UISwitch+Rx
- UITabBarItem+Rx
- UITableView+Rx
- UITextField+Rx
- UITextView+Rx
- UIView+Rx
- UIViewController+Rx
- name: RxCocoa/iOS/Protocols
children:
- RxCollectionViewDataSourceType
- RxTableViewDataSourceType
- name: RxCocoa/iOS/Proxies
children:
- RxCollectionViewDataSourceProxy
- RxCollectionViewDelegateProxy
- RxImagePickerDelegateProxy
- RxPickerViewDelegateProxy
- RxScrollViewDelegateProxy
- RxSearchBarDelegateProxy
- RxSearchControllerDelegateProxy
- RxTableViewDataSourceProxy
- RxTableViewDelegateProxy
- RxTextStorageDelegateProxy
- RxTextViewDelegateProxy
- name: RxCocoa/OSX
children:
- NSButton+Rx
- NSControl+Rx
- NSImageView+Rx
- NSSlider+Rx
- NSTextField+Rx
- NSView+Rx

5
scripts/release-prep.sh Executable file
View File

@ -0,0 +1,5 @@
# run tests
. scripts/pre-release-tests.sh
# update jazzy documentation config
./scripts/update-jazzy-config.rb

25
scripts/update-jazzy-config.rb Executable file
View File

@ -0,0 +1,25 @@
#!/usr/bin/env ruby
require 'yaml'
included_directories = %w(RxSwift RxCocoa)
files_and_directories = included_directories.collect do |directory|
Dir.glob("#{directory}/**/*")
end.flatten
swift_files = files_and_directories.select { |file| file =~ /.*\.swift$/ }
directory_and_name = swift_files.map do |file|
{ File.dirname(file) => File.basename(file, '.swift') }
end
categories = directory_and_name.flat_map(&:entries)
.group_by(&:first)
.map { |k,v| { 'name' => k, 'children' => v.map(&:last) } }
config = { 'custom_categories' => categories }
File.open('.jazzy.yml','w') do |h|
h.write config.to_yaml
end