microsoft_kiota_faraday 0.11.0 → 0.13.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 78b9949aca03b66bf9410b97c72cbbc38b7ca95ca7b862cbf71e43215c5a669c
4
- data.tar.gz: 62e37484c620d4a2522c2f98a88724c646368fcfb667ea90ce68c7fccbe710a1
3
+ metadata.gz: '096cf34a1aab4023bb227673cd84dbd9a1152c72b9407de32fab9c99b40a7803'
4
+ data.tar.gz: 4a91e57d27ec77fe746097e6d767651cf31616158f52c7879141f900e769a874
5
5
  SHA512:
6
- metadata.gz: 78c847e4fd5b9f8392b49d3dcf9f02e75943d6399be46037b5747f0df6cc6885d9dd5642bbb27d268b949e16c7e8b7a46446f94a55aee142fbd17b4d8239a684
7
- data.tar.gz: '099a13bda01cf06d64c10e77bbd7d04086151aedee682499e23221e249c697e180b5ae8a64994abdcd223829def2b139bb7a4ad2fc2a9c5b465a6a1e0e5a81fb'
6
+ metadata.gz: 41b0d3f42b1c1e037ee29ccd268d96b1383945bfd6edfb7fa349256b19e19c0f94ad53123e870e8e8e2e364046399f5450c09bf6e1bbd2b61f2a9a80c4fa4e52
7
+ data.tar.gz: eec7751e973ff50341c83ed20b592ca1b457f5cbfb339648937906de3d5b7fcf42f817144dd890a9cbb7d445a76ef0d3cc6c3f1eda8c3063d54d9a60a55c9c16
data/.github/CODEOWNERS CHANGED
@@ -1 +1 @@
1
- * @andrueastman @baywet @darrelmiller @zengin @MichaelMainer @ddyett @peombwa @nikithauc @ramsessanchez @calebkiage @Ndiritu @rkodev @gavinbarron
1
+ * @andrueastman @baywet @zengin @MichaelMainer @peombwa @calebkiage @Ndiritu @rkodev
@@ -0,0 +1,101 @@
1
+ id:
2
+ name: GitOps.PullRequestIssueManagement
3
+ description: GitOps.PullRequestIssueManagement primitive
4
+ owner:
5
+ resource: repository
6
+ disabled: false
7
+ where:
8
+ configuration:
9
+ resourceManagementConfiguration:
10
+ scheduledSearches:
11
+ - description:
12
+ frequencies:
13
+ - hourly:
14
+ hour: 6
15
+ filters:
16
+ - isIssue
17
+ - isOpen
18
+ - hasLabel:
19
+ label: 'Needs: Author Feedback'
20
+ - hasLabel:
21
+ label: 'Status: No Recent Activity'
22
+ - noActivitySince:
23
+ days: 3
24
+ actions:
25
+ - closeIssue
26
+ - description:
27
+ frequencies:
28
+ - hourly:
29
+ hour: 6
30
+ filters:
31
+ - isIssue
32
+ - isOpen
33
+ - hasLabel:
34
+ label: 'Needs: Author Feedback'
35
+ - noActivitySince:
36
+ days: 4
37
+ - isNotLabeledWith:
38
+ label: 'Status: No Recent Activity'
39
+ actions:
40
+ - addLabel:
41
+ label: 'Status: No Recent Activity'
42
+ - addReply:
43
+ reply: This issue has been automatically marked as stale because it has been marked as requiring author feedback but has not had any activity for **4 days**. It will be closed if no further activity occurs **within 3 days of this comment**.
44
+ - description:
45
+ frequencies:
46
+ - hourly:
47
+ hour: 6
48
+ filters:
49
+ - isIssue
50
+ - isOpen
51
+ - hasLabel:
52
+ label: 'Resolution: Duplicate'
53
+ - noActivitySince:
54
+ days: 1
55
+ actions:
56
+ - addReply:
57
+ reply: This issue has been marked as duplicate and has not had any activity for **1 day**. It will be closed for housekeeping purposes.
58
+ - closeIssue
59
+ eventResponderTasks:
60
+ - if:
61
+ - payloadType: Issue_Comment
62
+ - isAction:
63
+ action: Created
64
+ - isActivitySender:
65
+ issueAuthor: True
66
+ - hasLabel:
67
+ label: 'Needs: Author Feedback'
68
+ - isOpen
69
+ then:
70
+ - addLabel:
71
+ label: 'Needs: Attention :wave:'
72
+ - removeLabel:
73
+ label: 'Needs: Author Feedback'
74
+ description:
75
+ - if:
76
+ - payloadType: Issues
77
+ - not:
78
+ isAction:
79
+ action: Closed
80
+ - hasLabel:
81
+ label: 'Status: No Recent Activity'
82
+ then:
83
+ - removeLabel:
84
+ label: 'Status: No Recent Activity'
85
+ description:
86
+ - if:
87
+ - payloadType: Issue_Comment
88
+ - hasLabel:
89
+ label: 'Status: No Recent Activity'
90
+ then:
91
+ - removeLabel:
92
+ label: 'Status: No Recent Activity'
93
+ description:
94
+ - if:
95
+ - payloadType: Pull_Request
96
+ then:
97
+ - inPrLabel:
98
+ label: WIP
99
+ description:
100
+ onFailure:
101
+ onSuccess:
@@ -0,0 +1,32 @@
1
+ name: Auto-merge dependabot updates
2
+
3
+ on:
4
+ pull_request:
5
+ branches: [ main ]
6
+
7
+ permissions:
8
+ pull-requests: write
9
+ contents: write
10
+
11
+ jobs:
12
+
13
+ dependabot-merge:
14
+
15
+ runs-on: ubuntu-latest
16
+
17
+ if: ${{ github.actor == 'dependabot[bot]' }}
18
+
19
+ steps:
20
+ - name: Dependabot metadata
21
+ id: metadata
22
+ uses: dependabot/fetch-metadata@v1.6.0
23
+ with:
24
+ github-token: "${{ secrets.GITHUB_TOKEN }}"
25
+
26
+ - name: Enable auto-merge for Dependabot PRs
27
+ # Only if version bump is not a major version change
28
+ if: ${{steps.metadata.outputs.update-type != 'version-update:semver-major'}}
29
+ run: gh pr merge --auto --merge "$PR_URL"
30
+ env:
31
+ PR_URL: ${{github.event.pull_request.html_url}}
32
+ GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
@@ -40,11 +40,11 @@ jobs:
40
40
 
41
41
  steps:
42
42
  - name: Checkout repository
43
- uses: actions/checkout@v3
43
+ uses: actions/checkout@v4
44
44
 
45
45
  # Initializes the CodeQL tools for scanning.
46
46
  - name: Initialize CodeQL
47
- uses: github/codeql-action/init@v2
47
+ uses: github/codeql-action/init@v3
48
48
  with:
49
49
  languages: ${{ matrix.language }}
50
50
  # If you wish to specify custom queries, you can do so here or in a config file.
@@ -58,7 +58,7 @@ jobs:
58
58
  # Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
59
59
  # If this step fails, then you should remove it and run the build manually (see below)
60
60
  - name: Autobuild
61
- uses: github/codeql-action/autobuild@v2
61
+ uses: github/codeql-action/autobuild@v3
62
62
 
63
63
  # ℹ️ Command-line programs to run using the OS shell.
64
64
  # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -71,6 +71,6 @@ jobs:
71
71
  # ./location_of_script_within_repo/buildscript.sh
72
72
 
73
73
  - name: Perform CodeQL Analysis
74
- uses: github/codeql-action/analyze@v2
74
+ uses: github/codeql-action/analyze@v3
75
75
  with:
76
76
  category: "/language:${{matrix.language}}"
@@ -11,6 +11,10 @@ on:
11
11
  types: [synchronize]
12
12
  branches: [ main ]
13
13
 
14
+ permissions:
15
+ pull-requests: write
16
+ contents: read
17
+
14
18
  # A workflow run is made up of one or more jobs that can run sequentially or in parallel
15
19
  jobs:
16
20
  # This workflow contains a single job called "build"
@@ -6,13 +6,16 @@ on:
6
6
  - "v[0-9]+.[0-9]+.[0-9]+"
7
7
  workflow_dispatch:
8
8
 
9
+ permissions:
10
+ contents: write
11
+
9
12
  jobs:
10
13
  Git_Release:
11
14
  runs-on: ubuntu-latest
12
15
  steps:
13
- - uses: actions/checkout@v3
16
+ - uses: actions/checkout@v4
14
17
  - name: Github Release
15
- uses: anton-yurchenko/git-release@v5.0
18
+ uses: anton-yurchenko/git-release@v6.0
16
19
  env:
17
20
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN}}
18
21
  DRAFT_RELEASE: "false"
@@ -25,10 +28,10 @@ jobs:
25
28
  name: production_feeds
26
29
  runs-on: ubuntu-latest
27
30
  steps:
28
- - uses: actions/checkout@v3
31
+ - uses: actions/checkout@v4
29
32
  - uses: ruby/setup-ruby@v1
30
33
  with:
31
- ruby-version: '3.1'
34
+ ruby-version: '3.2'
32
35
  bundler-cache: true # runs 'bundle install' and caches installed gems automatically
33
36
  bundler: 'latest'
34
37
  cache-version: 1
@@ -12,10 +12,10 @@ jobs:
12
12
  fail-fast: false
13
13
  matrix:
14
14
  os: [ubuntu-latest, macos-latest]
15
- ruby-version: ['2.7', '3.0', '3.1', head, jruby, jruby-head, truffleruby, truffleruby-head]
15
+ ruby-version: ['3.0', '3.1', '3.2', head, jruby, jruby-head, truffleruby, truffleruby-head]
16
16
  runs-on: ${{ matrix.os }}
17
17
  steps:
18
- - uses: actions/checkout@v3
18
+ - uses: actions/checkout@v4
19
19
  - uses: ruby/setup-ruby@v1
20
20
  with:
21
21
  ruby-version: ${{ matrix.ruby-version }}
@@ -25,8 +25,8 @@ jobs:
25
25
  - name: Run tests
26
26
  run: bundle exec rake
27
27
  - name: Upload artifacts for ruby version 3 and ubuntu
28
- if: ${{ matrix.os == 'ubuntu-latest' && matrix.ruby-version == '3.1'}}
29
- uses: actions/upload-artifact@v3
28
+ if: ${{ matrix.os == 'ubuntu-latest' && matrix.ruby-version == '3.2'}}
29
+ uses: actions/upload-artifact@v4
30
30
  with:
31
31
  name: drop
32
32
  path: |
data/CHANGELOG.md CHANGED
@@ -11,6 +11,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
11
11
 
12
12
  ### Changed
13
13
 
14
+ ## [0.13.0] - 2024-02-05
15
+
16
+ ### Changed
17
+
18
+ - Added support for error mapping deduplication to reduce generated code. [#20](https://github.com/microsoft/kiota-http-ruby/issues/20)
19
+
20
+ ## [0.12.0] - 2023-03-28
21
+
22
+ ### Changed
23
+
24
+ - Updated kiota abstractions reference
25
+ - Bumped minimum required ruby version to 3.0.
26
+
14
27
  ## [0.11.0] - 2023-01-10
15
28
 
16
29
  ### Added
data/README.md CHANGED
@@ -13,7 +13,7 @@ Read more about Kiota [here](https://github.com/microsoft/kiota/blob/main/README
13
13
  Add this line to your application's Gemfile:
14
14
 
15
15
  ```ruby
16
- gem "microsoft_kiota_http", "0.11.0"
16
+ gem "microsoft_kiota_faraday", "0.11.0"
17
17
  ```
18
18
 
19
19
  And then execute:
@@ -25,7 +25,7 @@ bundle install
25
25
  Or install it yourself as:
26
26
 
27
27
  ```shell
28
- gem install microsoft_kiota_http --version "0.11.0"
28
+ gem install microsoft_kiota_faraday --version "0.11.0"
29
29
  ```
30
30
 
31
31
  ## Contributing
@@ -83,6 +83,7 @@ module MicrosoftKiotaFaraday
83
83
  error_factory = errors_mapping[status_code] unless errors_mapping.nil?
84
84
  error_factory = errors_mapping['4XX'] unless !error_factory.nil? || errors_mapping.nil? || status_code > 500
85
85
  error_factory = errors_mapping['5XX'] unless !error_factory.nil? || errors_mapping.nil? || status_code < 500 || status_code > 600
86
+ error_factory = errors_mapping['XXX'] unless !error_factory.nil? || errors_mapping.nil? || status_code < 400 || status_code > 600
86
87
  raise MicrosoftKiotaAbstractions::ApiError, 'The server returned an unexpected status code and no error factory is registered for this code:' + status_code.to_s if error_factory.nil?
87
88
  root_node = self.get_root_parse_node(response)
88
89
  error = root_node.get_object_value(error_factory) unless root_node.nil?
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MicrosoftKiotaFaraday
4
- VERSION = '0.11.0'
4
+ VERSION = '0.13.0'
5
5
  end
@@ -6,7 +6,7 @@ Gem::Specification.new do |spec|
6
6
  spec.name = "microsoft_kiota_faraday"
7
7
  spec.version = MicrosoftKiotaFaraday::VERSION
8
8
  spec.authors = 'Microsoft Corporation'
9
- spec.email = 'graphsdkpub@microsoft.com'
9
+ spec.email = 'graphsdkpub+ruby@microsoft.com'
10
10
  spec.description = 'Kiota HttpCore implementation with Faraday'
11
11
  spec.summary = "Microsoft Kiota Faraday - Kiota Ruby http request adapter for running requests"
12
12
  spec.homepage = 'https://microsoft.github.io/kiota/'
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  'source_code_uri' => 'https://github.com/microsoft/kiota-http-ruby',
19
19
  'github_repo' => 'ssh://github.com/microsoft/kiota-http-ruby'
20
20
  }
21
- spec.required_ruby_version = ">= 2.7.0"
21
+ spec.required_ruby_version = ">= 3.0.0"
22
22
 
23
23
  # Specify which files should be added to the gem when it is released.
24
24
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -28,7 +28,7 @@ Gem::Specification.new do |spec|
28
28
  spec.bindir = 'bin'
29
29
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
30
30
  spec.require_paths = ['lib']
31
- spec.add_runtime_dependency 'microsoft_kiota_abstractions', '~> 0.13.0', '>= 0.13.0'
31
+ spec.add_runtime_dependency 'microsoft_kiota_abstractions', '~> 0.14.0'
32
32
  spec.add_runtime_dependency 'faraday', '~> 2.7', '>= 2.7.2'
33
33
  spec.add_development_dependency 'rake', '~> 13.0'
34
34
  spec.add_development_dependency 'rspec', '~> 3.0'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: microsoft_kiota_faraday
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Microsoft Corporation
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-10 00:00:00.000000000 Z
11
+ date: 2024-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: microsoft_kiota_abstractions
@@ -16,20 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.13.0
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 0.13.0
19
+ version: 0.14.0
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: 0.13.0
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 0.13.0
26
+ version: 0.14.0
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: faraday
35
29
  requirement: !ruby/object:Gem::Requirement
@@ -93,16 +87,17 @@ dependencies:
93
87
  - !ruby/object:Gem::Version
94
88
  version: '0'
95
89
  description: Kiota HttpCore implementation with Faraday
96
- email: graphsdkpub@microsoft.com
90
+ email: graphsdkpub+ruby@microsoft.com
97
91
  executables: []
98
92
  extensions: []
99
93
  extra_rdoc_files: []
100
94
  files:
101
95
  - ".github/CODEOWNERS"
102
96
  - ".github/dependabot.yml"
97
+ - ".github/policies/resourceManagement.yml"
98
+ - ".github/workflows/auto-merge-dependabot.yml"
103
99
  - ".github/workflows/code-ql.yml"
104
100
  - ".github/workflows/conflicting-pr-label.yml"
105
- - ".github/workflows/projectsbot.yml"
106
101
  - ".github/workflows/release.yml"
107
102
  - ".github/workflows/ruby.yml"
108
103
  - ".gitignore"
@@ -142,14 +137,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
142
137
  requirements:
143
138
  - - ">="
144
139
  - !ruby/object:Gem::Version
145
- version: 2.7.0
140
+ version: 3.0.0
146
141
  required_rubygems_version: !ruby/object:Gem::Requirement
147
142
  requirements:
148
143
  - - ">="
149
144
  - !ruby/object:Gem::Version
150
145
  version: '0'
151
146
  requirements: []
152
- rubygems_version: 3.3.26
147
+ rubygems_version: 3.4.19
153
148
  signing_key:
154
149
  specification_version: 4
155
150
  summary: Microsoft Kiota Faraday - Kiota Ruby http request adapter for running requests
@@ -1,81 +0,0 @@
1
- # This workflow is used to add new issues to GitHub Projects (Beta)
2
-
3
- name: Add PR to project
4
- on:
5
- issues:
6
- types: [opened]
7
- jobs:
8
- track_issue:
9
- runs-on: ubuntu-latest
10
- steps:
11
- - name: Generate token
12
- id: generate_token
13
- uses: tibdex/github-app-token@021a2405c7f990db57f5eae5397423dcc554159c
14
- with:
15
- app_id: ${{ secrets.GRAPHBOT_APP_ID }}
16
- private_key: ${{ secrets.GRAPHBOT_APP_PEM }}
17
-
18
- - name: Get project data
19
- env:
20
- GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
21
- ORGANIZATION: microsoftgraph
22
- PROJECT_NUMBER: 38
23
- run: |
24
- gh api graphql -f query='
25
- query($org: String!, $number: Int!) {
26
- organization(login: $org){
27
- projectNext(number: $number) {
28
- id
29
- fields(first:20) {
30
- nodes {
31
- id
32
- name
33
- settings
34
- }
35
- }
36
- }
37
- }
38
- }' -f org=$ORGANIZATION -F number=$PROJECT_NUMBER > project_data.json
39
-
40
- echo 'PROJECT_ID='$(jq '.data.organization.projectNext.id' project_data.json) >> $GITHUB_ENV
41
- echo 'STATUS_FIELD_ID='$(jq '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") | .id' project_data.json) >> $GITHUB_ENV
42
- echo 'TRIAGE_OPTION_ID='$(jq '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="Needs Triage 🔍") |.id' project_data.json) >> $GITHUB_ENV
43
-
44
- - name: Add Issue to project
45
- env:
46
- GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
47
- ISSUE_ID: ${{ github.event.issue.node_id }}
48
- run: |
49
- item_id="$( gh api graphql -f query='
50
- mutation($project:ID!, $issue:ID!) {
51
- addProjectNextItem(input: {projectId: $project, contentId: $issue}) {
52
- projectNextItem {
53
- id
54
- }
55
- }
56
- }' -f project=$PROJECT_ID -f issue=$ISSUE_ID --jq '.data.addProjectNextItem.projectNextItem.id')"
57
-
58
- echo 'ITEM_ID='$item_id >> $GITHUB_ENV
59
-
60
- - name: Set Triage
61
- env:
62
- GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
63
- run: |
64
- gh api graphql -f query='
65
- mutation (
66
- $project: ID!
67
- $item: ID!
68
- $status_field: ID!
69
- $status_value: String!
70
- ) {
71
- set_status: updateProjectNextItemField(input: {
72
- projectId: $project
73
- itemId: $item
74
- fieldId: $status_field
75
- value: $status_value
76
- }) {
77
- projectNextItem {
78
- id
79
- }
80
- }
81
- }' -f project=$PROJECT_ID -f item=$ITEM_ID -f status_field=$STATUS_FIELD_ID -f status_value=${{ env.TRIAGE_OPTION_ID }} --silent