these 4 derivations will be built: /nix/store/c15nf0wwh79jhyf9mfgbbpr897z20mw0-harvest-exporter-0.1.0.drv /nix/store/q2ky2jzydsgmag81ibkqar718xdd6pgr-treefmt.toml.drv /nix/store/kh1wdk2p47ai94irb256vhaqxr2xcahv-treefmt.drv /nix/store/g0jf1nsnffjv2xq2p5y85sq4ky40xyix-treefmt-check.drv these 2 paths will be fetched (25.7 KiB download, 100.0 KiB unpacked): /nix/store/ahqrmkrnp6bpm2kwjgzirpxmv528jkp8-python3.14-types-requests-2.32.4.20260107 /nix/store/yyfi76llqipb2gyqbmks8nlgdn68i4w8-python3.14-types-urllib3-1.26.25.14 building '/nix/store/g0jf1nsnffjv2xq2p5y85sq4ky40xyix-treefmt-check.drv' on 'ssh-ng://customer@mac02.m.ntd.one' building '/nix/store/g0jf1nsnffjv2xq2p5y85sq4ky40xyix-treefmt-check.drv' treefmt-check> treefmt v2.5.0ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/rest/src/rest/__init__.py:1:1 treefmt-check> treefmt-check> Found 1 error. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/transferwise/src/transferwise/__init__.py:1:1 treefmt-check> treefmt-check> Found 1 error. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/accounting_types.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/api.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/check_accounts.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/client.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/contacts.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/invoices.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/invoices.py:64:9 treefmt-check> | treefmt-check> 62 | raise ValueError(msg) treefmt-check> 63 | treefmt-check> 64 | def get_invoices( treefmt-check> | ^^^^^^^^^^^^ treefmt-check> 65 | self, treefmt-check> 66 | limit: int = 100, treefmt-check> | treefmt-check> help: Consider adding `@typing.override` if changing the function signature would violate the Liskov Substitution Principle treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/invoices.py:165:9 treefmt-check> | treefmt-check> 163 | raise ValueError(msg) treefmt-check> 164 | treefmt-check> 165 | def send_invoice_by_email( treefmt-check> | ^^^^^^^^^^^^^^^^^^^^^ treefmt-check> 166 | self, treefmt-check> 167 | invoice_id: int, treefmt-check> | treefmt-check> help: Consider adding `@typing.override` if changing the function signature would violate the Liskov Substitution Principle treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/models/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/models/base.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/models/check_account.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/models/contact.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/models/invoice.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/object_resolver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/transactions.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (7 > 5) treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/transactions.py:25:9 treefmt-check> | treefmt-check> 23 | self.client = client treefmt-check> 24 | treefmt-check> 25 | def get_transactions( treefmt-check> | ^^^^^^^^^^^^^^^^ treefmt-check> 26 | self, treefmt-check> 27 | check_account_id: int | None = None, treefmt-check> | treefmt-check> help: Consider adding `@typing.override` if changing the function signature would violate the Liskov Substitution Principle treefmt-check> treefmt-check> PLR0917 Too many positional arguments (9 > 5) treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/transactions.py:81:9 treefmt-check> | treefmt-check> 79 | return self.client.get(f"CheckAccountTransaction/{transaction_id}") treefmt-check> 80 | treefmt-check> 81 | def create_transaction( treefmt-check> | ^^^^^^^^^^^^^^^^^^ treefmt-check> 82 | self, treefmt-check> 83 | check_account_id: int, treefmt-check> | treefmt-check> help: Consider adding `@typing.override` if changing the function signature would violate the Liskov Substitution Principle treefmt-check> treefmt-check> PLR0917 Too many positional arguments (8 > 5) treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/transactions.py:132:9 treefmt-check> | treefmt-check> 130 | return self.client.post("CheckAccountTransaction", json_data=data) treefmt-check> 131 | treefmt-check> 132 | def update_transaction( treefmt-check> | ^^^^^^^^^^^^^^^^^^ treefmt-check> 133 | self, treefmt-check> 134 | transaction_id: int, treefmt-check> | treefmt-check> help: Consider adding `@typing.override` if changing the function signature would violate the Liskov Substitution Principle treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/vouchers.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (8 > 5) treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/vouchers.py:185:9 treefmt-check> | treefmt-check> 183 | self.accounting_types = accounting_types treefmt-check> 184 | treefmt-check> 185 | def get_vouchers( treefmt-check> | ^^^^^^^^^^^^ treefmt-check> 186 | self, treefmt-check> 187 | status: VoucherStatus | None = None, treefmt-check> | treefmt-check> help: Consider adding `@typing.override` if changing the function signature would violate the Liskov Substitution Principle treefmt-check> treefmt-check> PLR0917 Too many positional arguments (14 > 5) treefmt-check> --> packages/sevdesk-api/src/sevdesk_api/vouchers.py:355:9 treefmt-check> | treefmt-check> 353 | conn.close() treefmt-check> 354 | treefmt-check> 355 | def _build_voucher_data( treefmt-check> | ^^^^^^^^^^^^^^^^^^^ treefmt-check> 356 | self, treefmt-check> 357 | credit_debit: CreditDebit, treefmt-check> | treefmt-check> help: Consider adding `@typing.override` if changing the function signature would violate the Liskov Substitution Principle treefmt-check> treefmt-check> Found 22 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/kimai/src/kimai/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/kimai/src/kimai/api.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/kimai/src/kimai/api.py:84:9 treefmt-check> | treefmt-check> 82 | return ActivityInfo.from_json(activity_data[0]) treefmt-check> 83 | treefmt-check> 84 | def get_time_entries( treefmt-check> | ^^^^^^^^^^^^^^^^ treefmt-check> 85 | self, treefmt-check> 86 | from_date: datetime, treefmt-check> | treefmt-check> help: Consider adding `@typing.override` if changing the function signature would violate the Liskov Substitution Principle treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/kimai/src/kimai/data.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/kimai/src/kimai/jsonserializer.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/kimai/src/kimai_exporter/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/kimai/src/kimai_exporter/cli.py:1:1 treefmt-check> treefmt-check> Found 7 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-invoicer/src/sevdesk_invoicer/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-invoicer/src/sevdesk_tax_estimator/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-invoicer/src/sevdesk_wise_importer/__init__.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (7 > 5) treefmt-check> --> packages/sevdesk-invoicer/src/sevdesk_wise_importer/__init__.py:144:5 treefmt-check> | treefmt-check> 144 | def import_record( treefmt-check> | ^^^^^^^^^^^^^ treefmt-check> 145 | api: SevDeskAPI, treefmt-check> 146 | accounts: Accounts, treefmt-check> | treefmt-check> treefmt-check> Found 4 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/tests/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/tests/conftest.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/tests/test_cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/tests/test_exchange_rate_store.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/tests/test_utils.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/e2e_demo.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_app.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_config.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_db.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_fetch.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_i18n.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_mail.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_model.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_render.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/tests/test_rest_retry.py:1:1 treefmt-check> treefmt-check> Found 17 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/api.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/cli/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/cli/documents.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/cli/formatter.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/cli/mail_accounts.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/cli/mail_rules.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/cli/main.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/cli/tags.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/errors.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/models/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/models/base.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/models/correspondent.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/models/document.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/models/mail.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/models/tag.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/paperless-cli/src/paperless_cli/models/task.py:1:1 treefmt-check> treefmt-check> Found 17 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/__main__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/cli/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/cli/accounting_types.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/cli/check_accounts.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/cli/tax_rules.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/cli/transactions.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/cli/vouchers.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/errors.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/sevdesk-cli/src/sevdesk_cli/main.py:1:1 treefmt-check> treefmt-check> Found 10 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/quipu-invoicer/src/quipu_api/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/quipu-invoicer/src/quipu_api/cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/quipu-invoicer/src/quipu_invoicer/__init__.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (10 > 5) treefmt-check> --> packages/quipu-invoicer/src/quipu_invoicer/__init__.py:47:5 treefmt-check> | treefmt-check> 45 | ) treefmt-check> 46 | @click.argument("json_file", type=click.Path(exists=True)) treefmt-check> 47 | def main( treefmt-check> | ^^^^ treefmt-check> 48 | quipu_app_id: str, treefmt-check> 49 | quipu_app_secret: str, treefmt-check> | treefmt-check> treefmt-check> PLR0917 Too many positional arguments (10 > 5) treefmt-check> --> packages/quipu-invoicer/src/quipu_invoicer/__init__.py:75:5 treefmt-check> | treefmt-check> 75 | def create_invoice( treefmt-check> | ^^^^^^^^^^^^^^ treefmt-check> 76 | app_id: str, treefmt-check> 77 | app_secret: str, treefmt-check> | treefmt-check> treefmt-check> Found 5 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/working-days-calculator/src/working_days_calculator/__init__.py:1:1 treefmt-check> treefmt-check> Found 1 error. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest/src/harvest/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest/src/harvest_exporter/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest/src/harvest_exporter/cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest/src/harvest_exporter/export.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest/src/harvest_rounder/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest/src/harvest_rounder/cli.py:1:1 treefmt-check> treefmt-check> Found 6 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/src/ecbx/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/src/ecbx/__main__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/src/ecbx/cli.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/ecbx/src/ecbx/cli.py:134:5 treefmt-check> | treefmt-check> 132 | ) treefmt-check> 133 | @click.pass_context treefmt-check> 134 | def convert( treefmt-check> | ^^^^^^^ treefmt-check> 135 | ctx: click.Context, treefmt-check> 136 | date: str | None, treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/src/ecbx/constants.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/src/ecbx/store.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/ecbx/src/ecbx/utils.py:1:1 treefmt-check> treefmt-check> Found 7 errors. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/wise-exporter/src/wise_exporter/__init__.py:1:1 treefmt-check> treefmt-check> Found 1 error. treefmt-check> treefmt-check> ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/app.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (7 > 5) treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/app.py:78:5 treefmt-check> | treefmt-check> 78 | def _make_invoice( treefmt-check> | ^^^^^^^^^^^^^ treefmt-check> 79 | lines: list[InvoiceLine], treefmt-check> 80 | number: str, treefmt-check> | treefmt-check> treefmt-check> PLR0917 Too many positional arguments (16 > 5) treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/app.py:103:5 treefmt-check> | treefmt-check> 103 | def create_app( treefmt-check> | ^^^^^^^^^^ treefmt-check> 104 | lines: list[InvoiceLine], treefmt-check> 105 | issuer: dict[str, object], treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/cli.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (7 > 5) treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/cli.py:182:5 treefmt-check> | treefmt-check> 182 | def _build_invoice( treefmt-check> | ^^^^^^^^^^^^^^ treefmt-check> 183 | lines: list[InvoiceLine], treefmt-check> 184 | number: str, treefmt-check> | treefmt-check> treefmt-check> PLR0917 Too many positional arguments (11 > 5) treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/cli.py:312:5 treefmt-check> | treefmt-check> 310 | help="Use synthetic data (no Harvest credentials required).", treefmt-check> 311 | ) treefmt-check> 312 | def serve( treefmt-check> | ^^^^^ treefmt-check> 313 | client_filter: str | None, treefmt-check> 314 | db_path: Path | None, treefmt-check> | treefmt-check> treefmt-check> PLR0917 Too many positional arguments (14 > 5) treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/cli.py:525:5 treefmt-check> | treefmt-check> 523 | @_MERGE_DUPLICATES_OPTION treefmt-check> 524 | @_BILL_TO_OPTION treefmt-check> 525 | def generate( treefmt-check> | ^^^^^^^^ treefmt-check> 526 | months: tuple[str, ...], treefmt-check> 527 | client_filter: str | None, treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/config.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/db.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/fetch.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/i18n.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/mail.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/model.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/harvest-invoicer/src/harvest_invoicer/render.py:1:1 treefmt-check> treefmt-check> Found 16 errors (1 fixed, 15 remaining). treefmt-check> treefmt-check> traversed 200 files treefmt-check> emitted 115 files for processing treefmt-check> formatted 18 files (1 changed) in 19.917s treefmt-check> Error: failed to finalise formatting: formatting failures detected error: build of '/nix/store/g0jf1nsnffjv2xq2p5y85sq4ky40xyix-treefmt-check.drv' on 'ssh-ng://customer@mac02.m.ntd.one' failed: Cannot build '/nix/store/g0jf1nsnffjv2xq2p5y85sq4ky40xyix-treefmt-check.drv'. Reason: builder failed with exit code 1. Output paths: /nix/store/84xv6lv6m1fxqhyg8i99ng8xh3qkrfky-treefmt-check Last 25 log lines: > > CPY001 Missing copyright notice at top of file > --> packages/harvest-invoicer/src/harvest_invoicer/db.py:1:1 > > CPY001 Missing copyright notice at top of file > --> packages/harvest-invoicer/src/harvest_invoicer/fetch.py:1:1 > > CPY001 Missing copyright notice at top of file > --> packages/harvest-invoicer/src/harvest_invoicer/i18n.py:1:1 > > CPY001 Missing copyright notice at top of file > --> packages/harvest-invoicer/src/harvest_invoicer/mail.py:1:1 > > CPY001 Missing copyright notice at top of file > --> packages/harvest-invoicer/src/harvest_invoicer/model.py:1:1 > > CPY001 Missing copyright notice at top of file > --> packages/harvest-invoicer/src/harvest_invoicer/render.py:1:1 > > Found 16 errors (1 fixed, 15 remaining). > > traversed 200 files > emitted 115 files for processing > formatted 18 files (1 changed) in 19.917s > Error: failed to finalise formatting: formatting failures detected For full logs, run: nix log /nix/store/g0jf1nsnffjv2xq2p5y85sq4ky40xyix-treefmt-check.drv error: Cannot build '/nix/store/g0jf1nsnffjv2xq2p5y85sq4ky40xyix-treefmt-check.drv'. Reason: builder failed with exit code 1. Output paths: /nix/store/84xv6lv6m1fxqhyg8i99ng8xh3qkrfky-treefmt-check