sharepoint_api 2.2.1 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/Gemfile.lock +13 -2
- data/lib/sharepoint_api/file_info.rb +9 -2
- data/lib/sharepoint_api/permissions.rb +16 -0
- data/lib/sharepoint_api/version.rb +1 -1
- data/sharepoint_api.gemspec +1 -0
- metadata +20 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b0468c9c48c45c143d22199451ebf11598b65c23a61452e37c166ece1c6dcf0
|
4
|
+
data.tar.gz: 42c4125f051082bba4fc2969b1ae8b1f725bbdb27b4a20f269ed764e1b81c6ec
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 03042c8ffb06e155793c8ee8139e6e32cc589ce412531c204605cd4b3ce5c735a0d8e3ff1efde4e6a737f8ababc0599cb2ba4a99adc7bc7934393440756baa88
|
7
|
+
data.tar.gz: 67fd794a361d597b7cf1b7a2e5e6a8c99b0e08a3620f9acb13a69f21cccdc4a54f28bc3832566136e0b8b88cf96412f7c5fe3ca0030c3ce8e3b31a474f28e6d5
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
## [2.4.0] - 2023-11-14
|
2
|
+
* Include creator email when surfacing file version information (not just login_name)
|
3
|
+
|
4
|
+
## [2.3.1] - 2021-11-02
|
5
|
+
* Add ability to rename groups
|
6
|
+
|
1
7
|
## [2.2.0] - 2021-07-06
|
2
8
|
* Use $select queries to vastly speed up FileInfo#version lookup.
|
3
9
|
|
data/Gemfile.lock
CHANGED
@@ -1,13 +1,20 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
sharepoint_api (2.
|
4
|
+
sharepoint_api (2.4.0)
|
5
|
+
activesupport (~> 6)
|
5
6
|
addressable (~> 2.7)
|
6
7
|
proof-sharepoint-ruby (~> 2.0)
|
7
8
|
|
8
9
|
GEM
|
9
10
|
remote: https://rubygems.org/
|
10
11
|
specs:
|
12
|
+
activesupport (6.1.7.6)
|
13
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
14
|
+
i18n (>= 1.6, < 2)
|
15
|
+
minitest (>= 5.1)
|
16
|
+
tzinfo (~> 2.0)
|
17
|
+
zeitwerk (~> 2.3)
|
11
18
|
addressable (2.8.0)
|
12
19
|
public_suffix (>= 2.0.2, < 5.0)
|
13
20
|
ast (2.4.1)
|
@@ -42,6 +49,7 @@ GEM
|
|
42
49
|
rb-inotify (~> 0.9, >= 0.9.10)
|
43
50
|
lumberjack (1.2.8)
|
44
51
|
method_source (1.0.0)
|
52
|
+
minitest (5.20.0)
|
45
53
|
nenv (0.3.0)
|
46
54
|
notiffany (0.1.3)
|
47
55
|
nenv (~> 0.1)
|
@@ -100,7 +108,10 @@ GEM
|
|
100
108
|
ruby-progressbar (1.10.1)
|
101
109
|
shellany (0.0.1)
|
102
110
|
thor (1.0.1)
|
111
|
+
tzinfo (2.0.6)
|
112
|
+
concurrent-ruby (~> 1.0)
|
103
113
|
unicode-display_width (1.7.0)
|
114
|
+
zeitwerk (2.6.12)
|
104
115
|
|
105
116
|
PLATFORMS
|
106
117
|
ruby
|
@@ -120,4 +131,4 @@ DEPENDENCIES
|
|
120
131
|
sharepoint_api!
|
121
132
|
|
122
133
|
BUNDLED WITH
|
123
|
-
2.2.
|
134
|
+
2.2.29
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require_relative 'sharepoint_error'
|
2
|
+
require 'active_support/core_ext/object/try'
|
2
3
|
|
3
4
|
class SharepointApi
|
4
5
|
class FileInfo
|
@@ -8,11 +9,13 @@ class SharepointApi
|
|
8
9
|
# Get all data required to build a FileInfo object without subsequent API calls.
|
9
10
|
FILE_SELECT_QUERY_WITH_VERSIONS = begin
|
10
11
|
sub_query = %w[
|
12
|
+
ModifiedBy/Email
|
11
13
|
ModifiedBy/LoginName
|
12
14
|
ListItemAllFields/Id
|
13
15
|
Versions/Id
|
14
16
|
Versions/Created
|
15
17
|
Versions/IsCurrentVersion
|
18
|
+
Versions/CreatedBy/Email
|
16
19
|
Versions/CreatedBy/LoginName
|
17
20
|
Versions/Url
|
18
21
|
].join(',')
|
@@ -56,21 +59,25 @@ class SharepointApi
|
|
56
59
|
|
57
60
|
@all_versions = []
|
58
61
|
|
62
|
+
modified_by = safe_modified_by(file)
|
59
63
|
@all_versions << make_version_object(
|
60
64
|
version_id,
|
61
65
|
created_at: updated_at,
|
62
66
|
current: true,
|
63
|
-
creator_login:
|
67
|
+
creator_login: modified_by.try(:login_name),
|
68
|
+
creator_email: modified_by.try(:email)
|
64
69
|
)
|
65
70
|
|
66
71
|
return @all_versions unless version > 1
|
67
72
|
|
68
73
|
@all_versions += file.versions.map do |file_version|
|
74
|
+
created_by = safe_created_by(file_version)
|
69
75
|
make_version_object(
|
70
76
|
file_version.id,
|
71
77
|
created_at: Time.parse(file_version.created),
|
72
78
|
current: file_version.is_current_version,
|
73
|
-
creator_login:
|
79
|
+
creator_login: created_by.try(:login_name),
|
80
|
+
creator_email: created_by.try(:email)
|
74
81
|
)
|
75
82
|
end
|
76
83
|
|
@@ -45,6 +45,22 @@ class SharepointApi
|
|
45
45
|
false
|
46
46
|
end
|
47
47
|
|
48
|
+
# to rename a sp group when the acronym changes
|
49
|
+
def rename_group(old_group_name, new_group_name)
|
50
|
+
escaped_group_name = encode_path(old_group_name)
|
51
|
+
site.query(:post, "SiteGroups/GetByName('#{escaped_group_name}')", {
|
52
|
+
'__metadata' => { 'type': 'SP.Group' },
|
53
|
+
'Title' => new_group_name,
|
54
|
+
'Description' => "Access Group for #{new_group_name}"
|
55
|
+
}.to_json) do |curl|
|
56
|
+
curl.headers['X-HTTP-Method'] = 'MERGE'
|
57
|
+
end
|
58
|
+
true
|
59
|
+
rescue Sharepoint::SPException => e
|
60
|
+
log_as(__method__, e)
|
61
|
+
false
|
62
|
+
end
|
63
|
+
|
48
64
|
##
|
49
65
|
# This also removes any role definitions the groups is using.
|
50
66
|
def remove_group(group_name)
|
data/sharepoint_api.gemspec
CHANGED
@@ -16,6 +16,7 @@ Gem::Specification.new do |spec|
|
|
16
16
|
spec.metadata['source_code_uri'] = 'https://github.com/proofgov/sharepoint_api'
|
17
17
|
spec.metadata['changelog_uri'] = 'https://github.com/proofgov/sharepoint_api/blob/master/CHANGELOG.md'
|
18
18
|
|
19
|
+
spec.add_runtime_dependency('activesupport', '~> 6')
|
19
20
|
spec.add_runtime_dependency('addressable', '~> 2.7')
|
20
21
|
spec.add_runtime_dependency('proof-sharepoint-ruby', '~> 2.0')
|
21
22
|
|
metadata
CHANGED
@@ -1,17 +1,31 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sharepoint_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kalek
|
8
8
|
- Marlen Brunner
|
9
9
|
- Danella Olsen
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2023-11-14 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: activesupport
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - "~>"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '6'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - "~>"
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: '6'
|
15
29
|
- !ruby/object:Gem::Dependency
|
16
30
|
name: addressable
|
17
31
|
requirement: !ruby/object:Gem::Requirement
|
@@ -85,7 +99,7 @@ metadata:
|
|
85
99
|
homepage_uri: https://github.com/proofgov/sharepoint_api
|
86
100
|
source_code_uri: https://github.com/proofgov/sharepoint_api
|
87
101
|
changelog_uri: https://github.com/proofgov/sharepoint_api/blob/master/CHANGELOG.md
|
88
|
-
post_install_message:
|
102
|
+
post_install_message:
|
89
103
|
rdoc_options: []
|
90
104
|
require_paths:
|
91
105
|
- lib
|
@@ -100,8 +114,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
100
114
|
- !ruby/object:Gem::Version
|
101
115
|
version: '0'
|
102
116
|
requirements: []
|
103
|
-
rubygems_version: 3.
|
104
|
-
signing_key:
|
117
|
+
rubygems_version: 3.0.3.1
|
118
|
+
signing_key:
|
105
119
|
specification_version: 4
|
106
120
|
summary: SharepointApi allows you to interact with sharepoint in a simpler DSL.
|
107
121
|
test_files: []
|