diff --git a/app/assets/javascripts/graphql_shared/issuable_client.js b/app/assets/javascripts/graphql_shared/issuable_client.js index 78d58261589..fcec03faaa5 100644 --- a/app/assets/javascripts/graphql_shared/issuable_client.js +++ b/app/assets/javascripts/graphql_shared/issuable_client.js @@ -213,6 +213,11 @@ export const config = { epicBoardList: { keyArgs: ['id'], }, + isShowingLabels: { + read(currentState) { + return currentState ?? true; + }, + }, }, }, } diff --git a/app/models/identity.rb b/app/models/identity.rb index a4c59694050..1a3a9a300b6 100644 --- a/app/models/identity.rb +++ b/app/models/identity.rb @@ -14,6 +14,7 @@ class Identity < MainClusterwide::ApplicationRecord after_destroy :clear_user_synced_attributes, if: :user_synced_attributes_metadata_from_provider? scope :for_user, ->(user) { where(user: user) } + scope :for_user_ids, ->(user_ids) { where(user_id: user_ids) } scope :with_provider, ->(provider) { where(provider: provider) } scope :with_extern_uid, ->(provider, extern_uid) do iwhere(extern_uid: normalize_uid(provider, extern_uid)).with_provider(provider) diff --git a/config/feature_flags/development/inherit_higher_access_levels_no_cross_join.yml b/config/feature_flags/development/inherit_higher_access_levels_no_cross_join.yml new file mode 100644 index 00000000000..1dbf92d2c6f --- /dev/null +++ b/config/feature_flags/development/inherit_higher_access_levels_no_cross_join.yml @@ -0,0 +1,8 @@ +--- +name: inherit_higher_access_levels_no_cross_join +introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/132947 +rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/427238 +milestone: '16.5' +type: development +group: group::authentication and authorization +default_enabled: false diff --git a/doc/administration/housekeeping.md b/doc/administration/housekeeping.md index 4b07b27d702..f4815e0f04f 100644 --- a/doc/administration/housekeeping.md +++ b/doc/administration/housekeeping.md @@ -163,9 +163,18 @@ Background maintenance of Git repositories is configured in Gitaly. By default, Gitaly performs background repository maintenance every day at 12:00 noon for a duration of 10 minutes. -You can change this default in Gitaly configuration. The following snippet -enables daily background repository maintenance starting at 23:00 for 1 hour -for the `default` storage: +You can change this default in Gitaly configuration. + +For environments with Gitaly Cluster, the scheduled housekeeping start time can be +staggered across Gitaly nodes so the scheduled housekeeping is not running +simultaneously on multiple nodes. + +If a scheduled housekeeping run reaches the `duration` specified, the running tasks are +gracefully cancelled. On subsequent scheduled housekeeping runs, Gitaly randomly shuffles +the repository list to process. + +The following snippet enables daily background repository maintenance starting at +23:00 for 1 hour for the `default` storage: ::Tabs @@ -214,6 +223,21 @@ gitaly['configuration'] = { ::EndTabs +When the scheduled housekeeping is executed, you can see the following entries in +your [Gitaly log](logs/index.md#gitaly-logs): + +```json +# When the scheduled housekeeping starts +{"level":"info","msg":"maintenance: daily scheduled","pid":197260,"scheduled":"2023-09-27T13:10:00+13:00","time":"2023-09-27T00:08:31.624Z"} + +# When the scheduled housekeeping completes +{"actual_duration":321181874818,"error":null,"level":"info","max_duration":"1h0m0s","msg":"maintenance: daily completed","pid":197260,"time":"2023-09-27T00:15:21.182Z"} +``` + +The `actual_duration` (in nanoseconds) indicates how long the scheduled maintenance +took to execute. In the example above, the scheduled housekeeping completed +in just over 5 minutes. + ## Object pool repositories Object pool repositories are used by GitLab to deduplicate objects across forks diff --git a/locale/gitlab.pot b/locale/gitlab.pot index 9899e77c486..46033498331 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -3229,6 +3229,9 @@ msgstr "" msgid "AdminArea|Developer" msgstr "" +msgid "AdminArea|Documentation" +msgstr "" + msgid "AdminArea|Features" msgstr "" @@ -5426,9 +5429,6 @@ msgstr "" msgid "Analytics|Charts" msgstr "" -msgid "Analytics|Choose a measurement to start" -msgstr "" - msgid "Analytics|Code" msgstr "" @@ -5450,6 +5450,9 @@ msgstr "" msgid "Analytics|Create your dashboard" msgstr "" +msgid "Analytics|Create your visualization" +msgstr "" + msgid "Analytics|Custom dashboards" msgstr "" @@ -5546,10 +5549,10 @@ msgstr "" msgid "Analytics|Save and add to Dashboard" msgstr "" -msgid "Analytics|Save new visualization" +msgid "Analytics|Save your dashboard" msgstr "" -msgid "Analytics|Save your dashboard" +msgid "Analytics|Save your visualization" msgstr "" msgid "Analytics|Select a measurement" @@ -5579,6 +5582,9 @@ msgstr "" msgid "Analytics|Something went wrong." msgstr "" +msgid "Analytics|Start by choosing a metric" +msgstr "" + msgid "Analytics|Tables" msgstr "" @@ -5594,6 +5600,9 @@ msgstr "" msgid "Analytics|Updating visualization %{visualizationName}" msgstr "" +msgid "Analytics|Use the visualization designer to create custom visualizations. After you save a visualization, you can add it to a dashboard." +msgstr "" + msgid "Analytics|Users" msgstr "" @@ -14204,6 +14213,9 @@ msgstr "" msgid "Created" msgstr "" +msgid "Created %{date} ago" +msgstr "" + msgid "Created %{epicTimeagoDate}" msgstr "" @@ -16077,6 +16089,9 @@ msgstr "" msgid "Dependencies|There may be multiple paths" msgstr "" +msgid "Dependencies|There was a problem fetching the licenses for this group." +msgstr "" + msgid "Dependencies|This group exceeds the maximum number of sub-groups of 600. We cannot accurately display a project list at this time. Please access a sub-group dependency list to view this information or see the %{linkStart}dependency list help %{linkEnd} page to learn more." msgstr "" @@ -22000,6 +22015,12 @@ msgstr "" msgid "GlobalSearch|Include archived" msgstr "" +msgid "GlobalSearch|Incremental indexing queue length" +msgstr "" + +msgid "GlobalSearch|Initial indexing queue length" +msgstr "" + msgid "GlobalSearch|Issues I've created" msgstr "" @@ -22024,6 +22045,9 @@ msgstr "" msgid "GlobalSearch|No labels found" msgstr "" +msgid "GlobalSearch|Only first %{max_shown} of not indexed projects is shown" +msgstr "" + msgid "GlobalSearch|Places" msgstr "" @@ -22108,6 +22132,9 @@ msgstr "" msgid "GlobalSearch|in %{scope}" msgstr "" +msgid "GlobalSearch|projects not indexed" +msgstr "" + msgid "GlobalShortcuts|Copied reference to clipboard." msgstr "" @@ -24978,6 +25005,9 @@ msgstr "" msgid "Index deletion is canceled" msgstr "" +msgid "Indexing status" +msgstr "" + msgid "Indicates whether this runner can pick jobs without tags" msgstr "" @@ -27827,6 +27857,9 @@ msgstr "" msgid "Let's Encrypt is a free, automated, and open certificate authority (CA) that gives digital certificates in order to enable HTTPS (SSL/TLS) for websites. Learn more about Let's Encrypt configuration by following the %{docs_link_start}documentation on GitLab Pages%{docs_link_end}." msgstr "" +msgid "License" +msgstr "" + msgid "License Compliance" msgstr "" @@ -35963,7 +35996,7 @@ msgstr "" msgid "ProductAnalytics|Waiting for events" msgstr "" -msgid "ProductAnalytics|What do you want to measure?" +msgid "ProductAnalytics|What metric do you want to visualize?" msgstr "" msgid "ProductAnalytics|You can instrument your application using a JS module or an HTML script. Follow the instructions below for the option you prefer." @@ -44239,6 +44272,9 @@ msgstr "" msgid "Show complete raw log" msgstr "" +msgid "Show current status of indexing" +msgstr "" + msgid "Show details" msgstr "" diff --git a/workhorse/go.mod b/workhorse/go.mod index a617536d0b7..04f59a5a6f6 100644 --- a/workhorse/go.mod +++ b/workhorse/go.mod @@ -31,10 +31,10 @@ require ( gocloud.dev v0.34.0 golang.org/x/image v0.7.0 golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 - golang.org/x/net v0.16.0 + golang.org/x/net v0.17.0 golang.org/x/oauth2 v0.10.0 golang.org/x/tools v0.13.0 - google.golang.org/grpc v1.58.2 + google.golang.org/grpc v1.58.3 google.golang.org/protobuf v1.31.0 honnef.co/go/tools v0.4.6 ) diff --git a/workhorse/go.sum b/workhorse/go.sum index 2308be5d738..6cf33000fcf 100644 --- a/workhorse/go.sum +++ b/workhorse/go.sum @@ -581,8 +581,8 @@ golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ= -golang.org/x/net v0.16.0 h1:7eBu7KsSvFDtSXUIDbh3aqlK4DPsZ1rByC8PFfBThos= -golang.org/x/net v0.16.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= +golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= +golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/oauth2 v0.0.0-20170912212905-13449ad91cb2/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -899,8 +899,8 @@ google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQ google.golang.org/grpc v1.39.0/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= google.golang.org/grpc v1.39.1/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= -google.golang.org/grpc v1.58.2 h1:SXUpjxeVF3FKrTYQI4f4KvbGD5u2xccdYdurwowix5I= -google.golang.org/grpc v1.58.2/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0= +google.golang.org/grpc v1.58.3 h1:BjnpXut1btbtgN/6sp+brB2Kbm2LjNXnidYujAVbSoQ= +google.golang.org/grpc v1.58.3/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=