fox 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.project.yaml +8 -0
- data/AUTHORS.md +22 -0
- data/CHANGELOG.md +0 -0
- data/COPYING.md +11 -0
- data/FAQ.md +7 -0
- data/Gemfile +105 -0
- data/LICENSE.md +11 -0
- data/MAINTAINERS.md +40 -0
- data/README.md +80 -0
- data/Rakefile +29 -0
- data/bin/fox +22 -0
- data/fox.gemspec +132 -0
- data/lib/fox.rb +25 -0
- data/lib/fox/interface/rake/cucumber.rb +36 -0
- data/lib/fox/interface/rake/default.rb +28 -0
- data/lib/fox/interface/rake/documentation.rb +46 -0
- data/lib/fox/interface/rake/guard.rb +13 -0
- data/lib/fox/interface/rake/helpers.rb +27 -0
- data/lib/fox/interface/rake/library.rb +126 -0
- data/lib/fox/interface/rake/metric.rb +13 -0
- data/lib/fox/interface/rake/rspec.rb +31 -0
- data/lib/fox/interface/thor/info.thor +291 -0
- data/lib/fox/interface/thor/mixin/config_choice.rb +27 -0
- data/lib/fox/interface/thor/mixin/configuration.rb +28 -0
- data/lib/fox/interface/thor/mixin/default.rb +30 -0
- data/lib/fox/interface/thor/mixin/default_config.rb +31 -0
- data/lib/fox/interface/thor/mixin/guess.rb +57 -0
- data/lib/fox/interface/thor/mixin/logger.rb +43 -0
- data/lib/fox/interface/thor/mixin/shell.rb +225 -0
- data/lib/fox/interface/thor/version.thor +33 -0
- data/lib/fox/version.rb +13 -0
- data/spec/fox_spec.rb +10 -0
- data/spec/spec_helper.rb +55 -0
- metadata +159 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 814f5a6e5abc6ffd2eef794ba91812a6643294b4
|
4
|
+
data.tar.gz: 686b3443f7a26d29d11ca2fdec87aadc94c45045
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: b77d62f2e1b0027dd7b2c79c7cf64a81b5ad5cf9365c69149142c6c545a50e1887983df30d7470fdfa2c0d76b359f60282607e86fc1875c9f0d05422f352d547
|
7
|
+
data.tar.gz: 84c95f63f6867e0c6467a6b298210b4980d5d1dfd89b1cffd25013d543b0ffc759ad9b3f4ad2a0231cc30728b518697583f8eb633e74287033c6ac84751c6f71
|
data/.project.yaml
ADDED
data/AUTHORS.md
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Please refer to the MAINTAINERS file for more information.
|
2
|
+
|
3
|
+
AUTHORS
|
4
|
+
|
5
|
+
The following list is a narration of persons who contributed to this project.
|
6
|
+
|
7
|
+
P: Person
|
8
|
+
M: Mail patches to
|
9
|
+
L: Mailing list that is relevant to this area
|
10
|
+
W: Web-page with status/info
|
11
|
+
S: Status, one of the following:
|
12
|
+
|
13
|
+
Creator: Original Developer and Maintainer of the code, please refer first to Maintainer.
|
14
|
+
Associated: Has some relevance to the project and is referable to specific parts of the project.
|
15
|
+
|
16
|
+
FOX
|
17
|
+
P: Bjoern Rennhak
|
18
|
+
M: bjoern AT clothesnetwork DOT com
|
19
|
+
L: -
|
20
|
+
W: http://github.com/rennhak
|
21
|
+
S: Creator
|
22
|
+
|
data/CHANGELOG.md
ADDED
File without changes
|
data/COPYING.md
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
|
2
|
+
These files are part of the FOX solution.
|
3
|
+
|
4
|
+
Copyright 2014, Bjoern Rennhak, All rights reserved
|
5
|
+
|
6
|
+
This project is open source software under GPLv3 license.
|
7
|
+
|
8
|
+
This software is distributed in the hope that it will be useful,
|
9
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
10
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
11
|
+
|
data/FAQ.md
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
|
2
|
+
Q: Why do you have a Gemfile and a gemspec if this is a gem?
|
3
|
+
A: For local development its quite convenient to have a Gemfile and Gemfile.lock, but once done for
|
4
|
+
publishing etc. you just need the gemspec. This kind of hybrid approach is a bit unorthodox but
|
5
|
+
useful. Once the software is mature its ok to remove gemfile, lock file, and other pinnings since
|
6
|
+
your gem is supposed to run everywhere.
|
7
|
+
|
data/Gemfile
ADDED
@@ -0,0 +1,105 @@
|
|
1
|
+
# File: Gemfile
|
2
|
+
|
3
|
+
# Sources to draw gems from
|
4
|
+
source "https://rubygems.org"
|
5
|
+
# source 'http://gems.rubyforge.org'
|
6
|
+
# source 'http://gemcutter.org'
|
7
|
+
|
8
|
+
|
9
|
+
# Depend on a certain ruby version
|
10
|
+
ruby '2.1.3'
|
11
|
+
|
12
|
+
|
13
|
+
group :default do # {{{
|
14
|
+
|
15
|
+
# System
|
16
|
+
gem 'bundler'
|
17
|
+
gem 'rake'
|
18
|
+
|
19
|
+
end # }}}
|
20
|
+
|
21
|
+
group :development do # {{{
|
22
|
+
|
23
|
+
# Generate manuals
|
24
|
+
gem 'ronn', '<= 0.7.2'
|
25
|
+
gem 'rdiscount'
|
26
|
+
|
27
|
+
# REPL
|
28
|
+
gem 'racksh'
|
29
|
+
gem 'pry'
|
30
|
+
|
31
|
+
platforms :ruby_19, :ruby_20 do
|
32
|
+
gem 'pry-debugger'
|
33
|
+
gem 'pry-stack_explorer'
|
34
|
+
end
|
35
|
+
|
36
|
+
gem 'guard'
|
37
|
+
gem 'guard-rake'
|
38
|
+
gem 'guard-shell'
|
39
|
+
|
40
|
+
end # }}}
|
41
|
+
|
42
|
+
group :test do # {{{
|
43
|
+
|
44
|
+
# Unit-tests
|
45
|
+
gem 'rspec', '~> 3.0.0'
|
46
|
+
gem 'rspec-its'
|
47
|
+
gem 'rspec-mocks'
|
48
|
+
gem 'guard-rspec', require: false
|
49
|
+
|
50
|
+
# Integration tests
|
51
|
+
gem 'aruba'
|
52
|
+
gem 'cucumber'
|
53
|
+
|
54
|
+
# Metrics
|
55
|
+
gem 'simplecov', '~> 0.9.0'
|
56
|
+
gem 'simplecov-rcov'
|
57
|
+
gem 'simplecov-rcov-text'
|
58
|
+
gem 'metric_fu', '>= 4.5.x'
|
59
|
+
|
60
|
+
# Fixture helper
|
61
|
+
gem 'randexp'
|
62
|
+
|
63
|
+
# Spice up testing
|
64
|
+
gem 'nyan-cat-formatter'
|
65
|
+
|
66
|
+
end # }}}
|
67
|
+
|
68
|
+
group :security do # {{{
|
69
|
+
|
70
|
+
# 0-days?
|
71
|
+
gem 'bundler-audit'
|
72
|
+
|
73
|
+
# Secure credentials
|
74
|
+
gem 'secure_yaml'
|
75
|
+
|
76
|
+
end # }}}
|
77
|
+
|
78
|
+
group :profiling do # {{{
|
79
|
+
|
80
|
+
gem 'stackprof'
|
81
|
+
|
82
|
+
end # }}}
|
83
|
+
|
84
|
+
group :docs do # {{{
|
85
|
+
|
86
|
+
gem 'yumlcmd'
|
87
|
+
gem 'coderay'
|
88
|
+
gem 'redcarpet'
|
89
|
+
gem 'github-markup'
|
90
|
+
gem 'htmlentities'
|
91
|
+
|
92
|
+
# Documentation
|
93
|
+
gem 'yard'
|
94
|
+
gem 'wicked_pdf'
|
95
|
+
gem 'wkhtmltopdf'
|
96
|
+
|
97
|
+
end # }}}
|
98
|
+
|
99
|
+
|
100
|
+
# Declare fox.gemspec
|
101
|
+
gemspec
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
# vim:ts=2:tw=100:wm=100
|
data/LICENSE.md
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
|
2
|
+
These files are part of the FOX solution.
|
3
|
+
|
4
|
+
Copyright 2014, Bjoern Rennhak, All rights reserved
|
5
|
+
|
6
|
+
This project is open source software under GPLv3 license.
|
7
|
+
|
8
|
+
This software is distributed in the hope that it will be useful,
|
9
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
10
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
11
|
+
|
data/MAINTAINERS.md
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
ATTENTION
|
2
|
+
|
3
|
+
Please make sure before E-Mailing any of the person below that you have made sure
|
4
|
+
that the changes are tested and releasable as submitted by you. If you want to report
|
5
|
+
a bug please make sure that it is reproducable and be sure to include all necessary
|
6
|
+
information to fix it.
|
7
|
+
|
8
|
+
If you supply changes please prefer the Unix/Linux patch system (diff -u) as it will be least
|
9
|
+
problematic to test and modify the development code. Again please be sure to submit
|
10
|
+
your Hard-/Software configuration as patches will be rechecked by us and need to be
|
11
|
+
mergable into the tree.
|
12
|
+
|
13
|
+
Please do not forget to include credits or other acknowledgements in your submission.
|
14
|
+
Before submitting anything please make sure that you have the proper rights to submit them
|
15
|
+
and be prepared to submit all rights to Clothes Network Ltd.
|
16
|
+
|
17
|
+
|
18
|
+
MAINTAINERS
|
19
|
+
|
20
|
+
The following list is a narration of person currently in charge of this project.
|
21
|
+
|
22
|
+
P: Person
|
23
|
+
M: Mail patches to
|
24
|
+
L: Mailing list that is relevant to this area
|
25
|
+
W: Web-page with status/info
|
26
|
+
S: Status, one of the following:
|
27
|
+
|
28
|
+
Maintainer: Project Maintainer and general assistance for project coordination
|
29
|
+
Creator: Original Developer and Maintainer of the code, please refer first to Maintainer.
|
30
|
+
Associated: Has some relevance to the project and is referable to specific parts of the project.
|
31
|
+
|
32
|
+
|
33
|
+
FOX
|
34
|
+
P: Bjoern Rennhak
|
35
|
+
M: bjoern AT clothesnetwork DOT com
|
36
|
+
L: -
|
37
|
+
W: http://github.com/rennhak
|
38
|
+
S: Creator, Maintainer
|
39
|
+
|
40
|
+
|
data/README.md
ADDED
@@ -0,0 +1,80 @@
|
|
1
|
+
# Fox
|
2
|
+
Version 0.0.1-1-g385406b
|
3
|
+
|
4
|
+
[](http://badge.fury.io/rb/fox)
|
5
|
+
[](http://img.shields.io/badge/license-GPLv3-brightgreen.svg)
|
6
|
+
|
7
|
+
Fox [1] is a complete solution for scientific paper scaffolding, tooling and author support. It
|
8
|
+
allows the bootstrapping or generation of dummy default paper with a rails scaffold like commandline
|
9
|
+
tool.
|
10
|
+
|
11
|
+
Fox supports the configuration of various methods of pdf push to remote locations to allow for
|
12
|
+
efficient file sharing with co-authors.
|
13
|
+
|
14
|
+
|
15
|
+
Fox, supports currently the following international journals:
|
16
|
+
|
17
|
+
- None, TBD
|
18
|
+
|
19
|
+
Fox, supports currently the following international conferences:
|
20
|
+
|
21
|
+
- IEEE Robotics & Automation Society (ICRA) [2]
|
22
|
+
|
23
|
+
Fox, supports currently the following domestic conferences:
|
24
|
+
|
25
|
+
- None, TBD
|
26
|
+
|
27
|
+
|
28
|
+
[1] Paper Fox, named after an in similar spirit deviation from the german "papier tiger"
|
29
|
+
[2] IEEE Robotics and Automation Society's flagship conference, IEEE Robotics & Automation Society, http://icra2015.org/
|
30
|
+
|
31
|
+
|
32
|
+
## Installing
|
33
|
+
|
34
|
+
By running gem comand
|
35
|
+
|
36
|
+
```
|
37
|
+
gem install fox
|
38
|
+
```
|
39
|
+
|
40
|
+
or by adding to `Gemfile`
|
41
|
+
|
42
|
+
```ruby
|
43
|
+
gem 'fox', git: 'https://github.com/rennhak/fox'
|
44
|
+
```
|
45
|
+
|
46
|
+
## Usage
|
47
|
+
|
48
|
+
As library
|
49
|
+
|
50
|
+
|
51
|
+
```ruby
|
52
|
+
2.1.2 :001 > require 'fox'
|
53
|
+
=> true
|
54
|
+
```
|
55
|
+
|
56
|
+
or from the command line
|
57
|
+
|
58
|
+
```sh
|
59
|
+
~# fox
|
60
|
+
|
61
|
+
Commands:
|
62
|
+
fox generate
|
63
|
+
```
|
64
|
+
|
65
|
+
## Contributing
|
66
|
+
|
67
|
+
1. Fork it ( https://github.com/rennhak/fox/fork )
|
68
|
+
2. Create your feature branch (`git checkout -b my_new_feature`)
|
69
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
70
|
+
4. Push to the branch (`git push origin my_new_feature`)
|
71
|
+
5. Create a new Pull Request
|
72
|
+
|
73
|
+
|
74
|
+
## Authors
|
75
|
+
|
76
|
+
* [Bjoern Rennhak](https://github.com/rennhak)
|
77
|
+
|
78
|
+
## Copyright & License
|
79
|
+
|
80
|
+
Please refer to the COPYING.md and LICENSE.md file.
|
data/Rakefile
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
|
4
|
+
# System
|
5
|
+
require 'bundler'
|
6
|
+
require 'bundler/gem_tasks'
|
7
|
+
|
8
|
+
require 'shellwords'
|
9
|
+
require 'fileutils'
|
10
|
+
require 'yaml'
|
11
|
+
|
12
|
+
require 'date'
|
13
|
+
require 'ostruct'
|
14
|
+
|
15
|
+
require 'ronn'
|
16
|
+
require 'rdiscount'
|
17
|
+
|
18
|
+
require 'benchmark'
|
19
|
+
|
20
|
+
|
21
|
+
### Project Customization for Thor and Rake
|
22
|
+
|
23
|
+
project = YAML.load_file( '.project.yaml' )
|
24
|
+
project.each_pair { |name, value| self.instance_variable_set( "@#{name.to_s}", value ) }
|
25
|
+
|
26
|
+
### Load all Rake file tasks
|
27
|
+
Dir.glob( "{,lib/}#{@gem_name}/interface/rake/**/*.{rake,rb}" ) { |name| load name }
|
28
|
+
|
29
|
+
# vim:ts=2:tw=100:wm=100:syntax=ruby
|
data/bin/fox
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# Make sure load path contains local + global
|
4
|
+
$LOAD_PATH << '.'
|
5
|
+
$LOAD_PATH << File.dirname( File.join( __FILE__, '../lib/' ) )
|
6
|
+
|
7
|
+
# System includes
|
8
|
+
require 'bundler'
|
9
|
+
require 'thor' unless defined? Thor::Runner
|
10
|
+
|
11
|
+
# Custom includes
|
12
|
+
require_relative '../lib/fox'
|
13
|
+
|
14
|
+
|
15
|
+
# @class Fox executable
|
16
|
+
# @brief Main entry point for commandline execution
|
17
|
+
class Default < Thor
|
18
|
+
end # of class Default
|
19
|
+
|
20
|
+
Default.start( ARGV )
|
21
|
+
|
22
|
+
# vim:ts=2:tw=100:wm=100:syntax=ruby
|
data/fox.gemspec
ADDED
@@ -0,0 +1,132 @@
|
|
1
|
+
# File: fox.gemspec
|
2
|
+
|
3
|
+
# Make sure lib is in Load path
|
4
|
+
lib = File.expand_path( '../lib/', __FILE__ )
|
5
|
+
$LOAD_PATH.unshift lib unless $LOAD_PATH.include?( lib )
|
6
|
+
|
7
|
+
# System includes
|
8
|
+
require 'date'
|
9
|
+
|
10
|
+
# Custom includes
|
11
|
+
require 'fox/version'
|
12
|
+
|
13
|
+
Gem::Specification.new do |spec|
|
14
|
+
|
15
|
+
spec.name = 'fox'
|
16
|
+
|
17
|
+
spec.description = %q(Commandline interface and library to the Fox Scientific Paper Suite)
|
18
|
+
spec.summary = spec.description
|
19
|
+
|
20
|
+
spec.authors = [ 'Bjoern Rennhak' ]
|
21
|
+
spec.email = [ 'bjoern@clothesnetwork.com' ]
|
22
|
+
|
23
|
+
spec.homepage = 'http://github.com/rennhak/fox'
|
24
|
+
|
25
|
+
spec.licenses = %w[GPLv2]
|
26
|
+
|
27
|
+
spec.date = DateTime.now.to_s.split( 'T' ).first
|
28
|
+
spec.version = Fox::VERSION
|
29
|
+
spec.platform = Gem::Platform::RUBY
|
30
|
+
|
31
|
+
spec.metadata = {
|
32
|
+
"issue_tracker" => "http://github.com/rennhak/fox"
|
33
|
+
}
|
34
|
+
|
35
|
+
spec.bindir = 'bin'
|
36
|
+
spec.executables = %w[fox]
|
37
|
+
|
38
|
+
spec.require_paths = %w[lib]
|
39
|
+
|
40
|
+
spec.files = %w[
|
41
|
+
AUTHORS.md
|
42
|
+
CHANGELOG.md
|
43
|
+
COPYING.md
|
44
|
+
LICENSE.md
|
45
|
+
MAINTAINERS.md
|
46
|
+
FAQ.md
|
47
|
+
Gemfile
|
48
|
+
README.md
|
49
|
+
Rakefile
|
50
|
+
.project.yaml
|
51
|
+
fox.gemspec
|
52
|
+
]
|
53
|
+
|
54
|
+
spec.files += Dir.glob( 'bin/**/*' )
|
55
|
+
|
56
|
+
spec.files += Dir.glob( 'lib/**/*.rb' )
|
57
|
+
spec.files += Dir.glob( 'lib/**/*.thor' )
|
58
|
+
|
59
|
+
spec.files += Dir.glob( 'spec/**/*' )
|
60
|
+
|
61
|
+
spec.files += Dir.glob( 'thrift/**/*' )
|
62
|
+
|
63
|
+
spec.files += Dir.glob( 'data/**/*' )
|
64
|
+
|
65
|
+
spec.files += Dir.glob( 'documentation/**/*' )
|
66
|
+
|
67
|
+
spec.files += Dir.glob( 'examples/**/*' )
|
68
|
+
|
69
|
+
spec.files += Dir.glob( 'base/**/*' )
|
70
|
+
|
71
|
+
spec.test_files += Dir.glob( 'test/**/*' )
|
72
|
+
spec.test_files += Dir.glob( 'spec/**/*' )
|
73
|
+
spec.test_files += Dir.glob( 'features/**/*' )
|
74
|
+
|
75
|
+
## Dependencies
|
76
|
+
|
77
|
+
# Ruby VM
|
78
|
+
spec.required_ruby_version = '~> 2.1'
|
79
|
+
|
80
|
+
# General
|
81
|
+
spec.add_runtime_dependency 'thor'
|
82
|
+
spec.add_runtime_dependency 'ruby-try', '~> 1.1.1'
|
83
|
+
|
84
|
+
# Shell
|
85
|
+
spec.add_runtime_dependency 'ptools'
|
86
|
+
spec.add_runtime_dependency 'os'
|
87
|
+
|
88
|
+
# Monadic/Functional
|
89
|
+
spec.add_runtime_dependency 'andand'
|
90
|
+
# spec.add_runtime_dependency 'ick'
|
91
|
+
|
92
|
+
# Misc System
|
93
|
+
# spec.add_runtime_dependency 'awesome_print'
|
94
|
+
# spec.add_runtime_dependency 'uuid'
|
95
|
+
|
96
|
+
## System libraries needed (info for the user)
|
97
|
+
# spec.requirements 'iconv zlib libmagic'
|
98
|
+
|
99
|
+
# spec.requirements 'redis-server'
|
100
|
+
# spec.requirements 'sqlite3 libsqlite3-dev'
|
101
|
+
|
102
|
+
|
103
|
+
## Post Install
|
104
|
+
#
|
105
|
+
# Thanks go to Todd Vargo for the Ascii Fox
|
106
|
+
# Reference: http://www.retrojunkie.com/asciiart/animals/foxes.htm
|
107
|
+
spec.post_install_message = <<-EOS
|
108
|
+
|
109
|
+
/\ /\ ----( Paper )----
|
110
|
+
//\\_//\\ ____ _____ _____ __
|
111
|
+
\_ _/ / / | ___/ _ \ \/ /
|
112
|
+
/ * * \ /^^^] | |_ | | | \ /
|
113
|
+
\_\O/_/ [ ] | _|| |_| / \
|
114
|
+
/ \_ [ / |_| \___/_/\_\
|
115
|
+
\ \_ / /
|
116
|
+
[ [ / \/ _/ -----------------
|
117
|
+
_[ [ \ /_/
|
118
|
+
|
119
|
+
(c) #{spec.date.to_s}, All rights reserved
|
120
|
+
Bjoern Rennhak
|
121
|
+
|
122
|
+
Don't forget to configure $HOME/.fox/config.
|
123
|
+
To generate config file under $HOME/.fox/ directory,
|
124
|
+
please run 'fox config:generate' command
|
125
|
+
|
126
|
+
Thanks for installing Fox !
|
127
|
+
EOS
|
128
|
+
|
129
|
+
end # of Gem::Specification.new do |s|
|
130
|
+
|
131
|
+
|
132
|
+
# vim:ts=2:tw=100:wm=100:syntax=ruby
|