airbyte
airbyte copied to clipboard
:bug: Source Fauna: fix bug during discover step
What
In the fauna source, discover would crash if there were any indexes with no terms or no values. This PR fixes that bug.
How
Bug is fixed, and added a test to validate it.
🚨 User Impact 🚨
None.
Tests
Unit
Test session starts (platform: linux, Python 3.9.15, pytest 6.2.5, pytest-sugar 0.9.6)
cachedir: .pytest_cache
hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.hypothesis/examples')
rootdir: /home/macmv/Desktop/programming/fauna/airbyte, configfile: pytest.ini
plugins: requests-mock-1.9.3, hypothesis-6.54.6, sugar-0.9.6, cov-3.0.0, timeout-1.4.2, mock-3.6.1
collecting ... Expr({'now': None})
Expr({'paginate': Expr({'collections': None})})
Expr({'paginate': Expr({'indexes': None})})
status=<Status.SUCCEEDED: 'SUCCEEDED'> message=None
airbyte-integrations/connectors/source-fauna/unit_tests/check_test.py::test_valid_query ✓ 6% ▋ <MagicMock id='139937744223968'>
airbyte-integrations/connectors/source-fauna/unit_tests/check_test.py::test_invalid_check ✓ 11% █▎ Waiting for FaunaDB to start...
.........
FaunaDB is ready! Starting tests
Setting up database...
Database is setup!
[info]: reading add/removes for stream foo
[info]: emitting object {'ref': '105', 'ts': 1670542297820000, 'my_deletion_col': '2022-12-08T23:31:37.820000'}
Ref(id=350521600687211008, collection=Ref(id=foo, collection=Ref(id=collections))) Ref(id=350521600707133952, collection=Ref(id=foo, collection=Ref(id=collections))) Ref(id=350521600728105472, collection=Ref(id=foo, collection=Ref(id=collections)))
[info]: reading add/removes for stream foo
[info]: emitting object {'ref': '350521600687211008', 'ts': 1670542297970000, 'my_deletion_col': '2022-12-08T23:31:37.970000'}
[info]: emitting object {'ref': '350521600728105472', 'ts': 1670542297990000, 'my_deletion_col': '2022-12-08T23:31:37.990000'}
[info]: emitting object {'ref': '350521600707133952', 'ts': 1670542298010000, 'my_deletion_col': '2022-12-08T23:31:38.010000'}
=== check: make sure we read the initial state
[info]: state: {}
[info]: syncing stream 'foo' with incremental
[info]: found index 'foo_ts', which will be used to sync 'foo'
[info]: skipping collection events (no deletions needed)
[info]: reading document updates for stream foo
=== check: make sure the state resumes
[info]: state: {'foo': {'updates_cursor': {'ts': 1670542297490000, 'ref': '104'}}}
[info]: syncing stream 'foo' with incremental
[info]: found index 'foo_ts', which will be used to sync 'foo'
[info]: skipping collection events (no deletions needed)
[info]: reading document updates for stream foo
=== check: make sure that updates are actually read
[info]: state: {'foo': {'updates_cursor': {'ts': 1670542297490000, 'ref': '104'}}}
[info]: syncing stream 'foo' with incremental
[info]: found index 'foo_ts', which will be used to sync 'foo'
[info]: skipping collection events (no deletions needed)
[info]: reading document updates for stream foo
=== check: make sure we read the initial state
[info]: state: {}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: reading document updates for stream deletions_test
=== check: make sure we don't produce more records when nothing changed
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 0, 'ref': ''}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: reading document updates for stream deletions_test
=== check: make sure deleted documents produce records
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 0, 'ref': ''}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: emitting object {'ref': '101', 'ts': 1670542298580000, 'deleted_at': '2022-12-08T23:31:38.580000'}
[info]: emitting object {'ref': '103', 'ts': 1670542298590000, 'deleted_at': '2022-12-08T23:31:38.590000'}
[info]: reading document updates for stream deletions_test
=== check: make sure we don't produce more deleted documents when nothing changed
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 1670542298590000, 'ref': '103'}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: reading document updates for stream deletions_test
=== check: make sure another deleted document produces one more record
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 1670542298590000, 'ref': '103'}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: emitting object {'ref': '102', 'ts': 1670542298760000, 'deleted_at': '2022-12-08T23:31:38.760000'}
[info]: reading document updates for stream deletions_test
=== check: make sure we don't produce more deleted documents when nothing changed
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 1670542298760000, 'ref': '102'}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: reading document updates for stream deletions_test
Stopping FaunaDB container...
Stopped FaunaDB container
airbyte-integrations/connectors/source-fauna/unit_tests/database_test.py::test_database ✓ 17% █▋ Expr({'paginate': Expr({'indexes': None})})
Expr({'get': Ref(id=ts, collection=Ref(id=indexes))})
Expr({'paginate': Expr({'collections': None})})
airbyte-integrations/connectors/source-fauna/unit_tests/discover_test.py::test_simple_discover ✓ 22% ██▎ [info]: no after token, starting from beginning
airbyte-integrations/connectors/source-fauna/unit_tests/full_refresh_test.py::test_read_all ✓ 28% ██▊ [info]: no after token, starting from beginning
airbyte-integrations/connectors/source-fauna/unit_tests/full_refresh_test.py::test_read_all_extra_columns ✓ 33% ███▍ [info]: no after token, starting from beginning
[info]: using after token ['even more magical', 3, 'data']
airbyte-integrations/connectors/source-fauna/unit_tests/full_refresh_test.py::test_read_all_resume ✓ 39% ███▉ [info]: state: {}
[info]: syncing stream 'my_stream_name' with incremental
[info]: found index 'ts', which will be used to sync 'my_stream_name'
airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_no_updates_or_creates_but_removes_present ✓ 44% ████▌ [info]: state: {}
[info]: syncing stream 'my_stream_name' with incremental
[info]: found index 'my_stream_name_ts', which will be used to sync 'my_stream_name'
[info]: skipping collection events (no deletions needed)
airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_updates_ignore_deletes ✓ 50% █████ [info]: reading add/removes for stream foo
[info]: emitting object {'ref': '100', 'ts': 99, 'deletes_here': '1970-01-01T00:00:00.000099'}
[info]: emitting object {'ref': '5', 'ts': 999, 'deletes_here': '1970-01-01T00:00:00.000999'}
[info]: reading add/removes for stream foo
[info]: emitting object {'ref': '3', 'ts': 12345, 'deletes_here': '1970-01-01T00:00:00.012345'}
[info]: reading add/removes for stream foo
airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_removes_resume_from_partial_failure ✓ 56% █████▋ [info]: reading add/removes for stream foo
[info]: emitting object {'ref': '100', 'ts': 1648944000000000.0, 'my_deleted_column': '2022-04-03T00:00:00'}
[info]: reading add/removes for stream foo
[info]: reading add/removes for stream foo
[info]: emitting object {'ref': '300', 'ts': 1648944001000000.0, 'my_deleted_column': '2022-04-03T00:00:01'}
airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_remove_deletions ✓ 61% ██████▎ [info]: reading document updates for stream my_stream_name
[info]: reading document updates for stream my_stream_name
[info]: reading document updates for stream my_stream_name
airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_updates_query ✓ 67% ██████▋ [info]: reading document updates for stream my_stream_name
[info]: reading document updates for stream my_stream_name
airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_updates_resume ✓ 72% ███████▎
airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_date ✓ 78% ███████▊
airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_fauna_time ✓ 83% ████████▍
airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_bytes ✓ 89% ████████▉
airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_ref ✓ 94% █████████▌
airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_recursive ✓ 100% ██████████
======================================================================================================= warnings summary =======================================================================================================
.venv/lib/python3.9/site-packages/hyper/http11/connection.py:13
.venv/lib/python3.9/site-packages/hyper/http11/connection.py:13
/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.venv/lib/python3.9/site-packages/hyper/http11/connection.py:13: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working
from collections import Iterable, Mapping
.venv/lib/python3.9/site-packages/hyperframe/flags.py:14
/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.venv/lib/python3.9/site-packages/hyperframe/flags.py:14: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working
class Flags(collections.MutableSet):
.venv/lib/python3.9/site-packages/hyper/common/headers.py:13
/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.venv/lib/python3.9/site-packages/hyper/common/headers.py:13: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working
class HTTPHeaderMap(collections.MutableMapping):
-- Docs: https://docs.pytest.org/en/stable/warnings.html
Results (14.05s):
18 passed
Integration
Test session starts (platform: linux, Python 3.9.15, pytest 6.2.5, pytest-sugar 0.9.6)
cachedir: .pytest_cache
hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.hypothesis/examples')
rootdir: /home/macmv/Desktop/programming/fauna/airbyte, configfile: pytest.ini
plugins: requests-mock-1.9.3, hypothesis-6.54.6, sugar-0.9.6, cov-3.0.0, timeout-1.4.2, mock-3.6.1
collecting ... {"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_config_match_spec[inputs0] ✓ 2% ▎ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_match_expected[inputs0] ✓ 4% ▌ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_docker_env[inputs0] ✓ 7% ▋ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_enum_usage[inputs0] ✓ 9% ▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_oneof_usage[inputs0] ✓ 11% █▏
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_required[inputs0] ✓ 13% █▍
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_optional[inputs0] ✓ 15% █▌
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_has_secret[inputs0] ✓ 17% █▊
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_secret_never_in_the_output[inputs0] ✓ 20% █▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_secret_is_properly_marked[inputs0] ✓ 22% ██▎ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_defined_refs_exist_in_json_spec_file[inputs0] ✓ 24% ██▍ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_oauth_flow_parameters[inputs0] ✓ 26% ██▋ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_backward_compatibility[inputs0] ✓ 28% ██▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_additional_properties_is_true[inputs0] ✓ 30% ███▏ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestConnection.test_check[inputs0] ✓ 33% ███▍ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestConnection.test_check[inputs1] ✓ 35% ███▌ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/integration_tests/config/invalid.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestConnection.test_check[inputs2] ✓ 37% ███▊ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_discover[inputs0] ✓ 39% ███▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_discover[inputs1] ✓ 41% ████▎ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_cursors_exist_in_schema[inputs0] ✓ 43% ████▍ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_cursors_exist_in_schema[inputs1] ✓ 46% ████▋ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_refs_exist_in_schema[inputs0] ✓ 48% ████▊ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_refs_exist_in_schema[inputs1] ✓ 50% █████ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_keyword_exist_in_schema[inputs0-allOf] ✓ 52% █████▎ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_keyword_exist_in_schema[inputs0-not] ✓ 54% █████▌ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_keyword_exist_in_schema[inputs1-allOf] ✓ 57% █████▋ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_keyword_exist_in_schema[inputs1-not] ✓ 59% █████▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_primary_keys_exist_in_schema[inputs0] ✓ 61% ██████▏ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_primary_keys_exist_in_schema[inputs1] ✓ 63% ██████▍ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_streams_has_sync_modes[inputs0] ✓ 65% ██████▌ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_streams_has_sync_modes[inputs1] ✓ 67% ██████▊ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_additional_properties_is_true[inputs0] ✓ 70% ██████▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_additional_properties_is_true[inputs1] ✓ 72% ███████▎ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_backward_compatibility[inputs0] ✓ 74% ███████▍ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_backward_compatibility[inputs1] ✓ 76% ███████▋ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
{"type": "LOG", "log": {"level": "INFO", "message": "Actual records for stream sample-data:"}}
{"type": "LOG", "log": {"level": "INFO", "message": "[\n {\n \"ref\": \"337567897171787849\",\n \"ts\": 1658188683585000,\n \"data\": {\n \"a\": 5,\n \"nested\": {\n \"value\": 15\n }\n },\n \"ttl\": null\n },\n {\n \"ref\": \"337567897172836425\",\n \"ts\": 1658271973660000,\n \"data\": {\n \"a\": 6,\n \"nested\": {\n \"value\": 20\n },\n \"name\": \"hello world\"\n },\n \"ttl\": null\n },\n {\n \"ref\": \"337567897172837449\",\n \"ts\": 1658188683585000,\n \"data\": {\n \"a\": 7,\n \"nested\": {\n \"value\": 25\n }\n },\n \"ttl\": null\n },\n {\n \"ref\": \"337567897173885001\",\n \"ts\": 1658188683585000,\n \"data\": {\n \"a\": 8,\n \"nested\": {\n \"value\": 30\n }\n },\n \"ttl\": null\n }\n]"}}
{"type": "LOG", "log": {"level": "INFO", "message": "Expected records for stream sample-data:"}}
{"type": "LOG", "log": {"level": "INFO", "message": "[\n {\n \"ref\": \"337567897171787849\",\n \"ts\": 1658188683585000,\n \"data\": {\n \"a\": 5,\n \"nested\": {\n \"value\": 15\n }\n },\n \"ttl\": null\n },\n {\n \"ref\": \"337567897172836425\",\n \"ts\": 1658271973660000,\n \"data\": {\n \"a\": 6,\n \"nested\": {\n \"value\": 20\n },\n \"name\": \"hello world\"\n },\n \"ttl\": null\n },\n {\n \"ref\": \"337567897172837449\",\n \"ts\": 1658188683585000,\n \"data\": {\n \"a\": 7,\n \"nested\": {\n \"value\": 25\n }\n },\n \"ttl\": null\n },\n {\n \"ref\": \"337567897173885001\",\n \"ts\": 1658188683585000,\n \"data\": {\n \"a\": 8,\n \"nested\": {\n \"value\": 30\n }\n },\n \"ttl\": null\n }\n]"}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestBasicRead.test_read[inputs0] ✓ 78% ███████▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
{"type": "LOG", "log": {"level": "INFO", "message": "Actual records for stream deletions-data:"}}
{"type": "LOG", "log": {"level": "INFO", "message": "[\n {\n \"ref\": \"338836293305763911\",\n \"ts\": 1659398359360000,\n \"deleted_at\": \"2022-08-01T23:59:19.360000\"\n },\n {\n \"ref\": \"338836293305761863\",\n \"ts\": 1659398366330000,\n \"deleted_at\": \"2022-08-01T23:59:26.330000\"\n },\n {\n \"ref\": \"338836293305765959\",\n \"ts\": 1659398371330000,\n \"deleted_at\": \"2022-08-01T23:59:31.330000\"\n },\n {\n \"ref\": \"338836293305762887\",\n \"ts\": 1659398320430000,\n \"data\": {\n \"a\": 6,\n \"nested\": {\n \"value\": 20\n }\n },\n \"ttl\": null\n },\n {\n \"ref\": \"338836293305764935\",\n \"ts\": 1659398320430000,\n \"data\": {\n \"a\": 8,\n \"nested\": {\n \"value\": 30\n }\n },\n \"ttl\": null\n }\n]"}}
{"type": "LOG", "log": {"level": "INFO", "message": "Expected records for stream deletions-data:"}}
{"type": "LOG", "log": {"level": "INFO", "message": "[\n {\n \"ref\": \"338836293305763911\",\n \"ts\": 1659398359360000,\n \"deleted_at\": \"2022-08-01T23:59:19.360000\"\n },\n {\n \"ref\": \"338836293305761863\",\n \"ts\": 1659398366330000,\n \"deleted_at\": \"2022-08-01T23:59:26.330000\"\n },\n {\n \"ref\": \"338836293305765959\",\n \"ts\": 1659398371330000,\n \"deleted_at\": \"2022-08-01T23:59:31.330000\"\n },\n {\n \"ref\": \"338836293305762887\",\n \"ts\": 1659398320430000,\n \"data\": {\n \"a\": 6,\n \"nested\": {\n \"value\": 20\n }\n },\n \"ttl\": null\n },\n {\n \"ref\": \"338836293305764935\",\n \"ts\": 1659398320430000,\n \"data\": {\n \"a\": 8,\n \"nested\": {\n \"value\": 30\n }\n },\n \"ttl\": null\n }\n]"}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestBasicRead.test_read[inputs1] ✓ 80% ████████▏ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "ERROR", "message": "Docker container failed, code 1, error:\n{\"type\": \"TRACE\", \"trace\": {\"type\": \"ERROR\", \"emitted_at\": 1670543087044.6821, \"error\": {\"message\": \"Something went wrong in the connector. See the logs for more details.\", \"internal_message\": \"2 validation errors for ConfiguredAirbyteCatalog\\nstreams -> 0 -> sync_mode\\n value is not a valid enumeration member; permitted: 'full_refresh', 'incremental' (type=type_error.enum; enum_values=[<SyncMode.full_refresh: 'full_refresh'>, <SyncMode.incremental: 'incremental'>])\\nstreams -> 0 -> destination_sync_mode\\n value is not a valid enumeration member; permitted: 'append', 'overwrite', 'append_dedup' (type=type_error.enum; enum_values=[<DestinationSyncMode.append: 'append'>, <DestinationSyncMode.overwrite: 'overwrite'>, <DestinationSyncMode.append_dedup: 'append_dedup'>])\", \"stack_trace\": \"Traceback (most recent call last):\\n File \\\"/airbyte/integration_code/main.py\\\", line 13, in <module>\\n launch(source, sys.argv[1:])\\n File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/entrypoint.py\\\", line 131, in launch\\n for message in source_entrypoint.run(parsed_args):\\n File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/entrypoint.py\\\", line 119, in run\\n config_catalog = self.source.read_catalog(parsed_args.catalog)\\n File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/sources/source.py\\\", line 89, in read_catalog\\n return ConfiguredAirbyteCatalog.parse_obj(self._read_json_file(catalog_path))\\n File \\\"pydantic/main.py\\\", line 521, in pydantic.main.BaseModel.parse_obj\\n File \\\"pydantic/main.py\\\", line 341, in pydantic.main.BaseModel.__init__\\npydantic.error_wrappers.ValidationError: 2 validation errors for ConfiguredAirbyteCatalog\\nstreams -> 0 -> sync_mode\\n value is not a valid enumeration member; permitted: 'full_refresh', 'incremental' (type=type_error.enum; enum_values=[<SyncMode.full_refresh: 'full_refresh'>, <SyncMode.incremental: 'incremental'>])\\nstreams -> 0 -> destination_sync_mode\\n value is not a valid enumeration member; permitted: 'append', 'overwrite', 'append_dedup' (type=type_error.enum; enum_values=[<DestinationSyncMode.append: 'append'>, <DestinationSyncMode.overwrite: 'overwrite'>, <DestinationSyncMode.append_dedup: 'append_dedup'>])\\n\", \"failure_type\": \"system_error\"}}}\n"}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestBasicRead.test_airbyte_trace_message_on_failure[inputs0] ✓ 83% ████████▍ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "ERROR", "message": "Docker container failed, code 1, error:\n{\"type\": \"TRACE\", \"trace\": {\"type\": \"ERROR\", \"emitted_at\": 1670543087682.99, \"error\": {\"message\": \"Something went wrong in the connector. See the logs for more details.\", \"internal_message\": \"2 validation errors for ConfiguredAirbyteCatalog\\nstreams -> 0 -> sync_mode\\n value is not a valid enumeration member; permitted: 'full_refresh', 'incremental' (type=type_error.enum; enum_values=[<SyncMode.full_refresh: 'full_refresh'>, <SyncMode.incremental: 'incremental'>])\\nstreams -> 0 -> destination_sync_mode\\n value is not a valid enumeration member; permitted: 'append', 'overwrite', 'append_dedup' (type=type_error.enum; enum_values=[<DestinationSyncMode.append: 'append'>, <DestinationSyncMode.overwrite: 'overwrite'>, <DestinationSyncMode.append_dedup: 'append_dedup'>])\", \"stack_trace\": \"Traceback (most recent call last):\\n File \\\"/airbyte/integration_code/main.py\\\", line 13, in <module>\\n launch(source, sys.argv[1:])\\n File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/entrypoint.py\\\", line 131, in launch\\n for message in source_entrypoint.run(parsed_args):\\n File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/entrypoint.py\\\", line 119, in run\\n config_catalog = self.source.read_catalog(parsed_args.catalog)\\n File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/sources/source.py\\\", line 89, in read_catalog\\n return ConfiguredAirbyteCatalog.parse_obj(self._read_json_file(catalog_path))\\n File \\\"pydantic/main.py\\\", line 521, in pydantic.main.BaseModel.parse_obj\\n File \\\"pydantic/main.py\\\", line 341, in pydantic.main.BaseModel.__init__\\npydantic.error_wrappers.ValidationError: 2 validation errors for ConfiguredAirbyteCatalog\\nstreams -> 0 -> sync_mode\\n value is not a valid enumeration member; permitted: 'full_refresh', 'incremental' (type=type_error.enum; enum_values=[<SyncMode.full_refresh: 'full_refresh'>, <SyncMode.incremental: 'incremental'>])\\nstreams -> 0 -> destination_sync_mode\\n value is not a valid enumeration member; permitted: 'append', 'overwrite', 'append_dedup' (type=type_error.enum; enum_values=[<DestinationSyncMode.append: 'append'>, <DestinationSyncMode.overwrite: 'overwrite'>, <DestinationSyncMode.append_dedup: 'append_dedup'>])\\n\", \"failure_type\": \"system_error\"}}}\n"}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestBasicRead.test_airbyte_trace_message_on_failure[inputs1] ✓ 85% ████████▌ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_full_refresh.py::TestFullRefresh.test_sequential_reads[inputs0] ✓ 87% ████████▊ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_two_sequential_reads[inputs0] ✓ 89% ████████▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_two_sequential_reads[inputs1] ✓ 91% █████████▎{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_read_sequential_slices[inputs0] ✓ 93% █████████▍{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_read_sequential_slices[inputs1] ✓ 96% █████████▋{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_state_with_abnormally_large_values[inputs0] ✓ 98% █████████▊{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_state_with_abnormally_large_values[inputs1] ✓ 100% ██████████
{"type": "LOG", "log": {"level": "INFO", "message": "/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna - SAT run - b03d701bab75304f2139593c5219c3361f238487 - PASSED"}}
======================================================================================================= warnings summary =======================================================================================================
../../bases/source-acceptance-test/source_acceptance_test/config.py:257: 30 warnings
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py: 1 warning
/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/config.py:257: DeprecationWarning: The 'warn' function is deprecated, use 'warning' instead
logging.warn("The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format.")
-- Docs: https://docs.pytest.org/en/stable/warnings.html
Results (31.77s):
46 passed
/test connector=connectors/source-fauna
:clock2: connectors/source-fauna https://github.com/airbytehq/airbyte/actions/runs/3659780632 :white_check_mark: connectors/source-fauna https://github.com/airbytehq/airbyte/actions/runs/3659780632 Python tests coverage:
Name Stmts Miss Cover
-----------------------------------------------
source_fauna/__init__.py 2 0 100%
source_fauna/serialize.py 37 1 97%
source_fauna/source.py 243 50 79%
-----------------------------------------------
TOTAL 282 51 82%
Name Stmts Miss Cover Missing
----------------------------------------------------------------------------------
source_acceptance_test/base.py 12 4 67% 16-19
source_acceptance_test/config.py 140 5 96% 87, 93, 238, 242-243
source_acceptance_test/conftest.py 208 92 56% 36, 42-44, 49, 54, 77, 83, 89-91, 110, 115-117, 123-125, 131-132, 137-138, 143, 149, 158-167, 173-178, 193, 217, 248, 254, 262-267, 275-280, 288-301, 306-312, 319-330, 337-353
source_acceptance_test/plugin.py 69 25 64% 22-23, 31, 36, 120-140, 144-148
source_acceptance_test/tests/test_core.py 398 111 72% 53, 58, 87-95, 100-107, 111-112, 116-117, 299, 337-354, 363-371, 375-380, 386, 419-424, 462-469, 512-514, 517, 582-590, 602-605, 610, 666-667, 673, 676, 712-722, 735-760
source_acceptance_test/tests/test_incremental.py 158 14 91% 52-59, 64-77, 240
source_acceptance_test/utils/asserts.py 39 2 95% 62-63
source_acceptance_test/utils/common.py 94 10 89% 16-17, 32-38, 72, 75
source_acceptance_test/utils/compare.py 62 23 63% 21-51, 68, 97-99
source_acceptance_test/utils/connector_runner.py 133 33 75% 24-27, 46-47, 50-54, 57-58, 73-75, 78-80, 83-85, 88-90, 93-95, 124-125, 159-161, 208
source_acceptance_test/utils/json_schema_helper.py 107 13 88% 30-31, 38, 41, 65-68, 96, 120, 192-194
----------------------------------------------------------------------------------
TOTAL 1599 332 79%
Build Passed
Test summary info:
All Passed
Yeah, sure thing. I just bumped the version in:
modified: airbyte-config/init/src/main/resources/seed/source_definitions.yaml
modified: airbyte-integrations/connectors/source-fauna/Dockerfile
modified: docs/integrations/sources/fauna.md
LMK if you need any other changes.
/publish connector=connectors/source-fauna
:clock2: Publishing the following connectors:
connectors/source-fauna
https://github.com/airbytehq/airbyte/actions/runs/3690581588
| Connector | Did it publish? | Were definitions generated? |
|---|---|---|
| connectors/source-fauna | :white_check_mark: | :x: |
if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️
Hello :wave::skin-tone-2: and thank you for your contribution!
Airbyte has instituted a code freeze between 19 and 30 December, to make sure there are no disruptions during the holidays. Because of this, reviewing and merging your contribution may take longer than usual. We apologize for the delay, but we want everyone to have a quiet and happy holiday.
If you have any questions or need further clarification, please don't hesitate to ping via Slack.
@marcosmarxm could we get another look at this now that the code freeze is over?
/publish connector=connectors/source-fauna
:clock2: Publishing the following connectors:
connectors/source-fauna
https://github.com/airbytehq/airbyte/actions/runs/4076103788
| Connector | Did it publish? | Were definitions generated? |
|---|---|---|
| connectors/source-fauna | :x: | :x: |
if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️
@macmv could you run ./gradlew :airbyte-config:init:processResources and commit the change? The version autobump did not work, so that's the workaround to fix this from no.4 in this doc..
We have a 24 hour code freeze in place but after that we should be good to merge.
Thanks for the reply @natalyjazzviolin. I just ran it, and it completed successfully and bumped the connector version in the seed file. I also rebased to the latest version of master. Are things ready to merge now?
Hey @natalyjazzviolin I've updated the PR, could you take another look at it?
@misteryeo can you help us get this out?
Closing this PR in favor of the non-forked one where we can see that the build passes: https://github.com/airbytehq/airbyte/pull/23583
Sweet, thanks!