tetra 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,10 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- tetra (0.40.0)
4
+ tetra (1.0.0)
5
5
  clamp
6
- json
7
- nokogiri
6
+ json_pure
7
+ open4
8
8
  rest-client
9
9
  rubyzip (>= 1.0)
10
10
  text
@@ -12,32 +12,39 @@ PATH
12
12
  GEM
13
13
  remote: http://rubygems.org/
14
14
  specs:
15
- clamp (0.6.3)
15
+ clamp (0.6.5)
16
16
  diff-lcs (1.2.5)
17
- json (1.8.1)
18
- mime-types (2.3)
19
- mini_portile (0.6.0)
20
- netrc (0.7.7)
21
- nokogiri (1.6.3.1)
22
- mini_portile (= 0.6.0)
23
- rake (10.3.2)
24
- rest-client (1.7.2)
17
+ domain_name (0.5.24)
18
+ unf (>= 0.0.5, < 1.0.0)
19
+ http-cookie (1.0.2)
20
+ domain_name (~> 0.5)
21
+ json_pure (1.8.2)
22
+ mime-types (2.6.1)
23
+ netrc (0.10.3)
24
+ open4 (1.3.4)
25
+ rake (10.4.2)
26
+ rest-client (1.8.0)
27
+ http-cookie (>= 1.0.2, < 2.0)
25
28
  mime-types (>= 1.16, < 3.0)
26
29
  netrc (~> 0.7)
27
- rspec (3.0.0)
28
- rspec-core (~> 3.0.0)
29
- rspec-expectations (~> 3.0.0)
30
- rspec-mocks (~> 3.0.0)
31
- rspec-core (3.0.4)
32
- rspec-support (~> 3.0.0)
33
- rspec-expectations (3.0.4)
30
+ rspec (3.2.0)
31
+ rspec-core (~> 3.2.0)
32
+ rspec-expectations (~> 3.2.0)
33
+ rspec-mocks (~> 3.2.0)
34
+ rspec-core (3.2.3)
35
+ rspec-support (~> 3.2.0)
36
+ rspec-expectations (3.2.1)
34
37
  diff-lcs (>= 1.2.0, < 2.0)
35
- rspec-support (~> 3.0.0)
36
- rspec-mocks (3.0.4)
37
- rspec-support (~> 3.0.0)
38
- rspec-support (3.0.4)
39
- rubyzip (1.1.6)
40
- text (1.3.0)
38
+ rspec-support (~> 3.2.0)
39
+ rspec-mocks (3.2.1)
40
+ diff-lcs (>= 1.2.0, < 2.0)
41
+ rspec-support (~> 3.2.0)
42
+ rspec-support (3.2.2)
43
+ rubyzip (1.1.7)
44
+ text (1.3.1)
45
+ unf (0.1.4)
46
+ unf_ext
47
+ unf_ext (0.0.7.1)
41
48
 
42
49
  PLATFORMS
43
50
  ruby
data/README.md CHANGED
@@ -14,6 +14,7 @@ You need:
14
14
  * [git](http://git-scm.com/);
15
15
  * bash;
16
16
  * a JDK that can compile whatever software you need to package;
17
+ * Fedora only: packages to compile native gems, use `yum install ruby-devel gcc-c++ zlib-devel`;
17
18
 
18
19
  Install `tetra` via RubyGems:
19
20
 
@@ -50,16 +51,15 @@ First, ceate a new `tetra` project named after the package that we want to build
50
51
  Second, place source files in the `src/` folder:
51
52
 
52
53
  cd src
53
- wget http://archive.apache.org/dist/commons/collections/source/commons-collections-3.2.1-src.zip
54
- unzip commons-collections-3.2.1-src.zip
55
- rm commons-collections-3.2.1-src.zip
54
+ wget http://archive.apache.org/dist/commons/collections/source/commons-collections4-4.0-src.tar.gz
55
+ tar xf commons-collections4-4.0-src.tar.gz
56
+ rm commons-collections4-4.0-src.tar.gz
57
+ cd commons-collections4-4.0-src/
56
58
 
57
59
  Third, you need to show `tetra` how to build your package. Run `tetra dry-run` a new subshell will open, in there do anything you would normally do to build the package:
58
60
 
59
- cd ../src
60
61
  tetra dry-run
61
62
 
62
- cd commons-collections-3.2.1-src/
63
63
  mvn package
64
64
 
65
65
  ^D
@@ -0,0 +1 @@
1
+ This file prevents git from deleting this directory in case it has no content.
@@ -0,0 +1 @@
1
+ This file prevents git from deleting this directory in case it has no content.
@@ -0,0 +1 @@
1
+ This file prevents git from deleting this directory in case it has no content.
@@ -0,0 +1 @@
1
+ This file prevents git from deleting this directory in case it has no content.
@@ -10,15 +10,15 @@ require "logger"
10
10
  require "open-uri"
11
11
  require "pathname"
12
12
  require "singleton"
13
- require "text"
13
+ require "rexml/document"
14
14
 
15
15
  # third party libraries
16
16
  require "clamp"
17
17
  require "json"
18
- require "nokogiri"
18
+ require "open4"
19
19
  require "rest_client"
20
+ require "text"
20
21
  require "zip"
21
- require "open4"
22
22
 
23
23
  # base components
24
24
  require "tetra/logger"
@@ -3,6 +3,7 @@
3
3
  module Tetra
4
4
  # runs Bash with tetra-specific options
5
5
  class Bash
6
+ include Logging
6
7
  include ProcessRunner
7
8
 
8
9
  def initialize(project)
@@ -21,8 +22,11 @@ module Tetra
21
22
  mvn_path = kit.find_executable("mvn")
22
23
  mvn_commandline = Tetra::Mvn.commandline(@project.full_path, mvn_path)
23
24
 
24
- bashrc = Bashrc.new(history_file.path, ant_commandline, mvn_commandline)
25
- bashrc_file.write(bashrc.to_s)
25
+ bashrc_content = Bashrc.new(history_file.path, ant_commandline, mvn_commandline).to_s
26
+ log.debug "writing bashrc file: #{bashrc_file.path}"
27
+ log.debug bashrc_content
28
+
29
+ bashrc_file.write(bashrc_content)
26
30
  bashrc_file.flush
27
31
 
28
32
  run_interactive("bash --rcfile #{bashrc_file.path}")
@@ -14,7 +14,7 @@ module Tetra
14
14
  def find_executable(name)
15
15
  @project.from_directory do
16
16
  Find.find("kit") do |path|
17
- next unless path =~ /(.*bin)\/#{name}$/
17
+ next unless path =~ %r{(.*bin)/#{name}$}
18
18
  result = Regexp.last_match[1]
19
19
 
20
20
  log.debug("found #{name} executable in #{result}")
@@ -38,7 +38,7 @@ module Tetra
38
38
  def search(params)
39
39
  response = RestClient.get("http://search.maven.org/solrsearch/select",
40
40
  params: params.merge("rows" => "100", "wt" => "json")
41
- )
41
+ )
42
42
  json = JSON.parse(response.to_s)
43
43
  json["response"]["docs"]
44
44
  end
@@ -5,56 +5,55 @@ module Tetra
5
5
  class Pom
6
6
  def initialize(filename)
7
7
  content = open(filename).read if filename && File.file?(filename)
8
- @doc = Nokogiri::XML(content)
9
- @doc.remove_namespaces!
8
+ @doc = REXML::Document.new(content)
10
9
  end
11
10
 
12
11
  def group_id
13
- @doc.xpath("project/groupId").text || ""
12
+ @doc.text("project/groupId") || ""
14
13
  end
15
14
 
16
15
  def artifact_id
17
- @doc.xpath("project/artifactId").text || ""
16
+ @doc.text("project/artifactId") || ""
18
17
  end
19
18
 
20
19
  def name
21
- @doc.xpath("project/name").text || ""
20
+ @doc.text("project/name") || ""
22
21
  end
23
22
 
24
23
  def version
25
- @doc.xpath("project/version").text || ""
24
+ @doc.text("project/version") || ""
26
25
  end
27
26
 
28
27
  def description
29
- @doc.xpath("project/description").text || ""
28
+ @doc.text("project/description") || ""
30
29
  end
31
30
 
32
31
  def url
33
- @doc.xpath("project/url").text || ""
32
+ @doc.text("project/url") || ""
34
33
  end
35
34
 
36
35
  def license_name
37
- @doc.xpath("project/licenses/license/name").text || ""
36
+ @doc.text("project/licenses/license/name") || ""
38
37
  end
39
38
 
40
39
  def runtime_dependency_ids
41
- @doc.xpath("project/dependencies/dependency[\
40
+ @doc.get_elements("project/dependencies/dependency[\
42
41
  not(optional='true') and not(scope='provided') and not(scope='test') and not(scope='system')\
43
42
  ]").map do |element|
44
- [element.xpath("groupId").text, element.xpath("artifactId").text, element.xpath("version").text]
43
+ [element.text("groupId"), element.text("artifactId"), element.text("version")]
45
44
  end
46
45
  end
47
46
 
48
47
  def modules
49
- @doc.xpath("project/modules/module").map { |e| e.text }
48
+ @doc.get_elements("project/modules/module").map(&:text)
50
49
  end
51
50
 
52
51
  def scm_connection
53
- @doc.xpath("project/scm/connection").text || ""
52
+ @doc.text("project/scm/connection") || ""
54
53
  end
55
54
 
56
55
  def scm_url
57
- @doc.xpath("project/scm/url").text || ""
56
+ @doc.text("project/scm/url") || ""
58
57
  end
59
58
  end
60
59
  end
@@ -21,7 +21,7 @@ module Tetra
21
21
  log.debug("Attempting unpack of #{file} to find a POM")
22
22
  begin
23
23
  Zip::File.foreach(file) do |entry|
24
- if entry.name =~ /\/pom.xml$/
24
+ if entry.name =~ %r{/pom.xml$}
25
25
  log.info("pom.xml found in #{file}##{entry.name}")
26
26
  return entry.get_input_stream.read, :found_in_jar
27
27
  end
@@ -46,7 +46,7 @@ module Tetra
46
46
  unless result.nil?
47
47
  log.info("pom.xml for #{file} found on search.maven.org for sha1 #{sha1}\
48
48
  (#{result['g']}:#{result['a']}:#{result['v']})"
49
- )
49
+ )
50
50
  group_id, artifact_id, version = site.get_maven_id_from result
51
51
  return site.download_pom(group_id, artifact_id, version), :found_via_sha1
52
52
  end
@@ -70,7 +70,7 @@ module Tetra
70
70
  result = site.search_by_name(my_artifact_id).first
71
71
  log.debug("Artifact id search result: #{result}")
72
72
  unless result.nil?
73
- group_id, artifact_id, _ = site.get_maven_id_from result
73
+ group_id, artifact_id, = site.get_maven_id_from result
74
74
  results = site.search_by_group_id_and_artifact_id(group_id, artifact_id)
75
75
  log.debug("All versions: #{results}")
76
76
  their_versions = results.map { |doc| doc["v"] }
@@ -86,7 +86,7 @@ module Tetra
86
86
  group_id, artifact_id, version = site.get_maven_id_from(best_matched_result)
87
87
  log.warn("pom.xml for #{filename} found on search.maven.org with heuristic search\
88
88
  (#{group_id}:#{artifact_id}:#{version})"
89
- )
89
+ )
90
90
 
91
91
  return site.download_pom(group_id, artifact_id, version), :found_via_heuristic
92
92
  end
@@ -127,9 +127,7 @@ module Tetra
127
127
  comments += build_script_lines.map { |l| "tetra: build-script-line: #{l}" }
128
128
 
129
129
  # if this is the first dry-run, mark sources as tarball
130
- if first_dry_run
131
- comments << "tetra: sources-tarball"
132
- end
130
+ comments << "tetra: sources-tarball" if first_dry_run
133
131
 
134
132
  # commit end of dry run
135
133
  commit_whole_directory(".", *comments)
@@ -226,7 +224,7 @@ module Tetra
226
224
  def produced_files
227
225
  @git.latest_comment("tetra: dry-run-finished")
228
226
  .split("\n")
229
- .map { |line| line[/^tetra: file-changed: src\/(.+)$/, 1] }
227
+ .map { |line| line[%r{^tetra: file-changed: src/(.+)$}, 1] }
230
228
  .compact
231
229
  .sort
232
230
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  # base module for tetra
4
4
  module Tetra
5
- VERSION = "1.0.0"
5
+ VERSION = "1.1.0"
6
6
  end
@@ -52,7 +52,8 @@ describe Tetra::Package do
52
52
  expect(spec_lines).to include("Summary: Nailgun is a client, protocol, and server for running Java\n")
53
53
  expect(spec_lines).to include("Url: http://martiansoftware.com/nailgun\n")
54
54
  expect(spec_lines).to include("BuildRequires: test-project-kit == #{@project.version}\n")
55
- expect(spec_lines).to include("Provides: mvn(com.martiansoftware:nailgun-all) == 0.9.1\n")
55
+ expect(spec_lines).to include("Provides: mvn(com.martiansoftware:nailgun-server) == 0.9.1\n")
56
+ expect(spec_lines).to include("Provides: mvn(com.martiansoftware:nailgun-examples) == 0.9.1\n")
56
57
  expect(spec_lines).to include("cp -a out/test3.jar %{buildroot}%{_javadir}/test3.jar\n")
57
58
  end
58
59
  end
@@ -3,67 +3,96 @@
3
3
  require "spec_helper"
4
4
 
5
5
  describe Tetra::Pom do
6
- let(:pom) { Tetra::Pom.new(File.join("spec", "data", "commons-logging", "pom.xml")) }
6
+ let(:commons_pom) { Tetra::Pom.new(File.join("spec", "data", "commons-logging", "pom.xml")) }
7
+ let(:nailgun_pom) { Tetra::Pom.new(File.join("spec", "data", "nailgun", "pom.xml")) }
8
+ let(:struts_apps_pom) { Tetra::Pom.new(File.join("spec", "data", "struts-apps", "pom.xml")) }
7
9
 
8
10
  describe "#group_id" do
9
11
  it "reads the group id" do
10
- expect(pom.group_id).to eq "commons-logging"
12
+ expect(commons_pom.group_id).to eq "commons-logging"
13
+ expect(nailgun_pom.group_id).to eq "com.martiansoftware"
14
+ expect(struts_apps_pom.group_id).to eq "org.apache.struts"
11
15
  end
12
16
  end
13
17
 
14
18
  describe "#artifact_id" do
15
19
  it "reads the artifact id" do
16
- expect(pom.artifact_id).to eq "commons-logging"
20
+ expect(commons_pom.artifact_id).to eq "commons-logging"
21
+ expect(nailgun_pom.artifact_id).to eq "nailgun-all"
22
+ expect(struts_apps_pom.artifact_id).to eq "struts2-apps"
17
23
  end
18
24
  end
19
25
 
20
26
  describe "#name" do
21
27
  it "reads artifact name" do
22
- expect(pom.name).to eq "Commons Logging"
28
+ expect(commons_pom.name).to eq "Commons Logging"
29
+ expect(nailgun_pom.name).to eq "nailgun-all"
30
+ expect(struts_apps_pom.name).to eq "Webapps"
23
31
  end
24
32
  end
25
33
 
26
34
  describe "#version" do
27
35
  it "reads the version" do
28
- expect(pom.version).to eq "1.1.1"
36
+ expect(commons_pom.version).to eq "1.1.1"
37
+ expect(nailgun_pom.version).to eq "0.9.1"
38
+ expect(struts_apps_pom.version).to eq ""
29
39
  end
30
40
  end
31
41
 
32
42
  describe "#description" do
33
43
  it "reads the description" do
34
- expect(pom.description).to eq "Commons Logging is a thin adapter allowing configurable bridging to other,\n " \
35
- "well known logging systems."
44
+ expect(commons_pom.description).to eq "Commons Logging is a thin adapter allowing configurable bridging to other,
45
+ well known logging systems."
46
+ expect(nailgun_pom.description).to eq "
47
+ Nailgun is a client, protocol, and server for running Java programs
48
+ from the command line without incurring the JVM startup overhead.
49
+ Programs run in the server (which is implemented in Java), and are
50
+ triggered by the client (written in C), which handles all I/O.
51
+
52
+ This project contains the server and examples.
53
+ "
54
+ expect(struts_apps_pom.description).to eq ""
36
55
  end
37
56
  end
38
57
 
39
58
  describe "#url" do
40
59
  it "reads the url" do
41
- expect(pom.url).to eq "http://commons.apache.org/logging"
60
+ expect(commons_pom.url).to eq "http://commons.apache.org/logging"
61
+ expect(nailgun_pom.url).to eq "http://martiansoftware.com/nailgun"
62
+ expect(struts_apps_pom.url).to eq ""
42
63
  end
43
64
  end
44
65
 
45
66
  describe "#license_name" do
46
67
  it "reads the license name" do
47
- expect(pom.license_name).to eq ""
68
+ expect(commons_pom.license_name).to eq ""
69
+ expect(nailgun_pom.license_name).to eq "The Apache Software License, Version 2.0"
70
+ expect(struts_apps_pom.license_name).to eq ""
48
71
  end
49
72
  end
50
73
 
51
74
  describe "#runtime_dependency_ids" do
52
75
  it "reads the dependency maven ids" do
53
- expect(pom.runtime_dependency_ids).to eq []
76
+ expect(commons_pom.runtime_dependency_ids).to eq []
77
+ expect(nailgun_pom.runtime_dependency_ids).to eq []
78
+ expect(struts_apps_pom.runtime_dependency_ids).to eq [["org.apache.struts", "struts2-core", "${project.version}"]]
54
79
  end
55
80
  end
56
81
 
57
82
  describe "#scm_connection" do
58
83
  it "reads the SCM connection address" do
59
- expect(pom.scm_connection).to eq "scm:svn:http://svn.apache.org/repos/asf/commons/proper/" \
84
+ expect(commons_pom.scm_connection).to eq "scm:svn:http://svn.apache.org/repos/asf/commons/proper/" \
60
85
  "logging/tags/commons-logging-1.1.1"
86
+ expect(nailgun_pom.scm_connection).to eq "scm:git:git@github.com:martylamb/nailgun.git"
87
+ expect(struts_apps_pom.scm_connection).to eq "scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/STRUTS_2_3_14/apps"
61
88
  end
62
89
  end
63
90
 
64
91
  describe "#scm_url" do
65
92
  it "reads the SCM connection url" do
66
- expect(pom.scm_url).to eq "http://svn.apache.org/repos/asf/commons/proper/logging/tags/commons-logging-1.1.1"
93
+ expect(commons_pom.scm_url).to eq "http://svn.apache.org/repos/asf/commons/proper/logging/tags/commons-logging-1.1.1"
94
+ expect(nailgun_pom.scm_url).to eq "scm:git:git@github.com:martylamb/nailgun.git"
95
+ expect(struts_apps_pom.scm_url).to eq "http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/STRUTS_2_3_14/apps"
67
96
  end
68
97
  end
69
98
  end
@@ -42,7 +42,7 @@ describe Tetra::Scriptable do
42
42
  expect(lines).to include("$PROJECT_PREFIX/kit/mvn/bin/mvn \
43
43
  -Dmaven.repo.local=$PROJECT_PREFIX/kit/m2 --settings $PROJECT_PREFIX/kit/m2/settings.xml \
44
44
  --strict-checksums -o --options\n"
45
- )
45
+ )
46
46
 
47
47
  expect(lines).not_to include("some earlier command\n")
48
48
  expect(lines).not_to include("tetra dry-run --unwanted-options\n")
@@ -23,10 +23,9 @@ Gem::Specification.new do |s|
23
23
  s.add_development_dependency "rspec"
24
24
 
25
25
  s.add_runtime_dependency "clamp"
26
- s.add_runtime_dependency "rubyzip", ">= 1.0"
26
+ s.add_runtime_dependency "json_pure"
27
+ s.add_runtime_dependency "open4"
27
28
  s.add_runtime_dependency "rest-client"
28
- s.add_runtime_dependency "json"
29
+ s.add_runtime_dependency "rubyzip", ">= 1.0"
29
30
  s.add_runtime_dependency "text"
30
- s.add_runtime_dependency "nokogiri"
31
- s.add_runtime_dependency "open4"
32
31
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tetra
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-04-17 00:00:00.000000000 Z
12
+ date: 2015-06-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
@@ -60,23 +60,7 @@ dependencies:
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  - !ruby/object:Gem::Dependency
63
- name: rubyzip
64
- requirement: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ! '>='
68
- - !ruby/object:Gem::Version
69
- version: '1.0'
70
- type: :runtime
71
- prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '1.0'
78
- - !ruby/object:Gem::Dependency
79
- name: rest-client
63
+ name: json_pure
80
64
  requirement: !ruby/object:Gem::Requirement
81
65
  none: false
82
66
  requirements:
@@ -92,7 +76,7 @@ dependencies:
92
76
  - !ruby/object:Gem::Version
93
77
  version: '0'
94
78
  - !ruby/object:Gem::Dependency
95
- name: json
79
+ name: open4
96
80
  requirement: !ruby/object:Gem::Requirement
97
81
  none: false
98
82
  requirements:
@@ -108,7 +92,7 @@ dependencies:
108
92
  - !ruby/object:Gem::Version
109
93
  version: '0'
110
94
  - !ruby/object:Gem::Dependency
111
- name: text
95
+ name: rest-client
112
96
  requirement: !ruby/object:Gem::Requirement
113
97
  none: false
114
98
  requirements:
@@ -124,13 +108,13 @@ dependencies:
124
108
  - !ruby/object:Gem::Version
125
109
  version: '0'
126
110
  - !ruby/object:Gem::Dependency
127
- name: nokogiri
111
+ name: rubyzip
128
112
  requirement: !ruby/object:Gem::Requirement
129
113
  none: false
130
114
  requirements:
131
115
  - - ! '>='
132
116
  - !ruby/object:Gem::Version
133
- version: '0'
117
+ version: '1.0'
134
118
  type: :runtime
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
@@ -138,9 +122,9 @@ dependencies:
138
122
  requirements:
139
123
  - - ! '>='
140
124
  - !ruby/object:Gem::Version
141
- version: '0'
125
+ version: '1.0'
142
126
  - !ruby/object:Gem::Dependency
143
- name: open4
127
+ name: text
144
128
  requirement: !ruby/object:Gem::Requirement
145
129
  none: false
146
130
  requirements:
@@ -345,12 +329,12 @@ files:
345
329
  - lib/template/bundled/apache-maven-3.2.5/lib/wagon-provider-api.license
346
330
  - lib/template/gitignore
347
331
  - lib/template/kit.spec
348
- - lib/template/kit/CONTENTS
349
- - lib/template/kit/jars/CONTENTS
332
+ - lib/template/kit/.keep
333
+ - lib/template/kit/jars/.keep
350
334
  - lib/template/kit/m2/settings.xml
351
335
  - lib/template/package.spec
352
- - lib/template/packages/CONTENTS
353
- - lib/template/src/CONTENTS
336
+ - lib/template/packages/.keep
337
+ - lib/template/src/.keep
354
338
  - lib/tetra.rb
355
339
  - lib/tetra/facades/ant.rb
356
340
  - lib/tetra/facades/bash.rb
@@ -1,9 +0,0 @@
1
- This directory contains all binary files needed to build software in src/.
2
-
3
- These files will be packaged as binary and will only be used at build time.
4
- They will not be installed on users' systems.
5
-
6
- - jars/ contains simple jars (eg. for Ant use)
7
- - m2/ contains a Maven repo
8
- - apache-ant-* contains a stable Ant release
9
- - apache-maven-* contains a stable Maven release
@@ -1,3 +0,0 @@
1
- This directory contains binary files needed to build software in src/.
2
-
3
- Only jar files not in m2/ should be placed here.
@@ -1 +0,0 @@
1
- tetra will save all output files it generates (specs, archives, etc.) here.
@@ -1,3 +0,0 @@
1
- All "verbatim" source files should be placed here (as checked out from
2
- the original source repository), together with any additional files you
3
- might need for the build.