| { |
| "audits": [ |
| { |
| "commit": "f62dda7fa44e3bc46f03bd6402eba3f641f365eb", |
| "elapsed_seconds": 0.03730566706508398, |
| "parent": "befba35a16c5543c5f270996a9bf7a4277482915", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 28, |
| "source_paths": [ |
| "gitlab/mixins.py", |
| "gitlab/v4/objects/ldap.py", |
| "gitlab/v4/objects/merge_requests.py", |
| "gitlab/v4/objects/milestones.py", |
| "gitlab/v4/objects/repositories.py", |
| "gitlab/v4/objects/runners.py", |
| "gitlab/v4/objects/users.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: Use get_all keyword arg instead of all in docstrings", |
| "validation": null |
| }, |
| { |
| "commit": "befba35a16c5543c5f270996a9bf7a4277482915", |
| "elapsed_seconds": 0.03562554204836488, |
| "parent": "9040dbe58e303d13abc75078abec892db17b065c", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 65, |
| "source_paths": [ |
| "gitlab/base.py", |
| "gitlab/mixins.py", |
| "gitlab/v4/cli.py", |
| "gitlab/v4/objects/ldap.py", |
| "gitlab/v4/objects/merge_requests.py", |
| "gitlab/v4/objects/milestones.py", |
| "gitlab/v4/objects/snippets.py", |
| "gitlab/v4/objects/users.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "Make RESTObjectList typing generic", |
| "validation": null |
| }, |
| { |
| "commit": "9040dbe58e303d13abc75078abec892db17b065c", |
| "elapsed_seconds": 0.024384999880567193, |
| "parent": "a6ac9392b0e543df32adf9058f9808d199149982", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update pre-commit hook psf/black to v25", |
| "validation": null |
| }, |
| { |
| "commit": "a6ac9392b0e543df32adf9058f9808d199149982", |
| "elapsed_seconds": 0.024466583039611578, |
| "parent": "2100aa458ba4f1c084bc97b00f7ba1693541d68a", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add reformat code commit to .git-blame-ignore-revs", |
| "validation": null |
| }, |
| { |
| "commit": "2100aa458ba4f1c084bc97b00f7ba1693541d68a", |
| "elapsed_seconds": 0.03650916600599885, |
| "parent": "4e90c113f1af768b8b049f4a64c5978a1bfbf323", |
| "reason": "production file count exceeds 8", |
| "source_changed_lines": 528, |
| "source_paths": [ |
| "gitlab/base.py", |
| "gitlab/cli.py", |
| "gitlab/client.py", |
| "gitlab/config.py", |
| "gitlab/mixins.py", |
| "gitlab/types.py", |
| "gitlab/utils.py", |
| "gitlab/v4/cli.py", |
| "gitlab/v4/objects/appearance.py", |
| "gitlab/v4/objects/applications.py", |
| "gitlab/v4/objects/artifacts.py", |
| "gitlab/v4/objects/badges.py", |
| "gitlab/v4/objects/broadcast_messages.py", |
| "gitlab/v4/objects/ci_lint.py", |
| "gitlab/v4/objects/cluster_agents.py", |
| "gitlab/v4/objects/clusters.py", |
| "gitlab/v4/objects/deploy_keys.py", |
| "gitlab/v4/objects/deploy_tokens.py", |
| "gitlab/v4/objects/deployments.py", |
| "gitlab/v4/objects/draft_notes.py", |
| "gitlab/v4/objects/environments.py", |
| "gitlab/v4/objects/epics.py", |
| "gitlab/v4/objects/features.py", |
| "gitlab/v4/objects/files.py", |
| "gitlab/v4/objects/geo_nodes.py", |
| "gitlab/v4/objects/group_access_tokens.py", |
| "gitlab/v4/objects/groups.py", |
| "gitlab/v4/objects/integrations.py", |
| "gitlab/v4/objects/invitations.py", |
| "gitlab/v4/objects/issues.py", |
| "gitlab/v4/objects/iterations.py", |
| "gitlab/v4/objects/job_token_scope.py", |
| "gitlab/v4/objects/jobs.py", |
| "gitlab/v4/objects/keys.py", |
| "gitlab/v4/objects/labels.py", |
| "gitlab/v4/objects/ldap.py", |
| "gitlab/v4/objects/merge_request_approvals.py", |
| "gitlab/v4/objects/merge_requests.py", |
| "gitlab/v4/objects/merge_trains.py", |
| "gitlab/v4/objects/milestones.py", |
| "gitlab/v4/objects/namespaces.py", |
| "gitlab/v4/objects/notification_settings.py", |
| "gitlab/v4/objects/package_protection_rules.py", |
| "gitlab/v4/objects/packages.py", |
| "gitlab/v4/objects/pipelines.py", |
| "gitlab/v4/objects/project_access_tokens.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/push_rules.py", |
| "gitlab/v4/objects/registry_protection_repository_rules.py", |
| "gitlab/v4/objects/registry_protection_rules.py", |
| "gitlab/v4/objects/releases.py", |
| "gitlab/v4/objects/repositories.py", |
| "gitlab/v4/objects/resource_groups.py", |
| "gitlab/v4/objects/runners.py", |
| "gitlab/v4/objects/secure_files.py", |
| "gitlab/v4/objects/service_accounts.py", |
| "gitlab/v4/objects/settings.py", |
| "gitlab/v4/objects/sidekiq.py", |
| "gitlab/v4/objects/snippets.py", |
| "gitlab/v4/objects/todos.py", |
| "gitlab/v4/objects/topics.py", |
| "gitlab/v4/objects/triggers.py", |
| "gitlab/v4/objects/users.py", |
| "gitlab/v4/objects/wikis.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/base/test_rest_object.py", |
| "tests/unit/objects/test_badges.py", |
| "tests/unit/objects/test_bridges.py", |
| "tests/unit/objects/test_bulk_imports.py", |
| "tests/unit/objects/test_commits.py", |
| "tests/unit/objects/test_environments.py", |
| "tests/unit/objects/test_groups.py", |
| "tests/unit/objects/test_hooks.py", |
| "tests/unit/objects/test_invitations.py", |
| "tests/unit/objects/test_job_token_scope.py", |
| "tests/unit/objects/test_jobs.py", |
| "tests/unit/objects/test_merge_requests.py", |
| "tests/unit/objects/test_packages.py", |
| "tests/unit/objects/test_personal_access_tokens.py", |
| "tests/unit/objects/test_project_import_export.py", |
| "tests/unit/objects/test_projects.py", |
| "tests/unit/objects/test_releases.py", |
| "tests/unit/objects/test_runners.py", |
| "tests/unit/objects/test_snippets.py", |
| "tests/unit/objects/test_templates.py", |
| "tests/unit/objects/test_todos.py", |
| "tests/unit/objects/test_topics.py", |
| "tests/unit/objects/test_variables.py", |
| "tests/unit/test_cli.py", |
| "tests/unit/test_gitlab.py", |
| "tests/unit/test_gitlab_auth.py", |
| "tests/unit/test_gitlab_http_methods.py", |
| "tests/unit/test_graphql.py" |
| ], |
| "title": "chore: reformat code with skip_magic_trailing_comma = true", |
| "validation": null |
| }, |
| { |
| "commit": "4e90c113f1af768b8b049f4a64c5978a1bfbf323", |
| "elapsed_seconds": 0.03654891601763666, |
| "parent": "91c4f18dc49a7eed101ce5f004f396436c6ef7eb", |
| "reason": "production file count exceeds 8", |
| "source_changed_lines": 1362, |
| "source_paths": [ |
| "gitlab/__init__.py", |
| "gitlab/_backends/protocol.py", |
| "gitlab/_backends/requests_backend.py", |
| "gitlab/base.py", |
| "gitlab/cli.py", |
| "gitlab/client.py", |
| "gitlab/config.py", |
| "gitlab/exceptions.py", |
| "gitlab/mixins.py", |
| "gitlab/types.py", |
| "gitlab/utils.py", |
| "gitlab/v4/cli.py", |
| "gitlab/v4/objects/appearance.py", |
| "gitlab/v4/objects/artifacts.py", |
| "gitlab/v4/objects/bulk_imports.py", |
| "gitlab/v4/objects/clusters.py", |
| "gitlab/v4/objects/commits.py", |
| "gitlab/v4/objects/container_registry.py", |
| "gitlab/v4/objects/deploy_keys.py", |
| "gitlab/v4/objects/deployments.py", |
| "gitlab/v4/objects/environments.py", |
| "gitlab/v4/objects/epics.py", |
| "gitlab/v4/objects/features.py", |
| "gitlab/v4/objects/files.py", |
| "gitlab/v4/objects/groups.py", |
| "gitlab/v4/objects/invitations.py", |
| "gitlab/v4/objects/issues.py", |
| "gitlab/v4/objects/job_token_scope.py", |
| "gitlab/v4/objects/jobs.py", |
| "gitlab/v4/objects/keys.py", |
| "gitlab/v4/objects/labels.py", |
| "gitlab/v4/objects/ldap.py", |
| "gitlab/v4/objects/members.py", |
| "gitlab/v4/objects/merge_request_approvals.py", |
| "gitlab/v4/objects/merge_requests.py", |
| "gitlab/v4/objects/packages.py", |
| "gitlab/v4/objects/pipelines.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/releases.py", |
| "gitlab/v4/objects/repositories.py", |
| "gitlab/v4/objects/resource_groups.py", |
| "gitlab/v4/objects/runners.py", |
| "gitlab/v4/objects/secure_files.py", |
| "gitlab/v4/objects/settings.py", |
| "gitlab/v4/objects/sidekiq.py", |
| "gitlab/v4/objects/snippets.py", |
| "gitlab/v4/objects/topics.py", |
| "gitlab/v4/objects/users.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/base/test_rest_object.py", |
| "tests/unit/helpers.py", |
| "tests/unit/meta/test_imports.py", |
| "tests/unit/meta/test_mro.py", |
| "tests/unit/test_cli.py" |
| ], |
| "title": "use more python3.9 syntax", |
| "validation": null |
| }, |
| { |
| "commit": "91c4f18dc49a7eed101ce5f004f396436c6ef7eb", |
| "elapsed_seconds": 0.035022292053326964, |
| "parent": "46dfc5098cf07355b1b6de6208aae4ec8ab5bf8a", |
| "reason": "production file count exceeds 8", |
| "source_changed_lines": 1201, |
| "source_paths": [ |
| "gitlab/base.py", |
| "gitlab/client.py", |
| "gitlab/mixins.py", |
| "gitlab/v4/cli.py", |
| "gitlab/v4/objects/access_requests.py", |
| "gitlab/v4/objects/appearance.py", |
| "gitlab/v4/objects/applications.py", |
| "gitlab/v4/objects/artifacts.py", |
| "gitlab/v4/objects/audit_events.py", |
| "gitlab/v4/objects/award_emojis.py", |
| "gitlab/v4/objects/badges.py", |
| "gitlab/v4/objects/boards.py", |
| "gitlab/v4/objects/branches.py", |
| "gitlab/v4/objects/broadcast_messages.py", |
| "gitlab/v4/objects/bulk_imports.py", |
| "gitlab/v4/objects/ci_lint.py", |
| "gitlab/v4/objects/cluster_agents.py", |
| "gitlab/v4/objects/clusters.py", |
| "gitlab/v4/objects/commits.py", |
| "gitlab/v4/objects/container_registry.py", |
| "gitlab/v4/objects/custom_attributes.py", |
| "gitlab/v4/objects/deploy_keys.py", |
| "gitlab/v4/objects/deploy_tokens.py", |
| "gitlab/v4/objects/deployments.py", |
| "gitlab/v4/objects/discussions.py", |
| "gitlab/v4/objects/draft_notes.py", |
| "gitlab/v4/objects/environments.py", |
| "gitlab/v4/objects/epics.py", |
| "gitlab/v4/objects/events.py", |
| "gitlab/v4/objects/export_import.py", |
| "gitlab/v4/objects/features.py", |
| "gitlab/v4/objects/files.py", |
| "gitlab/v4/objects/geo_nodes.py", |
| "gitlab/v4/objects/group_access_tokens.py", |
| "gitlab/v4/objects/groups.py", |
| "gitlab/v4/objects/hooks.py", |
| "gitlab/v4/objects/integrations.py", |
| "gitlab/v4/objects/invitations.py", |
| "gitlab/v4/objects/issues.py", |
| "gitlab/v4/objects/iterations.py", |
| "gitlab/v4/objects/job_token_scope.py", |
| "gitlab/v4/objects/jobs.py", |
| "gitlab/v4/objects/keys.py", |
| "gitlab/v4/objects/labels.py", |
| "gitlab/v4/objects/ldap.py", |
| "gitlab/v4/objects/members.py", |
| "gitlab/v4/objects/merge_request_approvals.py", |
| "gitlab/v4/objects/merge_requests.py", |
| "gitlab/v4/objects/merge_trains.py", |
| "gitlab/v4/objects/milestones.py", |
| "gitlab/v4/objects/namespaces.py", |
| "gitlab/v4/objects/notes.py", |
| "gitlab/v4/objects/notification_settings.py", |
| "gitlab/v4/objects/package_protection_rules.py", |
| "gitlab/v4/objects/packages.py", |
| "gitlab/v4/objects/pages.py", |
| "gitlab/v4/objects/personal_access_tokens.py", |
| "gitlab/v4/objects/pipelines.py", |
| "gitlab/v4/objects/project_access_tokens.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/push_rules.py", |
| "gitlab/v4/objects/registry_protection_repository_rules.py", |
| "gitlab/v4/objects/registry_protection_rules.py", |
| "gitlab/v4/objects/releases.py", |
| "gitlab/v4/objects/resource_groups.py", |
| "gitlab/v4/objects/reviewers.py", |
| "gitlab/v4/objects/runners.py", |
| "gitlab/v4/objects/secure_files.py", |
| "gitlab/v4/objects/service_accounts.py", |
| "gitlab/v4/objects/settings.py", |
| "gitlab/v4/objects/sidekiq.py", |
| "gitlab/v4/objects/snippets.py", |
| "gitlab/v4/objects/statistics.py", |
| "gitlab/v4/objects/status_checks.py", |
| "gitlab/v4/objects/tags.py", |
| "gitlab/v4/objects/templates.py", |
| "gitlab/v4/objects/todos.py", |
| "gitlab/v4/objects/topics.py", |
| "gitlab/v4/objects/triggers.py", |
| "gitlab/v4/objects/users.py", |
| "gitlab/v4/objects/variables.py", |
| "gitlab/v4/objects/wikis.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/meta/test_abstract_attrs.py", |
| "tests/unit/meta/test_mro.py", |
| "tests/unit/mixins/test_meta_mixins.py", |
| "tests/unit/mixins/test_object_mixins_attributes.py", |
| "tests/unit/test_cli.py" |
| ], |
| "title": "Make RESTManager generic on RESTObject class", |
| "validation": null |
| }, |
| { |
| "commit": "46dfc5098cf07355b1b6de6208aae4ec8ab5bf8a", |
| "elapsed_seconds": 0.024659499991685152, |
| "parent": "e61157b99815e04a28d71be6ee12154ea8387967", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency isort to v6", |
| "validation": null |
| }, |
| { |
| "commit": "e61157b99815e04a28d71be6ee12154ea8387967", |
| "elapsed_seconds": 0.024584917118772864, |
| "parent": "37ff25b1af6122b21a2620f9e866607b2ae1cf36", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency black to v25", |
| "validation": null |
| }, |
| { |
| "commit": "37ff25b1af6122b21a2620f9e866607b2ae1cf36", |
| "elapsed_seconds": 0.024023875128477812, |
| "parent": "edd01a57aa8c45e6514e618263003beaa0fb68e8", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "edd01a57aa8c45e6514e618263003beaa0fb68e8", |
| "elapsed_seconds": 0.03466616687364876, |
| "parent": "515a8a259e1e8e893f42b060e975490571c4136f", |
| "reason": "production file count exceeds 8", |
| "source_changed_lines": 849, |
| "source_paths": [ |
| "gitlab/client.py", |
| "gitlab/v4/objects/appearance.py", |
| "gitlab/v4/objects/audit_events.py", |
| "gitlab/v4/objects/award_emojis.py", |
| "gitlab/v4/objects/badges.py", |
| "gitlab/v4/objects/boards.py", |
| "gitlab/v4/objects/branches.py", |
| "gitlab/v4/objects/broadcast_messages.py", |
| "gitlab/v4/objects/bulk_imports.py", |
| "gitlab/v4/objects/ci_lint.py", |
| "gitlab/v4/objects/cluster_agents.py", |
| "gitlab/v4/objects/clusters.py", |
| "gitlab/v4/objects/commits.py", |
| "gitlab/v4/objects/container_registry.py", |
| "gitlab/v4/objects/custom_attributes.py", |
| "gitlab/v4/objects/deploy_keys.py", |
| "gitlab/v4/objects/deploy_tokens.py", |
| "gitlab/v4/objects/deployments.py", |
| "gitlab/v4/objects/discussions.py", |
| "gitlab/v4/objects/draft_notes.py", |
| "gitlab/v4/objects/environments.py", |
| "gitlab/v4/objects/epics.py", |
| "gitlab/v4/objects/events.py", |
| "gitlab/v4/objects/export_import.py", |
| "gitlab/v4/objects/geo_nodes.py", |
| "gitlab/v4/objects/group_access_tokens.py", |
| "gitlab/v4/objects/groups.py", |
| "gitlab/v4/objects/hooks.py", |
| "gitlab/v4/objects/integrations.py", |
| "gitlab/v4/objects/invitations.py", |
| "gitlab/v4/objects/issues.py", |
| "gitlab/v4/objects/job_token_scope.py", |
| "gitlab/v4/objects/jobs.py", |
| "gitlab/v4/objects/labels.py", |
| "gitlab/v4/objects/members.py", |
| "gitlab/v4/objects/merge_request_approvals.py", |
| "gitlab/v4/objects/merge_requests.py", |
| "gitlab/v4/objects/milestones.py", |
| "gitlab/v4/objects/namespaces.py", |
| "gitlab/v4/objects/notes.py", |
| "gitlab/v4/objects/notification_settings.py", |
| "gitlab/v4/objects/packages.py", |
| "gitlab/v4/objects/pages.py", |
| "gitlab/v4/objects/personal_access_tokens.py", |
| "gitlab/v4/objects/pipelines.py", |
| "gitlab/v4/objects/project_access_tokens.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/push_rules.py", |
| "gitlab/v4/objects/releases.py", |
| "gitlab/v4/objects/resource_groups.py", |
| "gitlab/v4/objects/runners.py", |
| "gitlab/v4/objects/secure_files.py", |
| "gitlab/v4/objects/settings.py", |
| "gitlab/v4/objects/snippets.py", |
| "gitlab/v4/objects/statistics.py", |
| "gitlab/v4/objects/tags.py", |
| "gitlab/v4/objects/templates.py", |
| "gitlab/v4/objects/topics.py", |
| "gitlab/v4/objects/triggers.py", |
| "gitlab/v4/objects/users.py", |
| "gitlab/v4/objects/variables.py", |
| "gitlab/v4/objects/wikis.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/meta/test_ensure_type_hints.py" |
| ], |
| "title": "chore: Remove trivial get methods in preparation for generic Get mixin", |
| "validation": null |
| }, |
| { |
| "commit": "515a8a259e1e8e893f42b060e975490571c4136f", |
| "elapsed_seconds": 0.03333412506617606, |
| "parent": "304bdd09cd5e6526576c5ec58cb3acd7e1a783cb", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v5.6.0", |
| "validation": null |
| }, |
| { |
| "commit": "304bdd09cd5e6526576c5ec58cb3acd7e1a783cb", |
| "elapsed_seconds": 1.631805082783103, |
| "parent": "cfa6358b4c9c44d267d8c98a53ac840fbb27d3e8", |
| "reason": null, |
| "source_changed_lines": 24, |
| "source_paths": [ |
| "gitlab/v4/objects/groups.py", |
| "gitlab/v4/objects/merge_request_approvals.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_001", |
| "test_paths": [ |
| "tests/unit/objects/test_group_merge_request_approvals.py" |
| ], |
| "title": "add support for group level MR approval rules", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.5992753328755498, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.44791741692461073, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "........................................................................ [ 19%]\ns..s.................................................................... [ 39%]\n........................................................................ [ 59%]\n........s............................................................... [ 79%]\n........................................................................ [ 99%]\n.. [100%]\n359 passed, 3 skipped in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.48796916706487536, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": " -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'Group' object has no attribute 'approval_rules'\nE \nE If you tried to access object attributes returned from the server,\nE note that <class 'gitlab.v4.objects.groups.Group'> was created as a\nE `lazy` object and was not initialized with any data.\n\ngitlab/base.py:134: AttributeError\n______________________ test_create_group_mr_approval_rule ______________________\n\ngroup = <Group id:1>\nresp_group_approval_rules = (<responses.RequestsMock object at 0x107559fd0>, {'include_newly_created_rule': False, 'updated_first_rule': False})\n\n def test_create_group_mr_approval_rule(group, resp_group_approval_rules):\n _, list_request_options = resp_group_approval_rules\n \n # Before: existing approval rules\n> approval_rules = group.approval_rules.list()\n\ntests/unit/objects/test_group_merge_request_approvals.py:229: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <Group id:1>, name = 'approval_rules'\n\n def __getattr__(self, name: str) -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'Group' object has no attribute 'approval_rules'\nE \nE If you tried to access object attributes returned from the server,\nE note that <class 'gitlab.v4.objects.groups.Group'> was created as a\nE `lazy` object and was not initialized with any data.\n\ngitlab/base.py:134: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_group_merge_request_approvals.py::test_list_group_mr_approval_rules\nFAILED tests/unit/objects/test_group_merge_request_approvals.py::test_save_group_mr_approval_rule\nFAILED tests/unit/objects/test_group_merge_request_approvals.py::test_create_group_mr_approval_rule\n3 failed, 356 passed, 3 skipped in 0.30s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009530042065307498, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.600170416990295, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": ".....................................................................s.. [ 20%]\ns....................................................................... [ 40%]\n........................................................................ [ 60%]\n.....s.................................................................. [ 80%]\n....................................................................... [100%]\n356 passed, 3 skipped in 0.41s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009731292026117444, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "cfa6358b4c9c44d267d8c98a53ac840fbb27d3e8", |
| "elapsed_seconds": 0.03758037509396672, |
| "parent": "0c1af08bc73611d288f1f67248cff9c32c685808", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v5.5.0", |
| "validation": null |
| }, |
| { |
| "commit": "0c1af08bc73611d288f1f67248cff9c32c685808", |
| "elapsed_seconds": 0.028660875046625733, |
| "parent": "f4300782485ee6c38578fa3481061bd621656b0e", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/objects/test_projects.py" |
| ], |
| "title": "chore(tests): catch deprecation warnings", |
| "validation": null |
| }, |
| { |
| "commit": "f4300782485ee6c38578fa3481061bd621656b0e", |
| "elapsed_seconds": 0.038960917154327035, |
| "parent": "7f6fd5c3aac5e2f18adf212adbce0ac04c7150e1", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 42, |
| "source_paths": [ |
| "gitlab/mixins.py", |
| "gitlab/utils.py", |
| "gitlab/v4/objects/artifacts.py", |
| "gitlab/v4/objects/files.py", |
| "gitlab/v4/objects/jobs.py", |
| "gitlab/v4/objects/packages.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/repositories.py", |
| "gitlab/v4/objects/secure_files.py", |
| "gitlab/v4/objects/snippets.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: relax typing constraints for response action", |
| "validation": null |
| }, |
| { |
| "commit": "7f6fd5c3aac5e2f18adf212adbce0ac04c7150e1", |
| "elapsed_seconds": 0.03685970790684223, |
| "parent": "9e186726c8a5ae70ca49c56b2be09b34dbf5b642", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 14, |
| "source_paths": [ |
| "gitlab/v4/objects/projects.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add deprecation warning for mirror_pull functions", |
| "validation": null |
| }, |
| { |
| "commit": "9e186726c8a5ae70ca49c56b2be09b34dbf5b642", |
| "elapsed_seconds": 0.02510970807634294, |
| "parent": "9b374b2c051f71b8ef10e22209b8e90730af9d9b", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: remove old pull mirror implementation", |
| "validation": null |
| }, |
| { |
| "commit": "9b374b2c051f71b8ef10e22209b8e90730af9d9b", |
| "elapsed_seconds": 0.02502624993212521, |
| "parent": "3b31ade152eb61363a68cf0509867ff8738ccdaf", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: add usage of pull mirror", |
| "validation": null |
| }, |
| { |
| "commit": "3b31ade152eb61363a68cf0509867ff8738ccdaf", |
| "elapsed_seconds": 0.025172292022034526, |
| "parent": "2411bff4fd1dab6a1dd70070441b52e9a2927a63", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add pull mirror test", |
| "validation": null |
| }, |
| { |
| "commit": "2411bff4fd1dab6a1dd70070441b52e9a2927a63", |
| "elapsed_seconds": 0.032646749867126346, |
| "parent": "5c11203a8b281f6ab34f7e85073fadcfc395503c", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 62, |
| "source_paths": [ |
| "gitlab/v4/objects/projects.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add pull mirror class", |
| "validation": null |
| }, |
| { |
| "commit": "5c11203a8b281f6ab34f7e85073fadcfc395503c", |
| "elapsed_seconds": 0.02507829200476408, |
| "parent": "30f470b1bb6876db815e8f6694583315a6a68778", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/objects/test_pull_mirror.py" |
| ], |
| "title": "add pull mirror tests", |
| "validation": null |
| }, |
| { |
| "commit": "30f470b1bb6876db815e8f6694583315a6a68778", |
| "elapsed_seconds": 0.03305608290247619, |
| "parent": "36d9b24ff27d8df514c1beebd0fff8ad000369b7", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v5.4.0", |
| "validation": null |
| }, |
| { |
| "commit": "36d9b24ff27d8df514c1beebd0fff8ad000369b7", |
| "elapsed_seconds": 0.03253974998369813, |
| "parent": "175b355d84d54a71f15fe3601c5275dc35984b9b", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 41, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "Narrow down return type of ProjectFileManager.raw using typing.overload", |
| "validation": null |
| }, |
| { |
| "commit": "175b355d84d54a71f15fe3601c5275dc35984b9b", |
| "elapsed_seconds": 1.5817783339880407, |
| "parent": "de29503262b7626421f3bffeea3ff073e63e3865", |
| "reason": null, |
| "source_changed_lines": 57, |
| "source_paths": [ |
| "gitlab/v4/objects/__init__.py", |
| "gitlab/v4/objects/merge_requests.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/status_checks.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_002", |
| "test_paths": [ |
| "tests/unit/objects/test_status_checks.py" |
| ], |
| "title": "add support for external status check", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.5484836669638753, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4453242919407785, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": ".....................................................................s.. [ 20%]\ns....................................................................... [ 40%]\n........................................................................ [ 60%]\n.....s.................................................................. [ 80%]\n.................................................................... [100%]\n353 passed, 3 skipped in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4627318340353668, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <Project id:1>, name = 'external_status_checks'\n\n def __getattr__(self, name: str) -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'Project' object has no attribute 'external_status_checks'\nE \nE If you tried to access object attributes returned from the server,\nE note that <class 'gitlab.v4.objects.projects.Project'> was created as\nE a `lazy` object and was not initialized with any data.\n\ngitlab/base.py:134: AttributeError\n______________________ test_delete_external_status_checks ______________________\n\ngl = <gitlab.client.Gitlab object at 0x109e53b50>\nresp_delete_external_status_checks = <responses.RequestsMock object at 0x10959c550>\n\n def test_delete_external_status_checks(gl, resp_delete_external_status_checks):\n> gl.projects.get(1, lazy=True).external_status_checks.delete(1)\n\ntests/unit/objects/test_status_checks.py:125: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <Project id:1>, name = 'external_status_checks'\n\n def __getattr__(self, name: str) -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'Project' object has no attribute 'external_status_checks'\nE \nE If you tried to access object attributes returned from the server,\nE note that <class 'gitlab.v4.objects.projects.Project'> was created as\nE a `lazy` object and was not initialized with any data.\n\ngitlab/base.py:134: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_status_checks.py::test_list_external_status_checks\nFAILED tests/unit/objects/test_status_checks.py::test_create_external_status_checks\nFAILED tests/unit/objects/test_status_checks.py::test_delete_external_status_checks\n3 failed, 350 passed, 3 skipped in 0.29s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009339583804830909, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5773220839910209, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": ".....................................................................s.. [ 20%]\ns....................................................................... [ 40%]\n........................................................................ [ 61%]\n.....s.................................................................. [ 81%]\n................................................................. [100%]\n350 passed, 3 skipped in 0.40s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009896458126604557, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "de29503262b7626421f3bffeea3ff073e63e3865", |
| "elapsed_seconds": 1.5622339588589966, |
| "parent": "939505b9c143939ba1e52c5cb920d8aa36596e19", |
| "reason": null, |
| "source_changed_lines": 9, |
| "source_paths": [ |
| "gitlab/v4/objects/commits.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_003", |
| "test_paths": [ |
| "tests/unit/objects/test_commits.py" |
| ], |
| "title": "return the new commit when calling cherry_pick", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.528000291902572, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4328000000678003, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": ".....................................................................s.. [ 20%]\ns....................................................................... [ 40%]\n........................................................................ [ 61%]\n.....s.................................................................. [ 81%]\n................................................................. [100%]\n350 passed, 3 skipped in 0.26s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4548883340321481, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": ".......................................F.............................s.. [ 20%]\ns....................................................................... [ 40%]\n........................................................................ [ 61%]\n.....s.................................................................. [ 81%]\n................................................................. [100%]\n=================================== FAILURES ===================================\n___________________________ test_cherry_pick_commit ____________________________\n\nproject = <Project id:1>\nresp_commit = <responses.RequestsMock object at 0x11500ffd0>\n\n def test_cherry_pick_commit(project, resp_commit):\n commit = project.commits.get(\"6b2257ea\", lazy=True)\n cherry_pick_commit = commit.cherry_pick(branch=\"main\")\n \n> assert cherry_pick_commit[\"short_id\"] == \"8b090c1b\"\nE TypeError: 'NoneType' object is not subscriptable\n\ntests/unit/objects/test_commits.py:138: TypeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_commits.py::test_cherry_pick_commit - TypeErro...\n1 failed, 349 passed, 3 skipped in 0.28s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009581000078469515, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5749600841663778, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 20%]\n........................................................................ [ 40%]\n........................................................................ [ 61%]\n....s................................................................... [ 81%]\n................................................................ [100%]\n349 passed, 3 skipped in 0.39s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.00916791707277298, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "939505b9c143939ba1e52c5cb920d8aa36596e19", |
| "elapsed_seconds": 0.02543841698206961, |
| "parent": "9214b8371652be2371823b6f3d531eeea78364c7", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "9214b8371652be2371823b6f3d531eeea78364c7", |
| "elapsed_seconds": 0.02499279100447893, |
| "parent": "e8d6953ec06dbbd817852207abbbc74eab8a27cf", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab", |
| "validation": null |
| }, |
| { |
| "commit": "e8d6953ec06dbbd817852207abbbc74eab8a27cf", |
| "elapsed_seconds": 0.024344250094145536, |
| "parent": "accd5aa757ba5215497c278da50d48f10ea5a258", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(ci): set a 30 minute timeout for 'functional' tests", |
| "validation": null |
| }, |
| { |
| "commit": "accd5aa757ba5215497c278da50d48f10ea5a258", |
| "elapsed_seconds": 0.024483291897922754, |
| "parent": "95db680d012d73e7e505ee85db7128050ff0db6e", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: resolve DeprecationWarning message in CI run", |
| "validation": null |
| }, |
| { |
| "commit": "95db680d012d73e7e505ee85db7128050ff0db6e", |
| "elapsed_seconds": 0.024870959110558033, |
| "parent": "0eb5eb0505c5b837a2d767cfa256a25b64ceb48b", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: fix pytest deprecation", |
| "validation": null |
| }, |
| { |
| "commit": "0eb5eb0505c5b837a2d767cfa256a25b64ceb48b", |
| "elapsed_seconds": 0.024593207985162735, |
| "parent": "ba75c31e4d13927b6a3ab0ce427800d94e5eefb4", |
| "reason": "excluded dependency/format/generated/revert subject", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: fix warning being generated", |
| "validation": null |
| }, |
| { |
| "commit": "ba75c31e4d13927b6a3ab0ce427800d94e5eefb4", |
| "elapsed_seconds": 0.03259920794516802, |
| "parent": "cbd4263194fcbad9d6c11926862691f8df0dea6d", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/v4/objects/snippets.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: fix missing space in deprecation message", |
| "validation": null |
| }, |
| { |
| "commit": "cbd4263194fcbad9d6c11926862691f8df0dea6d", |
| "elapsed_seconds": 0.0242551660630852, |
| "parent": "22f03bdc2bac92138225563415f5cf6fa36a5644", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "22f03bdc2bac92138225563415f5cf6fa36a5644", |
| "elapsed_seconds": 0.03296074992977083, |
| "parent": "fb07b5cfe1d986c3a7cd7879b11ecc43c75542b7", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 1, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add optional ref parameter for cli project-file raw (python-gitlab", |
| "validation": null |
| }, |
| { |
| "commit": "fb07b5cfe1d986c3a7cd7879b11ecc43c75542b7", |
| "elapsed_seconds": 1.5954932919703424, |
| "parent": "e4673d8aeaf97b9ad5d2500e459526b4cf494547", |
| "reason": null, |
| "source_changed_lines": 5, |
| "source_paths": [ |
| "gitlab/client.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_004", |
| "test_paths": [ |
| "tests/unit/objects/test_job_artifacts.py", |
| "tests/unit/test_gitlab_http_methods.py" |
| ], |
| "title": "Add argument that appends extra HTTP headers to a request", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.5628152089193463, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit tests/unit/objects", |
| "elapsed_seconds": 0.4472388750873506, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 20%]\n........................................................................ [ 40%]\n........................................................................ [ 61%]\n....s................................................................... [ 81%]\n................................................................ [100%]\n349 passed, 3 skipped in 0.26s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit tests/unit/objects", |
| "elapsed_seconds": 0.47890033293515444, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "een executed {!r}\".format(\n [(match.method, match.url) for match in not_called]\n )\n )\nE AssertionError: Not all requests have been executed [('GET', 'http://localhost/api/v4/projects/1/jobs/123/artifacts')]\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1233: AssertionError\n=================================== FAILURES ===================================\n____________________ test_job_artifact_download_bytes_range ____________________\n\ngl = <gitlab.client.Gitlab object at 0x109354410>\nbinary_content = b'binary content'\nresp_job_artifact_bytes_range = <responses.RequestsMock object at 0x10935ddd0>\n\n def test_job_artifact_download_bytes_range(\n gl, binary_content, resp_job_artifact_bytes_range\n ):\n project = gl.projects.get(1, lazy=True)\n job = project.jobs.get(123, lazy=True)\n \n> artifacts = job.artifacts(extra_headers={\"Range\": \"bytes=0-9\"})\n\ntests/unit/objects/test_job_artifacts.py:71: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \ngitlab/cli.py:70: in wrapped_f\n return f(*args, **kwargs)\ngitlab/exceptions.py:344: in wrapped_f\n return f(*args, **kwargs)\ngitlab/v4/objects/jobs.py:194: in artifacts\n result = self.manager.gitlab.http_get(\ngitlab/client.py:808: in http_get\n result = self.http_request(\ngitlab/client.py:732: in http_request\n result = self._backend.http_request(\ngitlab/_backends/requests_backend.py:157: in http_request\n response: requests.Response = self._client.request(\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/requests/sessions.py:589: in request\n resp = self.send(prep, **send_kwargs)\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/requests/sessions.py:703: in send\n r = adapter.send(request, **kwargs)\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1202: in send\n return self._on_request(adapter, request, **kwargs)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <responses.RequestsMock object at 0x10935ddd0>\nadapter = <requests.adapters.HTTPAdapter object at 0x1093c7510>\nrequest = <PreparedRequest [GET]>, retries = None\nkwargs = {'cert': None, 'proxies': OrderedDict(), 'stream': False, 'timeout': None, ...}\nmatch = None\nmatch_failed_reasons = [\"Headers do not match: {} doesn't match {'Range': 'bytes=0-9'}\"]\nresp_callback = None\nerror_msg = \"Connection refused by Responses - the call doesn't match any registered mock.\\n\\nRequest: \\n- GET http://localhost/ap... http://localhost/api/v4/projects/1/jobs/123/artifacts Headers do not match: {} doesn't match {'Range': 'bytes=0-9'}\\n\"\ni = 0\nm = <Response(url='http://localhost/api/v4/projects/1/jobs/123/artifacts' status=206 content_type='application/octet-stream' headers='null')>\n\n def _on_request(\n self,\n adapter: \"HTTPAdapter\",\n request: \"PreparedRequest\",\n *,\n retries: Optional[\"_Retry\"] = None,\n **kwargs: Any,\n ) -> \"models.Response\":\n # add attributes params and req_kwargs to 'request' object for further match comparison\n # original request object does not have these attributes\n request.params = self._parse_request_params(request.path_url) # type: ignore[attr-defined]\n request.req_kwargs = kwargs # type: ignore[attr-defined]\n request_url = str(request.url)\n request.body = self._read_filelike_body(request.body)\n \n match, match_failed_reasons = self._find_match(request)\n resp_callback = self.response_callback\n \n if match is None:\n if any(\n [\n p.match(request_url)\n if isinstance(p, Pattern)\n else request_url.startswith(p)\n for p in self.passthru_prefixes\n ]\n ):\n logger.info(\"request.allowed-passthru\", extra={\"url\": request_url})\n return self._real_send(adapter, request, **kwargs) # type: ignore\n \n error_msg = (\n \"Connection refused by Responses - the call doesn't \"\n \"match any registered mock.\\n\\n\"\n \"Request: \\n\"\n f\"- {request.method} {request_url}\\n\\n\"\n \"Available matches:\\n\"\n )\n for i, m in enumerate(self.registered()):\n error_msg += \"- {} {} {}\\n\".format(\n m.method, m.url, match_failed_reasons[i]\n )\n \n if self.passthru_prefixes:\n error_msg += \"Passthru prefixes:\\n\"\n for p in self.passthru_prefixes:\n error_msg += f\"- {p}\\n\"\n \n response = ConnectionError(error_msg)\n response.request = request\n \n self._calls.add(request, response)\n> raise response\nE requests.exceptions.ConnectionError: Connection refused by Responses - the call doesn't match any registered mock.\nE \nE Request: \nE - GET http://localhost/api/v4/projects/1/jobs/123/artifacts?extra_headers%5BRange%5D=bytes%3D0-9\nE \nE Available matches:\nE - GET http://localhost/api/v4/projects/1/jobs/123/artifacts Headers do not match: {} doesn't match {'Range': 'bytes=0-9'}\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1129: ConnectionError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_job_artifacts.py::test_job_artifact_download_bytes_range\nERROR tests/unit/objects/test_job_artifacts.py::test_job_artifact_download_bytes_range\n1 failed, 348 passed, 3 skipped, 1 error in 0.30s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009702750016003847, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit tests/unit/objects", |
| "elapsed_seconds": 0.5725481668487191, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 20%]\n........................................................................ [ 41%]\n........................................................................ [ 61%]\n...s.................................................................... [ 82%]\n............................................................... [100%]\n348 passed, 3 skipped in 0.39s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009480291046202183, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "e4673d8aeaf97b9ad5d2500e459526b4cf494547", |
| "elapsed_seconds": 0.02767500001937151, |
| "parent": "2dda9dc149668a99211daaa1981bb1f422c63880", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(test): prevent 'job_with_artifact' fixture running forever", |
| "validation": null |
| }, |
| { |
| "commit": "2dda9dc149668a99211daaa1981bb1f422c63880", |
| "elapsed_seconds": 0.02518016705289483, |
| "parent": "671e711c341d28ae0bc61ccb12d2e986353473fd", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "ci: use gitlab-runner:v17.7.1 for the CI", |
| "validation": null |
| }, |
| { |
| "commit": "671e711c341d28ae0bc61ccb12d2e986353473fd", |
| "elapsed_seconds": 0.03327854094095528, |
| "parent": "e3cb806dc368af0a495087531ee94892d3f240ce", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 104, |
| "source_paths": [ |
| "gitlab/const.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update mypy to 1.14 and resolve issues", |
| "validation": null |
| }, |
| { |
| "commit": "e3cb806dc368af0a495087531ee94892d3f240ce", |
| "elapsed_seconds": 0.033933499827980995, |
| "parent": "1e95944119455875bd239752cdf0fe5cc27707ea", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 14, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py", |
| "gitlab/v4/objects/issues.py", |
| "gitlab/v4/objects/labels.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "Make type ignores more specific where possible", |
| "validation": null |
| }, |
| { |
| "commit": "1e95944119455875bd239752cdf0fe5cc27707ea", |
| "elapsed_seconds": 0.024537833873182535, |
| "parent": "44fd9dc1176a2c5529c45cc3186c0e775026175e", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.7.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "44fd9dc1176a2c5529c45cc3186c0e775026175e", |
| "elapsed_seconds": 0.03324920800514519, |
| "parent": "e4c5c74fbe98b92e575d29e929dae112b87f0fb2", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 533, |
| "source_paths": [ |
| "gitlab/mixins.py", |
| "gitlab/v4/objects/artifacts.py", |
| "gitlab/v4/objects/jobs.py", |
| "gitlab/v4/objects/packages.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/repositories.py", |
| "gitlab/v4/objects/secure_files.py", |
| "gitlab/v4/objects/snippets.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "Narrow down return type of download methods using typing.overload", |
| "validation": null |
| }, |
| { |
| "commit": "e4c5c74fbe98b92e575d29e929dae112b87f0fb2", |
| "elapsed_seconds": 0.024669749895110726, |
| "parent": "912e1a0620a96c56081ffec284c2cac871cb7626", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v5.3.1", |
| "validation": null |
| }, |
| { |
| "commit": "912e1a0620a96c56081ffec284c2cac871cb7626", |
| "elapsed_seconds": 0.03274112497456372, |
| "parent": "8c1aaa3f6a797caf7bd79a7da083eae56c6250ff", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: bump to 5.3.1", |
| "validation": null |
| }, |
| { |
| "commit": "8c1aaa3f6a797caf7bd79a7da083eae56c6250ff", |
| "elapsed_seconds": 1.6010427509900182, |
| "parent": "f4f7d7a63716f072eb45db2c7f590db0435350f0", |
| "reason": null, |
| "source_changed_lines": 45, |
| "source_paths": [ |
| "gitlab/v4/objects/__init__.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/registry_protection_repository_rules.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_005", |
| "test_paths": [ |
| "tests/unit/objects/test_registry_protection_rules.py" |
| ], |
| "title": "fix api url", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.568030667025596, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.44028154108673334, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 20%]\n........................................................................ [ 41%]\n........................................................................ [ 61%]\n...s.................................................................... [ 82%]\n............................................................... [100%]\n348 passed, 3 skipped in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4887023330666125, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'Project' object has no attribute 'registry_protection_repository_rules'\nE \nE If you tried to access object attributes returned from the server,\nE note that <class 'gitlab.v4.objects.projects.Project'> was created as\nE a `lazy` object and was not initialized with any data.\n\ngitlab/base.py:134: AttributeError\n____________________ test_update_project_protected_registry ____________________\n\nproject = <Project id:1>\nresp_update_protected_registry = <responses.RequestsMock object at 0x10bd5a8d0>\n\n def test_update_project_protected_registry(project, resp_update_protected_registry):\n> updated = project.registry_protection_repository_rules.update(\n 1, {\"repository_path_pattern\": \"abc*\"}\n )\n\ntests/unit/objects/test_registry_protection_rules.py:79: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <Project id:1>, name = 'registry_protection_repository_rules'\n\n def __getattr__(self, name: str) -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'Project' object has no attribute 'registry_protection_repository_rules'\nE \nE If you tried to access object attributes returned from the server,\nE note that <class 'gitlab.v4.objects.projects.Project'> was created as\nE a `lazy` object and was not initialized with any data.\n\ngitlab/base.py:134: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_registry_protection_rules.py::test_list_project_protected_registries\nFAILED tests/unit/objects/test_registry_protection_rules.py::test_create_project_protected_registry\nFAILED tests/unit/objects/test_registry_protection_rules.py::test_update_project_protected_registry\nERROR tests/unit/objects/test_registry_protection_rules.py::test_list_project_protected_registries\nERROR tests/unit/objects/test_registry_protection_rules.py::test_create_project_protected_registry\nERROR tests/unit/objects/test_registry_protection_rules.py::test_update_project_protected_registry\n3 failed, 345 passed, 3 skipped, 3 errors in 0.32s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009433583123609424, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5756600829772651, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 20%]\n........................................................................ [ 41%]\n........................................................................ [ 61%]\n...s.................................................................... [ 82%]\n............................................................... [100%]\n348 passed, 3 skipped in 0.40s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009936083108186722, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "f4f7d7a63716f072eb45db2c7f590db0435350f0", |
| "elapsed_seconds": 0.03472137497738004, |
| "parent": "01d41946cbb1a4e5f29752eac89239d635c2ec6f", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 1, |
| "source_paths": [ |
| "gitlab/client.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "allow configuration of keep_base_url from file", |
| "validation": null |
| }, |
| { |
| "commit": "01d41946cbb1a4e5f29752eac89239d635c2ec6f", |
| "elapsed_seconds": 0.025069083087146282, |
| "parent": "c2582cf03b5dd4f3668195c13ae85ca14d755ec3", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency jinja2 to v3.1.5 [security]", |
| "validation": null |
| }, |
| { |
| "commit": "c2582cf03b5dd4f3668195c13ae85ca14d755ec3", |
| "elapsed_seconds": 0.03298725001513958, |
| "parent": "62b7eb7ca0adcb26912f9c0561de5c513b6ede6d", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v5.3.0", |
| "validation": null |
| }, |
| { |
| "commit": "62b7eb7ca0adcb26912f9c0561de5c513b6ede6d", |
| "elapsed_seconds": 0.024682125076651573, |
| "parent": "aa074496bdc4390a3629f1b0964d9846fe08ad92", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.7.0-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "aa074496bdc4390a3629f1b0964d9846fe08ad92", |
| "elapsed_seconds": 0.0245196670293808, |
| "parent": "40af1c8a14814cb0034dfeaaa33d8c38504fe34e", |
| "reason": "excluded dependency/format/generated/revert subject", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(renovate): update httpx and respx again", |
| "validation": null |
| }, |
| { |
| "commit": "40af1c8a14814cb0034dfeaaa33d8c38504fe34e", |
| "elapsed_seconds": 1.3594288739841431, |
| "parent": "9439132b1df39fbf386e5ee4d8354e78f549e109", |
| "reason": null, |
| "source_changed_lines": 42, |
| "source_paths": [ |
| "gitlab/v4/objects/__init__.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/registry_repository_protection_rules.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_006", |
| "test_paths": [ |
| "tests/unit/objects/test_registry_protection_rules.py" |
| ], |
| "title": "support the new registry protection rule endpoint", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.3263617909979075, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.43539245892316103, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 20%]\n........................................................................ [ 41%]\n........................................................................ [ 61%]\n...s.................................................................... [ 82%]\n............................................................... [100%]\n348 passed, 3 skipped in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.2516879579052329, |
| "returncode": 2, |
| "stderr": "", |
| "stdout": "\n==================================== ERRORS ====================================\n____ ERROR collecting tests/unit/objects/test_registry_protection_rules.py _____\nImportError while importing test module '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-f14wqt0n/tree/tests/unit/objects/test_registry_protection_rules.py'.\nHint: make sure your test modules/packages have valid Python names.\nTraceback:\n/opt/homebrew/Cellar/python@3.11/3.11.15_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:126: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\ntests/unit/objects/test_registry_protection_rules.py:8: in <module>\n from gitlab.v4.objects import ProjectRegistryRepositoryProtectionRule\nE ImportError: cannot import name 'ProjectRegistryRepositoryProtectionRule' from 'gitlab.v4.objects' (/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-f14wqt0n/tree/gitlab/v4/objects/__init__.py)\n=========================== short test summary info ============================\nERROR tests/unit/objects/test_registry_protection_rules.py\n!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!\n1 error in 0.08s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009637792129069567, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5765780000947416, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 20%]\n........................................................................ [ 41%]\n........................................................................ [ 61%]\n...s.................................................................... [ 82%]\n............................................................... [100%]\n348 passed, 3 skipped in 0.40s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009424916934221983, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "9439132b1df39fbf386e5ee4d8354e78f549e109", |
| "elapsed_seconds": 0.033080791123211384, |
| "parent": "1e02f232278a85f818230b8931e2627c80a50e38", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v5.2.0", |
| "validation": null |
| }, |
| { |
| "commit": "1e02f232278a85f818230b8931e2627c80a50e38", |
| "elapsed_seconds": 0.02489091595634818, |
| "parent": "db0db26734533d1a95225dc1a5dd2ae0b03c6053", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "db0db26734533d1a95225dc1a5dd2ae0b03c6053", |
| "elapsed_seconds": 0.024456374812871218, |
| "parent": "6532e8c7a9114f5abbfd610c65bd70d09576b146", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.6.2-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "6532e8c7a9114f5abbfd610c65bd70d09576b146", |
| "elapsed_seconds": 0.023812250001356006, |
| "parent": "b70830dd3ad76ff537a1f81e9f69de72271a2305", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "b70830dd3ad76ff537a1f81e9f69de72271a2305", |
| "elapsed_seconds": 0.02794208307750523, |
| "parent": "0d41da3cc8724ded8a3855409cf9c5d776a7f491", |
| "reason": "excluded dependency/format/generated/revert subject", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(renovate): pin httpx until respx is fixed", |
| "validation": null |
| }, |
| { |
| "commit": "0d41da3cc8724ded8a3855409cf9c5d776a7f491", |
| "elapsed_seconds": 1.3604535828344524, |
| "parent": "735efff88cc8d59021cb5a746ba70b66548e7662", |
| "reason": null, |
| "source_changed_lines": 118, |
| "source_paths": [ |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/templates.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_007", |
| "test_paths": [ |
| "tests/unit/objects/test_templates.py" |
| ], |
| "title": "add project templates", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.3271239169407636, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4486785000190139, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 20%]\n........................................................................ [ 41%]\n........................................................................ [ 61%]\n...s.................................................................... [ 82%]\n............................................................... [100%]\n348 passed, 3 skipped in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.25041304086335003, |
| "returncode": 2, |
| "stderr": "", |
| "stdout": "\n==================================== ERRORS ====================================\n____________ ERROR collecting tests/unit/objects/test_templates.py _____________\nImportError while importing test module '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-c9j0pu4t/tree/tests/unit/objects/test_templates.py'.\nHint: make sure your test modules/packages have valid Python names.\nTraceback:\n/opt/homebrew/Cellar/python@3.11/3.11.15_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:126: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\ntests/unit/objects/test_templates.py:13: in <module>\n from gitlab.v4.objects import (\nE ImportError: cannot import name 'ProjectDockerfileTemplate' from 'gitlab.v4.objects' (/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-c9j0pu4t/tree/gitlab/v4/objects/__init__.py)\n=========================== short test summary info ============================\nERROR tests/unit/objects/test_templates.py\n!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!\n1 error in 0.08s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009701250120997429, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5652419591788203, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n........................................................................ [ 63%]\n...s.................................................................... [ 84%]\n..................................................... [100%]\n338 passed, 3 skipped in 0.39s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.0090182910207659, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "735efff88cc8d59021cb5a746ba70b66548e7662", |
| "elapsed_seconds": 0.026642582844942808, |
| "parent": "9306362a14cae32b13f59630ea9a964783fa8de8", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update codecov/codecov-action action to v5", |
| "validation": null |
| }, |
| { |
| "commit": "9306362a14cae32b13f59630ea9a964783fa8de8", |
| "elapsed_seconds": 0.024701083078980446, |
| "parent": "a8518f1644b32039571afb4172738dcde169bec0", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency commitizen to v4", |
| "validation": null |
| }, |
| { |
| "commit": "a8518f1644b32039571afb4172738dcde169bec0", |
| "elapsed_seconds": 0.024905791971832514, |
| "parent": "f460d95cbbb6fcf8d10bc70f53299438843032fd", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update pre-commit hook commitizen-tools/commitizen to v4", |
| "validation": null |
| }, |
| { |
| "commit": "f460d95cbbb6fcf8d10bc70f53299438843032fd", |
| "elapsed_seconds": 0.02481404086574912, |
| "parent": "288f39c828eb6abd8f05744803142beffed3f288", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs(api-usage): fix link to Gitlab REST API Authentication Docs", |
| "validation": null |
| }, |
| { |
| "commit": "288f39c828eb6abd8f05744803142beffed3f288", |
| "elapsed_seconds": 3.1849911250174046, |
| "parent": "804638777f22b23a8b9ea54ffce19852ea6d9366", |
| "reason": "selected public tests fail at base", |
| "source_changed_lines": 161, |
| "source_paths": [ |
| "gitlab/__init__.py", |
| "gitlab/_backends/graphql.py", |
| "gitlab/client.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/test_graphql.py" |
| ], |
| "title": "add async client", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit" |
| ], |
| "elapsed_seconds": 3.151275333017111, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 3.1075822920538485, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "l = 'https://gitlab.example.com'\n\n def __init__(\n self,\n url: Optional[str] = None,\n *,\n token: Optional[str] = None,\n ssl_verify: Union[bool, str] = True,\n client: Optional[httpx.Client] = None,\n timeout: Optional[float] = None,\n user_agent: str = gitlab.const.USER_AGENT,\n fetch_schema_from_transport: bool = False,\n max_retries: int = 10,\n obey_rate_limit: bool = True,\n retry_transient_errors: bool = False,\n ) -> None:\n if not _GQL_INSTALLED:\n> raise ImportError(\n \"The GraphQL client could not be initialized because \"\n \"the gql dependencies are not installed. \"\n \"Install them with 'pip install python-gitlab[graphql]'\"\n )\nE ImportError: The GraphQL client could not be initialized because the gql dependencies are not installed. Install them with 'pip install python-gitlab[graphql]'\n\ngitlab/client.py:1297: ImportError\n____________ ERROR at setup of test_graphql_raises_on_401_response _____________\n\n @pytest.fixture\n def gl_gql() -> gitlab.GraphQL:\n> return gitlab.GraphQL(\"https://gitlab.example.com\")\n\ntests/unit/test_graphql.py:10: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <gitlab.client.GraphQL object at 0x1135cfd10>\nurl = 'https://gitlab.example.com'\n\n def __init__(\n self,\n url: Optional[str] = None,\n *,\n token: Optional[str] = None,\n ssl_verify: Union[bool, str] = True,\n client: Optional[httpx.Client] = None,\n timeout: Optional[float] = None,\n user_agent: str = gitlab.const.USER_AGENT,\n fetch_schema_from_transport: bool = False,\n max_retries: int = 10,\n obey_rate_limit: bool = True,\n retry_transient_errors: bool = False,\n ) -> None:\n if not _GQL_INSTALLED:\n> raise ImportError(\n \"The GraphQL client could not be initialized because \"\n \"the gql dependencies are not installed. \"\n \"Install them with 'pip install python-gitlab[graphql]'\"\n )\nE ImportError: The GraphQL client could not be initialized because the gql dependencies are not installed. Install them with 'pip install python-gitlab[graphql]'\n\ngitlab/client.py:1297: ImportError\n=================================== FAILURES ===================================\n____________________ test_graphql_as_context_manager_exits _____________________\n\n def test_graphql_as_context_manager_exits():\n> with gitlab.GraphQL() as gl:\n\ntests/unit/test_graphql.py:20: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <gitlab.client.GraphQL object at 0x1134bb490>, url = None\n\n def __init__(\n self,\n url: Optional[str] = None,\n *,\n token: Optional[str] = None,\n ssl_verify: Union[bool, str] = True,\n client: Optional[httpx.Client] = None,\n timeout: Optional[float] = None,\n user_agent: str = gitlab.const.USER_AGENT,\n fetch_schema_from_transport: bool = False,\n max_retries: int = 10,\n obey_rate_limit: bool = True,\n retry_transient_errors: bool = False,\n ) -> None:\n if not _GQL_INSTALLED:\n> raise ImportError(\n \"The GraphQL client could not be initialized because \"\n \"the gql dependencies are not installed. \"\n \"Install them with 'pip install python-gitlab[graphql]'\"\n )\nE ImportError: The GraphQL client could not be initialized because the gql dependencies are not installed. Install them with 'pip install python-gitlab[graphql]'\n\ngitlab/client.py:1297: ImportError\n________________ test_graphql_raises_when_max_retries_exceeded _________________\n\nrespx_mock = <respx.router.MockRouter object at 0x108f49550>\n\n def test_graphql_raises_when_max_retries_exceeded(respx_mock: respx.MockRouter):\n url = \"https://gitlab.example.com/api/graphql\"\n responses = [\n httpx.Response(502),\n httpx.Response(502),\n httpx.Response(502),\n ]\n respx_mock.post(url).mock(side_effect=responses)\n \n> gl_gql = gitlab.GraphQL(\n \"https://gitlab.example.com\", max_retries=1, retry_transient_errors=True\n )\n\ntests/unit/test_graphql.py:47: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <gitlab.client.GraphQL object at 0x1135a7590>\nurl = 'https://gitlab.example.com'\n\n def __init__(\n self,\n url: Optional[str] = None,\n *,\n token: Optional[str] = None,\n ssl_verify: Union[bool, str] = True,\n client: Optional[httpx.Client] = None,\n timeout: Optional[float] = None,\n user_agent: str = gitlab.const.USER_AGENT,\n fetch_schema_from_transport: bool = False,\n max_retries: int = 10,\n obey_rate_limit: bool = True,\n retry_transient_errors: bool = False,\n ) -> None:\n if not _GQL_INSTALLED:\n> raise ImportError(\n \"The GraphQL client could not be initialized because \"\n \"the gql dependencies are not installed. \"\n \"Install them with 'pip install python-gitlab[graphql]'\"\n )\nE ImportError: The GraphQL client could not be initialized because the gql dependencies are not installed. Install them with 'pip install python-gitlab[graphql]'\n\ngitlab/client.py:1297: ImportError\n=========================== short test summary info ============================\nFAILED tests/unit/test_graphql.py::test_graphql_as_context_manager_exits - Im...\nFAILED tests/unit/test_graphql.py::test_graphql_raises_when_max_retries_exceeded\nERROR tests/unit/test_graphql.py::test_graphql_retries_on_429_response - Impo...\nERROR tests/unit/test_graphql.py::test_graphql_raises_on_401_response - Impor...\n2 failed, 1080 passed, 3 skipped, 2 errors in 2.92s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": "selected public tests fail at base", |
| "valid": false |
| } |
| }, |
| { |
| "commit": "804638777f22b23a8b9ea54ffce19852ea6d9366", |
| "elapsed_seconds": 0.027884499868378043, |
| "parent": "f2992ae57641379c4ed6ac1660e9c1f9237979af", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "f2992ae57641379c4ed6ac1660e9c1f9237979af", |
| "elapsed_seconds": 0.024907124927267432, |
| "parent": "9fe372a8898fed25d8bca8eedcf42560448380e4", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.6.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "9fe372a8898fed25d8bca8eedcf42560448380e4", |
| "elapsed_seconds": 0.024787999922409654, |
| "parent": "9877520fc2f1d30f009344416c884d44a0edcae9", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(docs): Fix CHANGELOG tracebacks codeblocks", |
| "validation": null |
| }, |
| { |
| "commit": "9877520fc2f1d30f009344416c884d44a0edcae9", |
| "elapsed_seconds": 0.032900458201766014, |
| "parent": "029695df80f7370f891e17664522dd11ea530881", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v5.1.0", |
| "validation": null |
| }, |
| { |
| "commit": "029695df80f7370f891e17664522dd11ea530881", |
| "elapsed_seconds": 0.032411790918558836, |
| "parent": "0cb817153d8149dfdfa3dfc28fda84382a807ae2", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 9, |
| "source_paths": [ |
| "gitlab/v4/objects/merge_request_approvals.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "get single project approval rule", |
| "validation": null |
| }, |
| { |
| "commit": "0cb817153d8149dfdfa3dfc28fda84382a807ae2", |
| "elapsed_seconds": 0.03299420792609453, |
| "parent": "bdc8852051c98b774fd52056992333ff3638f628", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 16, |
| "source_paths": [ |
| "gitlab/mixins.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "enable token rotation via CLI", |
| "validation": null |
| }, |
| { |
| "commit": "bdc8852051c98b774fd52056992333ff3638f628", |
| "elapsed_seconds": 0.03292004088871181, |
| "parent": "9061647315f4e3e449cb8096c56b8baa1dbb4b23", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 1, |
| "source_paths": [ |
| "gitlab/const.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add new Planner role to access levels", |
| "validation": null |
| }, |
| { |
| "commit": "9061647315f4e3e449cb8096c56b8baa1dbb4b23", |
| "elapsed_seconds": 0.02398329204879701, |
| "parent": "79113d997b3d297fd8e06c6e6e10fe39480cb2f6", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "79113d997b3d297fd8e06c6e6e10fe39480cb2f6", |
| "elapsed_seconds": 0.024263916071504354, |
| "parent": "62da12aa79b11b64257cd4b1a6e403964966e224", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.6.0-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "62da12aa79b11b64257cd4b1a6e403964966e224", |
| "elapsed_seconds": 0.024203042034059763, |
| "parent": "d39129b659def10213821f3e46718c4086e77b4b", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "d39129b659def10213821f3e46718c4086e77b4b", |
| "elapsed_seconds": 0.02407920779660344, |
| "parent": "11458e0e0404d1b2496b505509ecb795366a7e64", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.5.2-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "11458e0e0404d1b2496b505509ecb795366a7e64", |
| "elapsed_seconds": 0.025376375066116452, |
| "parent": "7e62136991f694be9c8c76c12f291c60f3607b44", |
| "reason": "excluded dependency/format/generated/revert subject", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update pre-commit hook maxbrunet/pre-commit-renovate to v39", |
| "validation": null |
| }, |
| { |
| "commit": "7e62136991f694be9c8c76c12f291c60f3607b44", |
| "elapsed_seconds": 0.02769708400592208, |
| "parent": "499243b37cda0c7dcd4b6ce046d42e81845e2a4f", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "499243b37cda0c7dcd4b6ce046d42e81845e2a4f", |
| "elapsed_seconds": 0.033674916019663215, |
| "parent": "ffa88b3a45fa5997cafd400cebd6f62acd43ba8e", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 6, |
| "source_paths": [ |
| "gitlab/v4/objects/service_accounts.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "support list and delete for group service accounts", |
| "validation": null |
| }, |
| { |
| "commit": "ffa88b3a45fa5997cafd400cebd6f62acd43ba8e", |
| "elapsed_seconds": 0.025080583058297634, |
| "parent": "d4b52e789fd131475096817ffd6f5a8e1e5d07c6", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency pytest-cov to v6", |
| "validation": null |
| }, |
| { |
| "commit": "d4b52e789fd131475096817ffd6f5a8e1e5d07c6", |
| "elapsed_seconds": 0.024670875165611506, |
| "parent": "f51cd5251c027849effb7e6ad3a01806fb2bda67", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "f51cd5251c027849effb7e6ad3a01806fb2bda67", |
| "elapsed_seconds": 0.03339720796793699, |
| "parent": "541a7e3ec3f685eb7c841eeee3be0f1df3d09035", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 25, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add support for more optional flags", |
| "validation": null |
| }, |
| { |
| "commit": "541a7e3ec3f685eb7c841eeee3be0f1df3d09035", |
| "elapsed_seconds": 0.024342291988432407, |
| "parent": "8111f49e4f91783dbc6d3f0c3fce6eb504f09bb4", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "8111f49e4f91783dbc6d3f0c3fce6eb504f09bb4", |
| "elapsed_seconds": 0.024749625008553267, |
| "parent": "90c72d815a653e48c2ac01ee69889f8a918481fa", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.5.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "90c72d815a653e48c2ac01ee69889f8a918481fa", |
| "elapsed_seconds": 0.03221824998036027, |
| "parent": "f4bfe19b5077089ea1d3bf07e8718d29de7d6594", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v5.0.0", |
| "validation": null |
| }, |
| { |
| "commit": "f4bfe19b5077089ea1d3bf07e8718d29de7d6594", |
| "elapsed_seconds": 0.024134916020557284, |
| "parent": "14d2a82969cd1b3509526eee29159f15862224a2", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/base/test_rest_object.py" |
| ], |
| "title": "test: add test for `to_json()` method", |
| "validation": null |
| }, |
| { |
| "commit": "14d2a82969cd1b3509526eee29159f15862224a2", |
| "elapsed_seconds": 0.03205087478272617, |
| "parent": "3739b5dd11bed66fb482cf6d2dc34382327a0265", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 4, |
| "source_paths": [ |
| "gitlab/base.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add testing of Python 3.14", |
| "validation": null |
| }, |
| { |
| "commit": "3739b5dd11bed66fb482cf6d2dc34382327a0265", |
| "elapsed_seconds": 0.024035416077822447, |
| "parent": "6fda15dff5e01c9982c9c7e65e302ff06416517e", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs(users): update Gitlab docs links", |
| "validation": null |
| }, |
| { |
| "commit": "6fda15dff5e01c9982c9c7e65e302ff06416517e", |
| "elapsed_seconds": 0.02437883405946195, |
| "parent": "1e4326b393be719616db5a08594facdabfbc1855", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency ubuntu to v24", |
| "validation": null |
| }, |
| { |
| "commit": "1e4326b393be719616db5a08594facdabfbc1855", |
| "elapsed_seconds": 0.024077459005638957, |
| "parent": "c02a3927f5294778b1c98128e1e04bcbc40ed821", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "c02a3927f5294778b1c98128e1e04bcbc40ed821", |
| "elapsed_seconds": 0.024608332896605134, |
| "parent": "b565e785d05a1e7f559bfcb0d081b3c2507340da", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.5.0-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "b565e785d05a1e7f559bfcb0d081b3c2507340da", |
| "elapsed_seconds": 0.024845999898388982, |
| "parent": "482f2fe6ccae9239b3a010a70969d8d887cdb6b6", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add Python 3.13 as supported", |
| "validation": null |
| }, |
| { |
| "commit": "482f2fe6ccae9239b3a010a70969d8d887cdb6b6", |
| "elapsed_seconds": 0.02451974991708994, |
| "parent": "b3834dceb290c4c3bc97541aea38b02de53638df", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: remove \"v3\" question from issue template", |
| "validation": null |
| }, |
| { |
| "commit": "b3834dceb290c4c3bc97541aea38b02de53638df", |
| "elapsed_seconds": 0.024598083924502134, |
| "parent": "1cdfe40ac0a5334ee13d530e3f6f60352a621892", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "1cdfe40ac0a5334ee13d530e3f6f60352a621892", |
| "elapsed_seconds": 0.024856584146618843, |
| "parent": "1a68f1c5ff93ad77c58276231ee33f58b7083a09", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.4.2-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "1a68f1c5ff93ad77c58276231ee33f58b7083a09", |
| "elapsed_seconds": 1.5384063329547644, |
| "parent": "9734ad4bcbedcf4ee61317c12f47ddacf2ac208f", |
| "reason": null, |
| "source_changed_lines": 1, |
| "source_paths": [ |
| "gitlab/v4/objects/merge_request_approvals.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_008", |
| "test_paths": [ |
| "tests/unit/objects/test_project_merge_request_approvals.py" |
| ], |
| "title": "set _repr_attr for project approval rules to name attr", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.5036679171025753, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4247459589969367, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n........................................................................ [ 63%]\n...s.................................................................... [ 84%]\n..................................................... [100%]\n338 passed, 3 skipped in 0.25s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.443036749958992, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n.....................................................F.................. [ 63%]\n...s.................................................................... [ 84%]\n..................................................... [100%]\n=================================== FAILURES ===================================\n_______________________ test_list_project_approval_rules _______________________\n\nproject = <Project id:1>\nresp_prj_approval_rules = <responses.RequestsMock object at 0x107dd5390>\n\n def test_list_project_approval_rules(project, resp_prj_approval_rules):\n approval_rules = project.approvalrules.list()\n assert len(approval_rules) == 1\n assert approval_rules[0].name == approval_rule_name\n assert approval_rules[0].id == approval_rule_id\n> assert (\n repr(approval_rules[0])\n == f\"<ProjectApprovalRule id:{approval_rule_id} name:{approval_rule_name}>\"\n )\nE AssertionError: assert '<ProjectApprovalRule id:7>' == '<ProjectAppr...ame:security>'\nE \nE - <ProjectApprovalRule id:7 name:security>\nE ? --------------\nE + <ProjectApprovalRule id:7>\n\ntests/unit/objects/test_project_merge_request_approvals.py:306: AssertionError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_project_merge_request_approvals.py::test_list_project_approval_rules\n1 failed, 337 passed, 3 skipped in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.010066708084195852, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5716946250759065, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n........................................................................ [ 63%]\n..s..................................................................... [ 84%]\n.................................................... [100%]\n337 passed, 3 skipped in 0.39s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009651167085394263, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "9734ad4bcbedcf4ee61317c12f47ddacf2ac208f", |
| "elapsed_seconds": 0.027528416831046343, |
| "parent": "8dca487204f3f7a19a8032cf8d783f3169bfee18", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "remove support for Python 3.8, require 3.9 or higher", |
| "validation": null |
| }, |
| { |
| "commit": "8dca487204f3f7a19a8032cf8d783f3169bfee18", |
| "elapsed_seconds": 0.03327804198488593, |
| "parent": "0ee0e02f1d1415895f6ab0f6d23b39b50a36446a", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.13.0", |
| "validation": null |
| }, |
| { |
| "commit": "0ee0e02f1d1415895f6ab0f6d23b39b50a36446a", |
| "elapsed_seconds": 0.03338558296673, |
| "parent": "5c27546d35ced76763ea8b0071b4ec4c896893a1", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 34, |
| "source_paths": [ |
| "gitlab/v4/objects/pages.py", |
| "gitlab/v4/objects/projects.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add support for project Pages API", |
| "validation": null |
| }, |
| { |
| "commit": "5c27546d35ced76763ea8b0071b4ec4c896893a1", |
| "elapsed_seconds": 0.024212541989982128, |
| "parent": "c3efb37c050268de3f1ef5e24748ccd9487e346d", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency pre-commit to v4", |
| "validation": null |
| }, |
| { |
| "commit": "c3efb37c050268de3f1ef5e24748ccd9487e346d", |
| "elapsed_seconds": 0.02454479201696813, |
| "parent": "0ceebd0ecb3f18b8edccd4dd6b104f1f96104b23", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "0ceebd0ecb3f18b8edccd4dd6b104f1f96104b23", |
| "elapsed_seconds": 0.03255720902234316, |
| "parent": "9bf26df9d1535ca2881c43706a337a972b737fa0", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.12.2", |
| "validation": null |
| }, |
| { |
| "commit": "9bf26df9d1535ca2881c43706a337a972b737fa0", |
| "elapsed_seconds": 0.032978749834001064, |
| "parent": "2ab0b9fe334afd5720eb4eb5abfc4d13102f4446", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 1, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "raise GitlabHeadError in `project.files.head()` method", |
| "validation": null |
| }, |
| { |
| "commit": "2ab0b9fe334afd5720eb4eb5abfc4d13102f4446", |
| "elapsed_seconds": 0.03301429213024676, |
| "parent": "c848d12252763c32fc2b1c807e7d9887f391a761", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.12.1", |
| "validation": null |
| }, |
| { |
| "commit": "c848d12252763c32fc2b1c807e7d9887f391a761", |
| "elapsed_seconds": 0.02412212500348687, |
| "parent": "d3da326828274ed0c5f76b01a068519d360995c8", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "do not rely on GitLab.com runner arch variables", |
| "validation": null |
| }, |
| { |
| "commit": "d3da326828274ed0c5f76b01a068519d360995c8", |
| "elapsed_seconds": 0.02429825020954013, |
| "parent": "190ec89bea12d7eec719a6ea4d15706cfdacd159", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "190ec89bea12d7eec719a6ea4d15706cfdacd159", |
| "elapsed_seconds": 0.032705417135730386, |
| "parent": "64eed5d388252135a42a252b9100ffc75d9fb0ea", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 1, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "correctly raise GitlabGetError in get method", |
| "validation": null |
| }, |
| { |
| "commit": "64eed5d388252135a42a252b9100ffc75d9fb0ea", |
| "elapsed_seconds": 0.02469612518325448, |
| "parent": "27dbbe7a5e34509210ec3930f36b939212cb6d6c", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.4.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "27dbbe7a5e34509210ec3930f36b939212cb6d6c", |
| "elapsed_seconds": 0.03226279211230576, |
| "parent": "29f617d7d368636791baf703ecdbd22583356674", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.12.0", |
| "validation": null |
| }, |
| { |
| "commit": "29f617d7d368636791baf703ecdbd22583356674", |
| "elapsed_seconds": 0.02441104198805988, |
| "parent": "ae132e7a1efef6b0ae2f2a7d335668784648e3c7", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "build multi-arch images", |
| "validation": null |
| }, |
| { |
| "commit": "ae132e7a1efef6b0ae2f2a7d335668784648e3c7", |
| "elapsed_seconds": 0.024154708022251725, |
| "parent": "a0729b83e63bcd74f522bf57a87a5800b1cf19d1", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "a0729b83e63bcd74f522bf57a87a5800b1cf19d1", |
| "elapsed_seconds": 0.024240999948233366, |
| "parent": "174d992e49f1e5171fee8893a1713f30324bbf97", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: update pylint to 3.3.1 and resolve issues", |
| "validation": null |
| }, |
| { |
| "commit": "174d992e49f1e5171fee8893a1713f30324bbf97", |
| "elapsed_seconds": 1.5327179587911814, |
| "parent": "a2ab54ceb40eca1e6e71f7779a418591426b2b2c", |
| "reason": null, |
| "source_changed_lines": 29, |
| "source_paths": [ |
| "gitlab/v4/objects/merge_requests.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_009", |
| "test_paths": [ |
| "tests/unit/objects/test_merge_requests.py" |
| ], |
| "title": "introduce related_issues to merge requests", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.4997267499566078, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4217844579834491, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n........................................................................ [ 63%]\n..s..................................................................... [ 84%]\n.................................................... [100%]\n337 passed, 3 skipped in 0.25s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4460919168777764, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n......................................................................FE [ 42%]\n........................................................................ [ 63%]\n...s.................................................................... [ 84%]\n..................................................... [100%]\n==================================== ERRORS ====================================\n________________ ERROR at teardown of test_list_related_issues _________________\n\n @pytest.fixture\n def resp_list_merge_requests_related_issues():\n> with responses.RequestsMock() as rsps:\n\ntests/unit/objects/test_merge_requests.py:172: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:996: in __exit__\n self.stop(allow_assert=success)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <responses.RequestsMock object at 0x1074382d0>, allow_assert = True\n\n def stop(self, allow_assert: bool = True) -> None:\n if self._patcher:\n # prevent stopping unstarted patchers\n self._patcher.stop()\n \n # once patcher is stopped, clean it. This is required to create a new\n # fresh patcher on self.start()\n self._patcher = None\n \n if not self.assert_all_requests_are_fired:\n return\n \n if not allow_assert:\n return\n \n not_called = [m for m in self.registered() if m.call_count == 0]\n if not_called:\n> raise AssertionError(\n \"Not all requests have been executed {!r}\".format(\n [(match.method, match.url) for match in not_called]\n )\n )\nE AssertionError: Not all requests have been executed [('GET', 'http://localhost/api/v4/projects/1/merge_requests/1/related_issues')]\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1233: AssertionError\n=================================== FAILURES ===================================\n___________________________ test_list_related_issues ___________________________\n\nproject = <Project id:1>\nresp_list_merge_requests_related_issues = <responses.RequestsMock object at 0x1074382d0>\n\n def test_list_related_issues(project, resp_list_merge_requests_related_issues):\n mr = project.mergerequests.get(1)\n> this_mr_related_issues = mr.related_issues()\n\ntests/unit/objects/test_merge_requests.py:216: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <ProjectMergeRequest iid:1>, name = 'related_issues'\n\n def __getattr__(self, name: str) -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'ProjectMergeRequest' object has no attribute 'related_issues'\n\ngitlab/base.py:134: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_merge_requests.py::test_list_related_issues - ...\nERROR tests/unit/objects/test_merge_requests.py::test_list_related_issues - A...\n1 failed, 336 passed, 3 skipped, 1 error in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009384915931150317, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5684731660876423, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n........................................................................ [ 63%]\n.s...................................................................... [ 84%]\n................................................... [100%]\n336 passed, 3 skipped in 0.39s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.00983520783483982, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "a2ab54ceb40eca1e6e71f7779a418591426b2b2c", |
| "elapsed_seconds": 0.02544037508778274, |
| "parent": "860180862d952ed25cf95df1a4f825664f7e1c4b", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency types-setuptools to v75", |
| "validation": null |
| }, |
| { |
| "commit": "860180862d952ed25cf95df1a4f825664f7e1c4b", |
| "elapsed_seconds": 0.025126124965026975, |
| "parent": "10ee58a01fdc8071f29ae0095d9ea8a4424fa728", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.4.0-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "10ee58a01fdc8071f29ae0095d9ea8a4424fa728", |
| "elapsed_seconds": 0.02476904192008078, |
| "parent": "5cd1ab202e3e7b64d626d2c4e62b1662a4285015", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "5cd1ab202e3e7b64d626d2c4e62b1662a4285015", |
| "elapsed_seconds": 0.02521054190583527, |
| "parent": "96a18b065dac4ce612a128f03e2fc6d1b4ccd69e", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.3.2-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "96a18b065dac4ce612a128f03e2fc6d1b4ccd69e", |
| "elapsed_seconds": 1.073079459136352, |
| "parent": "10c7aee1996dc00aaab356462daeb3d53037f59d", |
| "reason": "hidden tests do not expose the base bug", |
| "source_changed_lines": 44, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/objects/test_repositories.py" |
| ], |
| "title": "head requests for projectfilemanager", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.0397720420733094, |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.42883166717365384, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n........................................................................ [ 63%]\n.s...................................................................... [ 84%]\n................................................... [100%]\n336 passed, 3 skipped in 0.26s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009544834028929472, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.555183082818985, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n........................................................................ [ 63%]\n.s...................................................................... [ 85%]\n.................................................. [100%]\n335 passed, 3 skipped in 0.38s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": "hidden tests do not expose the base bug", |
| "valid": false |
| } |
| }, |
| { |
| "commit": "10c7aee1996dc00aaab356462daeb3d53037f59d", |
| "elapsed_seconds": 0.03529762499965727, |
| "parent": "b41b2de8884c2dc8c8be467f480c7161db6a1c87", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.11.1", |
| "validation": null |
| }, |
| { |
| "commit": "b41b2de8884c2dc8c8be467f480c7161db6a1c87", |
| "elapsed_seconds": 0.03329370799474418, |
| "parent": "7669d4d2372dea17cf1369c0408340adf114b07e", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/client.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "ensure type evaluations are postponed", |
| "validation": null |
| }, |
| { |
| "commit": "7669d4d2372dea17cf1369c0408340adf114b07e", |
| "elapsed_seconds": 0.03322095796465874, |
| "parent": "b9f5c12d3ba6ca4e4321a81e7610d03fb4440c02", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.11.0", |
| "validation": null |
| }, |
| { |
| "commit": "b9f5c12d3ba6ca4e4321a81e7610d03fb4440c02", |
| "elapsed_seconds": 0.02481274981983006, |
| "parent": "145870e628ed3b648a0a29fc551a6f38469b684a", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs(objects): fix typo in get latest pipeline", |
| "validation": null |
| }, |
| { |
| "commit": "145870e628ed3b648a0a29fc551a6f38469b684a", |
| "elapsed_seconds": 0.2486067502759397, |
| "parent": "8898c38b97ed36d9ff8f2f20dee27ef1448b9f83", |
| "reason": "selected public tests fail at base", |
| "source_changed_lines": 10, |
| "source_paths": [ |
| "gitlab/client.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/test_graphql.py" |
| ], |
| "title": "make retries configurable in GraphQL", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit" |
| ], |
| "elapsed_seconds": 0.2157596661709249, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 0.16947554191574454, |
| "returncode": 4, |
| "stderr": "ImportError while loading conftest '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-2bdk5r17/tree/tests/conftest.py'.\ntests/conftest.py:6: in <module>\n import gitlab\ngitlab/__init__.py:30: in <module>\n from gitlab.client import Gitlab, GitlabList, GraphQL # noqa: F401\ngitlab/client.py:1279: in <module>\n class GraphQL:\ngitlab/client.py:1286: in GraphQL\n client: Optional[httpx.Client] = None,\nE NameError: name 'httpx' is not defined\n", |
| "stdout": "", |
| "timed_out": false |
| } |
| ], |
| "reason": "selected public tests fail at base", |
| "valid": false |
| } |
| }, |
| { |
| "commit": "8898c38b97ed36d9ff8f2f20dee27ef1448b9f83", |
| "elapsed_seconds": 0.24979308294132352, |
| "parent": "3235c48328c2866f7d46597ba3c0c2488e6c375c", |
| "reason": "selected public tests fail at base", |
| "source_changed_lines": 74, |
| "source_paths": [ |
| "gitlab/client.py", |
| "gitlab/utils.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/test_graphql.py", |
| "tests/unit/test_retry.py" |
| ], |
| "title": "add retry handling to GraphQL client", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit" |
| ], |
| "elapsed_seconds": 0.2132795830257237, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 0.1686656668316573, |
| "returncode": 4, |
| "stderr": "ImportError while loading conftest '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-14tmhs3d/tree/tests/conftest.py'.\ntests/conftest.py:6: in <module>\n import gitlab\ngitlab/__init__.py:30: in <module>\n from gitlab.client import Gitlab, GitlabList, GraphQL # noqa: F401\ngitlab/client.py:1276: in <module>\n class GraphQL:\ngitlab/client.py:1283: in GraphQL\n client: Optional[httpx.Client] = None,\nE NameError: name 'httpx' is not defined\n", |
| "stdout": "", |
| "timed_out": false |
| } |
| ], |
| "reason": "selected public tests fail at base", |
| "valid": false |
| } |
| }, |
| { |
| "commit": "3235c48328c2866f7d46597ba3c0c2488e6c375c", |
| "elapsed_seconds": 0.26237916690297425, |
| "parent": "fe5e608bc6cc04863bd4d1d9dbe101fffd88e954", |
| "reason": "selected public tests fail at base", |
| "source_changed_lines": 103, |
| "source_paths": [ |
| "gitlab/client.py", |
| "gitlab/utils.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/test_retry.py" |
| ], |
| "title": "move retry logic into utility", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit" |
| ], |
| "elapsed_seconds": 0.22666499996557832, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 0.1829139580950141, |
| "returncode": 4, |
| "stderr": "ImportError while loading conftest '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-iwta5s98/tree/tests/conftest.py'.\ntests/conftest.py:6: in <module>\n import gitlab\ngitlab/__init__.py:30: in <module>\n from gitlab.client import Gitlab, GitlabList, GraphQL # noqa: F401\ngitlab/client.py:1301: in <module>\n class GraphQL:\ngitlab/client.py:1308: in GraphQL\n client: Optional[httpx.Client] = None,\nE NameError: name 'httpx' is not defined\n", |
| "stdout": "", |
| "timed_out": false |
| } |
| ], |
| "reason": "selected public tests fail at base", |
| "valid": false |
| } |
| }, |
| { |
| "commit": "fe5e608bc6cc04863bd4d1d9dbe101fffd88e954", |
| "elapsed_seconds": 0.02716354187577963, |
| "parent": "fac8bf9f3e2a0218f96337536d08dec9991bfc1a", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(pre-commit): add deps", |
| "validation": null |
| }, |
| { |
| "commit": "fac8bf9f3e2a0218f96337536d08dec9991bfc1a", |
| "elapsed_seconds": 0.025532541796565056, |
| "parent": "e637808bcb74498438109d7ed352071ebaa192d5", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "e637808bcb74498438109d7ed352071ebaa192d5", |
| "elapsed_seconds": 0.034749167039990425, |
| "parent": "d6b1b0a962bbf0f4e0612067fc075dbdcbb772f8", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 3, |
| "source_paths": [ |
| "gitlab/v4/objects/members.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add exclusive GET attrs for /projects/:id/members", |
| "validation": null |
| }, |
| { |
| "commit": "d6b1b0a962bbf0f4e0612067fc075dbdcbb772f8", |
| "elapsed_seconds": 5.88856091699563, |
| "parent": "d44ddd2b00d78bb87ff6a4776e64e05e0c1524e1", |
| "reason": "selected tests fail after the gold patch", |
| "source_changed_lines": 126, |
| "source_paths": [ |
| "gitlab/__init__.py", |
| "gitlab/_backends/graphql.py", |
| "gitlab/client.py", |
| "gitlab/utils.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/test_graphql.py" |
| ], |
| "title": "add a minimal GraphQL client", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit" |
| ], |
| "elapsed_seconds": 5.854824041947722, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 0.16905962489545345, |
| "returncode": 4, |
| "stderr": "ImportError while loading conftest '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-uh6k9lcn/tree/tests/conftest.py'.\ntests/conftest.py:6: in <module>\n import gitlab\ngitlab/__init__.py:30: in <module>\n from gitlab.client import Gitlab, GitlabList, GraphQL # noqa: F401\ngitlab/client.py:1301: in <module>\n class GraphQL:\ngitlab/client.py:1308: in GraphQL\n client: Optional[httpx.Client] = None,\nE NameError: name 'httpx' is not defined\n", |
| "stdout": "", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 2.689602208090946, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "........................................................................ [ 6%]\n........................................................................ [ 13%]\n........................................................................ [ 20%]\n........................................................................ [ 26%]\n........................................................................ [ 33%]\n........................................................................ [ 40%]\n........................................................................ [ 46%]\n........................................................................ [ 53%]\n.............................s..s....................................... [ 60%]\n........................................................................ [ 67%]\n..................................s..................................... [ 73%]\n........................................................................ [ 80%]\n........................................................................ [ 87%]\n........................................................................ [ 93%]\n........................FF........................................ [100%]\n=================================== FAILURES ===================================\n______________________ test_import_error_includes_message ______________________\n\nmonkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x11370fb10>\n\n def test_import_error_includes_message(monkeypatch: pytest.MonkeyPatch):\n> monkeypatch.setattr(gitlab.client, \"_GQL_INSTALLED\", False)\nE AttributeError: <module 'gitlab.client' from '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-uh6k9lcn/tree/gitlab/client.py'> has no attribute '_GQL_INSTALLED'\n\ntests/unit/test_graphql.py:7: AttributeError\n____________________ test_graphql_as_context_manager_exits _____________________\n\n def test_graphql_as_context_manager_exits():\n> with gitlab.GraphQL() as gl:\nE AttributeError: module 'gitlab' has no attribute 'GraphQL'\n\ntests/unit/test_graphql.py:13: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/test_graphql.py::test_import_error_includes_message - Attri...\nFAILED tests/unit/test_graphql.py::test_graphql_as_context_manager_exits - At...\n2 failed, 1069 passed, 3 skipped in 2.50s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009872999973595142, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 2.93329770793207, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "........................................................................ [ 6%]\n........................................................................ [ 13%]\n........................................................................ [ 20%]\n........................................................................ [ 26%]\n........................................................................ [ 33%]\n........................................................................ [ 40%]\n........................................................................ [ 47%]\n........................................................................ [ 53%]\n.............................s..s....................................... [ 60%]\n........................................................................ [ 67%]\n..................................s..................................... [ 73%]\n........................................................................ [ 80%]\n........................................................................ [ 87%]\n........................................................................ [ 94%]\n................................................................ [100%]\n1069 passed, 3 skipped in 2.73s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": "selected tests fail after the gold patch", |
| "source_apply": { |
| "elapsed_seconds": 0.010067750001326203, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": false |
| } |
| }, |
| { |
| "commit": "d44ddd2b00d78bb87ff6a4776e64e05e0c1524e1", |
| "elapsed_seconds": 0.037295584101229906, |
| "parent": "bdfaddb89ae7ba351bd3a21c6cecc528772db4de", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 3, |
| "source_paths": [ |
| "gitlab/v4/objects/members.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add exclusive GET attrs for /groups/:id/members", |
| "validation": null |
| }, |
| { |
| "commit": "bdfaddb89ae7ba351bd3a21c6cecc528772db4de", |
| "elapsed_seconds": 0.025826958008110523, |
| "parent": "88c75297377dd1f1106b5bc673946cebd563e0a1", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency types-setuptools to v74", |
| "validation": null |
| }, |
| { |
| "commit": "88c75297377dd1f1106b5bc673946cebd563e0a1", |
| "elapsed_seconds": 0.024609166895970702, |
| "parent": "bcef988df892562b13e02071af021f09f031f936", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "bcef988df892562b13e02071af021f09f031f936", |
| "elapsed_seconds": 0.033180875005200505, |
| "parent": "d6004449ad5aaaf2132318a78523818996ec3e21", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.10.0", |
| "validation": null |
| }, |
| { |
| "commit": "d6004449ad5aaaf2132318a78523818996ec3e21", |
| "elapsed_seconds": 0.024407916935160756, |
| "parent": "12caaa496740cb15e6220511751b7a20e2d29d07", |
| "reason": "excluded dependency/format/generated/revert subject", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(release): track tags for renovate", |
| "validation": null |
| }, |
| { |
| "commit": "12caaa496740cb15e6220511751b7a20e2d29d07", |
| "elapsed_seconds": 0.024629916064441204, |
| "parent": "d55c04502bee0fb42e2ef359cde3bc1b4b510b1a", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update python-semantic-release/upload-to-gh-release digest to 17c75b7", |
| "validation": null |
| }, |
| { |
| "commit": "d55c04502bee0fb42e2ef359cde3bc1b4b510b1a", |
| "elapsed_seconds": 0.02445516688749194, |
| "parent": "2ade0d9f4922226143e2e3835a7449fde9c49d66", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency types-setuptools to v73", |
| "validation": null |
| }, |
| { |
| "commit": "2ade0d9f4922226143e2e3835a7449fde9c49d66", |
| "elapsed_seconds": 0.024083958007395267, |
| "parent": "3fdd130a8e87137e5a048d5cb78e43aa476c8f34", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "3fdd130a8e87137e5a048d5cb78e43aa476c8f34", |
| "elapsed_seconds": 0.024635375011712313, |
| "parent": "0578bf07e7903037ffef6558e914766b6cf6f545", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.3.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "0578bf07e7903037ffef6558e914766b6cf6f545", |
| "elapsed_seconds": 0.0241714168805629, |
| "parent": "e5a46f57de166f94e01f5230eb6ad91f319791e4", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "e5a46f57de166f94e01f5230eb6ad91f319791e4", |
| "elapsed_seconds": 0.024493291974067688, |
| "parent": "43a16ac17ce78cf18e0fc10fa8229f052eed3946", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.3.0-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "43a16ac17ce78cf18e0fc10fa8229f052eed3946", |
| "elapsed_seconds": 0.024744666879996657, |
| "parent": "bdc155b716ef63ef1398ee1e6f5ca67da1109c13", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs(faq): correct the attribute fetching example", |
| "validation": null |
| }, |
| { |
| "commit": "bdc155b716ef63ef1398ee1e6f5ca67da1109c13", |
| "elapsed_seconds": 0.02557404199615121, |
| "parent": "930d4a21b8afed833b4b2e6879606bbadaee19a1", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test(cli): allow up to 30 seconds for a project export", |
| "validation": null |
| }, |
| { |
| "commit": "930d4a21b8afed833b4b2e6879606bbadaee19a1", |
| "elapsed_seconds": 0.023964209016412497, |
| "parent": "cb65ffb6957bf039f35926d01f15db559e663915", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency myst-parser to v4", |
| "validation": null |
| }, |
| { |
| "commit": "cb65ffb6957bf039f35926d01f15db559e663915", |
| "elapsed_seconds": 0.024100375128909945, |
| "parent": "b2275f767dd620c6cb2c27b0470f4e8151c76550", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency sphinx to v8", |
| "validation": null |
| }, |
| { |
| "commit": "b2275f767dd620c6cb2c27b0470f4e8151c76550", |
| "elapsed_seconds": 0.024239040911197662, |
| "parent": "31786a60da4b9a10dec0eab3a0b078aa1e94d809", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.2.2-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "31786a60da4b9a10dec0eab3a0b078aa1e94d809", |
| "elapsed_seconds": 0.02442970802076161, |
| "parent": "9353f5406d6762d09065744bfca360ccff36defe", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "9353f5406d6762d09065744bfca360ccff36defe", |
| "elapsed_seconds": 1.5196103330235928, |
| "parent": "8d74b889c55d18395c5e5006ba8f7db77892f603", |
| "reason": null, |
| "source_changed_lines": 34, |
| "source_paths": [ |
| "gitlab/exceptions.py", |
| "gitlab/v4/objects/hooks.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_010", |
| "test_paths": [ |
| "tests/unit/objects/test_hooks.py" |
| ], |
| "title": "project/group hook test triggering", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.4869164580013603, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.42021949985064566, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n........................................................................ [ 63%]\n.s...................................................................... [ 85%]\n.................................................. [100%]\n335 passed, 3 skipped in 0.25s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4540839157998562, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "egistered() if m.call_count == 0]\n if not_called:\n> raise AssertionError(\n \"Not all requests have been executed {!r}\".format(\n [(match.method, match.url) for match in not_called]\n )\n )\nE AssertionError: Not all requests have been executed [('POST', re.compile('http://localhost/api/v4/((groups|projects)/1/|)hooks/1/test/[a-z_]+'))]\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1233: AssertionError\n_______________ ERROR at teardown of test_test_error_group_hook ________________\n\n @pytest.fixture\n def resp_hook_test_error():\n> with responses.RequestsMock() as rsps:\n\ntests/unit/objects/test_hooks.py:121: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:996: in __exit__\n self.stop(allow_assert=success)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <responses.RequestsMock object at 0x10763a450>, allow_assert = True\n\n def stop(self, allow_assert: bool = True) -> None:\n if self._patcher:\n # prevent stopping unstarted patchers\n self._patcher.stop()\n \n # once patcher is stopped, clean it. This is required to create a new\n # fresh patcher on self.start()\n self._patcher = None\n \n if not self.assert_all_requests_are_fired:\n return\n \n if not allow_assert:\n return\n \n not_called = [m for m in self.registered() if m.call_count == 0]\n if not_called:\n> raise AssertionError(\n \"Not all requests have been executed {!r}\".format(\n [(match.method, match.url) for match in not_called]\n )\n )\nE AssertionError: Not all requests have been executed [('POST', re.compile('http://localhost/api/v4/((groups|projects)/1/|)hooks/1/test/[a-z_]+'))]\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1233: AssertionError\n=================================== FAILURES ===================================\n_____________________________ test_test_group_hook _____________________________\n\ngroup = <Group id:1>\nresp_hook_test = <responses.RequestsMock object at 0x1076bc4d0>\n\n def test_test_group_hook(group, resp_hook_test):\n hook = group.hooks.get(1)\n> hook.test(\"push_events\")\n\ntests/unit/objects/test_hooks.py:232: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <GroupHook id:1 url:testurl>, name = 'test'\n\n def __getattr__(self, name: str) -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'GroupHook' object has no attribute 'test'\n\ngitlab/base.py:134: AttributeError\n__________________________ test_test_error_group_hook __________________________\n\ngroup = <Group id:1>\nresp_hook_test_error = <responses.RequestsMock object at 0x10763a450>\n\n def test_test_error_group_hook(group, resp_hook_test_error):\n hook = group.hooks.get(1)\n> with pytest.raises(gitlab.exceptions.GitlabHookTestError):\nE AttributeError: module 'gitlab.exceptions' has no attribute 'GitlabHookTestError'\n\ntests/unit/objects/test_hooks.py:237: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_hooks.py::test_test_group_hook - AttributeErro...\nFAILED tests/unit/objects/test_hooks.py::test_test_error_group_hook - Attribu...\nERROR tests/unit/objects/test_hooks.py::test_test_group_hook - AssertionError...\nERROR tests/unit/objects/test_hooks.py::test_test_error_group_hook - Assertio...\n2 failed, 333 passed, 3 skipped, 2 errors in 0.28s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009496666956692934, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5502862918656319, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n.......................................................................s [ 64%]\n........................................................................ [ 85%]\n................................................ [100%]\n333 passed, 3 skipped in 0.37s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.00959554105065763, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "8d74b889c55d18395c5e5006ba8f7db77892f603", |
| "elapsed_seconds": 0.03428245801478624, |
| "parent": "64ae61ed9ba60169037703041c2a9a71017475b9", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.9.0", |
| "validation": null |
| }, |
| { |
| "commit": "64ae61ed9ba60169037703041c2a9a71017475b9", |
| "elapsed_seconds": 0.03381041600368917, |
| "parent": "f13968be9e2bb532f3c1185c1fa4185c05335552", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 56, |
| "source_paths": [ |
| "gitlab/v4/objects/snippets.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add support for listing all instance snippets", |
| "validation": null |
| }, |
| { |
| "commit": "f13968be9e2bb532f3c1185c1fa4185c05335552", |
| "elapsed_seconds": 0.024502583080902696, |
| "parent": "f95ca26b411e5a8998eb4b81e41c061726271240", |
| "reason": "excluded dependency/format/generated/revert subject", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update pre-commit hook maxbrunet/pre-commit-renovate to v38", |
| "validation": null |
| }, |
| { |
| "commit": "f95ca26b411e5a8998eb4b81e41c061726271240", |
| "elapsed_seconds": 0.024438084103167057, |
| "parent": "d6a7dba600923e582064a77579dea82281871c25", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "d6a7dba600923e582064a77579dea82281871c25", |
| "elapsed_seconds": 0.024077000096440315, |
| "parent": "eb5c6f7fb6487da21c69582adbc69aaf36149143", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency types-setuptools to v71", |
| "validation": null |
| }, |
| { |
| "commit": "eb5c6f7fb6487da21c69582adbc69aaf36149143", |
| "elapsed_seconds": 0.024532374925911427, |
| "parent": "d13a656565898886cc6ba11028b3bcb719c21f0f", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update python-semantic-release/upload-to-gh-release digest to 0dcddac", |
| "validation": null |
| }, |
| { |
| "commit": "d13a656565898886cc6ba11028b3bcb719c21f0f", |
| "elapsed_seconds": 0.024537625024095178, |
| "parent": "7adc86b2e202cad42776991f0ed8c81517bb37ad", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.2.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "7adc86b2e202cad42776991f0ed8c81517bb37ad", |
| "elapsed_seconds": 0.024748416850343347, |
| "parent": "eb18552e423e270a27a2b205bfd2f22fcb2eb949", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "eb18552e423e270a27a2b205bfd2f22fcb2eb949", |
| "elapsed_seconds": 0.024321167031303048, |
| "parent": "e820db0d9db42a826884b45a76267fee861453d4", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update python-semantic-release/upload-to-gh-release digest to e2355e1", |
| "validation": null |
| }, |
| { |
| "commit": "e820db0d9db42a826884b45a76267fee861453d4", |
| "elapsed_seconds": 0.024437374901026487, |
| "parent": "67370d8f083ddc34c0acf0c0b06742a194dfa735", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "67370d8f083ddc34c0acf0c0b06742a194dfa735", |
| "elapsed_seconds": 0.02438162500038743, |
| "parent": "18f6be580b12dc406ef356b2cd65f47c24fce63e", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(ci): make pre-commit check happy", |
| "validation": null |
| }, |
| { |
| "commit": "18f6be580b12dc406ef356b2cd65f47c24fce63e", |
| "elapsed_seconds": 0.03226724988780916, |
| "parent": "32dbc6f2bee5b22d18c4793f135223d9b9824d15", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.8.0", |
| "validation": null |
| }, |
| { |
| "commit": "32dbc6f2bee5b22d18c4793f135223d9b9824d15", |
| "elapsed_seconds": 1.325488582951948, |
| "parent": "ee393a16e1aa6dbf2f9785eb3ef486f7d5b9276f", |
| "reason": null, |
| "source_changed_lines": 29, |
| "source_paths": [ |
| "gitlab/v4/objects/__init__.py", |
| "gitlab/v4/objects/cluster_agents.py", |
| "gitlab/v4/objects/projects.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_011", |
| "test_paths": [ |
| "tests/unit/objects/test_cluster_agents.py" |
| ], |
| "title": "add support for project cluster agents", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.2926694171037525, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4181147499475628, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "....................................................................s..s [ 21%]\n........................................................................ [ 42%]\n.......................................................................s [ 64%]\n........................................................................ [ 85%]\n................................................ [100%]\n333 passed, 3 skipped in 0.25s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.2554962078575045, |
| "returncode": 2, |
| "stderr": "", |
| "stdout": "\n==================================== ERRORS ====================================\n__________ ERROR collecting tests/unit/objects/test_cluster_agents.py __________\nImportError while importing test module '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-8a6hfxuk/tree/tests/unit/objects/test_cluster_agents.py'.\nHint: make sure your test modules/packages have valid Python names.\nTraceback:\n/opt/homebrew/Cellar/python@3.11/3.11.15_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:126: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\ntests/unit/objects/test_cluster_agents.py:8: in <module>\n from gitlab.v4.objects import ProjectClusterAgent\nE ImportError: cannot import name 'ProjectClusterAgent' from 'gitlab.v4.objects' (/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-8a6hfxuk/tree/gitlab/v4/objects/__init__.py)\n=========================== short test summary info ============================\nERROR tests/unit/objects/test_cluster_agents.py\n!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!\n1 error in 0.08s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.0108537501655519, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5554793330375105, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "................................................................s..s.... [ 21%]\n........................................................................ [ 43%]\n...................................................................s.... [ 65%]\n........................................................................ [ 86%]\n............................................ [100%]\n329 passed, 3 skipped in 0.37s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.00920033291913569, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "ee393a16e1aa6dbf2f9785eb3ef486f7d5b9276f", |
| "elapsed_seconds": 0.024682165822014213, |
| "parent": "c307dd20e3df61b118b3b1a8191c0f1880bc9ed6", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test(registry): disable functional tests for unavailable endpoints", |
| "validation": null |
| }, |
| { |
| "commit": "c307dd20e3df61b118b3b1a8191c0f1880bc9ed6", |
| "elapsed_seconds": 0.03332458296790719, |
| "parent": "6d31649190279a844bfa591a953b0556cd6fc492", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 9, |
| "source_paths": [ |
| "gitlab/v4/objects/package_protection_rules.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add missing attributes", |
| "validation": null |
| }, |
| { |
| "commit": "6d31649190279a844bfa591a953b0556cd6fc492", |
| "elapsed_seconds": 1.3148302491754293, |
| "parent": "d509da60155e9470dee197d91926850ea9548de9", |
| "reason": null, |
| "source_changed_lines": 40, |
| "source_paths": [ |
| "gitlab/v4/objects/__init__.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/registry_protection_rules.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_012", |
| "test_paths": [ |
| "tests/unit/objects/test_registry_protection_rules.py" |
| ], |
| "title": "add support for container registry protection rules", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.2803772080224007, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.41283058281987906, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "................................................................s..s.... [ 21%]\n........................................................................ [ 43%]\n...................................................................s.... [ 65%]\n........................................................................ [ 86%]\n............................................ [100%]\n329 passed, 3 skipped in 0.24s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.24596374994143844, |
| "returncode": 2, |
| "stderr": "", |
| "stdout": "\n==================================== ERRORS ====================================\n____ ERROR collecting tests/unit/objects/test_registry_protection_rules.py _____\nImportError while importing test module '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-y397aad3/tree/tests/unit/objects/test_registry_protection_rules.py'.\nHint: make sure your test modules/packages have valid Python names.\nTraceback:\n/opt/homebrew/Cellar/python@3.11/3.11.15_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:126: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\ntests/unit/objects/test_registry_protection_rules.py:8: in <module>\n from gitlab.v4.objects import ProjectRegistryProtectionRule\nE ImportError: cannot import name 'ProjectRegistryProtectionRule' from 'gitlab.v4.objects' (/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-y397aad3/tree/gitlab/v4/objects/__init__.py)\n=========================== short test summary info ============================\nERROR tests/unit/objects/test_registry_protection_rules.py\n!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!\n1 error in 0.08s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009630083106458187, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5597804160788655, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "................................................................s..s.... [ 21%]\n........................................................................ [ 43%]\n...................................................................s.... [ 65%]\n........................................................................ [ 87%]\n......................................... [100%]\n326 passed, 3 skipped in 0.38s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009687625104561448, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "d509da60155e9470dee197d91926850ea9548de9", |
| "elapsed_seconds": 0.027019415982067585, |
| "parent": "6b37811c3060620afd8b81e54a99d96e4e094ce9", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: document how to use `sudo` if modifying an object", |
| "validation": null |
| }, |
| { |
| "commit": "6b37811c3060620afd8b81e54a99d96e4e094ce9", |
| "elapsed_seconds": 1.3088926237542182, |
| "parent": "c378817389a9510ef508b5a3c90282e5fb60049f", |
| "reason": null, |
| "source_changed_lines": 39, |
| "source_paths": [ |
| "gitlab/v4/objects/__init__.py", |
| "gitlab/v4/objects/package_protection_rules.py", |
| "gitlab/v4/objects/projects.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_013", |
| "test_paths": [ |
| "tests/unit/objects/test_package_protection_rules.py" |
| ], |
| "title": "add support for package protection rules", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.2749558328650892, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4238714170642197, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "................................................................s..s.... [ 21%]\n........................................................................ [ 43%]\n...................................................................s.... [ 65%]\n........................................................................ [ 87%]\n......................................... [100%]\n326 passed, 3 skipped in 0.25s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.24831195804290473, |
| "returncode": 2, |
| "stderr": "", |
| "stdout": "\n==================================== ERRORS ====================================\n_____ ERROR collecting tests/unit/objects/test_package_protection_rules.py _____\nImportError while importing test module '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-s03z31hf/tree/tests/unit/objects/test_package_protection_rules.py'.\nHint: make sure your test modules/packages have valid Python names.\nTraceback:\n/opt/homebrew/Cellar/python@3.11/3.11.15_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:126: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\ntests/unit/objects/test_package_protection_rules.py:8: in <module>\n from gitlab.v4.objects import ProjectPackageProtectionRule\nE ImportError: cannot import name 'ProjectPackageProtectionRule' from 'gitlab.v4.objects' (/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-s03z31hf/tree/gitlab/v4/objects/__init__.py)\n=========================== short test summary info ============================\nERROR tests/unit/objects/test_package_protection_rules.py\n!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!\n1 error in 0.08s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009436875116080046, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5414669578894973, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "................................................................s..s.... [ 22%]\n........................................................................ [ 44%]\n...............................................................s........ [ 66%]\n........................................................................ [ 88%]\n..................................... [100%]\n322 passed, 3 skipped in 0.36s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009815499885007739, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "c378817389a9510ef508b5a3c90282e5fb60049f", |
| "elapsed_seconds": 0.025176249910145998, |
| "parent": "6fedfa546120942757ea48337ce7446914eb3813", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: variables: add note about `filter` for updating", |
| "validation": null |
| }, |
| { |
| "commit": "6fedfa546120942757ea48337ce7446914eb3813", |
| "elapsed_seconds": 0.02495791600085795, |
| "parent": "4a2b2133b52dac102d6f623bf028bdef6dd5a92f", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.1.2-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "4a2b2133b52dac102d6f623bf028bdef6dd5a92f", |
| "elapsed_seconds": 0.02440712507814169, |
| "parent": "44f62c49106abce2099d5bb1f3f97b64971da406", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "44f62c49106abce2099d5bb1f3f97b64971da406", |
| "elapsed_seconds": 0.02459362498484552, |
| "parent": "2ab88b25a64bd8e028cee2deeb842476de54b109", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(ci): specify name of \"stale\" label", |
| "validation": null |
| }, |
| { |
| "commit": "2ab88b25a64bd8e028cee2deeb842476de54b109", |
| "elapsed_seconds": 0.02436783304437995, |
| "parent": "b74a6fb5157e55d3e4471a0c5c8378fed8075edc", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(ci): stale: allow issues/PRs that have stale label to be closed", |
| "validation": null |
| }, |
| { |
| "commit": "b74a6fb5157e55d3e4471a0c5c8378fed8075edc", |
| "elapsed_seconds": 0.025080540915951133, |
| "parent": "3f3ad80ef5bb2ed837adceae061291b2b5545ed3", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(ci): use codecov token when available", |
| "validation": null |
| }, |
| { |
| "commit": "3f3ad80ef5bb2ed837adceae061291b2b5545ed3", |
| "elapsed_seconds": 0.025984790874645114, |
| "parent": "0f59069420f403a17f67a5c36c81485c9016b59b", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update python-semantic-release/upload-to-gh-release digest to fe6cc89", |
| "validation": null |
| }, |
| { |
| "commit": "0f59069420f403a17f67a5c36c81485c9016b59b", |
| "elapsed_seconds": 0.02423479105345905, |
| "parent": "de2e4dd7e80c7b84fd41458117a85558fcbac32d", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "de2e4dd7e80c7b84fd41458117a85558fcbac32d", |
| "elapsed_seconds": 0.03258449980057776, |
| "parent": "d065275f2fe296dd00e9bbd0f676d1596f261a85", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 22, |
| "source_paths": [ |
| "gitlab/v4/objects/issues.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "issues `closed_by()/related_merge_requests()` use `http_list`", |
| "validation": null |
| }, |
| { |
| "commit": "d065275f2fe296dd00e9bbd0f676d1596f261a85", |
| "elapsed_seconds": 0.032317624893039465, |
| "parent": "51d8f888aca469cff1c5ee5e158fb259d2862017", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 6, |
| "source_paths": [ |
| "gitlab/mixins.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "Have `participants()` method use `http_list()`", |
| "validation": null |
| }, |
| { |
| "commit": "51d8f888aca469cff1c5ee5e158fb259d2862017", |
| "elapsed_seconds": 0.03263187501579523, |
| "parent": "f316b466c04f8ff3c0cca06d0e18ddf2d62d033c", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "CR: add explicit comparison to `None`", |
| "validation": null |
| }, |
| { |
| "commit": "f316b466c04f8ff3c0cca06d0e18ddf2d62d033c", |
| "elapsed_seconds": 0.023863540962338448, |
| "parent": "9cb3396d3bd83e82535a2a173b6e52b4f8c020f4", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test(files): test with and without `ref` parameter in test case", |
| "validation": null |
| }, |
| { |
| "commit": "9cb3396d3bd83e82535a2a173b6e52b4f8c020f4", |
| "elapsed_seconds": 0.02390304207801819, |
| "parent": "00640ac11f77e338919d7e9a1457d111c82af371", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test(files): omit optional `ref` parameter in test case", |
| "validation": null |
| }, |
| { |
| "commit": "00640ac11f77e338919d7e9a1457d111c82af371", |
| "elapsed_seconds": 0.032120333053171635, |
| "parent": "e5a43799b5039261d7034af909011444718a5814", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 18, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "make `ref` parameter optional in get raw file api", |
| "validation": null |
| }, |
| { |
| "commit": "e5a43799b5039261d7034af909011444718a5814", |
| "elapsed_seconds": 0.032990582985803485, |
| "parent": "7d04315d7d9641d88b0649e42bf24dd160629af5", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 59, |
| "source_paths": [ |
| "gitlab/client.py", |
| "gitlab/utils.py", |
| "gitlab/v4/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "generate UserWarning if `list` does not return all entries", |
| "validation": null |
| }, |
| { |
| "commit": "7d04315d7d9641d88b0649e42bf24dd160629af5", |
| "elapsed_seconds": 8.359257665695623, |
| "parent": "93586405fbfa61317dc75e186799549573bc0bbb", |
| "reason": null, |
| "source_changed_lines": 5, |
| "source_paths": [ |
| "gitlab/utils.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_014", |
| "test_paths": [ |
| "tests/unit/test_utils.py" |
| ], |
| "title": "chore: add `show_caller` argument to `utils.warn()`", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit" |
| ], |
| "elapsed_seconds": 8.325431832810864, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 2.6603600829839706, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "........................................................................ [ 6%]\n........................................................................ [ 13%]\n........................................................................ [ 20%]\n........................................................................ [ 27%]\n........................................................................ [ 34%]\n........................................................................ [ 41%]\n........................................................................ [ 47%]\n........................................................................ [ 54%]\n...................s..s................................................. [ 61%]\n........................................................................ [ 68%]\n..................s..................................................... [ 75%]\n........................................................................ [ 82%]\n........................................................................ [ 88%]\n........................................................................ [ 95%]\n............................................. [100%]\n1050 passed, 3 skipped in 2.47s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 2.678457540925592, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "........................................................................ [ 6%]\n........................................................................ [ 13%]\n........................................................................ [ 20%]\n........................................................................ [ 27%]\n........................................................................ [ 34%]\n........................................................................ [ 41%]\n........................................................................ [ 47%]\n........................................................................ [ 54%]\n...................s..s................................................. [ 61%]\n........................................................................ [ 68%]\n..................s..................................................... [ 75%]\n........................................................................ [ 82%]\n........................................................................ [ 88%]\n........................................................................ [ 95%]\n.................................F........... [100%]\n=================================== FAILURES ===================================\n_________________ TestWarningsWrapper.test_warn_no_show_caller _________________\n\nself = <tests.unit.test_utils.TestWarningsWrapper object at 0x107e21850>\n\n def test_warn_no_show_caller(self):\n warn_message = \"short and stout\"\n warn_source = \"teapot\"\n \n with warnings.catch_warnings(record=True) as caught_warnings:\n> utils.warn(\n message=warn_message,\n category=UserWarning,\n source=warn_source,\n show_caller=False,\n )\nE TypeError: warn() got an unexpected keyword argument 'show_caller'\n\ntests/unit/test_utils.py:131: TypeError\n=========================== short test summary info ============================\nFAILED tests/unit/test_utils.py::TestWarningsWrapper::test_warn_no_show_caller\n1 failed, 1049 passed, 3 skipped in 2.49s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.010384874884039164, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 2.921941166045144, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "........................................................................ [ 6%]\n........................................................................ [ 13%]\n........................................................................ [ 20%]\n........................................................................ [ 27%]\n........................................................................ [ 34%]\n........................................................................ [ 41%]\n........................................................................ [ 47%]\n........................................................................ [ 54%]\n...................s..s................................................. [ 61%]\n........................................................................ [ 68%]\n..................s..................................................... [ 75%]\n........................................................................ [ 82%]\n........................................................................ [ 88%]\n........................................................................ [ 95%]\n............................................ [100%]\n1049 passed, 3 skipped in 2.72s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009874125011265278, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "93586405fbfa61317dc75e186799549573bc0bbb", |
| "elapsed_seconds": 0.03629816696047783, |
| "parent": "2156949866ce95af542c127ba4b069e83fcc8104", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 3, |
| "source_paths": [ |
| "gitlab/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: use correct type-hint for `die()`", |
| "validation": null |
| }, |
| { |
| "commit": "2156949866ce95af542c127ba4b069e83fcc8104", |
| "elapsed_seconds": 0.02551029110327363, |
| "parent": "5e98510a6c918b33c0db0a7756e8a43a8bdd868a", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test(fixtures): remove deprecated config option", |
| "validation": null |
| }, |
| { |
| "commit": "5e98510a6c918b33c0db0a7756e8a43a8bdd868a", |
| "elapsed_seconds": 0.025871957885101438, |
| "parent": "23393faa0642c66a991fd88f1d2d68aed1d2f172", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.1.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "23393faa0642c66a991fd88f1d2d68aed1d2f172", |
| "elapsed_seconds": 0.024349417071789503, |
| "parent": "1f97be2a540122cb872ff59500d85a35031cab5f", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update python-semantic-release/upload-to-gh-release digest to c7c3b69", |
| "validation": null |
| }, |
| { |
| "commit": "1f97be2a540122cb872ff59500d85a35031cab5f", |
| "elapsed_seconds": 1.501494166906923, |
| "parent": "cf87226a81108fbed4f58751f1c03234cc57bcf1", |
| "reason": null, |
| "source_changed_lines": 18, |
| "source_paths": [ |
| "gitlab/v4/objects/commits.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_015", |
| "test_paths": [ |
| "tests/unit/objects/test_commits.py" |
| ], |
| "title": "add support for commit sequence", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.4691538750194013, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.42784833279438317, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "................................................................s..s.... [ 22%]\n........................................................................ [ 44%]\n...............................................................s........ [ 66%]\n........................................................................ [ 88%]\n..................................... [100%]\n322 passed, 3 skipped in 0.26s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.441324207931757, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": ".....................................FE..........................s..s... [ 21%]\n........................................................................ [ 44%]\n................................................................s....... [ 66%]\n........................................................................ [ 88%]\n...................................... [100%]\n==================================== ERRORS ====================================\n________________ ERROR at teardown of test_get_commit_sequence _________________\n\n @pytest.fixture\n def resp_get_commit_sequence():\n content = {\n \"count\": 1,\n }\n \n> with responses.RequestsMock() as rsps:\n\ntests/unit/objects/test_commits.py:87: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:996: in __exit__\n self.stop(allow_assert=success)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <responses.RequestsMock object at 0x10be8cad0>, allow_assert = True\n\n def stop(self, allow_assert: bool = True) -> None:\n if self._patcher:\n # prevent stopping unstarted patchers\n self._patcher.stop()\n \n # once patcher is stopped, clean it. This is required to create a new\n # fresh patcher on self.start()\n self._patcher = None\n \n if not self.assert_all_requests_are_fired:\n return\n \n if not allow_assert:\n return\n \n not_called = [m for m in self.registered() if m.call_count == 0]\n if not_called:\n> raise AssertionError(\n \"Not all requests have been executed {!r}\".format(\n [(match.method, match.url) for match in not_called]\n )\n )\nE AssertionError: Not all requests have been executed [('GET', 'http://localhost/api/v4/projects/1/repository/commits/6b2257ea/sequence')]\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1233: AssertionError\n=================================== FAILURES ===================================\n___________________________ test_get_commit_sequence ___________________________\n\nproject = <Project id:1>\nresp_get_commit_sequence = <responses.RequestsMock object at 0x10be8cad0>\n\n def test_get_commit_sequence(project, resp_get_commit_sequence):\n commit = project.commits.get(\"6b2257ea\", lazy=True)\n> sequence = commit.sequence()\n\ntests/unit/objects/test_commits.py:137: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <ProjectCommit id:6b2257ea>, name = 'sequence'\n\n def __getattr__(self, name: str) -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'ProjectCommit' object has no attribute 'sequence'\nE \nE If you tried to access object attributes returned from the server,\nE note that <class 'gitlab.v4.objects.commits.ProjectCommit'> was\nE created as a `lazy` object and was not initialized with any data.\n\ngitlab/base.py:134: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_commits.py::test_get_commit_sequence - Attribu...\nERROR tests/unit/objects/test_commits.py::test_get_commit_sequence - Assertio...\n1 failed, 321 passed, 3 skipped, 1 error in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.00935449986718595, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5399309578351676, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 44%]\n..............................................................s......... [ 66%]\n........................................................................ [ 88%]\n.................................... [100%]\n321 passed, 3 skipped in 0.36s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.008792083011940122, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "cf87226a81108fbed4f58751f1c03234cc57bcf1", |
| "elapsed_seconds": 0.02529741683974862, |
| "parent": "509e19c982ad0bbfa0fc330617c6e33b3350e491", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "509e19c982ad0bbfa0fc330617c6e33b3350e491", |
| "elapsed_seconds": 0.03326754178851843, |
| "parent": "635f5a7128c780880824f69a9aba23af148dfeb4", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.7.0", |
| "validation": null |
| }, |
| { |
| "commit": "635f5a7128c780880824f69a9aba23af148dfeb4", |
| "elapsed_seconds": 1.4921192079782486, |
| "parent": "88de2f0fc52f4f02e1d44139f4404acf172624d7", |
| "reason": null, |
| "source_changed_lines": 21, |
| "source_paths": [ |
| "gitlab/v4/objects/pipelines.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_016", |
| "test_paths": [ |
| "tests/unit/objects/test_pipelines.py" |
| ], |
| "title": "add support for latest pipeline", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.4582188329659402, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4166545420885086, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 44%]\n..............................................................s......... [ 66%]\n........................................................................ [ 88%]\n.................................... [100%]\n321 passed, 3 skipped in 0.24s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4397621669340879, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 44%]\n.......................FEFE.....................................s....... [ 66%]\n........................................................................ [ 88%]\n...................................... [100%]\n==================================== ERRORS ====================================\n__________________ ERROR at teardown of test_latest_pipeline ___________________\n\n @pytest.fixture\n def resp_get_latest():\n> with responses.RequestsMock() as rsps:\n\ntests/unit/objects/test_pipelines.py:223: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:996: in __exit__\n self.stop(allow_assert=success)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <responses.RequestsMock object at 0x1130a43d0>, allow_assert = True\n\n def stop(self, allow_assert: bool = True) -> None:\n if self._patcher:\n # prevent stopping unstarted patchers\n self._patcher.stop()\n \n # once patcher is stopped, clean it. This is required to create a new\n # fresh patcher on self.start()\n self._patcher = None\n \n if not self.assert_all_requests_are_fired:\n return\n \n if not allow_assert:\n return\n \n not_called = [m for m in self.registered() if m.call_count == 0]\n if not_called:\n> raise AssertionError(\n \"Not all requests have been executed {!r}\".format(\n [(match.method, match.url) for match in not_called]\n )\n )\nE AssertionError: Not all requests have been executed [('GET', 'http://localhost/api/v4/projects/1/pipelines/latest')]\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1233: AssertionError\n_____________ ERROR at teardown of test_latest_pipeline_other_ref ______________\n\n @pytest.fixture\n def resp_get_latest_other_ref():\n> with responses.RequestsMock() as rsps:\n\ntests/unit/objects/test_pipelines.py:236: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:996: in __exit__\n self.stop(allow_assert=success)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <responses.RequestsMock object at 0x113060fd0>, allow_assert = True\n\n def stop(self, allow_assert: bool = True) -> None:\n if self._patcher:\n # prevent stopping unstarted patchers\n self._patcher.stop()\n \n # once patcher is stopped, clean it. This is required to create a new\n # fresh patcher on self.start()\n self._patcher = None\n \n if not self.assert_all_requests_are_fired:\n return\n \n if not allow_assert:\n return\n \n not_called = [m for m in self.registered() if m.call_count == 0]\n if not_called:\n> raise AssertionError(\n \"Not all requests have been executed {!r}\".format(\n [(match.method, match.url) for match in not_called]\n )\n )\nE AssertionError: Not all requests have been executed [('GET', 'http://localhost/api/v4/projects/1/pipelines/latest')]\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1233: AssertionError\n=================================== FAILURES ===================================\n_____________________________ test_latest_pipeline _____________________________\n\nproject = <Project id:1>\nresp_get_latest = <responses.RequestsMock object at 0x1130a43d0>\n\n def test_latest_pipeline(project, resp_get_latest):\n> pipeline = project.pipelines.latest()\nE AttributeError: 'ProjectPipelineManager' object has no attribute 'latest'\n\ntests/unit/objects/test_pipelines.py:287: AttributeError\n________________________ test_latest_pipeline_other_ref ________________________\n\nproject = <Project id:1>\nresp_get_latest_other_ref = <responses.RequestsMock object at 0x113060fd0>\n\n def test_latest_pipeline_other_ref(project, resp_get_latest_other_ref):\n> pipeline = project.pipelines.latest(ref=\"feature-ref\")\nE AttributeError: 'ProjectPipelineManager' object has no attribute 'latest'\n\ntests/unit/objects/test_pipelines.py:294: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_pipelines.py::test_latest_pipeline - Attribute...\nFAILED tests/unit/objects/test_pipelines.py::test_latest_pipeline_other_ref\nERROR tests/unit/objects/test_pipelines.py::test_latest_pipeline - AssertionE...\nERROR tests/unit/objects/test_pipelines.py::test_latest_pipeline_other_ref - ...\n2 failed, 319 passed, 3 skipped, 2 errors in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009514082921668887, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5398399161640555, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 44%]\n............................................................s........... [ 67%]\n........................................................................ [ 89%]\n.................................. [100%]\n319 passed, 3 skipped in 0.36s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.00925383297726512, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "88de2f0fc52f4f02e1d44139f4404acf172624d7", |
| "elapsed_seconds": 0.025473499903455377, |
| "parent": "a510f43d990c3a3fd169854218b64d4eb9491628", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "a510f43d990c3a3fd169854218b64d4eb9491628", |
| "elapsed_seconds": 0.02591145783662796, |
| "parent": "51779c63e6a58e1ae68e9b1c3ffff998211d4e66", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "51779c63e6a58e1ae68e9b1c3ffff998211d4e66", |
| "elapsed_seconds": 0.02519524982199073, |
| "parent": "fd0f0b0338623a98e9368c30b600d603b966f8b7", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.0.2-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "fd0f0b0338623a98e9368c30b600d603b966f8b7", |
| "elapsed_seconds": 0.024850749876350164, |
| "parent": "d4fdf90655c2cb5124dc2ecd8b449e1e16d0add5", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update python-semantic-release/upload-to-gh-release digest to 6b7558f", |
| "validation": null |
| }, |
| { |
| "commit": "d4fdf90655c2cb5124dc2ecd8b449e1e16d0add5", |
| "elapsed_seconds": 0.024625750025734305, |
| "parent": "7767514a1ad4269a92a6610aa71aa8c595565a7d", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "7767514a1ad4269a92a6610aa71aa8c595565a7d", |
| "elapsed_seconds": 0.024628167040646076, |
| "parent": "df0ff4c4c1497d6449488b8577ad7188b55c41a9", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency types-setuptools to v70", |
| "validation": null |
| }, |
| { |
| "commit": "df0ff4c4c1497d6449488b8577ad7188b55c41a9", |
| "elapsed_seconds": 0.024267167085781693, |
| "parent": "02a551d82327b879b7a903b56b7962da552d1089", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17.0.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "02a551d82327b879b7a903b56b7962da552d1089", |
| "elapsed_seconds": 0.02417475008405745, |
| "parent": "d5de28884f695a79e49605a698c4f17b868ddeb8", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update python-semantic-release/upload-to-gh-release digest to 477a404", |
| "validation": null |
| }, |
| { |
| "commit": "d5de28884f695a79e49605a698c4f17b868ddeb8", |
| "elapsed_seconds": 0.024519457947462797, |
| "parent": "1291dbb588d3a5a54ee54d9bb93c444ce23efa8c", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "1291dbb588d3a5a54ee54d9bb93c444ce23efa8c", |
| "elapsed_seconds": 0.033023165771737695, |
| "parent": "9acd2d23dd8c87586aa99c70b4b47fa47528472b", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 5, |
| "source_paths": [ |
| "gitlab/v4/objects/deploy_keys.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add a help message for `gitlab project-key enable`", |
| "validation": null |
| }, |
| { |
| "commit": "9acd2d23dd8c87586aa99c70b4b47fa47528472b", |
| "elapsed_seconds": 0.03295387513935566, |
| "parent": "18aa1fc074b9f477cf0826933184bd594b63b489", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 40, |
| "source_paths": [ |
| "gitlab/cli.py", |
| "gitlab/v4/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add ability to add help to custom_actions", |
| "validation": null |
| }, |
| { |
| "commit": "18aa1fc074b9f477cf0826933184bd594b63b489", |
| "elapsed_seconds": 0.032383792102336884, |
| "parent": "9b4b0efa1ccfb155aee8384de9e00f922b989850", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 10, |
| "source_paths": [ |
| "gitlab/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add `--no-mask-credentials` CLI argument", |
| "validation": null |
| }, |
| { |
| "commit": "9b4b0efa1ccfb155aee8384de9e00f922b989850", |
| "elapsed_seconds": 0.03341916692443192, |
| "parent": "9c1c210c058dda9177dd6c54f0ac10a698ca94f7", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 22, |
| "source_paths": [ |
| "gitlab/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: sort CLI behavior-related args to remove", |
| "validation": null |
| }, |
| { |
| "commit": "9c1c210c058dda9177dd6c54f0ac10a698ca94f7", |
| "elapsed_seconds": 0.03238949994556606, |
| "parent": "1b550ac706c8c31331a7a9dac607aed49f5e1fcf", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.6.0", |
| "validation": null |
| }, |
| { |
| "commit": "1b550ac706c8c31331a7a9dac607aed49f5e1fcf", |
| "elapsed_seconds": 0.024172708857804537, |
| "parent": "4c7014c13ed63f994e05b498d63b93dc8ab90c2e", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update python-semantic-release/upload-to-gh-release digest to 673709c", |
| "validation": null |
| }, |
| { |
| "commit": "4c7014c13ed63f994e05b498d63b93dc8ab90c2e", |
| "elapsed_seconds": 0.02429874986410141, |
| "parent": "37b5a704ef6b94774e54110ba3746a950e733986", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "37b5a704ef6b94774e54110ba3746a950e733986", |
| "elapsed_seconds": 0.0241289169061929, |
| "parent": "d0fd5ad5a70e7eb70aedba5a0d3082418c5ffa34", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "update minimum dependency versions in pyproject.toml", |
| "validation": null |
| }, |
| { |
| "commit": "d0fd5ad5a70e7eb70aedba5a0d3082418c5ffa34", |
| "elapsed_seconds": 0.024109083926305175, |
| "parent": "98fc5789d39b81197351660b7a3f18903c2b91ba", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: update commit reference in git-blame-ignore-revs", |
| "validation": null |
| }, |
| { |
| "commit": "98fc5789d39b81197351660b7a3f18903c2b91ba", |
| "elapsed_seconds": 0.03301945817656815, |
| "parent": "20373525c1a1f98c18b953dbef896b2570d3d191", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 4, |
| "source_paths": [ |
| "gitlab/v4/objects/deploy_keys.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "don't require `--id` when enabling a deploy key", |
| "validation": null |
| }, |
| { |
| "commit": "20373525c1a1f98c18b953dbef896b2570d3d191", |
| "elapsed_seconds": 0.03307037497870624, |
| "parent": "61d867925772cf38f20360c9b40140ac3203efb9", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 11, |
| "source_paths": [ |
| "gitlab/cli.py", |
| "gitlab/v4/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(cli): add ability to not add `_id_attr` as an argument", |
| "validation": null |
| }, |
| { |
| "commit": "61d867925772cf38f20360c9b40140ac3203efb9", |
| "elapsed_seconds": 0.032611917005851865, |
| "parent": "74db84ca878ec7029643ff7b00db55f9ea085e9b", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 29, |
| "source_paths": [ |
| "gitlab/cli.py", |
| "gitlab/v4/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: create a CustomAction dataclass", |
| "validation": null |
| }, |
| { |
| "commit": "74db84ca878ec7029643ff7b00db55f9ea085e9b", |
| "elapsed_seconds": 0.024968666955828667, |
| "parent": "7270523ad89a463c3542e072df73ba2255a49406", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add an initial .git-blame-ignore-revs", |
| "validation": null |
| }, |
| { |
| "commit": "7270523ad89a463c3542e072df73ba2255a49406", |
| "elapsed_seconds": 0.034106708131730556, |
| "parent": "623dac9c8363c61dbf53f72af58835743e96656b", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 318, |
| "source_paths": [ |
| "gitlab/cli.py", |
| "gitlab/mixins.py", |
| "gitlab/v4/objects/artifacts.py", |
| "gitlab/v4/objects/ci_lint.py", |
| "gitlab/v4/objects/commits.py", |
| "gitlab/v4/objects/container_registry.py", |
| "gitlab/v4/objects/deploy_keys.py", |
| "gitlab/v4/objects/deployments.py", |
| "gitlab/v4/objects/environments.py", |
| "gitlab/v4/objects/files.py", |
| "gitlab/v4/objects/geo_nodes.py", |
| "gitlab/v4/objects/groups.py", |
| "gitlab/v4/objects/integrations.py", |
| "gitlab/v4/objects/issues.py", |
| "gitlab/v4/objects/jobs.py", |
| "gitlab/v4/objects/merge_requests.py", |
| "gitlab/v4/objects/milestones.py", |
| "gitlab/v4/objects/namespaces.py", |
| "gitlab/v4/objects/packages.py", |
| "gitlab/v4/objects/pipelines.py", |
| "gitlab/v4/objects/projects.py", |
| "gitlab/v4/objects/repositories.py", |
| "gitlab/v4/objects/runners.py", |
| "gitlab/v4/objects/secure_files.py", |
| "gitlab/v4/objects/sidekiq.py", |
| "gitlab/v4/objects/snippets.py", |
| "gitlab/v4/objects/todos.py", |
| "gitlab/v4/objects/topics.py", |
| "gitlab/v4/objects/users.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: require keyword arguments for register_custom_action", |
| "validation": null |
| }, |
| { |
| "commit": "623dac9c8363c61dbf53f72af58835743e96656b", |
| "elapsed_seconds": 0.0331688339356333, |
| "parent": "d56912835360a1b5a03a20390fb45cb5e8b49ce4", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 31, |
| "source_paths": [ |
| "gitlab/v4/objects/iterations.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "add additional parameter to project/group iteration search", |
| "validation": null |
| }, |
| { |
| "commit": "d56912835360a1b5a03a20390fb45cb5e8b49ce4", |
| "elapsed_seconds": 0.025693834060803056, |
| "parent": "1bc788ca979a36eeff2e35241bdefc764cf335ce", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: remove typing-extensions from requirements.txt", |
| "validation": null |
| }, |
| { |
| "commit": "1bc788ca979a36eeff2e35241bdefc764cf335ce", |
| "elapsed_seconds": 0.028549459064379334, |
| "parent": "8fc13b91d63d57c704d03b98920522a6469c96d7", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency requests to v2.32.0 [security]", |
| "validation": null |
| }, |
| { |
| "commit": "8fc13b91d63d57c704d03b98920522a6469c96d7", |
| "elapsed_seconds": 0.03840875020250678, |
| "parent": "ba1eec49556ee022de471aae8d15060189f816e3", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 4, |
| "source_paths": [ |
| "gitlab/client.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "don't raise `RedirectError` for redirected `HEAD` requests", |
| "validation": null |
| }, |
| { |
| "commit": "ba1eec49556ee022de471aae8d15060189f816e3", |
| "elapsed_seconds": 0.02752112504094839, |
| "parent": "5070d07d13b9c87588dbfde3750340e322118779", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "5070d07d13b9c87588dbfde3750340e322118779", |
| "elapsed_seconds": 0.025800625095143914, |
| "parent": "f1ef5650c3201f3883eb04ad90a874e8adcbcde2", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v17", |
| "validation": null |
| }, |
| { |
| "commit": "f1ef5650c3201f3883eb04ad90a874e8adcbcde2", |
| "elapsed_seconds": 0.03438950004056096, |
| "parent": "5a4a940f42e43ed066838503638fe612813e504f", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 7, |
| "source_paths": [ |
| "gitlab/cli.py", |
| "gitlab/v4/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(cli): on the CLI help show the API endpoint of resources", |
| "validation": null |
| }, |
| { |
| "commit": "5a4a940f42e43ed066838503638fe612813e504f", |
| "elapsed_seconds": 0.033974166959524155, |
| "parent": "840572e4fa36581405b604a985d0e130fe43f4ce", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 12, |
| "source_paths": [ |
| "gitlab/v4/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(cli): add some simple help for the standard operations", |
| "validation": null |
| }, |
| { |
| "commit": "840572e4fa36581405b604a985d0e130fe43f4ce", |
| "elapsed_seconds": 0.03365479107014835, |
| "parent": "62fa2719ea129b3428e5e67d3d3a493f9aead863", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 7, |
| "source_paths": [ |
| "gitlab/v4/objects/jobs.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: correct type-hint for `job.trace()`", |
| "validation": null |
| }, |
| { |
| "commit": "62fa2719ea129b3428e5e67d3d3a493f9aead863", |
| "elapsed_seconds": 0.033466708147898316, |
| "parent": "b187deadabbfdf0326ecd79a3ee64c9de10c53e0", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 1, |
| "source_paths": [ |
| "gitlab/v4/objects/files.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add type info for ProjectFile.content", |
| "validation": null |
| }, |
| { |
| "commit": "b187deadabbfdf0326ecd79a3ee64c9de10c53e0", |
| "elapsed_seconds": 1.4878943341318518, |
| "parent": "ef8f0e190b1add3bbba9a7b194aba2f3c1a83b2e", |
| "reason": null, |
| "source_changed_lines": 21, |
| "source_paths": [ |
| "gitlab/v4/objects/__init__.py", |
| "gitlab/v4/objects/groups.py", |
| "gitlab/v4/objects/service_accounts.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_017", |
| "test_paths": [ |
| "tests/unit/objects/test_groups.py" |
| ], |
| "title": "add support for gitlab service account", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.4545442501548678, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4054504579398781, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 44%]\n............................................................s........... [ 67%]\n........................................................................ [ 89%]\n.................................. [100%]\n319 passed, 3 skipped in 0.24s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4375380000565201, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n.....FE................................................................. [ 44%]\n.............................................................s.......... [ 66%]\n........................................................................ [ 89%]\n................................... [100%]\n==================================== ERRORS ====================================\n____________ ERROR at teardown of test_create_group_service_account ____________\n\n @pytest.fixture\n def resp_create_group_service_account():\n> with responses.RequestsMock() as rsps:\n\ntests/unit/objects/test_groups.py:335: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:996: in __exit__\n self.stop(allow_assert=success)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <responses.RequestsMock object at 0x10be82390>, allow_assert = True\n\n def stop(self, allow_assert: bool = True) -> None:\n if self._patcher:\n # prevent stopping unstarted patchers\n self._patcher.stop()\n \n # once patcher is stopped, clean it. This is required to create a new\n # fresh patcher on self.start()\n self._patcher = None\n \n if not self.assert_all_requests_are_fired:\n return\n \n if not allow_assert:\n return\n \n not_called = [m for m in self.registered() if m.call_count == 0]\n if not_called:\n> raise AssertionError(\n \"Not all requests have been executed {!r}\".format(\n [(match.method, match.url) for match in not_called]\n )\n )\nE AssertionError: Not all requests have been executed [('POST', 'http://localhost/api/v4/groups/1/service_accounts')]\n\n/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/.venv/lib/python3.11/site-packages/responses/__init__.py:1233: AssertionError\n=================================== FAILURES ===================================\n______________________ test_create_group_service_account _______________________\n\ngroup = <Group id:1>\nresp_create_group_service_account = <responses.RequestsMock object at 0x10be82390>\n\n def test_create_group_service_account(group, resp_create_group_service_account):\n> service_account = group.service_accounts.create(\n {\"name\": \"gitlab-service-account\", \"username\": \"gitlab-service-account\"}\n )\n\ntests/unit/objects/test_groups.py:490: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <Group id:1>, name = 'service_accounts'\n\n def __getattr__(self, name: str) -> Any:\n if name in self.__dict__[\"_updated_attrs\"]:\n return self.__dict__[\"_updated_attrs\"][name]\n \n if name in self.__dict__[\"_attrs\"]:\n value = self.__dict__[\"_attrs\"][name]\n # If the value is a list, we copy it in the _updated_attrs dict\n # because we are not able to detect changes made on the object\n # (append, insert, pop, ...). Without forcing the attr\n # creation __setattr__ is never called, the list never ends up\n # in the _updated_attrs dict, and the update() and save()\n # method never push the new data to the server.\n # See https://github.com/python-gitlab/python-gitlab/issues/306\n #\n # note: _parent_attrs will only store simple values (int) so we\n # don't make this check in the next block.\n if isinstance(value, list):\n self.__dict__[\"_updated_attrs\"][name] = value[:]\n return self.__dict__[\"_updated_attrs\"][name]\n \n return value\n \n if name in self.__dict__[\"_parent_attrs\"]:\n return self.__dict__[\"_parent_attrs\"][name]\n \n message = f\"{type(self).__name__!r} object has no attribute {name!r}\"\n if self._created_from_list:\n message = (\n f\"{message}\\n\\n\"\n + textwrap.fill(\n f\"{self.__class__!r} was created via a list() call and \"\n f\"only a subset of the data may be present. To ensure \"\n f\"all data is present get the object using a \"\n f\"get(object.id) call. For more details, see:\"\n )\n + f\"\\n\\n{_URL_ATTRIBUTE_ERROR}\"\n )\n elif self._lazy:\n message = f\"{message}\\n\\n\" + textwrap.fill(\n f\"If you tried to access object attributes returned from the server, \"\n f\"note that {self.__class__!r} was created as a `lazy` object and was \"\n f\"not initialized with any data.\"\n )\n> raise AttributeError(message)\nE AttributeError: 'Group' object has no attribute 'service_accounts'\nE \nE If you tried to access object attributes returned from the server,\nE note that <class 'gitlab.v4.objects.groups.Group'> was created as a\nE `lazy` object and was not initialized with any data.\n\ngitlab/base.py:134: AttributeError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_groups.py::test_create_group_service_account\nERROR tests/unit/objects/test_groups.py::test_create_group_service_account - ...\n1 failed, 318 passed, 3 skipped, 1 error in 0.27s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.00941220810636878, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.54900729120709, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 44%]\n...........................................................s............ [ 67%]\n........................................................................ [ 89%]\n................................. [100%]\n318 passed, 3 skipped in 0.37s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.00949754100292921, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "ef8f0e190b1add3bbba9a7b194aba2f3c1a83b2e", |
| "elapsed_seconds": 0.03576754196546972, |
| "parent": "33fbc14ea8432df7e637462379e567f4d0ad6c18", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/v4/objects/merge_request_approvals.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "handle large number of approval rules", |
| "validation": null |
| }, |
| { |
| "commit": "33fbc14ea8432df7e637462379e567f4d0ad6c18", |
| "elapsed_seconds": 0.03388091712258756, |
| "parent": "12d195a35a1bd14947fbd6688a8ad1bd3fc21617", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 3, |
| "source_paths": [ |
| "gitlab/v4/objects/projects.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "fix 'import_project' file argument type for typings", |
| "validation": null |
| }, |
| { |
| "commit": "12d195a35a1bd14947fbd6688a8ad1bd3fc21617", |
| "elapsed_seconds": 0.032837999984622, |
| "parent": "58d50f2d5eee79624a2bb018116c062f34dffcec", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 9, |
| "source_paths": [ |
| "gitlab/v4/objects/merge_request_approvals.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "more usernames support for MR approvals", |
| "validation": null |
| }, |
| { |
| "commit": "58d50f2d5eee79624a2bb018116c062f34dffcec", |
| "elapsed_seconds": 0.036750500090420246, |
| "parent": "2d1b7499a93db2c9600b383e166f7463a5f22085", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 2, |
| "source_paths": [ |
| "gitlab/_version.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: release v4.5.0", |
| "validation": null |
| }, |
| { |
| "commit": "2d1b7499a93db2c9600b383e166f7463a5f22085", |
| "elapsed_seconds": 1.2947538332082331, |
| "parent": "c5d0404ac9edfbfd328e7b4f07f554366377df3f", |
| "reason": null, |
| "source_changed_lines": 48, |
| "source_paths": [ |
| "gitlab/v4/objects/job_token_scope.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_018", |
| "test_paths": [ |
| "tests/unit/objects/test_job_token_scope.py" |
| ], |
| "title": "support Groups in job token allowlist API", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.2602431250270456, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.4168325418140739, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 44%]\n...........................................................s............ [ 67%]\n........................................................................ [ 89%]\n................................. [100%]\n318 passed, 3 skipped in 0.24s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.24513833317905664, |
| "returncode": 2, |
| "stderr": "", |
| "stdout": "\n==================================== ERRORS ====================================\n_________ ERROR collecting tests/unit/objects/test_job_token_scope.py __________\nImportError while importing test module '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-wk9a_8_q/tree/tests/unit/objects/test_job_token_scope.py'.\nHint: make sure your test modules/packages have valid Python names.\nTraceback:\n/opt/homebrew/Cellar/python@3.11/3.11.15_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:126: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\ntests/unit/objects/test_job_token_scope.py:9: in <module>\n from gitlab.v4.objects.job_token_scope import (\nE ImportError: cannot import name 'AllowlistGroupManager' from 'gitlab.v4.objects.job_token_scope' (/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-wk9a_8_q/tree/gitlab/v4/objects/job_token_scope.py)\n=========================== short test summary info ============================\nERROR tests/unit/objects/test_job_token_scope.py\n!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!\n1 error in 0.08s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009488207986578345, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5354779579211026, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 45%]\n.......................................................s................ [ 68%]\n........................................................................ [ 90%]\n............................. [100%]\n314 passed, 3 skipped in 0.36s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009653500048443675, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "c5d0404ac9edfbfd328e7b4f07f554366377df3f", |
| "elapsed_seconds": 1.457403291016817, |
| "parent": "c23e6bd5785205f0f4b4c80321153658fc23fb98", |
| "reason": null, |
| "source_changed_lines": 3, |
| "source_paths": [ |
| "gitlab/v4/objects/pipelines.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_019", |
| "test_paths": [ |
| "tests/unit/objects/test_jobs.py", |
| "tests/unit/objects/test_resource_groups.py" |
| ], |
| "title": "Consider `scope` an ArrayAttribute in PipelineJobManager", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit/objects" |
| ], |
| "elapsed_seconds": 1.4226869160775095, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.40396074997261167, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 45%]\n.......................................................s................ [ 68%]\n........................................................................ [ 90%]\n............................. [100%]\n314 passed, 3 skipped in 0.23s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.42500008293427527, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n..............................................F......................... [ 45%]\n.......................................................s................ [ 68%]\n........................................................................ [ 90%]\n............................. [100%]\n=================================== FAILURES ===================================\n____________________________ test_list_project_job _____________________________\n\nproject = <Project id:1>\nresp_list_job = <responses.RequestsMock object at 0x113086610>\n\n def test_list_project_job(project, resp_list_job):\n failed_jobs = project.jobs.list(scope=\"failed\")\n success_jobs = project.jobs.list(scope=\"success\")\n failed_and_success_jobs = project.jobs.list(scope=[\"failed\", \"success\"])\n pipeline_lazy = project.pipelines.get(1, lazy=True)\n pjobs_failed = pipeline_lazy.jobs.list(scope=\"failed\")\n pjobs_success = pipeline_lazy.jobs.list(scope=\"success\")\n pjobs_failed_and_success = pipeline_lazy.jobs.list(scope=[\"failed\", \"success\"])\n \n prepared_urls = [c.request.url for c in resp_list_job.calls]\n \n # Both pipelines and pipelines/jobs should behave the same way\n # When `scope` is scalar, one can use scope=value or scope[]=value\n assert set(failed_and_success_jobs) == set(failed_jobs + success_jobs)\n assert set(pjobs_failed_and_success) == set(pjobs_failed + pjobs_success)\n> assert prepared_urls == [\n \"http://localhost/api/v4/projects/1/jobs?scope%5B%5D=failed\",\n \"http://localhost/api/v4/projects/1/jobs?scope%5B%5D=success\",\n \"http://localhost/api/v4/projects/1/jobs?scope%5B%5D=failed&scope%5B%5D=success\",\n \"http://localhost/api/v4/projects/1/pipelines/1/jobs?scope%5B%5D=failed\",\n \"http://localhost/api/v4/projects/1/pipelines/1/jobs?scope%5B%5D=success\",\n \"http://localhost/api/v4/projects/1/pipelines/1/jobs?scope%5B%5D=failed&scope%5B%5D=success\",\n ]\nE AssertionError: assert ['http://loca...cope=success'] == ['http://loca...B%5D=success']\nE \nE At index 3 diff: 'http://localhost/api/v4/projects/1/pipelines/1/jobs?scope=failed' != 'http://localhost/api/v4/projects/1/pipelines/1/jobs?scope%5B%5D=failed'\nE Use -v to get more diff\n\ntests/unit/objects/test_jobs.py:163: AssertionError\n=========================== short test summary info ============================\nFAILED tests/unit/objects/test_jobs.py::test_list_project_job - AssertionErro...\n1 failed, 313 passed, 3 skipped in 0.25s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009690249804407358, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit/objects", |
| "elapsed_seconds": 0.5325255000498146, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "...............................................................s..s..... [ 22%]\n........................................................................ [ 45%]\n......................................................s................. [ 68%]\n........................................................................ [ 91%]\n............................ [100%]\n313 passed, 3 skipped in 0.35s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.009085542056709528, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| }, |
| { |
| "commit": "c23e6bd5785205f0f4b4c80321153658fc23fb98", |
| "elapsed_seconds": 0.02565325004979968, |
| "parent": "b8b3849b2d4d3f2d9e81e5cf4f6b53368f7f0127", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [ |
| "tests/unit/objects/test_project_merge_request_approvals.py" |
| ], |
| "title": "use different ids for merge request, approval rule, project", |
| "validation": null |
| }, |
| { |
| "commit": "b8b3849b2d4d3f2d9e81e5cf4f6b53368f7f0127", |
| "elapsed_seconds": 0.03397937514819205, |
| "parent": "4f338aed9c583a20ff5944e6ccbba5737c18b0f4", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 60, |
| "source_paths": [ |
| "gitlab/v4/objects/merge_request_approvals.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "fix saving merge request approval rules", |
| "validation": null |
| }, |
| { |
| "commit": "4f338aed9c583a20ff5944e6ccbba5737c18b0f4", |
| "elapsed_seconds": 0.025064209010452032, |
| "parent": "9be48f0bcc2d32b5e8489f62f963389d5d54b2f2", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "9be48f0bcc2d32b5e8489f62f963389d5d54b2f2", |
| "elapsed_seconds": 0.024610541993752122, |
| "parent": "92891890eb4730bc240213a212d392bcb869b800", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v16.11.2-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "92891890eb4730bc240213a212d392bcb869b800", |
| "elapsed_seconds": 0.024790290975943208, |
| "parent": "65d0e6520dcbcf5a708a87960c65fdcaf7e44bf3", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency myst-parser to v3", |
| "validation": null |
| }, |
| { |
| "commit": "65d0e6520dcbcf5a708a87960c65fdcaf7e44bf3", |
| "elapsed_seconds": 0.023958041798323393, |
| "parent": "8ea10c360175453c721ad8e27386e642c2b68d88", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "8ea10c360175453c721ad8e27386e642c2b68d88", |
| "elapsed_seconds": 0.026582499966025352, |
| "parent": "1f0343c1154ca8ae5b1f61de1db2343a2ad652ec", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency jinja2 to v3.1.4 [security]", |
| "validation": null |
| }, |
| { |
| "commit": "1f0343c1154ca8ae5b1f61de1db2343a2ad652ec", |
| "elapsed_seconds": 0.02697716699913144, |
| "parent": "683ce723352cc09e1a4b65db28be981ae6bb9f71", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "683ce723352cc09e1a4b65db28be981ae6bb9f71", |
| "elapsed_seconds": 0.025395666947588325, |
| "parent": "1ed8d6c21d3463b2ad09eb553871042e98090ffd", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: add FAQ about conflicting parameters", |
| "validation": null |
| }, |
| { |
| "commit": "1ed8d6c21d3463b2ad09eb553871042e98090ffd", |
| "elapsed_seconds": 0.027452874928712845, |
| "parent": "d9aaa994568ad4896a1e8a0533ef0d1d2ba06bfa", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v16.11.1-ee.0", |
| "validation": null |
| }, |
| { |
| "commit": "d9aaa994568ad4896a1e8a0533ef0d1d2ba06bfa", |
| "elapsed_seconds": 0.028278375044465065, |
| "parent": "0e9f4da30cea507fcf83746008d9de2ee5a3bb9d", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs(README): tweak GitLab CI usage docs", |
| "validation": null |
| }, |
| { |
| "commit": "0e9f4da30cea507fcf83746008d9de2ee5a3bb9d", |
| "elapsed_seconds": 0.02864379179663956, |
| "parent": "48a6705558c5ab6fb08c62a18de350a5985099f8", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "48a6705558c5ab6fb08c62a18de350a5985099f8", |
| "elapsed_seconds": 0.028468249831348658, |
| "parent": "2d1f4872390df10174f865f7a935bc73f7865fec", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test: remove approve step", |
| "validation": null |
| }, |
| { |
| "commit": "2d1f4872390df10174f865f7a935bc73f7865fec", |
| "elapsed_seconds": 0.025578541914001107, |
| "parent": "06266ea5966c601c035ad8ce5840729e5f9baa57", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: how to run smoke tests", |
| "validation": null |
| }, |
| { |
| "commit": "06266ea5966c601c035ad8ce5840729e5f9baa57", |
| "elapsed_seconds": 0.025220791110768914, |
| "parent": "4bef47301342703f87c1ce1d2920d54f9927a66a", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test: tidy up functional tests", |
| "validation": null |
| }, |
| { |
| "commit": "4bef47301342703f87c1ce1d2920d54f9927a66a", |
| "elapsed_seconds": 0.024996333988383412, |
| "parent": "b81da2e66ce385525730c089dbc2a5a85ba23287", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test: update api tests for GL 16.10", |
| "validation": null |
| }, |
| { |
| "commit": "b81da2e66ce385525730c089dbc2a5a85ba23287", |
| "elapsed_seconds": 0.026091666892170906, |
| "parent": "c64d126142cc77eae4297b8deec27bb1d68b7a13", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test(functional): enable bulk import feature flag before test", |
| "validation": null |
| }, |
| { |
| "commit": "c64d126142cc77eae4297b8deec27bb1d68b7a13", |
| "elapsed_seconds": 0.025690083159133792, |
| "parent": "f8283ae69efd86448ae60d79dd8321af3f19ba1b", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test: don't use weak passwords", |
| "validation": null |
| }, |
| { |
| "commit": "f8283ae69efd86448ae60d79dd8321af3f19ba1b", |
| "elapsed_seconds": 0.025259542046114802, |
| "parent": "ea8c4c2bc9f17f510415a697e0fb19cabff4135e", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test: update tests for gitlab 16.8 functionality", |
| "validation": null |
| }, |
| { |
| "commit": "ea8c4c2bc9f17f510415a697e0fb19cabff4135e", |
| "elapsed_seconds": 0.025760416872799397, |
| "parent": "ee013fe1579b001b4b30bae33404e827c7bdf8c1", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update gitlab/gitlab-ee docker tag to v16", |
| "validation": null |
| }, |
| { |
| "commit": "ee013fe1579b001b4b30bae33404e827c7bdf8c1", |
| "elapsed_seconds": 0.02472887490876019, |
| "parent": "57dfd1769b4e22b43dc0936aa3600cd7e78ba289", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "test(smoke): normalize all dist titles for smoke tests", |
| "validation": null |
| }, |
| { |
| "commit": "57dfd1769b4e22b43dc0936aa3600cd7e78ba289", |
| "elapsed_seconds": 0.024598750052973628, |
| "parent": "4ef94c8260e958873bb626e86d3241daa22f7ce6", |
| "reason": "excluded dependency/format/generated/revert subject", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs(objects): minor rst formatting typo", |
| "validation": null |
| }, |
| { |
| "commit": "4ef94c8260e958873bb626e86d3241daa22f7ce6", |
| "elapsed_seconds": 0.024960624985396862, |
| "parent": "c53e6954f097ed10d52b40660d2fba73c2e0e300", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "build: Add \"--no-cache-dir\" to pip commands in Dockerfile", |
| "validation": null |
| }, |
| { |
| "commit": "c53e6954f097ed10d52b40660d2fba73c2e0e300", |
| "elapsed_seconds": 0.024726208997890353, |
| "parent": "001e59675f4a417a869f813d79c298a14268b87d", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: correct rotate token example", |
| "validation": null |
| }, |
| { |
| "commit": "001e59675f4a417a869f813d79c298a14268b87d", |
| "elapsed_seconds": 0.032728082966059446, |
| "parent": "6d4bffb5aaa676d32fc892ef1ac002973bc040cb", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 14, |
| "source_paths": [ |
| "gitlab/cli.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "allow skipping initial auth calls", |
| "validation": null |
| }, |
| { |
| "commit": "6d4bffb5aaa676d32fc892ef1ac002973bc040cb", |
| "elapsed_seconds": 0.02425649994984269, |
| "parent": "d5b5fb00d8947ed9733cbb5a273e2866aecf33bf", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "docs: Note how to use the Docker image from within GitLab CI", |
| "validation": null |
| }, |
| { |
| "commit": "d5b5fb00d8947ed9733cbb5a273e2866aecf33bf", |
| "elapsed_seconds": 0.024545209016650915, |
| "parent": "db3200089ea83588ea7ad8bd5a7175d81f580630", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "db3200089ea83588ea7ad8bd5a7175d81f580630", |
| "elapsed_seconds": 0.024475791957229376, |
| "parent": "dd00bfc9c832aba0ed377573fe2e9120b296548d", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency pytest-cov to v5", |
| "validation": null |
| }, |
| { |
| "commit": "dd00bfc9c832aba0ed377573fe2e9120b296548d", |
| "elapsed_seconds": 0.03290341584943235, |
| "parent": "f6e8692cfc84b5af2eb6deec4ae1c4935b42e91c", |
| "reason": "no eligible unit-test file", |
| "source_changed_lines": 3, |
| "source_paths": [ |
| "gitlab/utils.py" |
| ], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: update `mypy` to 1.9.0 and resolve one issue", |
| "validation": null |
| }, |
| { |
| "commit": "f6e8692cfc84b5af2eb6deec4ae1c4935b42e91c", |
| "elapsed_seconds": 0.024173625046387315, |
| "parent": "14a3ffe4cc161be51a39c204350b5cd45c602335", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update dependency black to v24.3.0 [security]", |
| "validation": null |
| }, |
| { |
| "commit": "14a3ffe4cc161be51a39c204350b5cd45c602335", |
| "elapsed_seconds": 0.024092915933579206, |
| "parent": "3c4dccaf51695334a5057b85d5ff4045739d1ad1", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "3c4dccaf51695334a5057b85d5ff4045739d1ad1", |
| "elapsed_seconds": 0.024494417011737823, |
| "parent": "04c569a2130d053e35c1f2520ef8bab09f2f9651", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "04c569a2130d053e35c1f2520ef8bab09f2f9651", |
| "elapsed_seconds": 0.024477291852235794, |
| "parent": "d7235c74f8605f4abfb11eb257246864c7dcf709", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore(deps): update all non-major dependencies", |
| "validation": null |
| }, |
| { |
| "commit": "d7235c74f8605f4abfb11eb257246864c7dcf709", |
| "elapsed_seconds": 0.02406758302822709, |
| "parent": "679ddc7587d2add676fd2398cb9673bd1ca272e3", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add tox `labels` to enable running groups of environments", |
| "validation": null |
| }, |
| { |
| "commit": "679ddc7587d2add676fd2398cb9673bd1ca272e3", |
| "elapsed_seconds": 0.024188874987885356, |
| "parent": "529f1faacee46a88cb0a542306309eb835516796", |
| "reason": "no eligible production source file", |
| "source_changed_lines": 0, |
| "source_paths": [], |
| "status": "rejected", |
| "task_id": null, |
| "test_paths": [], |
| "title": "chore: add py312 & py313 to tox environment list", |
| "validation": null |
| }, |
| { |
| "commit": "529f1faacee46a88cb0a542306309eb835516796", |
| "elapsed_seconds": 8.403202666901052, |
| "parent": "e11d889cd19ec1555b2bbee15355a8cdfad61d5f", |
| "reason": null, |
| "source_changed_lines": 3, |
| "source_paths": [ |
| "gitlab/utils.py" |
| ], |
| "status": "selected", |
| "task_id": "TASK_S2_R003_020", |
| "test_paths": [ |
| "tests/unit/test_gitlab_http_methods.py" |
| ], |
| "title": "user.warn() to show correct filename of issue", |
| "validation": { |
| "commands": [ |
| "python -m pytest -q tests/unit" |
| ], |
| "elapsed_seconds": 8.370321084046736, |
| "gold": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 2.6732531669549644, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "........................................................................ [ 6%]\n........................................................................ [ 13%]\n........................................................................ [ 20%]\n........................................................................ [ 27%]\n........................................................................ [ 34%]\n........................................................................ [ 41%]\n........................................................................ [ 48%]\n........................................................................ [ 55%]\n............s..s........................................................ [ 62%]\n........................................................................ [ 69%]\n...s.................................................................... [ 76%]\n........................................................................ [ 83%]\n........................................................................ [ 90%]\n........................................................................ [ 97%]\n............................. [100%]\n1034 passed, 3 skipped in 2.48s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 2.7459403339307755, |
| "returncode": 1, |
| "stderr": "", |
| "stdout": "........................................................................ [ 6%]\n........................................................................ [ 13%]\n........................................................................ [ 20%]\n........................................................................ [ 27%]\n........................................................................ [ 34%]\n........................................................................ [ 41%]\n........................................................................ [ 48%]\n........................................................................ [ 55%]\n............s..s........................................................ [ 62%]\n........................................................................ [ 69%]\n...s.................................................................... [ 76%]\n........................................................................ [ 83%]\n........................................................................ [ 90%]\n..........................................F............................. [ 97%]\n............................. [100%]\n=================================== FAILURES ===================================\n_____________________ test_list_request_pagination_warning _____________________\n\ngl = <gitlab.client.Gitlab object at 0x115cd3210>\n\n @responses.activate\n def test_list_request_pagination_warning(gl):\n responses.add(**large_list_response)\n \n with warnings.catch_warnings(record=True) as caught_warnings:\n result = gl.http_list(\"/projects\", iterator=False)\n assert len(caught_warnings) == 1\n warning = caught_warnings[0]\n assert isinstance(warning.message, UserWarning)\n message = str(warning.message)\n assert \"Calling a `list()` method\" in message\n assert \"python-gitlab.readthedocs.io\" in message\n> assert __file__ in message\nE AssertionError: assert '/private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-wz1rjcxg/tree/tests/unit/test_gitlab_http_methods.py' in 'Calling a `list()` method without specifying `get_all=True` or `iterator=True` will return a maximum of 20 items. You...ython-gitlab: /private/var/folders/mv/1101q6r16619mvm7kc7f3lt80000gn/T/study2-r003-wz1rjcxg/tree/gitlab/client.py:955)'\n\ntests/unit/test_gitlab_http_methods.py:603: AssertionError\n=========================== short test summary info ============================\nFAILED tests/unit/test_gitlab_http_methods.py::test_list_request_pagination_warning\n1 failed, 1033 passed, 3 skipped in 2.56s\n", |
| "timed_out": false |
| } |
| ], |
| "hidden_apply": { |
| "elapsed_seconds": 0.009812166914343834, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "original": [ |
| { |
| "command": "python -m pytest -q tests/unit", |
| "elapsed_seconds": 2.8897526250220835, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "........................................................................ [ 6%]\n........................................................................ [ 13%]\n........................................................................ [ 20%]\n........................................................................ [ 27%]\n........................................................................ [ 34%]\n........................................................................ [ 41%]\n........................................................................ [ 48%]\n........................................................................ [ 55%]\n............s..s........................................................ [ 62%]\n........................................................................ [ 69%]\n...s.................................................................... [ 76%]\n........................................................................ [ 83%]\n........................................................................ [ 90%]\n........................................................................ [ 97%]\n............................. [100%]\n1034 passed, 3 skipped in 2.69s\n", |
| "timed_out": false |
| } |
| ], |
| "reason": null, |
| "source_apply": { |
| "elapsed_seconds": 0.00968533311970532, |
| "returncode": 0, |
| "stderr": "", |
| "stdout": "" |
| }, |
| "valid": true |
| } |
| } |
| ], |
| "complete": true, |
| "repository": { |
| "language": "python", |
| "name": "python_gitlab", |
| "path": "/Users/mandeepsidhu/Desktop/code/pending-work-research/agent-harness/data/repos/python-gitlab", |
| "pinned_head": "f62dda7fa44e3bc46f03bd6402eba3f641f365eb", |
| "repository_id": "R003", |
| "repository_url": "https://gitlab.com/python-gitlab/python-gitlab.git" |
| }, |
| "schema_version": 1, |
| "selected_count": 20, |
| "selected_task_ids": [ |
| "TASK_S2_R003_001", |
| "TASK_S2_R003_002", |
| "TASK_S2_R003_003", |
| "TASK_S2_R003_004", |
| "TASK_S2_R003_005", |
| "TASK_S2_R003_006", |
| "TASK_S2_R003_007", |
| "TASK_S2_R003_008", |
| "TASK_S2_R003_009", |
| "TASK_S2_R003_010", |
| "TASK_S2_R003_011", |
| "TASK_S2_R003_012", |
| "TASK_S2_R003_013", |
| "TASK_S2_R003_014", |
| "TASK_S2_R003_015", |
| "TASK_S2_R003_016", |
| "TASK_S2_R003_017", |
| "TASK_S2_R003_018", |
| "TASK_S2_R003_019", |
| "TASK_S2_R003_020" |
| ], |
| "selection_policy": { |
| "max_source_changed_lines": 400, |
| "max_source_files": 8, |
| "max_test_files": 8, |
| "since": "2023-01-01", |
| "target": 20, |
| "test_timeout_seconds": 240 |
| } |
| } |
|
|