p4ruby 2019.1.1873991-x86-mingw32 → 2021.1.2196401-x86-mingw32
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/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: x86-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
|