Closed aaronsteers closed 2 years ago
/test-plugin name=tap-github
Starting test job... ... Job completed.
/test-plugin name=tap-github pip-url=git+https://github.com/meltanolabs/tap-github.git@main
Note: github collapses the text https://github.com/
when rendering the above. The actual full command is:
/test-plugin name=tap-github pip-url=git+https://github.com/meltanolabs/tap-github.git@main
Starting test job... ... Job completed.
/test-plugin name=notathingithink pip-url=thisisnotright
Starting test job... ... Job completed.
melty-bot % pipx install thisisnotright creating virtual environment... installing thisisnotright... Fatal error from pip prevented installation. Full pip output in file: /opt/pipx/logs/cmd_2022-10-13_15.44.47_pip_errors.log
Some possibly relevant errors from pip install: ERROR: Could not find a version that satisfies the requirement thisisnotright (from versions: none) ERROR: No matching distribution found for thisisnotright Error installing thisisnotright.
/test-plugin name=target-jsonl pip-url=target-jsonl
Starting test job... ... Job completed.
/test-plugin name=target-yaml pip-url=git+https://github.com/MeltanoLabs/target-yaml.git
Starting test job... ... Job completed.
/test-plugin name=target-postgres pip-url=pipelinewise-target-postgres
Starting test job... ... Job completed.
/test-plugin name=target-sqlite pip-url=git+https://github.com/MeltanoLabs/target-sqlite.git
Starting test job... ... Job completed.
/test-plugin name=tap-carbon-intensity pip-url=git+https://gitlab.com/meltano/tap-carbon-intensity.git
Starting test job... ... Job completed.
/test-plugin name=tap-zendesk pip-url=twilio-tap-zendesk
Starting test job... ... Job completed.
/test-plugin name=target-snowflake pip-url=pipelinewise-target-snowflake
Starting test job... ... Job completed.
/test-plugin name=target-csv pip-url=git+https://github.com/hotgluexyz/target-csv.git
Starting test job... ... Job completed.
/test-plugin name=tap-mysql pip-url=pipelinewise-tap-mysql
Starting test job... ... Job completed.
/test-plugin name=tap-spreadsheets-anywhere pip-url=git+https://github.com/ets/tap-spreadsheets-anywhere.git
Starting test job... ... Job completed.
/test-plugin name=tap-csv pip-url=git+https://github.com/MeltanoLabs/tap-csv.git
Starting test job... ... Job completed.
/test-plugin name=tap-github pip-url=tap-github
Starting test job... ... Job completed.
/test-plugin name=tap-mongodb pip-url=tap-mongodb
Starting test job... ... Job completed.
/test-plugin name=tap-google-analytics pip-url=git+https://github.com/MeltanoLabs/tap-google-analytics.git
Starting test job... ... Job completed.
/test-plugin name=tap-hubspot pip-url=git+https://github.com/singer-io/tap-hubspot.git
Starting test job... ... Job completed.
/test-plugin name=tap-airtable pip-url=git+https://github.com/goes-funky/tap-airtable.git
Starting test job... ... Job completed.
/test-plugin name=tap-airtable pip-url=git+goes-funky/tap-airtable.git
Starting test job... ... Job completed.
Usage info Detected capabilities
- ✅ 'catalog'
- ✅ 'state'
- ❌ 'about'
@aaronsteers this one's a false positive for the state
capability: https://github.com/goes-funky/tap-airtable/blob/46b9b3e010abdc4bde84e38a1fdf4dd0411ee121/tap_airtable/__init__.py#L11-L17
@edgarrmondragon - thanks for raising. It looks like our heuristic is fine (screenshot below) but perhaps a case where the developer perhaps started as a copy of another repo and never removed the --state
flag from the CLI.
Correction:
It looks like this plugin is leveraging a generic function from singer.util
, which itself does not take any flags or inputs about specific expected capabilities:
The relevant singer library code:
https://github.com/transferwise/pipelinewise-singer-python/blob/master/singer/utils.py#L149-L151
The tap-airbyte code which references it:
From this observation, perhaps we cannot infer as much from the --help
text as previously thought.
@aaronsteers I guess that's an issue even for SDK-based taps. There may be some sources that don't really support state, but it will still declare the state
capability and show it in the --help
output.
@edgarrmondragon - Thanks for calling this out. You prompted me to do an analysis of capabilities here.
I didn't see any big risks or issues in that analysis. What I realized when writing that was that, even if none of a tap's streams support incremental, there may still be value in accepting a state file via --state
. State files also can contain elements such as 'last sync time' - and while not adding a ton of value, I don't see a strong reason to reject the file or fail the process if --state
is passed to the tap.
What do you think?
Tacking issue for Oct 13 mob session re: plugin definition updates.
PR: https://github.com/meltano/hub/pull/895 Spreadsheet: https://docs.google.com/spreadsheets/d/1PdM1Mp-PMF6V1r1gbI7d1qcJzGPtbqgmCOMjbdj4drI/edit#gid=1111558337