diff --git a/GITLAB_KAS_VERSION b/GITLAB_KAS_VERSION index 9c633185392..6b4e9cceedf 100644 --- a/GITLAB_KAS_VERSION +++ b/GITLAB_KAS_VERSION @@ -1 +1 @@ -0c1ae3861e2dfe3fcdab69d41801ea51e4dd5ad8 +230644bd98e36d9ac9b15a6933629eae3956e697 diff --git a/app/services/files/base_service.rb b/app/services/files/base_service.rb index af681e842e8..fb5e2a4c0cb 100644 --- a/app/services/files/base_service.rb +++ b/app/services/files/base_service.rb @@ -42,6 +42,12 @@ module Files private + def validate! + super + + raise_error(_('You must provide a commit message')) if @commit_message.to_s.empty? + end + def get_last_commit_for_path(ref:, path:) Gitlab::Git::Commit.last_for_path(@start_project.repository, ref, path, literal_pathspec: true) end diff --git a/app/services/packages/debian/extract_metadata_service.rb b/app/services/packages/debian/extract_metadata_service.rb index 91a4a0d67c8..43a73a7df1b 100644 --- a/app/services/packages/debian/extract_metadata_service.rb +++ b/app/services/packages/debian/extract_metadata_service.rb @@ -7,12 +7,17 @@ module Packages ExtractionError = Class.new(StandardError) + # 10MB limit: accommodates largest metadata files + # https://gitlab.com/gitlab-org/gitlab/-/issues/385913#note_2546795745 + MAX_METADATA_FILE_SIZE = 10.megabytes.freeze + def initialize(package_file) @package_file = package_file end def execute raise ExtractionError, 'invalid package file' unless valid_package_file? + raise ExtractionError, 'invalid package file' if file_type_meta? && invalid_metadata_file_size? if file_type == :unsupported raise ExtractionError, "unsupported file extension for file #{package_file.file_name}" @@ -29,6 +34,10 @@ module Packages package_file && package_file.package&.debian? && !package_file.file.empty_size? end + def invalid_metadata_file_size? + package_file.size > MAX_METADATA_FILE_SIZE + end + def file_type_basic %i[dsc deb udeb buildinfo changes ddeb].each do |format| return format if package_file.file_name.end_with?(".#{format}") diff --git a/doc/ci/runners/configure_runners.md b/doc/ci/runners/configure_runners.md index 0f8439e2061..a7250beca1a 100644 --- a/doc/ci/runners/configure_runners.md +++ b/doc/ci/runners/configure_runners.md @@ -1067,7 +1067,7 @@ The artifact provenance metadata is generated in the [in-toto v0.1 Statement](https://github.com/in-toto/attestation/tree/v0.1.0/spec#statement) format. It contains a provenance predicate generated in the [SLSA 1.0 Provenance](https://slsa.dev/spec/v1.0/provenance) format. -The following fields are populated by default: +These fields are populated by default: | Field | Value | |-------------------------------------------------------------------|-------| @@ -1091,9 +1091,7 @@ The following fields are populated by default: | `predicate.runDetails.metadata.startedOn` | The time when the build was started. This field is `RFC3339` formatted. | | `predicate.runDetails.metadata.finishedOn` | The time when the build ended. Because metadata generation happens during the build, this time is slightly earlier than the one reported in GitLab. This field is `RFC3339` formatted. | -### Example provenance statement - -The following code contains an example provenance statement: +A provenance statement should look similar to this example: ```json { @@ -1127,7 +1125,7 @@ The following code contains an example provenance statement: "CI_COMMIT_MESSAGE": "", [... additional environmental variables ...] "entryPoint": "build-job", - "source": "https://gitlab.com/gitlab-org/secure/tests/fcatteau/test-runner-generated-slsa-statement" + "source": "https://gitlab.com/my-group/my-project/test-runner-generated-slsa-statement" }, "internalParameters": { "architecture": "amd64", @@ -1137,7 +1135,7 @@ The following code contains an example provenance statement: }, "resolvedDependencies": [ { - "uri": "https://gitlab.com/gitlab-org/secure/tests/fcatteau/test-runner-generated-slsa-statement", + "uri": "https://gitlab.com/my-group/my-project/test-runner-generated-slsa-statement", "digest": { "sha256": "bdd2ecda9ef57b129c88617a0215afc9fb223521" } @@ -1146,7 +1144,7 @@ The following code contains an example provenance statement: }, "runDetails": { "builder": { - "id": "https://gitlab.com/gitlab-org/secure/tests/fcatteau/test-runner-generated-slsa-statement/-/runners/12270857", + "id": "https://gitlab.com/my-group/my-project/test-runner-generated-slsa-statement/-/runners/12270857", "version": { "gitlab-runner": "2147fb44" } diff --git a/doc/ci/testing/unit_test_reports.md b/doc/ci/testing/unit_test_reports.md index 12cb6fab936..c57f083ebab 100644 --- a/doc/ci/testing/unit_test_reports.md +++ b/doc/ci/testing/unit_test_reports.md @@ -25,14 +25,15 @@ Use unit test reports when you want to: Unit test reports require the JUnit XML format and do not affect job status. To make a job fail when tests fail, your job's [script](../yaml/_index.md#script) must exit with a non-zero status. -GitLab Runner uploads your test results in [JUnit XML format](https://www.ibm.com/docs/en/developer-for-zos/16.0?topic=formats-junit-xml-format) -as [artifacts](../yaml/artifacts_reports.md#artifactsreportsjunit). +GitLab Runner uploads your test results in JUnit XML format as [artifacts](../yaml/artifacts_reports.md#artifactsreportsjunit). When you go to a merge request, your test results are compared between the source branch (head) and target branch (base) to show what changed. ## File format and size limits Unit test reports must use JUnit XML format with specific requirements to ensure proper parsing and display. +### File requirements + Your test report files must: - Use JUnit XML format with `.xml` file extension. @@ -43,6 +44,51 @@ If you have duplicate test names, only the first test is used and others with th For test case limits, see [Maximum test cases per unit test report](../../user/gitlab_com/_index.md#cicd). +### JUnit XML format specification + +GitLab parses the following elements and attributes from your JUnit XML files: + +| XML Element | XML Attribute | Description | +| ------------ | --------------- | ----------- | +| `testsuite` | `name` | Test suite name (parsed but not displayed in UI) | +| `testcase` | `classname` | Test class or category name (used as the suite name) | +| `testcase` | `name` | Individual test name | +| `testcase` | `file` | File path where the test is defined | +| `testcase` | `time` | Test execution time in seconds | +| `failure` | Element content | Failure message and stack trace | +| `error` | Element content | Error message and stack trace | +| `skipped` | Element content | Reason for skipping the test | +| `system-out` | Element content | System output and attachment tags (only parsed from `testcase` elements) | +| `system-err` | Element content | System error output (only parsed from `testcase` elements) | + +{{< alert type="note" >}} + +The `testcase classname` attribute is used as the suite name, not the `testsuite name` attribute. + +{{< /alert >}} + +#### XML structure example + +```xml + + + + Expected authentication to fail + [[ATTACHMENT|screenshots/failure.png]] + + + +``` + +This XML displays in GitLab as: + +- Suite: `LoginTest` (from `testcase classname`) +- Name: `test_invalid_password` (from `testcase name`) +- File: `spec/auth_spec.rb` (from `testcase file`) +- Time: `0.23s` (from `testcase time`) +- Screenshot: Available in test details dialog (from `testcase system-out`) +- Not displayed: "Authentication Tests" (from `testsuite name`) + ## Test result types Test results are compared between the merge request's source and target branches to show what changed: diff --git a/doc/user/permissions.md b/doc/user/permissions.md index fbda60ef5b3..e2f2027d25b 100644 --- a/doc/user/permissions.md +++ b/doc/user/permissions.md @@ -160,7 +160,7 @@ Group permissions for [group features](group/_index.md): | Configure project templates | | | | | | ✓ | | | Configure [SAML SSO](group/saml_sso/_index.md) | | | | | | ✓ | Does not apply to subgroups | | Disable notification emails | | | | | | ✓ | | -| Import [project](project/settings/import_export.md) | | | | | | ✓ | | +| Import [project](project/settings/import_export.md) | | | | | ✓ | ✓ | | ### Project planning group permissions diff --git a/locale/gitlab.pot b/locale/gitlab.pot index 82e794b03a5..bcab8b1f726 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -71826,6 +71826,9 @@ msgstr "" msgid "You must have maintainer access to force delete a lock" msgstr "" +msgid "You must provide a commit message" +msgstr "" + msgid "You must provide a file path" msgstr "" diff --git a/package.json b/package.json index 1c2d6f2c2bf..aae08753870 100644 --- a/package.json +++ b/package.json @@ -74,7 +74,7 @@ "@rails/actioncable": "7.1.501", "@rails/ujs": "7.1.501", "@rollup/plugin-graphql": "^2.0.5", - "@sentry/browser": "9.27.0", + "@sentry/browser": "9.30.0", "@snowplow/browser-plugin-client-hints": "^3.24.2", "@snowplow/browser-plugin-form-tracking": "^3.24.2", "@snowplow/browser-plugin-ga-cookies": "^3.24.2", diff --git a/scripts/frontend/quarantined_vue3_specs.txt b/scripts/frontend/quarantined_vue3_specs.txt index d39cd1f0246..cc6f65abecb 100644 --- a/scripts/frontend/quarantined_vue3_specs.txt +++ b/scripts/frontend/quarantined_vue3_specs.txt @@ -124,7 +124,6 @@ spec/frontend/packages_and_registries/package_registry/components/details/pypi_i spec/frontend/packages_and_registries/settings/group/components/forwarding_settings_spec.js spec/frontend/packages_and_registries/settings/project/settings/components/cleanup_image_tags_spec.js spec/frontend/packages_and_registries/settings/project/settings/components/container_expiration_policy_spec.js -spec/frontend/pages/projects/pipeline_schedules/shared/components/interval_pattern_input_spec.js spec/frontend/wikis/components/delete_wiki_modal_spec.js spec/frontend/performance_bar/index_spec.js spec/frontend/pipeline_wizard/components/step_spec.js diff --git a/spec/controllers/projects/blob_controller_spec.rb b/spec/controllers/projects/blob_controller_spec.rb index 7214e6d826f..6fcdda66cb5 100644 --- a/spec/controllers/projects/blob_controller_spec.rb +++ b/spec/controllers/projects/blob_controller_spec.rb @@ -665,6 +665,20 @@ RSpec.describe Projects::BlobController, feature_category: :source_code_manageme expect(response).to redirect_to(project_blob_path(project, 'master/docs/EXAMPLE_FILE')) end + context 'when commit message is missing' do + let(:default_params) { super().merge(commit_message: '') } + + render_views + + it 'renders an error message' do + request + + expect(response).to be_successful + expect(response).to render_template(:new) + expect(response.body).to include('You must provide a commit message') + end + end + context 'when file_name is missing' do let(:default_params) do { diff --git a/spec/frontend/pages/projects/pipeline_schedules/shared/components/interval_pattern_input_spec.js b/spec/frontend/pages/projects/pipeline_schedules/shared/components/interval_pattern_input_spec.js index ee2b7c19b2c..6e288e0a4f7 100644 --- a/spec/frontend/pages/projects/pipeline_schedules/shared/components/interval_pattern_input_spec.js +++ b/spec/frontend/pages/projects/pipeline_schedules/shared/components/interval_pattern_input_spec.js @@ -239,7 +239,10 @@ describe('Interval Pattern Input Component', () => { describe('cronValue event', () => { it('emits cronValue event with cron value', async () => { - createWrapper(); + // Provide initial value to prevent immediate watch trigger + createWrapper({ + initialCronInterval: '0 * * * *', + }); findCustomInput().element.value = '0 16 * * *'; findCustomInput().trigger('input'); diff --git a/spec/graphql/mutations/commits/create_spec.rb b/spec/graphql/mutations/commits/create_spec.rb index 8823a0824b3..e8089cd8116 100644 --- a/spec/graphql/mutations/commits/create_spec.rb +++ b/spec/graphql/mutations/commits/create_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -RSpec.describe Mutations::Commits::Create do +RSpec.describe Mutations::Commits::Create, feature_category: :source_code_management do include GraphqlHelpers subject(:mutation) { described_class.new(object: nil, context: query_context, field: nil) } @@ -171,7 +171,7 @@ RSpec.describe Mutations::Commits::Create do it 'returns errors' do expect(mutated_commit).to be_nil - expect(subject[:errors].to_s).to match(/empty CommitMessage/) + expect(subject[:errors]).to include('You must provide a commit message') end end diff --git a/spec/services/files/create_service_spec.rb b/spec/services/files/create_service_spec.rb index 26f57f43120..2a249a677ff 100644 --- a/spec/services/files/create_service_spec.rb +++ b/spec/services/files/create_service_spec.rb @@ -8,12 +8,14 @@ RSpec.describe Files::CreateService, feature_category: :source_code_management d let(:user) { create(:user, :commit_email) } let(:file_content) { 'Test file content' } let(:branch_name) { project.default_branch } + let(:commit_message) { 'Update File' } let(:start_branch) { branch_name } + let(:file_path) { 'some.file' } let(:commit_params) do { file_path: file_path, - commit_message: "Update File", + commit_message: commit_message, file_content: file_content, file_content_encoding: "text", start_project: project, @@ -31,6 +33,17 @@ RSpec.describe Files::CreateService, feature_category: :source_code_management d end describe "#execute" do + context 'when commit message is missing' do + let(:commit_message) { nil } + + it 'returns an error' do + result = subject.execute + + expect(result[:status]).to eq(:error) + expect(result[:message]).to eq('You must provide a commit message') + end + end + context 'when file matches LFS filter' do let(:file_path) { 'test_file.lfs' } let(:branch_name) { 'lfs' } diff --git a/spec/services/packages/debian/extract_metadata_service_spec.rb b/spec/services/packages/debian/extract_metadata_service_spec.rb index 1983c49c6b7..360340acda4 100644 --- a/spec/services/packages/debian/extract_metadata_service_spec.rb +++ b/spec/services/packages/debian/extract_metadata_service_spec.rb @@ -103,4 +103,25 @@ RSpec.describe Packages::Debian::ExtractMetadataService, feature_category: :pack expect { subject }.to raise_error(described_class::ExtractionError, 'invalid package file') end end + + context 'with large files' do + before do + stub_const("#{described_class}::MAX_METADATA_FILE_SIZE", 1.byte) + end + + where(:ext, :error) do + :dsc | true + :deb | false + end + + with_them do + let(:package_file) { build(:debian_package_file, ext) } + + if params[:error] + it { expect { subject }.to raise_error(described_class::ExtractionError, 'invalid package file') } + else + it { expect { subject }.not_to raise_error } + end + end + end end diff --git a/vendor/gems/microsoft_graph_mailer/Gemfile.lock b/vendor/gems/microsoft_graph_mailer/Gemfile.lock index d6bb01eba73..567adc88ff6 100644 --- a/vendor/gems/microsoft_graph_mailer/Gemfile.lock +++ b/vendor/gems/microsoft_graph_mailer/Gemfile.lock @@ -125,7 +125,7 @@ GEM digest net-protocol timeout - nio4r (2.5.8) + nio4r (2.7.4) nokogiri (1.13.8) mini_portile2 (~> 2.8.0) racc (~> 1.4) @@ -213,5 +213,79 @@ DEPENDENCIES rspec (~> 3.11.0) webmock (~> 3.18.1) +CHECKSUMS + actioncable (7.0.4) sha256=c7d67d18ddeb06d198ee0ccfcff3bcf888d42b5255e6e2b45f0dce557a2639c0 + actionmailbox (7.0.4) sha256=2af32de27ec2c7699425385f5f4ff4e66e2a7ec856179ade9734700bdec6784f + actionmailer (7.0.4) sha256=f44ce4b348d77996170cc4ab6f49943073fd9ab43a4abb9a0baf092c53e34e86 + actionpack (7.0.4) sha256=355eb683d2b7913ce84ffd1aea4e292556d676e112a392508d5080a193b5002e + actiontext (7.0.4) sha256=0d5cdd6dd4b59980dc06f99679964c0f72e6a48ce44dd8e3f79b45a959029813 + actionview (7.0.4) sha256=45e622b549304c986210064fd3ae6601e04c65f936901bcc4d0aacfcfa6ffd1b + activejob (7.0.4) sha256=427815775d6f93bd33e6a21a67dbadb59a7a81d00b22153d4c082e9b9d3260c5 + activemodel (7.0.4) sha256=73e455768c206586cecb5aa5e157d6c299eebd1e704ae8fde1a0bbf7e6ee4a73 + activerecord (7.0.4) sha256=8406be2e6aa888de6066caa1a2722db5e3ed6dcf3313c8fd2cbd042bd0f0e51e + activestorage (7.0.4) sha256=be0554ad49883028844c8456647ab0363c47b528ab51244a5a752db139a4bfa7 + activesupport (7.0.4) sha256=a0612ec7486de58fe2459d76f63b0d744856af5cb0170a1a12553b1247f86aa0 + addressable (2.8.1) sha256=bc724a176ef02118c8a3ed6b5c04c39cf59209607ffcce77b91d0261dbadedfa + builder (3.2.4) sha256=99caf08af60c8d7f3a6b004029c4c3c0bdaebced6c949165fe98f1db27fbbc10 + concurrent-ruby (1.1.10) sha256=244cb1ca0d91ec2c15ca2209507c39fb163336994428e16fbd3f465c87bd8e68 + crack (0.4.5) sha256=798416fb29b8c9f655d139d5559169b39c4a0a3b8f8f39b7f670eec1af9b21b3 + crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d + debug (1.6.2) sha256=098487b1166b816052a72447eeb382085b49108de19f8d3dde5c33094ce06687 + diff-lcs (1.5.0) sha256=49b934001c8c6aedb37ba19daec5c634da27b318a7a3c654ae979d6ba1929b67 + digest (3.1.0) sha256=69cc7c26adc807f7073e8fd02b9e1a772ead93c3b8290ee58142f8f5fafe7c03 + erubi (1.11.0) sha256=fda72d577feaf3bdcd646d33fa630be5f92f48e179a9278e4175a9cec20e7f85 + faraday (2.5.2) sha256=bd0e2f2ad04bb5d94baea75cc46cacae7cef046a261b9d2dfd1ebb2dd044d8a8 + faraday-net_http (3.0.0) sha256=7ccb3a1744fc32a53fc52d79b1b46406f93ad4fb060962f245aa15483fbd2c7a + globalid (1.0.0) sha256=1253641b1dc3392721c964351773755d75135d3d3c5cc65d88b0a3880a60bed8 + hashdiff (1.0.1) sha256=2cd4d04f5080314ecc8403c4e2e00dbaa282dff395e2d031bc16c8d501bdd6db + hashie (5.0.0) sha256=9d6c4e51f2a36d4616cbc8a322d619a162d8f42815a792596039fc95595603da + i18n (1.12.0) sha256=91e3cc1b97616d308707eedee413d82ee021d751c918661fb82152793e64aced + io-console (0.5.11) sha256=7e2418376fd185ad66e7aee2c58c207e9be0f2197aa89bc4c89931995cee3365 + irb (1.4.1) sha256=4a6698d9ab9de30ffd2def6fb17327f5d0fc089ace62337eff95396f379bf0a8 + jwt (2.5.0) sha256=b835fe55287572e1f65128d6c12d3ff7402bb4652c4565bf3ecdcb974db7954d + loofah (2.19.0) sha256=302791371f473611e342f9e469e7f2fbf1155bb1b3a978a83ac7df625298feba + mail (2.7.1) sha256=ec2a3d489f7510b90d8eaa3f6abaad7038cf1d663cdf8ee66d0214a0bdf99c03 + marcel (1.0.2) sha256=a013b677ef46cbcb49fd5c59b3d35803d2ee04dd75d8bfdc43533fc5a31f7e4e + method_source (1.0.0) sha256=d779455a2b5666a079ce58577bfad8534f571af7cec8107f4dce328f0981dede + microsoft_graph_mailer (0.1.0) + mini_mime (1.1.2) sha256=a54aec0cc7438a03a850adb00daca2bdb60747f839e28186994df057cea87151 + mini_portile2 (2.8.0) sha256=1e06b286ff19b73cfc9193cb3dd2bd80416f8262443564b25b23baea74a05765 + minitest (5.16.3) sha256=60f81ad96ca5518e1457bd29eb826db60f86fbbdf8c05eac63b4824ef1f52614 + multi_xml (0.6.0) sha256=d24393cf958adb226db884b976b007914a89c53ad88718e25679d7008823ad52 + net-imap (0.2.3) sha256=76d58f0c4c17503636260cb5177000011205685a797a33692353a85ea74f87e6 + net-pop (0.1.1) sha256=ab27bb59b03dd44579be3f4190ebefbb075317763960e1eac70cb845fba09aea + net-protocol (0.1.3) sha256=ad43e2be965ede676683c047b2c3d76762aa49a764779d98312a10da04622c14 + net-smtp (0.3.1) sha256=3af115c64d7aace0aa41f63a77f8e40707fd842a2de4bb24ebced6b4dd4465e8 + nio4r (2.7.4) sha256=d95dee68e0bb251b8ff90ac3423a511e3b784124e5db7ff5f4813a220ae73ca9 + nokogiri (1.13.8) sha256=79c279298b2f22fd4e760f49990c7930436bac1b1cfeff7bacff192f30edea3c + oauth2 (2.0.8) sha256=cfa6448bac70764041deac27051e36adb7a1d203cf46f589d36018c8bf6f6700 + public_suffix (5.0.0) sha256=26ee4fbce33ada25eb117ac71f2c24bf4d8b3414ab6b34f05b4708a3e90f1c6b + racc (1.6.0) sha256=2dede3b136eeabd0f7b8c9356b958b3d743c00158e2615acab431af141354551 + rack (2.2.4) sha256=ea2232b638cbd919129c8c8ad8012ecaccc09f848152a7e705d2139d0137ac2b + rack-test (2.0.2) sha256=adadd0e957f63a34199a9fdf905a920a0b0a50795735095b4ac4bd3c13385466 + rails (7.0.4) sha256=e1d2dabe57de44b4baee978426aba811858c5e9ad0e258fc09157361937f5f31 + rails-dom-testing (2.0.3) sha256=b140c4f39f6e609c8113137b9a60dfc2ecb89864e496f87f23a68b3b8f12d8d1 + rails-html-sanitizer (1.4.3) sha256=2ebba6ad9a0b100f79fda853a46851e7664febe1728223f9734281e0d55940d6 + railties (7.0.4) sha256=5215a3b0a6510c2332d50476b46df8008aa1efaef8a4094e6f5a74f521a9cffa + rake (13.0.6) sha256=5ce4bf5037b4196c24ac62834d8db1ce175470391026bd9e557d669beeb19097 + reline (0.3.1) sha256=b101d93607bf7564657f082f68abfa19ae939d14a709eff89be048eae2d7f4c7 + rexml (3.2.5) sha256=a33c3bf95fda7983ec7f05054f3a985af41dbc25a0339843bd2479e93cabb123 + rspec (3.11.0) sha256=8907f32e5c3095724e54c143e9cfc4df37079be349343dab9029becdb259bea5 + rspec-core (3.11.0) sha256=46317850396fea47e6793dd5a7606c0816aa38f5149f4cd5de308495b89b1085 + rspec-expectations (3.11.1) sha256=6c0dbc560a4aea8e058e3dc2633657725d9001d17ba01eb1582122a3ccfc2b50 + rspec-mocks (3.11.1) sha256=5537dc069afabcea5cbc199a1432a2772ba3a465f3233f40d04695daba7c6a1f + rspec-support (3.11.1) sha256=f85f276a37e096b7bf6f308a96c59ba0a5398907f04942cede66cabc598c01b0 + ruby2_keywords (0.0.5) sha256=ffd13740c573b7301cf7a2e61fc857b2a8e3d3aff32545d6f8300d8bae10e3ef + snaky_hash (2.0.0) sha256=fe8b2e39e8ff69320f7812af73ea06401579e29ff1734a7009567391600687de + strscan (3.0.4) sha256=69aa3eff52435055fa8a409f839681edf1143debf80065899cdc97a64a053702 + thor (1.2.1) sha256=b1752153dc9c6b8d3fcaa665e9e1a00a3e73f28da5e238b81c404502e539d446 + timeout (0.3.0) sha256=628dbd24e31aa5f493349336614b2445e6f60125342a5bb81a720064d6489e01 + tzinfo (2.0.5) sha256=c5352fd901544d396745d013f46a04ae2ed081ce806d942099825b7c2b09a167 + version_gem (1.1.0) sha256=6b009518020db57f51ec7b410213fae2bf692baea9f1b51770db97fbc93d9a80 + webmock (3.18.1) sha256=54c955df4ae4bec6181dd266eeec632a1808288c633f9551d81bafb53921d2d7 + websocket-driver (0.7.5) sha256=a280c3f44dcbb0323d58bc78dc49350c05d589ab7d13267fcff08d9d5ae76b28 + websocket-extensions (0.1.5) sha256=1c6ba63092cda343eb53fc657110c71c754c56484aad42578495227d717a8241 + zeitwerk (2.6.0) sha256=6cb2ee4645c6e597640d6f2d8cc91a59a6699ab38896a5c3fac3eefeb5c84d76 + BUNDLED WITH - 2.3.22 + 2.6.9 diff --git a/yarn.lock b/yarn.lock index cad236f75e6..3565c57e0a6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1433,7 +1433,7 @@ resolved "https://registry.yarnpkg.com/@gitlab/fonts/-/fonts-1.3.0.tgz#df89c1bb6714e4a8a5d3272568aa4de7fb337267" integrity sha512-DoMUIN3DqjEn7wvcxBg/b7Ite5fTdF5EmuOZoBRo2j0UBGweDXmNBi+9HrTZs4cBU660dOxcf1hATFcG3npbPg== -"@gitlab/noop@^1.0.1": +"@gitlab/noop@^1.0.1", jackspeak@^3.1.2, "jackspeak@npm:@gitlab/noop@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@gitlab/noop/-/noop-1.0.1.tgz#71a831146ee02732b4a61d2d3c11204564753454" integrity sha512-s++4wjMYeDvBp9IO59DBrWjy8SE/gFkjTDO5ck2W0S6Vv7OlqgErwL7pHngAnrSmTJAzyUG8wHGqo0ViS4jn5Q== @@ -2586,51 +2586,51 @@ resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== -"@sentry-internal/browser-utils@9.27.0": - version "9.27.0" - resolved "https://registry.yarnpkg.com/@sentry-internal/browser-utils/-/browser-utils-9.27.0.tgz#1860a9925aadb700fc273d59d4d6e7083408f765" - integrity sha512-SJa7f6Ct1BzP8rWEomnshSGN1CmT+axNKvT+StrbFPD6AyHnYfFLJpKgc2iToIJHB/pmeuOI9dUwqtzVx+5nSw== +"@sentry-internal/browser-utils@9.30.0": + version "9.30.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/browser-utils/-/browser-utils-9.30.0.tgz#4e52ba2b415a338092bf417c8d515adaf265249a" + integrity sha512-e6ZlN8oWheCB0YJSGlBNUlh6UPnY5Ecj1P+/cgeKBhNm7c3bIx4J50485hB8LQsu+b7Q11L2o/wucZ//Pb6FCg== dependencies: - "@sentry/core" "9.27.0" + "@sentry/core" "9.30.0" -"@sentry-internal/feedback@9.27.0": - version "9.27.0" - resolved "https://registry.yarnpkg.com/@sentry-internal/feedback/-/feedback-9.27.0.tgz#ec9311033b401f4f89304c47ffde2de942a281ef" - integrity sha512-e7L8eG0y63RulN352lmafoCCfQGg4jLVT8YLx6096eWu/YKLkgmVpgi8livsT5WREnH+HB+iFSrejOwK7cRkhw== +"@sentry-internal/feedback@9.30.0": + version "9.30.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/feedback/-/feedback-9.30.0.tgz#dfececf6aefce951ce50028f2ac25743a3bbdd63" + integrity sha512-qAZ7xxLqZM7GlEvmSUmTHnoueg+fc7esMQD4vH8pS7HI3n9C5MjGn3HHlndRpD8lL7iUUQ0TPZQgU6McbzMDyw== dependencies: - "@sentry/core" "9.27.0" + "@sentry/core" "9.30.0" -"@sentry-internal/replay-canvas@9.27.0": - version "9.27.0" - resolved "https://registry.yarnpkg.com/@sentry-internal/replay-canvas/-/replay-canvas-9.27.0.tgz#d18e95ace5c6bd593935cacea1980b9e640b3afe" - integrity sha512-44rVSt3LCH6qePYRQrl4WUBwnkOk9dzinmnKmuwRksEdDOkVq5KBRhi/IDr7omwSpX8C+KrX5alfKhOx1cP0gQ== +"@sentry-internal/replay-canvas@9.30.0": + version "9.30.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/replay-canvas/-/replay-canvas-9.30.0.tgz#10f23343aad979265b3a0cb470773140d01f6dea" + integrity sha512-I4MxS27rfV7vnOU29L80y4baZ4I1XqpnYvC/yLN7C17nA8eDCufQ8WVomli41y8JETnfcxlm68z7CS0sO4RCSA== dependencies: - "@sentry-internal/replay" "9.27.0" - "@sentry/core" "9.27.0" + "@sentry-internal/replay" "9.30.0" + "@sentry/core" "9.30.0" -"@sentry-internal/replay@9.27.0": - version "9.27.0" - resolved "https://registry.yarnpkg.com/@sentry-internal/replay/-/replay-9.27.0.tgz#e357d45a6fc2b80ac312798cc5b1b758c5ca9c66" - integrity sha512-n2kO1wOfCG7GxkMAqbYYkpgTqJM5tuVLdp0JuNCqTOLTXWvw6svWGaYKlYpKUgsK9X/GDzJYSXZmfe+Dbg+FJQ== +"@sentry-internal/replay@9.30.0": + version "9.30.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/replay/-/replay-9.30.0.tgz#0f9ac9a44ac52f71f06f3226e4dfa96ce0d1ef41" + integrity sha512-+6wkqQGLJuFUzvGRzbh3iIhFGyxQx/Oxc0ODDKmz9ag2xYRjCYb3UUQXmQX9navAF0HXUsq8ajoJPm2L1ZyWVg== dependencies: - "@sentry-internal/browser-utils" "9.27.0" - "@sentry/core" "9.27.0" + "@sentry-internal/browser-utils" "9.30.0" + "@sentry/core" "9.30.0" -"@sentry/browser@9.27.0": - version "9.27.0" - resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-9.27.0.tgz#5aa87a34600aa7ee19e29d2295266c18a32d7bc7" - integrity sha512-geR3lhRJOmUQqi1WgovLSYcD/f66zYnctdnDEa7j1BW2XIB1nlTJn0mpYyAHghXKkUN/pBpp1Z+Jk0XlVwFYVg== +"@sentry/browser@9.30.0": + version "9.30.0" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-9.30.0.tgz#d8c442cbc6fdd31cc1f52f3dc0f47c05fa969fa4" + integrity sha512-sRyW6A9nIieTTI26MYXk1DmWEhmphTjZevusNWla+vvUigCmSjuH+xZw19w43OyvF3bu261Skypnm/mAalOTwg== dependencies: - "@sentry-internal/browser-utils" "9.27.0" - "@sentry-internal/feedback" "9.27.0" - "@sentry-internal/replay" "9.27.0" - "@sentry-internal/replay-canvas" "9.27.0" - "@sentry/core" "9.27.0" + "@sentry-internal/browser-utils" "9.30.0" + "@sentry-internal/feedback" "9.30.0" + "@sentry-internal/replay" "9.30.0" + "@sentry-internal/replay-canvas" "9.30.0" + "@sentry/core" "9.30.0" -"@sentry/core@9.27.0": - version "9.27.0" - resolved "https://registry.yarnpkg.com/@sentry/core/-/core-9.27.0.tgz#e97d6957c243d95f9f05ccb553b937838bb500ea" - integrity sha512-Zb2SSAdWXQjTem+sVWrrAq9L6YYfxyoTwtapaE6C6qZBR5C8Uak0wcYww8StaCFH7dDA/PSW+VxOwjNXocrQHQ== +"@sentry/core@9.30.0": + version "9.30.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-9.30.0.tgz#0653ac8cc01476567564760002f7407fc3e937a8" + integrity sha512-JfEpeQ8a1qVJEb9DxpFTFy1J1gkNdlgKAPiqYGNnm4yQbnfl2Kb/iEo1if70FkiHc52H8fJwISEF90pzMm6lPg== "@sinclair/typebox@^0.27.8": version "0.27.8" @@ -9372,11 +9372,6 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jackspeak@^3.1.2, "jackspeak@npm:@gitlab/noop@1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@gitlab/noop/-/noop-1.0.1.tgz#71a831146ee02732b4a61d2d3c11204564753454" - integrity sha512-s++4wjMYeDvBp9IO59DBrWjy8SE/gFkjTDO5ck2W0S6Vv7OlqgErwL7pHngAnrSmTJAzyUG8wHGqo0ViS4jn5Q== - jed@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/jed/-/jed-1.1.1.tgz#7a549bbd9ffe1585b0cd0a191e203055bee574b4"