Consolidated gitignore & added missing EXTRA_DISTs
diff --git a/.gitignore b/.gitignore
index 76d9e50..d11897e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -278,6 +278,18 @@
 /lib/go/src
 /lib/go/test/gopath/
 /lib/go/test/ThriftTest.thrift
+/lib/nodets/test-compiled/
+/lib/ocaml/_build/
+/lib/ocaml/_tags
+/lib/ocaml/configure
+/lib/ocaml/setup.data
+/lib/ocaml/setup.ml
+/lib/ocaml/myocamlbuild.ml
+/lib/ocaml/*/META
+/lib/ocaml/*/*.mllib
+/lib/ocaml/*/*.mldylib
+/lib/ocaml/Makefile
+/lib/ocaml/OCamlMakefile
 /lib/rs/target/
 /lib/rs/Cargo.lock
 /lib/rs/test/Cargo.lock
@@ -292,6 +304,8 @@
 /lib/rs/*.iml
 /lib/rs/**/*.iml
 /lib/swift/.build
+/lib/ts/test/build/
+/lib/ts/test/gen-*
 /libtool
 /ltmain.sh
 /missing
@@ -339,10 +353,13 @@
 /test/rb/Gemfile.lock
 /test/netstd/**/bin
 /test/netstd/**/obj
+/test/netstd/**/launchSettings.json
 /test/netstd/*.psess
 /test/netstd/*.vspx
 /test/netstd/*.vsp
 /test/netstd/*.diagsession
+/test/netstd/Client/ThriftTest
+/test/netstd/Server/ThriftTest
 /test/netstd/Thrift
 /test/php/php_ext_dir/
 /test/rs/Cargo.lock
@@ -399,5 +416,7 @@
 /tutorial/rs/bin
 /tutorial/rs/target
 /tutorial/rs/Cargo.lock
+/tutorial/netstd/Interfaces/shared
+/tutorial/netstd/Interfaces/tutorial
 /ylwrap
 
diff --git a/Makefile.am b/Makefile.am
index f9d59ef..c5d9c41 100755
--- a/Makefile.am
+++ b/Makefile.am
@@ -132,9 +132,15 @@
 	codespell --write-changes --skip=$(skipped_files) --disable-colors
 
 EXTRA_DIST = \
+	.asf.yaml \
 	.clang-format \
 	.dockerignore \
 	.editorconfig \
+	.eslintignore \
+	.eslintrc.json \
+	.flake8 \
+	.gitattributes \
+	.gitignore \
 	.travis.yml \
 	.rustfmt.toml \
 	ApacheThrift.nuspec \
@@ -156,6 +162,7 @@
 	LICENSE \
 	NOTICE \
 	package.json \
+	package-lock.json \
 	phpcs.xml.dist \
 	README.md \
 	sonar-project.properties \
diff --git a/compiler/cpp/Makefile.am b/compiler/cpp/Makefile.am
index 16514ca..05c9121 100644
--- a/compiler/cpp/Makefile.am
+++ b/compiler/cpp/Makefile.am
@@ -115,6 +115,7 @@
              README.md \
              CMakeLists.txt \
              test \
+             tests \
              $(WINDOWS_DIST)
 
 #clean-local:
diff --git a/compiler/cpp/src/Makefile.am b/compiler/cpp/src/Makefile.am
index 0297708..5111fd5 100644
--- a/compiler/cpp/src/Makefile.am
+++ b/compiler/cpp/src/Makefile.am
@@ -37,3 +37,8 @@
 
 clean-local:
 	$(RM) thrift/thriftl.cc thrift/thrifty.cc thrift/thrifty.h thrift/thrifty.hh
+
+
+EXTRA_DIST = \
+	thrift/logging.cc \
+	thrift/windows/config.h
diff --git a/compiler/cpp/src/thrift/generate/thrift-t_php_generator.o-a60a38e9 b/compiler/cpp/src/thrift/generate/thrift-t_php_generator.o-a60a38e9
deleted file mode 100644
index e69de29..0000000
--- a/compiler/cpp/src/thrift/generate/thrift-t_php_generator.o-a60a38e9
+++ /dev/null
diff --git a/lib/go/test/Makefile.am b/lib/go/test/Makefile.am
index 4419577..2f748c6 100644
--- a/lib/go/test/Makefile.am
+++ b/lib/go/test/Makefile.am
@@ -111,28 +111,30 @@
 EXTRA_DIST = \
 	dontexportrwtest \
 	tests \
+	common \
 	BinaryKeyTest.thrift \
-	GoTagTest.thrift \
-	IncludesTest.thrift \
-	MultiplexedProtocolTest.thrift \
-	NamespacedTest.thrift \
-	OnewayTest.thrift \
-	OptionalFieldsTest.thrift \
-	RequiredFieldTest.thrift \
-	RefAnnotationFieldsTest.thrift \
-	UnionDefaultValueTest.thrift \
-	UnionBinaryTest.thrift \
-	ServicesTest.thrift \
-	TypedefFieldTest.thrift \
-	ErrorTest.thrift \
-	NamesTest.thrift \
-	InitialismsTest.thrift \
-	DontExportRWTest.thrift \
-	IgnoreInitialismsTest.thrift \
+	ConflictNamespaceServiceTest.thrift \
 	ConflictNamespaceTestA.thrift \
 	ConflictNamespaceTestB.thrift \
 	ConflictNamespaceTestC.thrift \
 	ConflictNamespaceTestD.thrift \
 	ConflictNamespaceTestSuperThing.thrift \
-	ConflictNamespaceServiceTest.thrift \
-	EqualsTest.thrift
+	DontExportRWTest.thrift \
+	DuplicateImportsTest.thrift \
+	ErrorTest.thrift \
+	EqualsTest.thrift \
+	GoTagTest.thrift \
+	IgnoreInitialismsTest.thrift \
+	IncludesTest.thrift \
+	InitialismsTest.thrift \
+	MultiplexedProtocolTest.thrift \
+	NamespacedTest.thrift \
+	NamesTest.thrift \
+	OnewayTest.thrift \
+	OptionalFieldsTest.thrift \
+	RefAnnotationFieldsTest.thrift \
+	RequiredFieldTest.thrift \
+	ServicesTest.thrift \
+	TypedefFieldTest.thrift \
+	UnionBinaryTest.thrift \
+	UnionDefaultValueTest.thrift
diff --git a/lib/netstd/Makefile.am b/lib/netstd/Makefile.am
index abb680c..f1a87a2 100644
--- a/lib/netstd/Makefile.am
+++ b/lib/netstd/Makefile.am
@@ -41,25 +41,31 @@
 
 EXTRA_DIST = \
 	README.md \
+	Directory.Build.props \
+	Benchmarks/Thrift.Benchmarks \
 	Tests/Thrift.IntegrationTests/Protocols \
 	Tests/Thrift.IntegrationTests/Thrift.IntegrationTests.csproj \
-	Tests/Thrift.PublicInterfaces.Compile.Tests/Thrift.PublicInterfaces.Compile.Tests.csproj \
-	Tests/Thrift.PublicInterfaces.Compile.Tests/Properties/AssemblyInfo.cs \
-	Tests/Thrift.PublicInterfaces.Compile.Tests/optional_required_default.thrift \
+	Tests/Thrift.PublicInterfaces.Compile.Tests \
 	Tests/Thrift.PublicInterfaces.Compile.Tests/CassandraTest.thrift \
-	Tests/Thrift.Tests/Thrift.Tests.csproj \
-	Tests/Thrift.Tests/Protocols \
+	Tests/Thrift.PublicInterfaces.Compile.Tests/optional_required_default.thrift \
+	Tests/Thrift.PublicInterfaces.Compile.Tests/Properties/AssemblyInfo.cs \
+	Tests/Thrift.PublicInterfaces.Compile.Tests/Thrift.PublicInterfaces.Compile.Tests.csproj \
 	Tests/Thrift.Tests/Collections \
-	Thrift/TApplicationException.cs \
-	Thrift/TBaseClient.cs \
-	Thrift/TException.cs \
-	Thrift/Thrift.csproj \
+	Tests/Thrift.Tests/DataModel \
+	Tests/Thrift.Tests/Protocols \
+	Tests/Thrift.Tests/Thrift.Tests.csproj \
 	Thrift/Collections \
 	Thrift/Processor \
 	Thrift/Properties \
 	Thrift/Protocol \
 	Thrift/Server \
+	Thrift/TApplicationException.cs \
+	Thrift/TBaseClient.cs \
+	Thrift/TConfiguration.cs \
+	Thrift/TException.cs \
+	Thrift/Thrift.csproj \
 	Thrift/Transport \
+	Thrift/*.snk \
 	Thrift.sln \
 	build.cmd \
 	build.sh \
diff --git a/lib/nodets/.gitignore b/lib/nodets/.gitignore
deleted file mode 100644
index c7aba89..0000000
--- a/lib/nodets/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-test-compiled/
diff --git a/lib/ocaml/.gitignore b/lib/ocaml/.gitignore
deleted file mode 100644
index 0d9a6af..0000000
--- a/lib/ocaml/.gitignore
+++ /dev/null
@@ -1,11 +0,0 @@
-_build/
-_tags
-configure
-setup.data
-setup.ml
-myocamlbuild.ml
-*/META
-*/*.mllib
-*/*.mldylib
-Makefile
-OCamlMakefile
diff --git a/lib/perl/Makefile.am b/lib/perl/Makefile.am
index abae1e7..84009bd 100644
--- a/lib/perl/Makefile.am
+++ b/lib/perl/Makefile.am
@@ -40,6 +40,7 @@
 	coding_standards.md \
 	build-cpan-dist.sh \
 	Makefile.PL \
+	MANIFEST.SKIP \
 	test.pl \
 	lib/Thrift.pm \
 	lib/Thrift.pm \
@@ -63,6 +64,7 @@
 	lib/Thrift/UnixSocket.pm \
 	lib/Thrift/Type.pm \
 	lib/Thrift/Transport.pm \
+	tools/FixupDist.pl \
 	README.md
 
 THRIFT = @top_builddir@/compiler/cpp/thrift
diff --git a/lib/php/Makefile.am b/lib/php/Makefile.am
index ce353f0..1857d03 100755
--- a/lib/php/Makefile.am
+++ b/lib/php/Makefile.am
@@ -40,113 +40,125 @@
 
 phpdir = $(PHP_PREFIX)/
 php_DATA = \
-  lib/TMultiplexedProcessor.php
+	lib/TMultiplexedProcessor.php
 
 phpbasedir = $(phpdir)/Base
 phpbase_DATA = \
-  lib/Base/TBase.php
+	lib/Base/TBase.php
 
 phpclassloaderdir = $(phpdir)/ClassLoader
 phpclassloader_DATA = \
-  lib/ClassLoader/ThriftClassLoader.php
+	lib/ClassLoader/ThriftClassLoader.php
 
 phpexceptiondir = $(phpdir)/Exception
 phpexception_DATA = \
-  lib/Exception/TApplicationException.php \
-  lib/Exception/TException.php \
-  lib/Exception/TProtocolException.php \
-  lib/Exception/TTransportException.php
+	lib/Exception/TApplicationException.php \
+	lib/Exception/TException.php \
+	lib/Exception/TProtocolException.php \
+	lib/Exception/TTransportException.php
 
 phpfactorydir = $(phpdir)/Factory
 phpfactory_DATA = \
-  lib/Factory/TBinaryProtocolFactory.php \
-  lib/Factory/TCompactProtocolFactory.php \
-  lib/Factory/TJSONProtocolFactory.php \
-  lib/Factory/TProtocolFactory.php \
-  lib/Factory/TStringFuncFactory.php \
-  lib/Factory/TTransportFactory.php
+	lib/Factory/TBinaryProtocolFactory.php \
+	lib/Factory/TCompactProtocolFactory.php \
+	lib/Factory/TJSONProtocolFactory.php \
+	lib/Factory/TProtocolFactory.php \
+	lib/Factory/TStringFuncFactory.php \
+	lib/Factory/TTransportFactory.php
 
 phpprotocoldir = $(phpdir)/Protocol
 phpprotocol_DATA = \
-  lib/Protocol/TBinaryProtocolAccelerated.php \
-  lib/Protocol/TBinaryProtocol.php \
-  lib/Protocol/TCompactProtocol.php \
-  lib/Protocol/TJSONProtocol.php \
-  lib/Protocol/TMultiplexedProtocol.php \
-  lib/Protocol/TProtocol.php \
-  lib/Protocol/TProtocolDecorator.php \
-  lib/Protocol/TSimpleJSONProtocol.php
+	lib/Protocol/TBinaryProtocolAccelerated.php \
+	lib/Protocol/TBinaryProtocol.php \
+	lib/Protocol/TCompactProtocol.php \
+	lib/Protocol/TJSONProtocol.php \
+	lib/Protocol/TMultiplexedProtocol.php \
+	lib/Protocol/TProtocol.php \
+	lib/Protocol/TProtocolDecorator.php \
+	lib/Protocol/TSimpleJSONProtocol.php
 
 phpprotocoljsondir = $(phpprotocoldir)/JSON
 phpprotocoljson_DATA = \
-  lib/Protocol/JSON/BaseContext.php \
-  lib/Protocol/JSON/ListContext.php \
-  lib/Protocol/JSON/LookaheadReader.php \
-  lib/Protocol/JSON/PairContext.php
+	lib/Protocol/JSON/BaseContext.php \
+	lib/Protocol/JSON/ListContext.php \
+	lib/Protocol/JSON/LookaheadReader.php \
+	lib/Protocol/JSON/PairContext.php
 
 phpprotocolsimplejsondir = $(phpprotocoldir)/SimpleJSON
 phpprotocolsimplejson_DATA = \
-  lib/Protocol/SimpleJSON/CollectionMapKeyException.php \
-  lib/Protocol/SimpleJSON/Context.php \
-  lib/Protocol/SimpleJSON/ListContext.php \
-  lib/Protocol/SimpleJSON/MapContext.php \
-  lib/Protocol/SimpleJSON/StructContext.php
+	lib/Protocol/SimpleJSON/CollectionMapKeyException.php \
+	lib/Protocol/SimpleJSON/Context.php \
+	lib/Protocol/SimpleJSON/ListContext.php \
+	lib/Protocol/SimpleJSON/MapContext.php \
+	lib/Protocol/SimpleJSON/StructContext.php
 
 phpserializerdir = $(phpdir)/Serializer
 phpserializer_DATA = \
-  lib/Serializer/TBinarySerializer.php
+	lib/Serializer/TBinarySerializer.php
 
 phpserverdir = $(phpdir)/Server
 phpserver_DATA = \
-  lib/Server/TServerSocket.php \
-  lib/Server/TForkingServer.php \
-  lib/Server/TServer.php \
-  lib/Server/TServerTransport.php \
-  lib/Server/TSimpleServer.php
+	lib/Server/TServerSocket.php \
+	lib/Server/TForkingServer.php \
+	lib/Server/TServer.php \
+	lib/Server/TServerTransport.php \
+	lib/Server/TSimpleServer.php
 
 phpstringfuncdir = $(phpdir)/StringFunc
 phpstringfunc_DATA = \
-  lib/StringFunc/Mbstring.php \
-  lib/StringFunc/Core.php \
-  lib/StringFunc/TStringFunc.php
+	lib/StringFunc/Mbstring.php \
+	lib/StringFunc/Core.php \
+	lib/StringFunc/TStringFunc.php
 
 phptransportdir = $(phpdir)/Transport
 phptransport_DATA = \
-  lib/Transport/TBufferedTransport.php \
-  lib/Transport/TCurlClient.php \
-  lib/Transport/TFramedTransport.php \
-  lib/Transport/THttpClient.php \
-  lib/Transport/TMemoryBuffer.php \
-  lib/Transport/TNullTransport.php \
-  lib/Transport/TPhpStream.php \
-  lib/Transport/TSocket.php \
-  lib/Transport/TSocketPool.php \
-  lib/Transport/TTransport.php
+	lib/Transport/TBufferedTransport.php \
+	lib/Transport/TCurlClient.php \
+	lib/Transport/TFramedTransport.php \
+	lib/Transport/THttpClient.php \
+	lib/Transport/TMemoryBuffer.php \
+	lib/Transport/TNullTransport.php \
+	lib/Transport/TPhpStream.php \
+	lib/Transport/TSocket.php \
+	lib/Transport/TSocketPool.php \
+	lib/Transport/TTransport.php
 
 phptypedir = $(phpdir)/Type
 phptype_DATA = \
-  lib/Type/TMessageType.php \
-  lib/Type/TType.php \
-  lib/Type/TConstant.php
+	lib/Type/TMessageType.php \
+	lib/Type/TType.php \
+	lib/Type/TConstant.php
 
 clean-local:
 	if [ -f src/ext/thrift_protocol/Makefile ]; then cd src/ext/thrift_protocol/ && $(MAKE) clean; fi
 
 
 EXTRA_DIST = \
-  lib \
-  src/autoload.php \
-  src/ext/thrift_protocol/config.m4 \
-  src/ext/thrift_protocol/config.w32 \
-  src/ext/thrift_protocol/php_thrift_protocol.cpp \
-  src/ext/thrift_protocol/php_thrift_protocol.h \
-  src/Thrift.php \
-  src/TStringUtils.php \
-  coding_standards.md \
-  thrift_protocol.ini \
-  README.apache.md \
-  README.md
+	lib \
+	src/autoload.php \
+	src/ext/thrift_protocol/config.m4 \
+	src/ext/thrift_protocol/config.w32 \
+	src/ext/thrift_protocol/php_thrift_protocol.cpp \
+	src/ext/thrift_protocol/php_thrift_protocol.h \
+	src/Thrift.php \
+	src/TStringUtils.php \
+	coding_standards.md \
+	thrift_protocol.ini \
+	README.apache.md \
+	README.md \
+	test/Fixtures.php \
+	test/TestValidators.thrift \
+	test/JsonSerialize/JsonSerializeTest.php \
+	test/Protocol/BinarySerializerTest.php \
+	test/Protocol/TJSONProtocolFixtures.php \
+	test/Protocol/TJSONProtocolTest.php \
+	test/Protocol/TSimpleJSONProtocolFixtures.php \
+	test/Protocol/TSimpleJSONProtocolTest.php \
+	test/Validator/BaseValidatorTest.php \
+	test/Validator/ValidatorTest.php \
+	test/Validator/ValidatorTestOop.php
+
 
 MAINTAINERCLEANFILES = \
-  Makefile.in
+	Makefile.in
 
diff --git a/lib/rs/Makefile.am b/lib/rs/Makefile.am
index 0a34120..6d74348 100644
--- a/lib/rs/Makefile.am
+++ b/lib/rs/Makefile.am
@@ -43,4 +43,7 @@
 EXTRA_DIST = \
 	src \
 	Cargo.toml \
-	README.md
+	README.md \
+	release.sh \
+	RELEASING.md
+
diff --git a/lib/ts/.gitignore b/lib/ts/.gitignore
deleted file mode 100644
index 24f250e..0000000
--- a/lib/ts/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-test/build/
-test/gen-*
diff --git a/test/Makefile.am b/test/Makefile.am
index f1c808e..4ef12e0 100755
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -150,6 +150,7 @@
 	EnumTest.thrift \
 	FullCamelTest.thrift \
 	Include.thrift \
+	Identifiers.thrift \
 	Int64Test.thrift \
 	JavaBeansTest.thrift \
 	JavaBinaryDefault.thrift \
@@ -166,7 +167,9 @@
 	StressTest.thrift \
 	ThriftTest.thrift \
 	TypedefTest.thrift \
+	Types.thrift \
 	UnsafeTypes.thrift \
+	Service.thrift \
 	SpecificNameTest.thrift \
 	known_failures_Linux.json \
 	test.py \
diff --git a/test/go/Makefile.am b/test/go/Makefile.am
index 3cf6a70..eae153c 100644
--- a/test/go/Makefile.am
+++ b/test/go/Makefile.am
@@ -62,4 +62,5 @@
 
 EXTRA_DIST = \
 	src/bin \
-	src/common
+	src/common \
+	genmock.sh
diff --git a/test/netstd/Client/.gitignore b/test/netstd/Client/.gitignore
deleted file mode 100644
index 67d5510..0000000
--- a/test/netstd/Client/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-# ignore for autogenerated files
-/ThriftTest
diff --git a/test/netstd/Server/.gitignore b/test/netstd/Server/.gitignore
deleted file mode 100644
index 67d5510..0000000
--- a/test/netstd/Server/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-# ignore for autogenerated files
-/ThriftTest
diff --git a/tutorial/cl/Makefile.am b/tutorial/cl/Makefile.am
index 2d15b08..70c5e07 100755
--- a/tutorial/cl/Makefile.am
+++ b/tutorial/cl/Makefile.am
@@ -62,4 +62,5 @@
 	shared-implementation.lisp \
 	thrift-tutorial.asd \
 	make-tutorial-server.lisp \
-	make-tutorial-client.lisp
+	make-tutorial-client.lisp \
+	load-locally.lisp
diff --git a/tutorial/netstd/.gitignore b/tutorial/netstd/.gitignore
deleted file mode 100644
index 9938bb2..0000000
--- a/tutorial/netstd/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-!**/*.pfx
\ No newline at end of file
diff --git a/tutorial/netstd/Interfaces/.gitignore b/tutorial/netstd/Interfaces/.gitignore
deleted file mode 100644
index 2e7446e..0000000
--- a/tutorial/netstd/Interfaces/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-# ignore for autogenerated files
-/shared
-/tutorial
diff --git a/tutorial/php/Makefile.am b/tutorial/php/Makefile.am
index 65f4879..3d30ad9 100755
--- a/tutorial/php/Makefile.am
+++ b/tutorial/php/Makefile.am
@@ -33,4 +33,5 @@
 
 EXTRA_DIST = \
 	PhpServer.php \
-	PhpClient.php
+	PhpClient.php \
+	runserver.py