diff options
author | Martin Wortschack <mwortschack@gitlab.com> | 2019-04-16 21:28:52 +0200 |
---|---|---|
committer | Martin Wortschack <mwortschack@gitlab.com> | 2019-04-16 21:29:10 +0200 |
commit | 6d20be4d3e3deb1bf3b19996ceb0168a74eaa259 (patch) | |
tree | 2e6b1db1eb292283dfefed3915f9e75e012e5866 | |
parent | a67b1c17a1284daf6e7f12d3f9c4a80fae59dde9 (diff) | |
download | gitlab-ce-6d20be4d3e3deb1bf3b19996ceb0168a74eaa259.tar.gz |
Externalize several strings in /lib
- Update PO file
-rw-r--r-- | lib/file_size_validator.rb | 8 | ||||
-rw-r--r-- | lib/gitlab/access.rb | 8 | ||||
-rw-r--r-- | lib/gitlab/auth/ldap/adapter.rb | 6 | ||||
-rw-r--r-- | lib/gitlab/auth/user_access_denied_reason.rb | 8 | ||||
-rw-r--r-- | lib/gitlab/bitbucket_import/importer.rb | 4 | ||||
-rw-r--r-- | lib/gitlab/bitbucket_server_import/importer.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/config/entry/attributable.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/git/push.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/git_access.rb | 32 | ||||
-rw-r--r-- | lib/gitlab/legacy_github_import/client.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/legacy_github_import/importer.rb | 4 | ||||
-rw-r--r-- | lib/gitlab/manifest_import/manifest.rb | 6 | ||||
-rw-r--r-- | lib/gitlab/omniauth_initializer.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/quick_actions/merge_request_actions.rb | 10 | ||||
-rw-r--r-- | lib/gitlab/untrusted_regexp/ruby_syntax.rb | 4 | ||||
-rw-r--r-- | lib/gitlab/utils.rb | 4 | ||||
-rw-r--r-- | lib/mattermost/session.rb | 2 | ||||
-rw-r--r-- | locale/gitlab.pot | 150 |
18 files changed, 203 insertions, 53 deletions
diff --git a/lib/file_size_validator.rb b/lib/file_size_validator.rb index 70a145cd5bd..cc7d4a127c7 100644 --- a/lib/file_size_validator.rb +++ b/lib/file_size_validator.rb @@ -9,7 +9,7 @@ class FileSizeValidator < ActiveModel::EachValidator def initialize(options) if range = (options.delete(:in) || options.delete(:within)) - raise ArgumentError, ":in and :within must be a Range" unless range.is_a?(Range) + raise ArgumentError, _(":in and :within must be a Range") unless range.is_a?(Range) options[:minimum], options[:maximum] = range.begin, range.end options[:maximum] -= 1 if range.exclude_end? @@ -22,21 +22,21 @@ class FileSizeValidator < ActiveModel::EachValidator keys = CHECKS.keys & options.keys if keys.empty? - raise ArgumentError, 'Range unspecified. Specify the :within, :maximum, :minimum, or :is option.' + raise ArgumentError, _('Range unspecified. Specify the :within, :maximum, :minimum, or :is option.') end keys.each do |key| value = options[key] unless (value.is_a?(Integer) && value >= 0) || value.is_a?(Symbol) - raise ArgumentError, ":#{key} must be a nonnegative Integer or symbol" + raise ArgumentError, _(":%{key} must be a nonnegative Integer or symbol") % { key: key } end end end # rubocop: disable CodeReuse/ActiveRecord def validate_each(record, attribute, value) - raise(ArgumentError, "A CarrierWave::Uploader::Base object was expected") unless value.is_a? CarrierWave::Uploader::Base + raise(ArgumentError, _("A CarrierWave::Uploader::Base object was expected")) unless value.is_a? CarrierWave::Uploader::Base value = (options[:tokenizer] || DEFAULT_TOKENIZER).call(value) if value.is_a?(String) diff --git a/lib/gitlab/access.rb b/lib/gitlab/access.rb index 6eb08f674c2..264bd2225f4 100644 --- a/lib/gitlab/access.rb +++ b/lib/gitlab/access.rb @@ -72,10 +72,10 @@ module Gitlab def protection_options { - "Not protected: Both developers and maintainers can push new commits, force push, or delete the branch." => PROTECTION_NONE, - "Protected against pushes: Developers cannot push new commits, but are allowed to accept merge requests to the branch. Maintainers can push to the branch." => PROTECTION_DEV_CAN_MERGE, - "Partially protected: Both developers and maintainers can push new commits, but cannot force push or delete the branch." => PROTECTION_DEV_CAN_PUSH, - "Fully protected: Developers cannot push new commits, but maintainers can. No-one can force push or delete the branch." => PROTECTION_FULL + _("ProjectProtectionLevel|Not protected: Both developers and maintainers can push new commits, force push, or delete the branch.") => PROTECTION_NONE, + _("ProjectProtectionLevel|Protected against pushes: Developers cannot push new commits, but are allowed to accept merge requests to the branch. Maintainers can push to the branch.") => PROTECTION_DEV_CAN_MERGE, + _("ProjectProtectionLevel|Partially protected: Both developers and maintainers can push new commits, but cannot force push or delete the branch.") => PROTECTION_DEV_CAN_PUSH, + _("ProjectProtectionLevel|Fully protected: Developers cannot push new commits, but maintainers can. No-one can force push or delete the branch.") => PROTECTION_FULL } end diff --git a/lib/gitlab/auth/ldap/adapter.rb b/lib/gitlab/auth/ldap/adapter.rb index 15b9d5ad6e9..ba0019cb023 100644 --- a/lib/gitlab/auth/ldap/adapter.rb +++ b/lib/gitlab/auth/ldap/adapter.rb @@ -102,7 +102,7 @@ module Gitlab options[:size] = limit if limit if fields.include?('dn') - raise ArgumentError, 'It is not currently possible to search the DN and other fields at the same time.' if fields.size > 1 + raise ArgumentError, _('It is not currently possible to search the DN and other fields at the same time.') if fields.size > 1 options[:base] = value options[:scope] = Net::LDAP::SearchScope_BaseObject @@ -127,9 +127,9 @@ module Gitlab def connection_error_message(exception) if exception.is_a?(Timeout::Error) - "LDAP search timed out after #{config.timeout} seconds" + _("LDAP search timed out after %{config_timeout} seconds") % { config_timeout: config.timeout } else - "LDAP search raised exception #{exception.class}: #{exception.message}" + _("LDAP search raised exception %{exception_class}: %{exception_message}") % { exception_class: exception.class, exception_message: exception.message } end end diff --git a/lib/gitlab/auth/user_access_denied_reason.rb b/lib/gitlab/auth/user_access_denied_reason.rb index fd09fe76c02..4f37bad0604 100644 --- a/lib/gitlab/auth/user_access_denied_reason.rb +++ b/lib/gitlab/auth/user_access_denied_reason.rb @@ -10,12 +10,12 @@ module Gitlab def rejection_message case rejection_type when :internal - "This action cannot be performed by internal users" + _("This action cannot be performed by internal users") when :terms_not_accepted - "You (#{@user.to_reference}) must accept the Terms of Service in order to perform this action. "\ - "Please access GitLab from a web browser to accept these terms." + _("You (%{user_to_reference}) must accept the Terms of Service in order to perform this action. "\ + "Please access GitLab from a web browser to accept these terms.") % { user_to_reference: @user.to_reference } else - "Your account has been blocked." + _("Your account has been blocked.") end end diff --git a/lib/gitlab/bitbucket_import/importer.rb b/lib/gitlab/bitbucket_import/importer.rb index 769d3279f91..11d837888f4 100644 --- a/lib/gitlab/bitbucket_import/importer.rb +++ b/lib/gitlab/bitbucket_import/importer.rb @@ -36,7 +36,7 @@ module Gitlab return unless errors.any? project.import_state.update_column(:last_error, { - message: 'The remote data could not be fully imported.', + message: _('The remote data could not be fully imported.'), errors: errors }.to_json) end @@ -139,7 +139,7 @@ module Gitlab if label.valid? @labels[label_params[:title]] = label else - raise "Failed to create label \"#{label_params[:title]}\" for project \"#{project.full_name}\"" + raise _("Failed to create label \"%{label}\" for project \"%{project_full_name}\"") % { label: label_params[:title], project_full_name: project.full_name } end end end diff --git a/lib/gitlab/bitbucket_server_import/importer.rb b/lib/gitlab/bitbucket_server_import/importer.rb index 1d3ddeeb0f1..ef27fb23e16 100644 --- a/lib/gitlab/bitbucket_server_import/importer.rb +++ b/lib/gitlab/bitbucket_server_import/importer.rb @@ -55,7 +55,7 @@ module Gitlab return unless errors.any? project.import_state.update_column(:last_error, { - message: 'The remote data could not be fully imported.', + message: _('The remote data could not be fully imported.'), errors: errors }.to_json) end diff --git a/lib/gitlab/config/entry/attributable.rb b/lib/gitlab/config/entry/attributable.rb index 560fe63df0e..b651819a56c 100644 --- a/lib/gitlab/config/entry/attributable.rb +++ b/lib/gitlab/config/entry/attributable.rb @@ -10,7 +10,7 @@ module Gitlab def attributes(*attributes) attributes.flatten.each do |attribute| if method_defined?(attribute) - raise ArgumentError, 'Method already defined!' + raise ArgumentError, _('Method already defined!') end define_method(attribute) do diff --git a/lib/gitlab/git/push.rb b/lib/gitlab/git/push.rb index b6577ba17f1..11073a12ba3 100644 --- a/lib/gitlab/git/push.rb +++ b/lib/gitlab/git/push.rb @@ -44,7 +44,7 @@ module Gitlab def modified_paths unless branch_updated? - raise ArgumentError, 'Unable to calculate modified paths!' + raise ArgumentError, _('Unable to calculate modified paths!') end strong_memoize(:modified_paths) do diff --git a/lib/gitlab/git_access.rb b/lib/gitlab/git_access.rb index cb80ed64eff..0f014d1d6b0 100644 --- a/lib/gitlab/git_access.rb +++ b/lib/gitlab/git_access.rb @@ -17,19 +17,19 @@ module Gitlab ANY = '_any' ERROR_MESSAGES = { - upload: 'You are not allowed to upload code for this project.', - download: 'You are not allowed to download code from this project.', - auth_upload: 'You are not allowed to upload code.', - auth_download: 'You are not allowed to download code.', - deploy_key_upload: 'This deploy key does not have write access to this project.', - no_repo: 'A repository for this project does not exist yet.', - project_not_found: 'The project you were looking for could not be found.', - command_not_allowed: "The command you're trying to execute is not allowed.", - upload_pack_disabled_over_http: 'Pulling over HTTP is not allowed.', - receive_pack_disabled_over_http: 'Pushing over HTTP is not allowed.', - read_only: 'The repository is temporarily read-only. Please try again later.', - cannot_push_to_read_only: "You can't push code to a read-only GitLab instance.", - push_code: 'You are not allowed to push code to this project.' + upload: _('You are not allowed to upload code for this project.'), + download: _('You are not allowed to download code from this project.'), + auth_upload: _('You are not allowed to upload code.'), + auth_download: _('You are not allowed to download code.'), + deploy_key_upload: _('This deploy key does not have write access to this project.'), + no_repo: _('A repository for this project does not exist yet.'), + project_not_found: _('The project you were looking for could not be found.'), + command_not_allowed: _('The command you\'re trying to execute is not allowed.'), + upload_pack_disabled_over_http: _('Pulling over HTTP is not allowed.'), + receive_pack_disabled_over_http: _('Pushing over HTTP is not allowed.'), + read_only: _('The repository is temporarily read-only. Please try again later.'), + cannot_push_to_read_only: _('You can\'t push code to a read-only GitLab instance.'), + push_code: _('You are not allowed to push code to this project.') }.freeze INTERNAL_TIMEOUT = 50.seconds.freeze @@ -124,7 +124,7 @@ module Gitlab return unless actor.is_a?(Key) unless actor.valid? - raise UnauthorizedError, "Your SSH key #{actor.errors[:key].first}." + raise UnauthorizedError, _("Your SSH key %{first_actor_error}.") % { first_actor_error: actor.errors[:key].first } end end @@ -132,7 +132,7 @@ module Gitlab return if request_from_ci_build? unless protocol_allowed? - raise UnauthorizedError, "Git access over #{protocol.upcase} is not allowed" + raise UnauthorizedError, _("Git access over %{protocol} is not allowed") % { protocol: protocol.upcase } end end @@ -223,7 +223,7 @@ module Gitlab project = Projects::CreateService.new(user, project_params).execute unless project.saved? - raise ProjectCreationError, "Could not create project: #{project.errors.full_messages.join(', ')}" + raise ProjectCreationError, _("Could not create project: %{project_errors_full_messages}") % { project_errors_full_messages: project.errors.full_messages.join(', ') } end @project = project diff --git a/lib/gitlab/legacy_github_import/client.rb b/lib/gitlab/legacy_github_import/client.rb index bbdd094e33b..53a8f0b46d8 100644 --- a/lib/gitlab/legacy_github_import/client.rb +++ b/lib/gitlab/legacy_github_import/client.rb @@ -34,7 +34,7 @@ module Gitlab def client unless config raise Projects::ImportService::Error, - 'OAuth configuration for GitHub missing.' + _('OAuth configuration for GitHub missing.') end @client ||= ::OAuth2::Client.new( diff --git a/lib/gitlab/legacy_github_import/importer.rb b/lib/gitlab/legacy_github_import/importer.rb index 70b18221a66..a7aee4759e9 100644 --- a/lib/gitlab/legacy_github_import/importer.rb +++ b/lib/gitlab/legacy_github_import/importer.rb @@ -24,7 +24,7 @@ module Gitlab unless credentials raise Projects::ImportService::Error, - "Unable to find project import data credentials for project ID: #{@project.id}" + _("Unable to find project import data credentials for project ID: %{project_id}") % { project_id: @project.id } end opts = {} @@ -81,7 +81,7 @@ module Gitlab return unless errors.any? project.import_state.update_column(:last_error, { - message: 'The remote data could not be fully imported.', + message: _('The remote data could not be fully imported.'), errors: errors }.to_json) end diff --git a/lib/gitlab/manifest_import/manifest.rb b/lib/gitlab/manifest_import/manifest.rb index 7208fe5bbc5..f1252e450cf 100644 --- a/lib/gitlab/manifest_import/manifest.rb +++ b/lib/gitlab/manifest_import/manifest.rb @@ -22,7 +22,7 @@ module Gitlab @parsed_xml = Nokogiri::XML(file) { |config| config.strict } @errors = [] rescue Nokogiri::XML::SyntaxError - @errors = ['The uploaded file is not a valid XML file.'] + @errors = [_('The uploaded file is not a valid XML file.')] end def projects @@ -40,11 +40,11 @@ module Gitlab return false if @errors.any? unless validate_remote - @errors << 'Make sure a <remote> tag is present and is valid.' + @errors << _('Make sure a <remote> tag is present and is valid.') end unless validate_projects - @errors << 'Make sure every <project> tag has name and path attributes.' + @errors << _('Make sure every <project> tag has name and path attributes.') end @errors.empty? diff --git a/lib/gitlab/omniauth_initializer.rb b/lib/gitlab/omniauth_initializer.rb index e0ac9eec1f2..15985446ed9 100644 --- a/lib/gitlab/omniauth_initializer.rb +++ b/lib/gitlab/omniauth_initializer.rb @@ -58,7 +58,7 @@ module Gitlab def cas3_signout_handler lambda do |request| ticket = request.params[:session_index] - raise "Service Ticket not found." unless Gitlab::Auth::OAuth::Session.valid?(:cas3, ticket) + raise _("Service Ticket not found.") unless Gitlab::Auth::OAuth::Session.valid?(:cas3, ticket) Gitlab::Auth::OAuth::Session.destroy(:cas3, ticket) true diff --git a/lib/gitlab/quick_actions/merge_request_actions.rb b/lib/gitlab/quick_actions/merge_request_actions.rb index bade59182a1..4ef2231a7cc 100644 --- a/lib/gitlab/quick_actions/merge_request_actions.rb +++ b/lib/gitlab/quick_actions/merge_request_actions.rb @@ -8,8 +8,8 @@ module Gitlab included do # MergeRequest only quick actions definitions - desc 'Merge (when the pipeline succeeds)' - explanation 'Merges this merge request when the pipeline succeeds.' + desc _('Merge (when the pipeline succeeds)') + explanation _('Merges this merge request when the pipeline succeeds.') types MergeRequest condition do last_diff_sha = params && params[:merge_request_diff_head_sha] @@ -20,7 +20,7 @@ module Gitlab @updates[:merge] = params[:merge_request_diff_head_sha] end - desc 'Toggle the Work In Progress status' + desc _('Toggle the Work In Progress status') explanation do verb = quick_action_target.work_in_progress? ? 'Unmarks' : 'Marks' noun = quick_action_target.to_ability_name.humanize(capitalize: false) @@ -36,9 +36,9 @@ module Gitlab @updates[:wip_event] = quick_action_target.work_in_progress? ? 'unwip' : 'wip' end - desc 'Set target branch' + desc _('Set target branch') explanation do |branch_name| - "Sets target branch to #{branch_name}." + _("Sets target branch to %{branch_name}.") % { branch_name: branch_name } end params '<Local branch name>' types MergeRequest diff --git a/lib/gitlab/untrusted_regexp/ruby_syntax.rb b/lib/gitlab/untrusted_regexp/ruby_syntax.rb index 6adf119aa75..fc247c15d1e 100644 --- a/lib/gitlab/untrusted_regexp/ruby_syntax.rb +++ b/lib/gitlab/untrusted_regexp/ruby_syntax.rb @@ -27,10 +27,10 @@ module Gitlab end def self.fabricate!(pattern, fallback: false) - raise RegexpError, 'Pattern is not string!' unless pattern.is_a?(String) + raise RegexpError, _('Pattern is not string!') unless pattern.is_a?(String) matches = pattern.match(PATTERN) - raise RegexpError, 'Invalid regular expression!' if matches.nil? + raise RegexpError, _('Invalid regular expression!') if matches.nil? begin create_untrusted_regexp(matches[:regexp], matches[:flags]) diff --git a/lib/gitlab/utils.rb b/lib/gitlab/utils.rb index 16ec8a8bb28..e10a6a704d2 100644 --- a/lib/gitlab/utils.rb +++ b/lib/gitlab/utils.rb @@ -26,8 +26,8 @@ module Gitlab end def ensure_utf8_size(str, bytes:) - raise ArgumentError, 'Empty string provided!' if str.empty? - raise ArgumentError, 'Negative string size provided!' if bytes.negative? + raise ArgumentError, _('Empty string provided!') if str.empty? + raise ArgumentError, _('Negative string size provided!') if bytes.negative? truncated = str.each_char.each_with_object(+'') do |char, object| if object.bytesize + char.bytesize > bytes diff --git a/lib/mattermost/session.rb b/lib/mattermost/session.rb index e2083848a8d..c83a1cec213 100644 --- a/lib/mattermost/session.rb +++ b/lib/mattermost/session.rb @@ -3,7 +3,7 @@ module Mattermost class NoSessionError < Mattermost::Error def message - 'No session could be set up, is Mattermost configured with Single Sign On?' + _('No session could be set up, is Mattermost configured with Single Sign On?') end end diff --git a/locale/gitlab.pot b/locale/gitlab.pot index c2e1f3dcce3..3d05e1f240a 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -321,6 +321,12 @@ msgstr "" msgid "8 hours" msgstr "" +msgid ":%{key} must be a nonnegative Integer or symbol" +msgstr "" + +msgid ":in and :within must be a Range" +msgstr "" + msgid "<code>\"johnsmith@example.com\": \"@johnsmith\"</code> will add \"By <a href=\"#\">@johnsmith</a>\" to all issues and comments originally created by johnsmith@example.com, and will set <a href=\"#\">@johnsmith</a> as the assignee on all issues originally assigned to johnsmith@example.com." msgstr "" @@ -348,6 +354,9 @@ msgstr "" msgid "A .NET Core console application template, customizable for any .NET Core project" msgstr "" +msgid "A CarrierWave::Uploader::Base object was expected" +msgstr "" + msgid "A GitBook site that uses Netlify for CI/CD instead of GitLab, but still with all the other great GitLab features." msgstr "" @@ -396,6 +405,9 @@ msgstr "" msgid "A regular expression that will be used to find the test coverage output in the job trace. Leave blank to disable" msgstr "" +msgid "A repository for this project does not exist yet." +msgstr "" + msgid "A user with write access to the source branch selected this option" msgstr "" @@ -2699,6 +2711,9 @@ msgstr "" msgid "Could not create Wiki Repository at this time. Please try again later." msgstr "" +msgid "Could not create project: %{project_errors_full_messages}" +msgstr "" + msgid "Could not delete chat nickname %{chat_name}." msgstr "" @@ -3421,6 +3436,9 @@ msgstr "" msgid "Empty file" msgstr "" +msgid "Empty string provided!" +msgstr "" + msgid "Enable" msgstr "" @@ -3931,6 +3949,9 @@ msgstr "" msgid "Failed to check related branches." msgstr "" +msgid "Failed to create label \"%{label}\" for project \"%{project_full_name}\"" +msgstr "" + msgid "Failed to create repository via gitlab-shell" msgstr "" @@ -4218,6 +4239,9 @@ msgstr "" msgid "Git LFS is not enabled on this GitLab server, contact your admin." msgstr "" +msgid "Git access over %{protocol} is not allowed" +msgstr "" + msgid "Git global setup" msgstr "" @@ -4883,6 +4907,9 @@ msgstr "" msgid "Invalid pin code" msgstr "" +msgid "Invalid regular expression!" +msgstr "" + msgid "Invalid repository path" msgstr "" @@ -4934,6 +4961,9 @@ msgstr "" msgid "Issues, merge requests, pushes, and comments." msgstr "" +msgid "It is not currently possible to search the DN and other fields at the same time." +msgstr "" + msgid "It must have a header row and at least two columns: the first column is the issue title and the second column is the issue description. The separator is automatically detected." msgstr "" @@ -5120,6 +5150,12 @@ msgstr "" msgid "Kubernetes service integration has been deprecated. %{deprecated_message_content} your Kubernetes clusters using the new <a href=\"%{url}\"/>Kubernetes Clusters</a> page" msgstr "" +msgid "LDAP search raised exception %{exception_class}: %{exception_message}" +msgstr "" + +msgid "LDAP search timed out after %{config_timeout} seconds" +msgstr "" + msgid "LFS" msgstr "" @@ -5349,6 +5385,12 @@ msgstr "" msgid "Make issue confidential." msgstr "" +msgid "Make sure a <remote> tag is present and is valid." +msgstr "" + +msgid "Make sure every <project> tag has name and path attributes." +msgstr "" + msgid "Make sure you're logged into the account that owns the projects you'd like to import." msgstr "" @@ -5469,6 +5511,9 @@ msgstr "" msgid "Members of <strong>%{project_name}</strong>" msgstr "" +msgid "Merge (when the pipeline succeeds)" +msgstr "" + msgid "Merge Request" msgstr "" @@ -5574,9 +5619,15 @@ msgstr "" msgid "Merged branches are being deleted. This can take some time depending on the number of branches. Please refresh the page to see changes." msgstr "" +msgid "Merges this merge request when the pipeline succeeds." +msgstr "" + msgid "Messages" msgstr "" +msgid "Method already defined!" +msgstr "" + msgid "Metrics" msgstr "" @@ -5790,6 +5841,9 @@ msgstr "" msgid "Nav|Sign out and sign in with a different account" msgstr "" +msgid "Negative string size provided!" +msgstr "" + msgid "Network" msgstr "" @@ -5996,6 +6050,9 @@ msgstr "" msgid "No schedules" msgstr "" +msgid "No session could be set up, is Mattermost configured with Single Sign On?" +msgstr "" + msgid "No, directly import the existing email addresses and usernames." msgstr "" @@ -6128,6 +6185,9 @@ msgstr "" msgid "November" msgstr "" +msgid "OAuth configuration for GitHub missing." +msgstr "" + msgid "Object does not exist on the server or you don't have permissions to access it" msgstr "" @@ -6307,6 +6367,9 @@ msgstr "" msgid "Path:" msgstr "" +msgid "Pattern is not string!" +msgstr "" + msgid "Pause" msgstr "" @@ -7063,6 +7126,18 @@ msgstr "" msgid "ProjectPage|Project ID: %{project_id}" msgstr "" +msgid "ProjectProtectionLevel|Fully protected: Developers cannot push new commits, but maintainers can. No-one can force push or delete the branch." +msgstr "" + +msgid "ProjectProtectionLevel|Not protected: Both developers and maintainers can push new commits, force push, or delete the branch." +msgstr "" + +msgid "ProjectProtectionLevel|Partially protected: Both developers and maintainers can push new commits, but cannot force push or delete the branch." +msgstr "" + +msgid "ProjectProtectionLevel|Protected against pushes: Developers cannot push new commits, but are allowed to accept merge requests to the branch. Maintainers can push to the branch." +msgstr "" + msgid "ProjectSettings|Badges" msgstr "" @@ -7219,6 +7294,9 @@ msgstr "" msgid "Public pipelines" msgstr "" +msgid "Pulling over HTTP is not allowed." +msgstr "" + msgid "Push" msgstr "" @@ -7237,6 +7315,9 @@ msgstr "" msgid "Push to create a project" msgstr "" +msgid "Pushing over HTTP is not allowed." +msgstr "" + msgid "PushoverService|%{user_name} deleted branch \"%{ref}\"." msgstr "" @@ -7285,6 +7366,9 @@ msgstr "" msgid "Rake Tasks Help" msgstr "" +msgid "Range unspecified. Specify the :within, :maximum, :minimum, or :is option." +msgstr "" + msgid "Read more" msgstr "" @@ -7982,6 +8066,9 @@ msgstr "" msgid "Service Templates" msgstr "" +msgid "Service Ticket not found." +msgstr "" + msgid "Service URL" msgstr "" @@ -8015,6 +8102,9 @@ msgstr "" msgid "Set requirements for a user to sign-in. Enable mandatory two-factor authentication." msgstr "" +msgid "Set target branch" +msgstr "" + msgid "Set the default expiration time for each job's artifacts. 0 for unlimited. The default unit is in seconds, but you can define an alternative. For example: <code>4 mins 2 sec</code>, <code>2h42min</code>." msgstr "" @@ -8072,6 +8162,9 @@ msgstr "" msgid "SetStatusModal|What's your status?" msgstr "" +msgid "Sets target branch to %{branch_name}." +msgstr "" + msgid "Sets the due date to %{due_date}." msgstr "" @@ -8793,6 +8886,9 @@ msgstr "" msgid "The collection of events added to the data gathered for that stage." msgstr "" +msgid "The command you're trying to execute is not allowed." +msgstr "" + msgid "The content of this page is not encoded in UTF-8. Edits can only be made via the Git repository." msgstr "" @@ -8910,6 +9006,12 @@ msgstr "" msgid "The project was successfully imported." msgstr "" +msgid "The project you were looking for could not be found." +msgstr "" + +msgid "The remote data could not be fully imported." +msgstr "" + msgid "The remote mirror took to long to complete." msgstr "" @@ -8922,6 +9024,9 @@ msgstr "" msgid "The repository for this project is empty" msgstr "" +msgid "The repository is temporarily read-only. Please try again later." +msgstr "" + msgid "The repository must be accessible over <code>http://</code>, <code>https://</code> or <code>git://</code>." msgstr "" @@ -8964,6 +9069,9 @@ msgstr "" msgid "The uploaded file is not a valid Google Takeout archive." msgstr "" +msgid "The uploaded file is not a valid XML file." +msgstr "" + msgid "The usage ping is disabled, and cannot be configured through this form." msgstr "" @@ -9063,6 +9171,9 @@ msgstr "" msgid "This action can lead to data loss. To prevent accidental actions we ask you to confirm your intention." msgstr "" +msgid "This action cannot be performed by internal users" +msgstr "" + msgid "This application was created by %{link_to_owner}." msgstr "" @@ -9090,6 +9201,9 @@ msgstr "" msgid "This container registry has been scheduled for deletion." msgstr "" +msgid "This deploy key does not have write access to this project." +msgstr "" + msgid "This diff is collapsed." msgstr "" @@ -9550,6 +9664,9 @@ msgstr "" msgid "Toggle navigation" msgstr "" +msgid "Toggle the Work In Progress status" +msgstr "" + msgid "ToggleButton|Toggle Status: OFF" msgstr "" @@ -9670,9 +9787,15 @@ msgstr "" msgid "Type" msgstr "" +msgid "Unable to calculate modified paths!" +msgstr "" + msgid "Unable to connect to server: %{error}" msgstr "" +msgid "Unable to find project import data credentials for project ID: %{project_id}" +msgstr "" + msgid "Unable to load the diff. %{button_try_again}" msgstr "" @@ -10335,6 +10458,9 @@ msgstr "" msgid "You" msgstr "" +msgid "You (%{user_to_reference}) must accept the Terms of Service in order to perform this action. Please access GitLab from a web browser to accept these terms." +msgstr "" + msgid "You are an admin, which means granting access to <strong>%{client_name}</strong> will allow them to interact with GitLab as an admin as well. Proceed with caution." msgstr "" @@ -10353,6 +10479,21 @@ msgstr "" msgid "You are going to transfer %{project_full_name} to another owner. Are you ABSOLUTELY sure?" msgstr "" +msgid "You are not allowed to download code from this project." +msgstr "" + +msgid "You are not allowed to download code." +msgstr "" + +msgid "You are not allowed to push code to this project." +msgstr "" + +msgid "You are not allowed to upload code for this project." +msgstr "" + +msgid "You are not allowed to upload code." +msgstr "" + msgid "You are now impersonating %{username}" msgstr "" @@ -10419,6 +10560,9 @@ msgstr "" msgid "You can test your .gitlab-ci.yml in %{linkStart}CI Lint%{linkEnd}." msgstr "" +msgid "You can't push code to a read-only GitLab instance." +msgstr "" + msgid "You cannot impersonate a blocked user" msgstr "" @@ -10566,6 +10710,9 @@ msgstr "" msgid "Your Projects' Activity" msgstr "" +msgid "Your SSH key %{first_actor_error}." +msgstr "" + msgid "Your Todos" msgstr "" @@ -10581,6 +10728,9 @@ msgstr "" msgid "Your access request to the %{source_type} has been withdrawn." msgstr "" +msgid "Your account has been blocked." +msgstr "" + msgid "Your account uses dedicated credentials for the \"%{group_name}\" group and can only be updated through SSO." msgstr "" |