p4ruby 2019.1.1873991-x64-mingw32 → 2021.1.2196401-x64-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE.txt +451 -20
- data/README.md +12 -875
- data/ext/P4/clientprogressruby.cpp +0 -1
- data/ext/P4/clientuserruby.cpp +254 -1
- data/ext/P4/clientuserruby.h +26 -1
- data/ext/P4/extconf.rb +66 -22
- data/ext/P4/p4.cpp +100 -9
- data/ext/P4/p4clientapi.cpp +75 -6
- data/ext/P4/p4clientapi.h +13 -2
- data/ext/P4/p4result.cpp +1 -0
- data/ext/P4/p4specdata.cpp +29 -0
- data/ext/P4/p4specdata.h +2 -0
- data/ext/P4/specmgr.cpp +43 -130
- data/lib/2.6/P4.so +0 -0
- data/lib/2.7/P4.so +0 -0
- data/lib/3.0/P4.so +0 -0
- data/lib/P4/version.rb +3 -3
- data/lib/P4.rb +16 -0
- data/lib/P4.so +0 -0
- metadata +12 -11
- data/lib/2.3/P4.so +0 -0
- data/lib/2.4/P4.so +0 -0
- data/lib/2.5/P4.so +0 -0
data/ext/P4/p4clientapi.cpp
CHANGED
@@ -37,6 +37,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
37
37
|
#include <ruby.h>
|
38
38
|
#include "undefdups.h"
|
39
39
|
#include <p4/clientapi.h>
|
40
|
+
#include <p4/strtable.h>
|
40
41
|
#include <p4/i18napi.h>
|
41
42
|
#include <p4/enviro.h>
|
42
43
|
#include <p4/hostenv.h>
|
@@ -142,6 +143,21 @@ P4ClientApi::GetEnviroFile()
|
|
142
143
|
return enviro->GetEnviroFile();
|
143
144
|
}
|
144
145
|
|
146
|
+
void
|
147
|
+
P4ClientApi::SetEVar( const char *var, const char *val )
|
148
|
+
{
|
149
|
+
StrRef sVar( var );
|
150
|
+
StrRef sVal( val );
|
151
|
+
client.SetEVar( sVar, sVal );
|
152
|
+
}
|
153
|
+
|
154
|
+
const StrPtr *
|
155
|
+
P4ClientApi::GetEVar( const char *var )
|
156
|
+
{
|
157
|
+
StrRef sVar( var );
|
158
|
+
return client.GetEVar( sVar );
|
159
|
+
}
|
160
|
+
|
145
161
|
void
|
146
162
|
P4ClientApi::SetApiLevel( int level )
|
147
163
|
{
|
@@ -323,6 +339,9 @@ P4ClientApi::Disconnect()
|
|
323
339
|
// Clear the specdef cache.
|
324
340
|
specMgr.Reset();
|
325
341
|
|
342
|
+
// Clear out any results from the last command
|
343
|
+
ui.Reset();
|
344
|
+
|
326
345
|
return Qtrue;
|
327
346
|
}
|
328
347
|
|
@@ -426,12 +445,6 @@ P4ClientApi::IsIgnored( const char *path )
|
|
426
445
|
return ignore->Reject( p, client.GetIgnoreFile() );
|
427
446
|
}
|
428
447
|
|
429
|
-
VALUE
|
430
|
-
P4ClientApi::Reset()
|
431
|
-
{
|
432
|
-
ui.Reset();
|
433
|
-
}
|
434
|
-
|
435
448
|
//
|
436
449
|
// Run returns the results of the command. If the client has not been
|
437
450
|
// connected, then an exception is raised but errors from Perforce
|
@@ -702,6 +715,17 @@ P4ClientApi::SetProgress( VALUE progress ) {
|
|
702
715
|
return ui.SetProgress( progress );
|
703
716
|
}
|
704
717
|
|
718
|
+
VALUE
|
719
|
+
P4ClientApi::SetSSOHandler( VALUE h )
|
720
|
+
{
|
721
|
+
if ( P4RDB_COMMANDS )
|
722
|
+
fprintf( stderr, "[P4] Received SSO handler object\n" );
|
723
|
+
|
724
|
+
ui.SetRubySSOHandler( h );
|
725
|
+
|
726
|
+
return Qtrue;
|
727
|
+
}
|
728
|
+
|
705
729
|
|
706
730
|
void
|
707
731
|
P4ClientApi::GCMark()
|
@@ -764,3 +788,48 @@ P4ClientApi::Except( const char *func, Error *e )
|
|
764
788
|
Except( func, m.Text() );
|
765
789
|
}
|
766
790
|
|
791
|
+
//
|
792
|
+
// SSO Handlers
|
793
|
+
//
|
794
|
+
|
795
|
+
VALUE
|
796
|
+
P4ClientApi::SetEnableSSO( VALUE e )
|
797
|
+
{
|
798
|
+
return ui.EnableSSO( e );
|
799
|
+
}
|
800
|
+
|
801
|
+
VALUE
|
802
|
+
P4ClientApi::GetEnableSSO()
|
803
|
+
{
|
804
|
+
return ui.SSOEnabled();
|
805
|
+
}
|
806
|
+
|
807
|
+
VALUE
|
808
|
+
P4ClientApi::GetSSOVars()
|
809
|
+
{
|
810
|
+
return ui.GetSSOVars();
|
811
|
+
}
|
812
|
+
|
813
|
+
VALUE
|
814
|
+
P4ClientApi::SetSSOPassResult( VALUE r )
|
815
|
+
{
|
816
|
+
return ui.SetSSOPassResult( r );
|
817
|
+
}
|
818
|
+
|
819
|
+
VALUE
|
820
|
+
P4ClientApi::GetSSOPassResult()
|
821
|
+
{
|
822
|
+
return ui.GetSSOPassResult();
|
823
|
+
}
|
824
|
+
|
825
|
+
VALUE
|
826
|
+
P4ClientApi::SetSSOFailResult( VALUE r )
|
827
|
+
{
|
828
|
+
return ui.SetSSOFailResult( r );
|
829
|
+
}
|
830
|
+
|
831
|
+
VALUE
|
832
|
+
P4ClientApi::GetSSOFailResult()
|
833
|
+
{
|
834
|
+
return ui.GetSSOFailResult();
|
835
|
+
}
|
data/ext/P4/p4clientapi.h
CHANGED
@@ -73,6 +73,7 @@ public:
|
|
73
73
|
void SetClient( const char *c ) { client.SetClient( c ); }
|
74
74
|
void SetCwd( const char *c );
|
75
75
|
void SetEnviroFile( const char *c );
|
76
|
+
void SetEVar( const char *var, const char *val );
|
76
77
|
void SetHost( const char *h ) { client.SetHost( h ); }
|
77
78
|
void SetIgnoreFile( const char *f ) { client.SetIgnoreFile( f ); }
|
78
79
|
void SetMaxResults( int v ) { maxResults = v; }
|
@@ -96,6 +97,7 @@ public:
|
|
96
97
|
const StrPtr &GetCwd() { return client.GetCwd(); }
|
97
98
|
const char * GetEnv( const char *v);
|
98
99
|
const StrPtr *GetEnviroFile();
|
100
|
+
const StrPtr *GetEVar(const char *v);
|
99
101
|
const StrPtr &GetHost() { return client.GetHost(); }
|
100
102
|
const StrPtr &GetIgnoreFile() { return client.GetIgnoreFile();}
|
101
103
|
const StrPtr &GetLanguage() { return client.GetLanguage(); }
|
@@ -121,7 +123,6 @@ public:
|
|
121
123
|
VALUE Connect(); // P4Exception on error
|
122
124
|
VALUE Connected(); // Return true if connected and not dropped.
|
123
125
|
VALUE Disconnect();
|
124
|
-
VALUE Reset(); // Clear out any results from the previous command
|
125
126
|
|
126
127
|
// Executing commands.
|
127
128
|
VALUE Run( const char *cmd, int argc, char * const *argv );
|
@@ -170,6 +171,17 @@ public:
|
|
170
171
|
VALUE SetProgress( VALUE progress );
|
171
172
|
VALUE GetProgress() { return ui.GetProgress(); }
|
172
173
|
|
174
|
+
// SSO handler
|
175
|
+
VALUE SetEnableSSO( VALUE e );
|
176
|
+
VALUE GetEnableSSO();
|
177
|
+
VALUE GetSSOVars();
|
178
|
+
VALUE SetSSOPassResult( VALUE r );
|
179
|
+
VALUE GetSSOPassResult();
|
180
|
+
VALUE SetSSOFailResult( VALUE r );
|
181
|
+
VALUE GetSSOFailResult();
|
182
|
+
VALUE SetSSOHandler( VALUE handler );
|
183
|
+
VALUE GetSSOHandler() { return ui.GetRubySSOHandler(); }
|
184
|
+
|
173
185
|
// Ruby garbage collection
|
174
186
|
void GCMark();
|
175
187
|
|
@@ -248,4 +260,3 @@ private:
|
|
248
260
|
int maxScanRows;
|
249
261
|
int maxLockTime;
|
250
262
|
};
|
251
|
-
|
data/ext/P4/p4result.cpp
CHANGED
data/ext/P4/p4specdata.cpp
CHANGED
@@ -106,3 +106,32 @@ SpecDataRuby::SetLine( SpecElem *sd, int x, const StrPtr *v, Error *e )
|
|
106
106
|
}
|
107
107
|
return;
|
108
108
|
}
|
109
|
+
|
110
|
+
void
|
111
|
+
SpecDataRuby::Comment ( SpecElem *sd, int x, const char **wv, int nl, Error *e )
|
112
|
+
{
|
113
|
+
VALUE key;
|
114
|
+
VALUE val;
|
115
|
+
VALUE ary;
|
116
|
+
StrBuf t;
|
117
|
+
|
118
|
+
key = P4Utils::ruby_string( sd->tag.Text(), sd->tag.Length() );
|
119
|
+
val = P4Utils::ruby_string( *wv );
|
120
|
+
|
121
|
+
if( sd->IsList() )
|
122
|
+
{
|
123
|
+
|
124
|
+
ary = rb_hash_aref( hash, key ); // rb_hash_aref - get the value for hash key
|
125
|
+
if( ary == Qnil )
|
126
|
+
{
|
127
|
+
ary = rb_ary_new();
|
128
|
+
rb_hash_aset( hash, key, ary ); // rb_hash_aset(hash, key, value) - set the hash key to value
|
129
|
+
}
|
130
|
+
rb_ary_store( ary, x, val );
|
131
|
+
}
|
132
|
+
else
|
133
|
+
{
|
134
|
+
rb_hash_aset( hash, key, val );
|
135
|
+
}
|
136
|
+
return;
|
137
|
+
}
|
data/ext/P4/p4specdata.h
CHANGED
@@ -44,6 +44,8 @@ class SpecDataRuby : public SpecData
|
|
44
44
|
virtual StrPtr *GetLine( SpecElem *sd, int x, const char **cmt );
|
45
45
|
virtual void SetLine( SpecElem *sd, int x, const StrPtr *val,
|
46
46
|
Error *e );
|
47
|
+
virtual void Comment( SpecElem *sd, int x, const char **wv,
|
48
|
+
int nl, Error *e );
|
47
49
|
|
48
50
|
private:
|
49
51
|
VALUE hash;
|
data/ext/P4/specmgr.cpp
CHANGED
@@ -63,22 +63,6 @@ struct defaultspec {
|
|
63
63
|
"unlocked/locked;;"
|
64
64
|
"View;code:311;type:wlist;words:2;len:64;;"
|
65
65
|
},
|
66
|
-
{
|
67
|
-
"changeX",
|
68
|
-
"Change;code:201;rq;ro;fmt:L;seq:1;len:10;;"
|
69
|
-
"Date;code:202;type:date;ro;fmt:R;seq:3;len:20;;"
|
70
|
-
"Client;code:203;ro;fmt:L;seq:2;len:32;;"
|
71
|
-
"User;code:204;ro;fmt:L;seq:4;len:32;;"
|
72
|
-
"Status;code:205;ro;fmt:R;seq:5;len:10;;"
|
73
|
-
"Type;code:211;seq:6;type:select;fmt:L;len:10;"
|
74
|
-
"val:public/restricted;;"
|
75
|
-
"ImportedBy;code:212;type:line;ro;fmt:L;len:32;;"
|
76
|
-
"Identity;code:213;type:line;;"
|
77
|
-
"Description;code:206;type:text;rq;;"
|
78
|
-
"Jobs;code:209;type:wlist;words:2;len:32;;"
|
79
|
-
"Stream;code:214;type:line;len:64;;"
|
80
|
-
"Files;code:210;type:llist;len:64;;"
|
81
|
-
},
|
82
66
|
{
|
83
67
|
"change",
|
84
68
|
"Change;code:201;rq;ro;fmt:L;seq:1;len:10;;"
|
@@ -123,42 +107,6 @@ struct defaultspec {
|
|
123
107
|
"View;code:311;type:wlist;words:2;len:64;;"
|
124
108
|
"ChangeView;code:317;type:llist;len:64;;"
|
125
109
|
},
|
126
|
-
{
|
127
|
-
"clientX",
|
128
|
-
"Client;code:301;rq;ro;seq:1;len:32;;"
|
129
|
-
"Update;code:302;type:date;ro;seq:2;fmt:L;len:20;;"
|
130
|
-
"Access;code:303;type:date;ro;seq:4;fmt:L;len:20;;"
|
131
|
-
"Owner;code:304;seq:3;fmt:R;len:32;;"
|
132
|
-
"Host;code:305;seq:5;fmt:R;len:32;;"
|
133
|
-
"Description;code:306;type:text;len:128;;"
|
134
|
-
"Root;code:307;rq;type:line;len:64;;"
|
135
|
-
"AltRoots;code:308;type:llist;len:64;;"
|
136
|
-
"Options;code:309;type:line;len:64;val:"
|
137
|
-
"noallwrite/allwrite,noclobber/clobber,nocompress/compress,"
|
138
|
-
"unlocked/locked,nomodtime/modtime,normdir/rmdir;;"
|
139
|
-
"SubmitOptions;code:313;type:select;fmt:L;len:25;val:"
|
140
|
-
"submitunchanged/submitunchanged+reopen/revertunchanged/"
|
141
|
-
"revertunchanged+reopen/leaveunchanged/leaveunchanged+reopen;;"
|
142
|
-
"LineEnd;code:310;type:select;fmt:L;len:12;val:"
|
143
|
-
"local/unix/mac/win/share;;"
|
144
|
-
"View;code:311;type:wlist;words:2;len:64;;"
|
145
|
-
},
|
146
|
-
{
|
147
|
-
"clientSpecing021",
|
148
|
-
"Client;code:301;rq;ro;len:32;;"
|
149
|
-
"Update;code:302;type:date;ro;len:20;;"
|
150
|
-
"Access;code:303;type:date;ro;len:20;;"
|
151
|
-
"Owner;code:304;len:32;;"
|
152
|
-
"Host;code:305;len:32;;"
|
153
|
-
"Description;code:306;type:text;len:128;;"
|
154
|
-
"Root;code:307;rq;type:line;len:64;;"
|
155
|
-
"AltRoots;code:308;type:text;len:64;;"
|
156
|
-
"Options;code:309;type:line;len:64;val:"
|
157
|
-
"noallwrite/allwrite,noclobber/clobber,nocompress/compress,"
|
158
|
-
"unlocked/locked,nomodtime/modtime,normdir/rmdir;;"
|
159
|
-
"LineEnd;code:310;type:select;len:12;val:local/unix/mac/win/share;;"
|
160
|
-
"View;code:311;type:wlist;words:2;len:64;;"
|
161
|
-
},
|
162
110
|
{
|
163
111
|
"depot",
|
164
112
|
"Depot;code:251;rq;ro;len:32;;"
|
@@ -172,53 +120,19 @@ struct defaultspec {
|
|
172
120
|
"Map;code:257;rq;len:64;;"
|
173
121
|
"SpecMap;code:259;type:wlist;len:64;;"
|
174
122
|
},
|
175
|
-
{
|
176
|
-
"extensionGbl",
|
177
|
-
"ExtName;code:901;type:line;opt:once;len:64;;"
|
178
|
-
"ExtDescription;code:902;type:text;opt:once;len:128;;"
|
179
|
-
"ExtVersion;code:903;type:line;opt:once;len:32;;"
|
180
|
-
"ExtUUID;code:904;type:line;opt:once;len:36;;"
|
181
|
-
"ExtRev;code:905;type:word;opt:once;len:20;;"
|
182
|
-
"ExtMaxScriptTime;code:913;type:word;len:12;;"
|
183
|
-
"ExtMaxScriptMem;code:914;type:word;len:12;;"
|
184
|
-
"ExtAllowedGroups;code:915;type:wlist;len:32;opt:default;;"
|
185
|
-
"ExtEnabled;code:916;type:word;opt:default;len:12;;"
|
186
|
-
"ExtP4USER;code:917;type:word;opt:default;len:12;;"
|
187
|
-
"Name;code:906;type:line;opt:default;len:32;;"
|
188
|
-
"Owner;code:907;type:word;opt:default;len:36;;"
|
189
|
-
"Update;code:908;type:date;opt:always;fmt:L;len:20;;"
|
190
|
-
"Description;code:909;type:text;opt:required;len:128;;"
|
191
|
-
"ExtConfig;code:912;type:text;opt:required;len:256;;"
|
192
|
-
},
|
193
|
-
{
|
194
|
-
"extensionIns",
|
195
|
-
"ExtName;code:901;type:line;opt:once;len:64;;"
|
196
|
-
"ExtDescription;code:902;type:text;opt:once;len:128;;"
|
197
|
-
"ExtVersion;code:903;type:line;opt:once;len:32;;"
|
198
|
-
"ExtUUID;code:904;type:line;opt:once;len:36;;"
|
199
|
-
"ExtRev;code:905;type:word;opt:once;len:20;;"
|
200
|
-
"ExtMaxScriptTime;code:913;type:word;len:12;;"
|
201
|
-
"ExtMaxScriptMem;code:914;type:word;len:12;;"
|
202
|
-
"ExtEnabled;code:916;type:word;opt:default;len:12;;"
|
203
|
-
"Name;code:906;type:line;opt:default;len:32;;"
|
204
|
-
"Owner;code:907;type:word;opt:default;len:36;;"
|
205
|
-
"Update;code:908;type:date;opt:always;fmt:L;len:20;;"
|
206
|
-
"Description;code:909;type:text;opt:required;len:128;;"
|
207
|
-
"ExtConfig;code:912;type:text;opt:required;len:256;;"
|
208
|
-
},
|
209
123
|
{
|
210
124
|
"group",
|
211
125
|
"Group;code:401;rq;ro;len:32;;"
|
212
126
|
"MaxResults;code:402;type:word;len:12;;"
|
213
127
|
"MaxScanRows;code:403;type:word;len:12;;"
|
214
128
|
"MaxLockTime;code:407;type:word;len:12;;"
|
215
|
-
|
129
|
+
"MaxOpenFiles;code:413;type:word;len:12;;"
|
216
130
|
"Timeout;code:406;type:word;len:12;;"
|
217
131
|
"PasswordTimeout;code:409;type:word;len:12;;"
|
218
132
|
"LdapConfig;code:410;type:line;len:128;;"
|
219
133
|
"LdapSearchQuery;code:411;type:line;len:128;;"
|
220
134
|
"LdapUserAttribute;code:412;type:line;len:128;;"
|
221
|
-
|
135
|
+
"LdapUserDNAttribute;code:414;type:line;len:128;;"
|
222
136
|
"Subgroups;code:404;type:wlist;len:32;opt:default;;"
|
223
137
|
"Owners;code:408;type:wlist;len:32;opt:default;;"
|
224
138
|
"Users;code:405;type:wlist;len:32;opt:default;;"
|
@@ -286,12 +200,13 @@ struct defaultspec {
|
|
286
200
|
"Clients;code:458;len:8;;"
|
287
201
|
"Users;code:459;len:8;;"
|
288
202
|
"Files;code:460;len:8;;"
|
289
|
-
|
290
|
-
|
203
|
+
"Repos;code:462;len:8;;"
|
204
|
+
"ExtraCapabilities;code:463;type:llist;len:512;;"
|
205
|
+
},
|
291
206
|
{
|
292
207
|
"protect",
|
293
|
-
|
294
|
-
|
208
|
+
"SubPath;code:502;ro;len:64;;"
|
209
|
+
"Update;code:503;type:date;ro;fmt:L;len:20;;"
|
295
210
|
"Protections;code:501;fmt:C;type:wlist;words:5;opt:default;z;len:64;;"
|
296
211
|
},
|
297
212
|
{
|
@@ -312,45 +227,40 @@ struct defaultspec {
|
|
312
227
|
},
|
313
228
|
{
|
314
229
|
"repo",
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
230
|
+
"Repo;code:1001;rq;ro;fmt:L;len:128;;"
|
231
|
+
"Owner;code:1002;fmt:R;len:32;;"
|
232
|
+
"Created;code:1003;type:date;ro;fmt:L;len:20;;"
|
233
|
+
"Pushed;code:1004;type:date;ro;fmt:R;len:20;;"
|
234
|
+
"ForkedFrom;code:1005;ro;fmt:L;len:128;;"
|
235
|
+
"Description;code:1006;type:text;len:128;;"
|
236
|
+
"DefaultBranch;code:1007;fmt:L;len:32;;"
|
237
|
+
"MirroredFrom;code:1008;fmt:R;len:32;;"
|
238
|
+
"Options;code:1009;type:select;len:10;val:lfs/nolfs;;"
|
239
|
+
"GconnMirrorServerId;code:1010;fmt:L;len:32;;"
|
240
|
+
"GconnMirrorSecretToken;code:NNN;len:36;;"
|
241
|
+
"GconnMirrorStatus;code:NNN;len:8;;"
|
242
|
+
"GconnMirrorExcludedBranches;code:NNN;len:256;;"
|
243
|
+
"GconnMirrorHideFetchUrl;code:NNN;len:5;;"
|
324
244
|
},
|
325
245
|
{
|
326
246
|
"server",
|
327
247
|
"ServerID;code:751;rq;ro;len:32;;"
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
{
|
345
|
-
"specW",
|
346
|
-
"Fields;code:351;type:wlist;words:5;rq;;"
|
347
|
-
"Required;code:357;type:wlist;;"
|
348
|
-
"Readonly;code:358;type:wlist;;"
|
349
|
-
"Words;code:352;type:wlist;words:2;;"
|
350
|
-
"Formats;code:353;type:wlist;words:3;;"
|
351
|
-
"Values;code:354;type:wlist;words:2;;"
|
352
|
-
"Presets;code:355;type:wlist;words:2;;"
|
353
|
-
"Comments;code:356;type:text;;"
|
248
|
+
"Type;code:752;rq;len:32;;"
|
249
|
+
"Name;code:753;type:line;len:32;;"
|
250
|
+
"Address;code:754;type:line;len:32;;"
|
251
|
+
"ExternalAddress;code:755;type:line;len:32;;"
|
252
|
+
"Services;code:756;rq;len:128;;"
|
253
|
+
"Options;code:764;type:line;len:32;val:"
|
254
|
+
"nomandatory/mandatory;;"
|
255
|
+
"ReplicatingFrom;code:765;type:line;len:32;;"
|
256
|
+
"Description;code:757;type:text;len:128;;"
|
257
|
+
"User;code:761;type:line;len:64;;"
|
258
|
+
"AllowedAddresses;code:763;type:wlist;len:64;;"
|
259
|
+
"UpdateCachedRepos;code:766;type:wlist;len:64;;"
|
260
|
+
"ClientDataFilter;code:758;type:wlist;len:64;;"
|
261
|
+
"RevisionDataFilter;code:759;type:wlist;len:64;;"
|
262
|
+
"ArchiveDataFilter;code:760;type:wlist;len:64;;"
|
263
|
+
"DistributedConfig;code:762;type:text;len:128;;"
|
354
264
|
},
|
355
265
|
{
|
356
266
|
"spec",
|
@@ -360,6 +270,7 @@ struct defaultspec {
|
|
360
270
|
"Values;code:354;type:wlist;words:2;;"
|
361
271
|
"Presets;code:355;type:wlist;words:2;;"
|
362
272
|
"Openable;code:362;type:wlist;words:2;;"
|
273
|
+
"Maxwords;code:361;type:wlist;words:2;;"
|
363
274
|
"Comments;code:356;type:text;;"
|
364
275
|
},
|
365
276
|
{
|
@@ -376,9 +287,11 @@ struct defaultspec {
|
|
376
287
|
"allsubmit/ownersubmit,unlocked/locked,"
|
377
288
|
"toparent/notoparent,fromparent/nofromparent,"
|
378
289
|
"mergedown/mergeany;open:isolate;;"
|
379
|
-
"
|
380
|
-
"
|
381
|
-
"
|
290
|
+
"ParentView;code:NNN;rq;open:isolate;"
|
291
|
+
"pre:inherit;val:noinherit/inherit;;"
|
292
|
+
"Paths;code:710;rq;type:wlist;words:2;maxwords:3;len:64;open:propagate;fmt:C;;"
|
293
|
+
"Remapped;code:711;type:wlist;words:2;len:64;open:propagate;fmt:C;;"
|
294
|
+
"Ignored;code:712;type:wlist;words:1;len:64;open:propagate;fmt:C;;"
|
382
295
|
"View;code:713;type:wlist;words:2;len:64;;"
|
383
296
|
"ChangeView;code:714;type:llist;ro;len:64;;"
|
384
297
|
},
|
data/lib/2.6/P4.so
CHANGED
Binary file
|
data/lib/2.7/P4.so
ADDED
Binary file
|
data/lib/3.0/P4.so
ADDED
Binary file
|
data/lib/P4/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
class P4
|
2
|
-
|
3
|
-
end
|
1
|
+
class P4
|
2
|
+
Version = VERSION = '2021.1.2196401'
|
3
|
+
end
|
data/lib/P4.rb
CHANGED
@@ -118,6 +118,13 @@ class P4
|
|
118
118
|
PROG_FAILDONE = 2
|
119
119
|
PROG_FLUSH = 3
|
120
120
|
|
121
|
+
# SSO Handler return values constants
|
122
|
+
SSO_PASS = 0 # SSO succeeded (result is an authentication token)
|
123
|
+
SSO_FAIL = 1 # SSO failed (result will be logged as error message)
|
124
|
+
SSO_UNSET = 2 # Client has no SSO support
|
125
|
+
SSO_EXIT = 3 # Stop login process
|
126
|
+
SSO_SKIP = 4 # Fall back to default P4API behavior
|
127
|
+
|
121
128
|
# Mappings for P4#each_<spec>
|
122
129
|
# Hash of type vs. key
|
123
130
|
SpecTypes = {
|
@@ -669,4 +676,13 @@ class P4
|
|
669
676
|
HANDLED
|
670
677
|
end
|
671
678
|
end
|
679
|
+
|
680
|
+
#*****************************************************************************
|
681
|
+
# P4::SSOHandler class.
|
682
|
+
#*****************************************************************************
|
683
|
+
class SSOHandler
|
684
|
+
def authorize(vars, maxLength)
|
685
|
+
[ SSO_SKIP, "" ]
|
686
|
+
end
|
687
|
+
end
|
672
688
|
end # class P4
|
data/lib/P4.so
ADDED
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: p4ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2021.1.2196401
|
5
5
|
platform: x64-mingw32
|
6
6
|
authors:
|
7
7
|
- Perforce Software, Inc.
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-10-14 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Ruby extensions to the C++ Perforce API.
|
14
14
|
email: support@perforce.com
|
@@ -43,17 +43,18 @@ files:
|
|
43
43
|
- ext/P4/specmgr.cpp
|
44
44
|
- ext/P4/specmgr.h
|
45
45
|
- ext/P4/undefdups.h
|
46
|
-
- lib/2.3/P4.so
|
47
|
-
- lib/2.4/P4.so
|
48
|
-
- lib/2.5/P4.so
|
49
46
|
- lib/2.6/P4.so
|
47
|
+
- lib/2.7/P4.so
|
48
|
+
- lib/3.0/P4.so
|
50
49
|
- lib/P4.rb
|
50
|
+
- lib/P4.so
|
51
51
|
- lib/P4/version.rb
|
52
|
-
homepage: https://
|
52
|
+
homepage: https://github.com/perforce/p4ruby
|
53
53
|
licenses:
|
54
54
|
- MIT
|
55
|
-
metadata:
|
56
|
-
|
55
|
+
metadata:
|
56
|
+
documentation_uri: https://www.perforce.com/manuals/p4ruby/Content/P4Ruby/Home-p4ruby.html
|
57
|
+
post_install_message:
|
57
58
|
rdoc_options: []
|
58
59
|
require_paths:
|
59
60
|
- lib
|
@@ -68,8 +69,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
68
69
|
- !ruby/object:Gem::Version
|
69
70
|
version: '0'
|
70
71
|
requirements: []
|
71
|
-
rubygems_version: 3.
|
72
|
-
signing_key:
|
72
|
+
rubygems_version: 3.2.15
|
73
|
+
signing_key:
|
73
74
|
specification_version: 4
|
74
75
|
summary: Ruby extensions to the C++ Perforce API
|
75
76
|
test_files: []
|
data/lib/2.3/P4.so
DELETED
Binary file
|
data/lib/2.4/P4.so
DELETED
Binary file
|
data/lib/2.5/P4.so
DELETED
Binary file
|