Commit 4bfa60ae authored by Mike Ryan's avatar Mike Ryan

#52: Remove doxygen-generated docs from repo, have them generated automatically on readthedocs.

parent 363bf0d4
Pipeline #56576423 passed with stage
in 2 minutes and 23 seconds
_build
build
composer.lock
vendor
.phpunit.result.cache
docs/html
docs/xml
......@@ -6,6 +6,11 @@ Updates should follow the [Keep a CHANGELOG](http://keepachangelog.com/) princip
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). For major version 0, we will increment the minor version for backward-incompatible changes.
## [Unreleased]
### Changed
- Things are now configured to generate the API documentation using Doxygen on readthedocs - the generated docs are no longer kept in the repo.
## [0.5.2] - 2019-04-05
### Changed
......
......@@ -30,4 +30,4 @@ $ composer test
* Classes and methods are to be fully documented in comment blocks - these are used to automatically generate the API Reference section of the [online documentation](https://soong-etl.readthedocs.io/).
* Add any non-trivial changes you've made to docs/CHANGELOG.md.
* Review `README.md` and any `.md` files under `docs` to see if any changes are missing. Don't miss docs/api/doxygen_home.md (which is used as the homepage for the Doxygen-generated API docs).
* Review `README.md` and any `.md` files under `docs` to see if any changes are missing.
......@@ -58,7 +58,7 @@ PROJECT_LOGO =
# entered, it will be relative to the location where doxygen was started. If
# left blank the current directory will be used.
OUTPUT_DIRECTORY = api
OUTPUT_DIRECTORY =
# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
# directories (in 2 levels) under the output directory of each output format and
......@@ -106,7 +106,7 @@ OUTPUT_TEXT_DIRECTION = None
# documentation (similar to Javadoc). Set to NO to disable this.
# The default value is: YES.
BRIEF_MEMBER_DESC = NO
BRIEF_MEMBER_DESC = YES
# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
# description of a member or function before the detailed description
......@@ -592,7 +592,7 @@ INLINE_INFO = YES
# name. If set to NO, the members will appear in declaration order.
# The default value is: YES.
SORT_MEMBER_DOCS = YES
SORT_MEMBER_DOCS = NO
# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
# descriptions of file, namespace and class members alphabetically by member
......@@ -600,7 +600,7 @@ SORT_MEMBER_DOCS = YES
# this will also influence the order of the classes in the class list.
# The default value is: NO.
SORT_BRIEF_DOCS = YES
SORT_BRIEF_DOCS = NO
# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
# (brief and detailed) documentation of class members so that constructors and
......@@ -629,7 +629,7 @@ SORT_GROUP_NAMES = NO
# list.
# The default value is: NO.
SORT_BY_SCOPE_NAME = NO
SORT_BY_SCOPE_NAME = YES
# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
# type resolution of all parameters of a function it will reject a match between
......@@ -702,7 +702,7 @@ SHOW_FILES = NO
# Folder Tree View (if specified).
# The default value is: YES.
SHOW_NAMESPACES = NO
SHOW_NAMESPACES = YES
# The FILE_VERSION_FILTER tag can be used to specify a program or script that
# doxygen should invoke to get the current version for each file (typically from
......@@ -813,7 +813,7 @@ WARN_LOGFILE =
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
# Note: If this tag is empty the current directory is searched.
INPUT = ../src ../tests/Contracts api/doxygen_home.md
INPUT = ../src ../tests/Contracts doxygen_home.md
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
......@@ -1006,7 +1006,7 @@ FILTER_SOURCE_PATTERNS =
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
USE_MDFILE_AS_MAINPAGE = api/doxygen_home.md
USE_MDFILE_AS_MAINPAGE = doxygen_home.md
#---------------------------------------------------------------------------
# Configuration options related to source browsing
......@@ -2001,7 +2001,7 @@ XML_OUTPUT = xml
# The default value is: YES.
# This tag requires that the tag GENERATE_XML is set to YES.
XML_PROGRAMLISTING = YES
XML_PROGRAMLISTING = NO
# If the XML_NS_MEMB_FILE_SCOPE tag is set to YES, doxygen will include
# namespace members in file scope as well, matching the HTML output.
......
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
SPHINXPROJ = SoongETL
SOURCEDIR = .
BUILDDIR = _build
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M [email protected] "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
<!-- We need to have api.rst for the toc to work, but want api.html to redirect to the Doxygen output. -->
<html>
<head>
<meta http-equiv="refresh" content="1; url=api/html/index.html:" />
<script>
window.location.href = "api/html/index.html"
</script>
</head>
</html>
API reference
=============
All we really need here is the title above (for the TOC), because api.html will get swapped in to redirect to the doxygen-generated API documentation.
This diff is collapsed.
var annotated_dup =
[
[ "Soong", null, [
[ "Configuration", null, [
[ "OptionsResolverComponent", "class_soong_1_1_configuration_1_1_options_resolver_component.html", "class_soong_1_1_configuration_1_1_options_resolver_component" ]
] ],
[ "Console", null, [
[ "Command", null, [
[ "EtlCommand", "class_soong_1_1_console_1_1_command_1_1_etl_command.html", "class_soong_1_1_console_1_1_command_1_1_etl_command" ],
[ "MigrateCommand", "class_soong_1_1_console_1_1_command_1_1_migrate_command.html", "class_soong_1_1_console_1_1_command_1_1_migrate_command" ],
[ "RollbackCommand", "class_soong_1_1_console_1_1_command_1_1_rollback_command.html", "class_soong_1_1_console_1_1_command_1_1_rollback_command" ],
[ "StatusCommand", "class_soong_1_1_console_1_1_command_1_1_status_command.html", "class_soong_1_1_console_1_1_command_1_1_status_command" ]
] ]
] ],
[ "Contracts", null, [
[ "Configuration", null, [
[ "ConfigurableComponent", "interface_soong_1_1_contracts_1_1_configuration_1_1_configurable_component.html", "interface_soong_1_1_contracts_1_1_configuration_1_1_configurable_component" ]
] ],
[ "Data", null, [
[ "DataProperty", "interface_soong_1_1_contracts_1_1_data_1_1_data_property.html", "interface_soong_1_1_contracts_1_1_data_1_1_data_property" ],
[ "DataRecord", "interface_soong_1_1_contracts_1_1_data_1_1_data_record.html", "interface_soong_1_1_contracts_1_1_data_1_1_data_record" ]
] ],
[ "Exception", null, [
[ "ComponentNotFound", "class_soong_1_1_contracts_1_1_exception_1_1_component_not_found.html", null ],
[ "DuplicateTask", "class_soong_1_1_contracts_1_1_exception_1_1_duplicate_task.html", null ],
[ "SoongException", "interface_soong_1_1_contracts_1_1_exception_1_1_soong_exception.html", null ]
] ],
[ "Extractor", null, [
[ "Extractor", "interface_soong_1_1_contracts_1_1_extractor_1_1_extractor.html", "interface_soong_1_1_contracts_1_1_extractor_1_1_extractor" ]
] ],
[ "KeyMap", null, [
[ "KeyMap", "interface_soong_1_1_contracts_1_1_key_map_1_1_key_map.html", "interface_soong_1_1_contracts_1_1_key_map_1_1_key_map" ]
] ],
[ "Loader", null, [
[ "Loader", "interface_soong_1_1_contracts_1_1_loader_1_1_loader.html", "interface_soong_1_1_contracts_1_1_loader_1_1_loader" ]
] ],
[ "Task", null, [
[ "EtlTask", "interface_soong_1_1_contracts_1_1_task_1_1_etl_task.html", "interface_soong_1_1_contracts_1_1_task_1_1_etl_task" ],
[ "Task", "interface_soong_1_1_contracts_1_1_task_1_1_task.html", "interface_soong_1_1_contracts_1_1_task_1_1_task" ],
[ "TaskPipeline", "interface_soong_1_1_contracts_1_1_task_1_1_task_pipeline.html", "interface_soong_1_1_contracts_1_1_task_1_1_task_pipeline" ]
] ],
[ "Transformer", null, [
[ "Transformer", "interface_soong_1_1_contracts_1_1_transformer_1_1_transformer.html", "interface_soong_1_1_contracts_1_1_transformer_1_1_transformer" ]
] ]
] ],
[ "Data", null, [
[ "Property", "class_soong_1_1_data_1_1_property.html", "class_soong_1_1_data_1_1_property" ],
[ "Record", "class_soong_1_1_data_1_1_record.html", "class_soong_1_1_data_1_1_record" ]
] ],
[ "Extractor", null, [
[ "ArrayExtractor", "class_soong_1_1_extractor_1_1_array_extractor.html", "class_soong_1_1_extractor_1_1_array_extractor" ],
[ "CountableExtractorBase", "class_soong_1_1_extractor_1_1_countable_extractor_base.html", "class_soong_1_1_extractor_1_1_countable_extractor_base" ],
[ "Csv", "class_soong_1_1_extractor_1_1_csv.html", "class_soong_1_1_extractor_1_1_csv" ],
[ "DBAL", "class_soong_1_1_extractor_1_1_d_b_a_l.html", "class_soong_1_1_extractor_1_1_d_b_a_l" ],
[ "ExtractorBase", "class_soong_1_1_extractor_1_1_extractor_base.html", "class_soong_1_1_extractor_1_1_extractor_base" ]
] ],
[ "KeyMap", null, [
[ "DBAL", "class_soong_1_1_key_map_1_1_d_b_a_l.html", "class_soong_1_1_key_map_1_1_d_b_a_l" ],
[ "KeyMapBase", "class_soong_1_1_key_map_1_1_key_map_base.html", "class_soong_1_1_key_map_1_1_key_map_base" ]
] ],
[ "Loader", null, [
[ "Csv", "class_soong_1_1_loader_1_1_csv.html", "class_soong_1_1_loader_1_1_csv" ],
[ "DBAL", "class_soong_1_1_loader_1_1_d_b_a_l.html", "class_soong_1_1_loader_1_1_d_b_a_l" ],
[ "LoaderBase", "class_soong_1_1_loader_1_1_loader_base.html", "class_soong_1_1_loader_1_1_loader_base" ],
[ "VarDump", "class_soong_1_1_loader_1_1_var_dump.html", "class_soong_1_1_loader_1_1_var_dump" ]
] ],
[ "Task", null, [
[ "EtlTask", "class_soong_1_1_task_1_1_etl_task.html", "class_soong_1_1_task_1_1_etl_task" ],
[ "Task", "class_soong_1_1_task_1_1_task.html", "class_soong_1_1_task_1_1_task" ],
[ "TaskPipeline", "class_soong_1_1_task_1_1_task_pipeline.html", "class_soong_1_1_task_1_1_task_pipeline" ]
] ],
[ "Tests", null, [
[ "Contracts", null, [
[ "Data", null, [
[ "DataPropertyTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_data_1_1_data_property_test_base.html", "class_soong_1_1_tests_1_1_contracts_1_1_data_1_1_data_property_test_base" ]
] ],
[ "Extractor", null, [
[ "CountableExtractorTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_extractor_1_1_countable_extractor_test_base.html", "class_soong_1_1_tests_1_1_contracts_1_1_extractor_1_1_countable_extractor_test_base" ],
[ "ExtractorTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_extractor_1_1_extractor_test_base.html", "class_soong_1_1_tests_1_1_contracts_1_1_extractor_1_1_extractor_test_base" ]
] ],
[ "KeyMap", null, [
[ "KeyMapTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_key_map_1_1_key_map_test_base.html", "class_soong_1_1_tests_1_1_contracts_1_1_key_map_1_1_key_map_test_base" ]
] ],
[ "Loader", null, [
[ "LoaderTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_loader_1_1_loader_test_base.html", "class_soong_1_1_tests_1_1_contracts_1_1_loader_1_1_loader_test_base" ]
] ],
[ "Task", null, [
[ "EtlTaskTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_task_1_1_etl_task_test_base.html", null ],
[ "TaskPipelineTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_task_1_1_task_pipeline_test_base.html", "class_soong_1_1_tests_1_1_contracts_1_1_task_1_1_task_pipeline_test_base" ],
[ "TaskTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_task_1_1_task_test_base.html", "class_soong_1_1_tests_1_1_contracts_1_1_task_1_1_task_test_base" ]
] ],
[ "Transformer", null, [
[ "TransFormerTestBase", "class_soong_1_1_tests_1_1_contracts_1_1_transformer_1_1_trans_former_test_base.html", "class_soong_1_1_tests_1_1_contracts_1_1_transformer_1_1_trans_former_test_base" ]
] ]
] ]
] ],
[ "Transformer", null, [
[ "Copy", "class_soong_1_1_transformer_1_1_copy.html", "class_soong_1_1_transformer_1_1_copy" ],
[ "Double", "class_soong_1_1_transformer_1_1_double.html", "class_soong_1_1_transformer_1_1_double" ],
[ "Increment", "class_soong_1_1_transformer_1_1_increment.html", "class_soong_1_1_transformer_1_1_increment" ],
[ "KeyMapLookup", "class_soong_1_1_transformer_1_1_key_map_lookup.html", "class_soong_1_1_transformer_1_1_key_map_lookup" ],
[ "TransformerBase", "class_soong_1_1_transformer_1_1_transformer_base.html", "class_soong_1_1_transformer_1_1_transformer_base" ],
[ "UcFirst", "class_soong_1_1_transformer_1_1_uc_first.html", "class_soong_1_1_transformer_1_1_uc_first" ],
[ "ValueLookup", "class_soong_1_1_transformer_1_1_value_lookup.html", "class_soong_1_1_transformer_1_1_value_lookup" ]
] ]
] ],
[ "Countable", "class_countable.html", null ],
[ "RuntimeException", "class_runtime_exception.html", null ]
];
\ No newline at end of file
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Soong: Countable Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Soong
</div>
<div id="projectbrief">Soong provides a general-purpose ETL library for data migration.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('class_countable.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Countable Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for Countable:</div>
<div class="dyncontent">
<div class="center">
<img src="class_countable.png" usemap="#Countable_map" alt=""/>
<map id="Countable_map" name="Countable_map">
<area href="interface_soong_1_1_contracts_1_1_key_map_1_1_key_map.html" title="Represents the mapping of extracted keys to loaded keys." alt="KeyMap" shape="rect" coords="0,56,148,80"/>
<area href="class_soong_1_1_extractor_1_1_countable_extractor_base.html" title="Provides default implementation of count()." alt="CountableExtractorBase" shape="rect" coords="158,56,306,80"/>
<area href="class_soong_1_1_key_map_1_1_key_map_base.html" title="Common implementation many/most key map implementations will need." alt="KeyMapBase" shape="rect" coords="0,112,148,136"/>
<area href="class_soong_1_1_extractor_1_1_d_b_a_l.html" title="Extractor for DBAL SQL queries." alt="DBAL" shape="rect" coords="158,112,306,136"/>
<area href="class_soong_1_1_key_map_1_1_d_b_a_l.html" title="Implementation of key maps using DBAL for storage." alt="DBAL" shape="rect" coords="0,168,148,192"/>
</map>
</div></div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="class_countable.html">Countable</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
</ul>
</div>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Soong: RecursiveFilterIterator Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Soong
</div>
<div id="projectbrief">Soong provides a general-purpose ETL library for data migration.</div>
</td>
</tr>
</tbody>
</table>