p4ruby 2021.1.2265066-x86-mingw32 → 2022.1.2359956-x86-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 +154 -125
- data/ext/P4/extconf.rb +6 -2
- data/ext/P4/p4.cpp +18 -0
- data/ext/P4/p4clientapi.cpp +6 -0
- data/ext/P4/p4clientapi.h +1 -0
- data/ext/P4/specmgr.cpp +6 -1
- data/ext/P4/specmgr.h +2 -0
- data/ext/P4/undefdups.h +2 -2
- data/lib/2.7/P4.so +0 -0
- data/lib/3.0/P4.so +0 -0
- data/lib/3.1/P4.so +0 -0
- data/lib/P4/version.rb +1 -1
- data/lib/P4.so +0 -0
- metadata +4 -4
- data/lib/2.6/P4.so +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 333bbc21f89dd7ffb9f5f5130416f723e1a446b29e6193184b086b04371ae5ab
|
4
|
+
data.tar.gz: 1fe47ea4f31a4f12341d78db2f21265f69a97d18a33b9e99f811545147d459ac
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9c292caba855119478383732e5f5adfec8500e75e88ef85ab6bb9a6181e5ba04dbeda60e6f7900a46adf46bd66c24454f3ca3c22988dd9c8e886b51ec89099b3
|
7
|
+
data.tar.gz: b27f70fad9e9df8ce234f91082226082647c12a56ddae8646b1525fa372995b565d80740637b1faa3fbcea69677dbf4f5c3feb245e81f4f06351b4068230a46e
|
data/LICENSE.txt
CHANGED
@@ -30,6 +30,160 @@ The following are the license statements for code used in
|
|
30
30
|
this program.
|
31
31
|
|
32
32
|
|
33
|
+
P4/P4API License
|
34
|
+
-----------------------
|
35
|
+
Copyright (c) 1995-2022, Perforce Software, Inc.
|
36
|
+
All rights reserved.
|
37
|
+
|
38
|
+
Redistribution and use in source and binary forms, with or without
|
39
|
+
modification, are permitted provided that the following conditions are met:
|
40
|
+
|
41
|
+
Redistributions of source code must retain the above copyright notice,
|
42
|
+
this list of conditions and the following disclaimer.
|
43
|
+
|
44
|
+
Redistributions in binary form must reproduce the above copyright
|
45
|
+
notice, this list of conditions and the following disclaimer in the
|
46
|
+
documentation and/or other materials provided with the distribution.
|
47
|
+
|
48
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
49
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
50
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
51
|
+
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
|
52
|
+
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
53
|
+
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
54
|
+
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
55
|
+
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
56
|
+
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
57
|
+
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
58
|
+
POSSIBILITY OF SUCH DAMAGE.
|
59
|
+
|
60
|
+
|
61
|
+
OpenSSL:
|
62
|
+
-----------------------
|
63
|
+
This product includes cryptographic software written by Eric Young
|
64
|
+
(eay@cryptsoft.com).
|
65
|
+
This product includes software written by Tim Hudson
|
66
|
+
(tjh@cryptsoft.com).
|
67
|
+
|
68
|
+
OpenSSL License
|
69
|
+
-----------------------
|
70
|
+
|
71
|
+
* ====================================================================
|
72
|
+
* Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved.
|
73
|
+
*
|
74
|
+
* Redistribution and use in source and binary forms, with or without
|
75
|
+
* modification, are permitted provided that the following conditions
|
76
|
+
* are met:
|
77
|
+
*
|
78
|
+
* 1. Redistributions of source code must retain the above copyright
|
79
|
+
* notice, this list of conditions and the following disclaimer.
|
80
|
+
*
|
81
|
+
* 2. Redistributions in binary form must reproduce the above copyright
|
82
|
+
* notice, this list of conditions and the following disclaimer in
|
83
|
+
* the documentation and/or other materials provided with the
|
84
|
+
* distribution.
|
85
|
+
*
|
86
|
+
* 3. All advertising materials mentioning features or use of this
|
87
|
+
* software must display the following acknowledgment:
|
88
|
+
* "This product includes software developed by the OpenSSL Project
|
89
|
+
* for use in the OpenSSL Toolkit. (http://www.openssl.org/)
|
90
|
+
*
|
91
|
+
* 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be
|
92
|
+
* used to endorse or promote products derived from this software
|
93
|
+
* without prior written permission. For written permission, please
|
94
|
+
* contact openssl-core@openssl.org.
|
95
|
+
*
|
96
|
+
* 5. Products derived from this software may not be called "OpenSSL
|
97
|
+
* nor may "OpenSSL" appear in their names without prior written
|
98
|
+
* permission of the OpenSSL Project.
|
99
|
+
*
|
100
|
+
* 6. Redistributions of any form whatsoever must retain the following
|
101
|
+
* acknowledgment:
|
102
|
+
* "This product includes software developed by the OpenSSL Project
|
103
|
+
* for use in the OpenSSL Toolkit (http://www.openssl.org/)
|
104
|
+
*
|
105
|
+
* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
|
106
|
+
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
107
|
+
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
108
|
+
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
|
109
|
+
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
110
|
+
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
111
|
+
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
112
|
+
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
113
|
+
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
114
|
+
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
115
|
+
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
116
|
+
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
117
|
+
* ====================================================================
|
118
|
+
*
|
119
|
+
* This product includes cryptographic software written by Eric Young
|
120
|
+
* (eay@cryptsoft.com). This product includes software written by Tim
|
121
|
+
* Hudson (tjh@cryptsoft.com).
|
122
|
+
*
|
123
|
+
*
|
124
|
+
|
125
|
+
Original SSLeay License
|
126
|
+
-----------------------
|
127
|
+
|
128
|
+
* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
|
129
|
+
* All rights reserved.
|
130
|
+
*
|
131
|
+
* This package is an SSL implementation written
|
132
|
+
* by Eric Young (eay@cryptsoft.com).
|
133
|
+
* The implementation was written so as to conform with Netscapes SSL.
|
134
|
+
*
|
135
|
+
* This library is free for commercial and non-commercial use as long as
|
136
|
+
* the following conditions are adhered to. The following conditions
|
137
|
+
* apply to all code found in this distribution, be it the RC4, RSA,
|
138
|
+
* lhash, DES, etc., code; not just the SSL code. The SSL documentation
|
139
|
+
* included with this distribution is covered by the same copyright terms
|
140
|
+
* except that the holder is Tim Hudson (tjh@cryptsoft.com).
|
141
|
+
*
|
142
|
+
* Copyright remains Eric Young's, and as such any Copyright notices in
|
143
|
+
* the code are not to be removed.
|
144
|
+
* If this package is used in a product, Eric Young should be given
|
145
|
+
* attribution as the author of the parts of the library used.
|
146
|
+
* This can be in the form of a textual message at program startup or
|
147
|
+
* in documentation (online or textual) provided with the package.
|
148
|
+
*
|
149
|
+
* Redistribution and use in source and binary forms, with or without
|
150
|
+
* modification, are permitted provided that the following conditions
|
151
|
+
* are met:
|
152
|
+
* 1. Redistributions of source code must retain the copyright
|
153
|
+
* notice, this list of conditions and the following disclaimer.
|
154
|
+
* 2. Redistributions in binary form must reproduce the above copyright
|
155
|
+
* notice, this list of conditions and the following disclaimer in the
|
156
|
+
* documentation and/or other materials provided with the distribution.
|
157
|
+
* 3. All advertising materials mentioning features or use of this
|
158
|
+
* software must display the following acknowledgement:
|
159
|
+
* "This product includes cryptographic software written by
|
160
|
+
* Eric Young (eay@cryptsoft.com)"
|
161
|
+
* The word 'cryptographic' can be left out if the routines from the
|
162
|
+
* library being used are not cryptographic related :-) .
|
163
|
+
* 4. If you include any Windows specific code (or a derivative thereof)
|
164
|
+
* from the apps directory (application code) you must include an
|
165
|
+
* acknowledgement: "This product includes software written by Tim
|
166
|
+
* Hudson (tjh@cryptsoft.com)"
|
167
|
+
*
|
168
|
+
* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
|
169
|
+
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
170
|
+
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
171
|
+
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
|
172
|
+
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
173
|
+
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
174
|
+
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
175
|
+
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
176
|
+
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
177
|
+
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
178
|
+
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
179
|
+
*
|
180
|
+
* The licence and distribution terms for any publicly available version
|
181
|
+
* or derivative of this code cannot be changed. i.e. this code cannot
|
182
|
+
* simply be copied and put under another distribution licence
|
183
|
+
* [including the GNU Public Licence.]
|
184
|
+
*
|
185
|
+
|
186
|
+
|
33
187
|
sol2 License
|
34
188
|
-----------------------
|
35
189
|
|
@@ -328,128 +482,3 @@ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
328
482
|
DEALINGS IN THE SOFTWARE.
|
329
483
|
|
330
484
|
|
331
|
-
|
332
|
-
LICENSE ISSUES
|
333
|
-
==============
|
334
|
-
|
335
|
-
The OpenSSL toolkit stays under a double license, i.e. both the conditions of
|
336
|
-
the OpenSSL License and the original SSLeay license apply to the toolkit.
|
337
|
-
See below for the actual license texts.
|
338
|
-
|
339
|
-
OpenSSL License
|
340
|
-
---------------
|
341
|
-
|
342
|
-
/* ====================================================================
|
343
|
-
* Copyright (c) 1998-2019 The OpenSSL Project. All rights reserved.
|
344
|
-
*
|
345
|
-
* Redistribution and use in source and binary forms, with or without
|
346
|
-
* modification, are permitted provided that the following conditions
|
347
|
-
* are met:
|
348
|
-
*
|
349
|
-
* 1. Redistributions of source code must retain the above copyright
|
350
|
-
* notice, this list of conditions and the following disclaimer.
|
351
|
-
*
|
352
|
-
* 2. Redistributions in binary form must reproduce the above copyright
|
353
|
-
* notice, this list of conditions and the following disclaimer in
|
354
|
-
* the documentation and/or other materials provided with the
|
355
|
-
* distribution.
|
356
|
-
*
|
357
|
-
* 3. All advertising materials mentioning features or use of this
|
358
|
-
* software must display the following acknowledgment:
|
359
|
-
* "This product includes software developed by the OpenSSL Project
|
360
|
-
* for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
|
361
|
-
*
|
362
|
-
* 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
|
363
|
-
* endorse or promote products derived from this software without
|
364
|
-
* prior written permission. For written permission, please contact
|
365
|
-
* openssl-core@openssl.org.
|
366
|
-
*
|
367
|
-
* 5. Products derived from this software may not be called "OpenSSL"
|
368
|
-
* nor may "OpenSSL" appear in their names without prior written
|
369
|
-
* permission of the OpenSSL Project.
|
370
|
-
*
|
371
|
-
* 6. Redistributions of any form whatsoever must retain the following
|
372
|
-
* acknowledgment:
|
373
|
-
* "This product includes software developed by the OpenSSL Project
|
374
|
-
* for use in the OpenSSL Toolkit (http://www.openssl.org/)"
|
375
|
-
*
|
376
|
-
* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
|
377
|
-
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
378
|
-
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
379
|
-
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
|
380
|
-
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
381
|
-
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
382
|
-
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
383
|
-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
384
|
-
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
385
|
-
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
386
|
-
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
387
|
-
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
388
|
-
* ====================================================================
|
389
|
-
*
|
390
|
-
* This product includes cryptographic software written by Eric Young
|
391
|
-
* (eay@cryptsoft.com). This product includes software written by Tim
|
392
|
-
* Hudson (tjh@cryptsoft.com).
|
393
|
-
*
|
394
|
-
*/
|
395
|
-
|
396
|
-
Original SSLeay License
|
397
|
-
-----------------------
|
398
|
-
|
399
|
-
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
|
400
|
-
* All rights reserved.
|
401
|
-
*
|
402
|
-
* This package is an SSL implementation written
|
403
|
-
* by Eric Young (eay@cryptsoft.com).
|
404
|
-
* The implementation was written so as to conform with Netscapes SSL.
|
405
|
-
*
|
406
|
-
* This library is free for commercial and non-commercial use as long as
|
407
|
-
* the following conditions are aheared to. The following conditions
|
408
|
-
* apply to all code found in this distribution, be it the RC4, RSA,
|
409
|
-
* lhash, DES, etc., code; not just the SSL code. The SSL documentation
|
410
|
-
* included with this distribution is covered by the same copyright terms
|
411
|
-
* except that the holder is Tim Hudson (tjh@cryptsoft.com).
|
412
|
-
*
|
413
|
-
* Copyright remains Eric Young's, and as such any Copyright notices in
|
414
|
-
* the code are not to be removed.
|
415
|
-
* If this package is used in a product, Eric Young should be given attribution
|
416
|
-
* as the author of the parts of the library used.
|
417
|
-
* This can be in the form of a textual message at program startup or
|
418
|
-
* in documentation (online or textual) provided with the package.
|
419
|
-
*
|
420
|
-
* Redistribution and use in source and binary forms, with or without
|
421
|
-
* modification, are permitted provided that the following conditions
|
422
|
-
* are met:
|
423
|
-
* 1. Redistributions of source code must retain the copyright
|
424
|
-
* notice, this list of conditions and the following disclaimer.
|
425
|
-
* 2. Redistributions in binary form must reproduce the above copyright
|
426
|
-
* notice, this list of conditions and the following disclaimer in the
|
427
|
-
* documentation and/or other materials provided with the distribution.
|
428
|
-
* 3. All advertising materials mentioning features or use of this software
|
429
|
-
* must display the following acknowledgement:
|
430
|
-
* "This product includes cryptographic software written by
|
431
|
-
* Eric Young (eay@cryptsoft.com)"
|
432
|
-
* The word 'cryptographic' can be left out if the rouines from the library
|
433
|
-
* being used are not cryptographic related :-).
|
434
|
-
* 4. If you include any Windows specific code (or a derivative thereof) from
|
435
|
-
* the apps directory (application code) you must include an acknowledgement:
|
436
|
-
* "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
|
437
|
-
*
|
438
|
-
* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
|
439
|
-
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
440
|
-
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
441
|
-
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
442
|
-
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
443
|
-
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
444
|
-
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
445
|
-
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
446
|
-
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
447
|
-
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
448
|
-
* SUCH DAMAGE.
|
449
|
-
*
|
450
|
-
* The licence and distribution terms for any publically available version or
|
451
|
-
* derivative of this code cannot be changed. i.e. this code cannot simply be
|
452
|
-
* copied and put under another distribution licence
|
453
|
-
* [including the GNU Public Licence.]
|
454
|
-
*/
|
455
|
-
|
data/ext/P4/extconf.rb
CHANGED
@@ -162,7 +162,7 @@ def set_platform_opts
|
|
162
162
|
# gcc detection patterns above won't catch that, so for these
|
163
163
|
# platforms, we specifically convert cc to c++.
|
164
164
|
CONFIG['LDSHARED'].sub!(/^cc/, 'c++')
|
165
|
-
when /MINGW32/
|
165
|
+
when /MINGW32/, /MINGW/
|
166
166
|
# When building with MinGW we need to statically link libgcc
|
167
167
|
# and make sure we're linking with gcc and not g++. On older
|
168
168
|
# Rubies, they use LDSHARED; newer ones (>=1.9) use LDSHAREDXX
|
@@ -193,6 +193,10 @@ def set_platform_cppflags
|
|
193
193
|
$CPPFLAGS += '-DOS_NT -DCASE_INSENSITIVE '
|
194
194
|
end
|
195
195
|
|
196
|
+
if (p4osname == 'MINGW')
|
197
|
+
$CPPFLAGS += '-DOS_NT -DCASE_INSENSITIVE '
|
198
|
+
end
|
199
|
+
|
196
200
|
if (p4osname == 'SOLARIS')
|
197
201
|
$CPPFLAGS += '-Dsolaris '
|
198
202
|
end
|
@@ -238,7 +242,7 @@ def set_platform_libs
|
|
238
242
|
$LDFLAGS.slice!('-arch ppc')
|
239
243
|
$LDFLAGS += ' -framework CoreFoundation -framework Foundation'
|
240
244
|
end
|
241
|
-
when 'LINUX', 'MINGW32'
|
245
|
+
when 'LINUX', 'MINGW32', 'MINGW'
|
242
246
|
$LDFLAGS += ' -Wl,--allow-multiple-definition'
|
243
247
|
have_library('supc++')
|
244
248
|
end
|
data/ext/P4/p4.cpp
CHANGED
@@ -632,6 +632,23 @@ static VALUE p4_set_graph( VALUE self, VALUE toggle )
|
|
632
632
|
return flag ? Qtrue : Qfalse; // Seems to be ignored...
|
633
633
|
}
|
634
634
|
|
635
|
+
static VALUE p4_set_array_conversion( VALUE self, VALUE toggle )
|
636
|
+
{
|
637
|
+
P4ClientApi *p4;
|
638
|
+
Data_Get_Struct( self, P4ClientApi, p4 );
|
639
|
+
int flag = 1;
|
640
|
+
|
641
|
+
if( toggle == Qtrue )
|
642
|
+
flag = 1;
|
643
|
+
else if( toggle == Qfalse )
|
644
|
+
flag = 0;
|
645
|
+
else
|
646
|
+
flag = NUM2INT( toggle ) ? 1 : 0;
|
647
|
+
|
648
|
+
p4->SetArrayConversion( flag );
|
649
|
+
return flag ? Qtrue : Qfalse;
|
650
|
+
}
|
651
|
+
|
635
652
|
/*******************************************************************************
|
636
653
|
* Running commands. General purpose Run method and method for supplying
|
637
654
|
* input to "p4 xxx -i" commands
|
@@ -1403,6 +1420,7 @@ void Init_P4()
|
|
1403
1420
|
// Spec parsing
|
1404
1421
|
rb_define_method( cP4, "parse_spec", RUBY_METHOD_FUNC(p4_parse_spec), 2 );
|
1405
1422
|
rb_define_method( cP4, "format_spec", RUBY_METHOD_FUNC(p4_format_spec), 2 );
|
1423
|
+
rb_define_method( cP4, "set_array_conversion=", RUBY_METHOD_FUNC(p4_set_array_conversion), 1 );
|
1406
1424
|
|
1407
1425
|
// Identification
|
1408
1426
|
rb_define_const( cP4, "P4API_VERSION", P4Utils::ruby_string(P4APIVER_STRING));
|
data/ext/P4/p4clientapi.cpp
CHANGED
@@ -243,6 +243,12 @@ P4ClientApi::SetDebug( int d )
|
|
243
243
|
p4debug.SetLevel( "ssl=0" );
|
244
244
|
}
|
245
245
|
|
246
|
+
void
|
247
|
+
P4ClientApi::SetArrayConversion( int i )
|
248
|
+
{
|
249
|
+
specMgr.SetArrayConversion( i );
|
250
|
+
}
|
251
|
+
|
246
252
|
void
|
247
253
|
P4ClientApi::SetProtocol( const char *var, const char *val )
|
248
254
|
{
|
data/ext/P4/p4clientapi.h
CHANGED
@@ -89,6 +89,7 @@ public:
|
|
89
89
|
void SetTrustFile( const char *p );
|
90
90
|
void SetUser( const char *u ) { client.SetUser( u ); }
|
91
91
|
void SetVersion( const char *v ) { version = v; }
|
92
|
+
void SetArrayConversion ( int i );
|
92
93
|
|
93
94
|
int GetApiLevel() { return apiLevel; }
|
94
95
|
const StrPtr &GetCharset() { return client.GetCharset(); }
|
data/ext/P4/specmgr.cpp
CHANGED
@@ -123,6 +123,7 @@ struct defaultspec {
|
|
123
123
|
{
|
124
124
|
"group",
|
125
125
|
"Group;code:401;rq;ro;len:32;;"
|
126
|
+
"Description;code:NNN;type:text;fmt:L:len:128;;"
|
126
127
|
"MaxResults;code:402;type:word;len:12;;"
|
127
128
|
"MaxScanRows;code:403;type:word;len:12;;"
|
128
129
|
"MaxLockTime;code:407;type:word;len:12;;"
|
@@ -289,6 +290,7 @@ struct defaultspec {
|
|
289
290
|
"mergedown/mergeany;open:isolate;;"
|
290
291
|
"ParentView;code:NNN;rq;open:isolate;"
|
291
292
|
"pre:inherit;val:noinherit/inherit;;"
|
293
|
+
"Components;code:NNN;type:wlist;words:3;maxwords:4;len:64;open:propagate;fmt:C;;"
|
292
294
|
"Paths;code:710;rq;type:wlist;words:2;maxwords:3;len:64;open:propagate;fmt:C;;"
|
293
295
|
"Remapped;code:711;type:wlist;words:2;len:64;open:propagate;fmt:C;;"
|
294
296
|
"Ignored;code:712;type:wlist;words:1;len:64;open:propagate;fmt:C;;"
|
@@ -324,6 +326,7 @@ SpecMgr::SpecMgr()
|
|
324
326
|
{
|
325
327
|
debug = 0;
|
326
328
|
specs = 0;
|
329
|
+
convertArray = 1;
|
327
330
|
Reset();
|
328
331
|
}
|
329
332
|
|
@@ -590,7 +593,9 @@ SpecMgr::InsertItem( VALUE hash, const StrPtr *var, const StrPtr *val )
|
|
590
593
|
StrBuf base, index;
|
591
594
|
StrRef comma( "," );
|
592
595
|
|
593
|
-
|
596
|
+
if (convertArray) {
|
597
|
+
SplitKey( var, base, index );
|
598
|
+
}
|
594
599
|
|
595
600
|
// If there's no index, then we insert into the top level hash
|
596
601
|
// but if the key is already defined then we need to rename the key. This
|
data/ext/P4/specmgr.h
CHANGED
@@ -44,6 +44,7 @@ class SpecMgr
|
|
44
44
|
SpecMgr();
|
45
45
|
~SpecMgr();
|
46
46
|
void SetDebug( int i ) { debug = i; }
|
47
|
+
void SetArrayConversion( int a) { convertArray = a; }
|
47
48
|
|
48
49
|
// Clear the spec cache and revert to internal defaults
|
49
50
|
void Reset();
|
@@ -97,6 +98,7 @@ class SpecMgr
|
|
97
98
|
|
98
99
|
private:
|
99
100
|
int debug;
|
101
|
+
int convertArray;
|
100
102
|
StrBufDict * specs;
|
101
103
|
};
|
102
104
|
|
data/ext/P4/undefdups.h
CHANGED
@@ -44,9 +44,9 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
44
44
|
#undef HAVE_FSYNC
|
45
45
|
#undef HAVE_TRUNCATE
|
46
46
|
|
47
|
-
#ifdef
|
47
|
+
#ifdef _WIN32
|
48
48
|
|
49
|
-
//
|
49
|
+
// Unnecessary "#define SetPort SetPortA" in winspool.h
|
50
50
|
# ifdef SetPort
|
51
51
|
# undef SetPort
|
52
52
|
# endif
|
data/lib/2.7/P4.so
CHANGED
Binary file
|
data/lib/3.0/P4.so
CHANGED
Binary file
|
data/lib/3.1/P4.so
ADDED
Binary file
|
data/lib/P4/version.rb
CHANGED
data/lib/P4.so
CHANGED
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: 2022.1.2359956
|
5
5
|
platform: x86-mingw32
|
6
6
|
authors:
|
7
7
|
- Perforce Software, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-10-26 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,9 +43,9 @@ files:
|
|
43
43
|
- ext/P4/specmgr.cpp
|
44
44
|
- ext/P4/specmgr.h
|
45
45
|
- ext/P4/undefdups.h
|
46
|
-
- lib/2.6/P4.so
|
47
46
|
- lib/2.7/P4.so
|
48
47
|
- lib/3.0/P4.so
|
48
|
+
- lib/3.1/P4.so
|
49
49
|
- lib/P4.rb
|
50
50
|
- lib/P4.so
|
51
51
|
- lib/P4/version.rb
|
@@ -69,7 +69,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
69
69
|
- !ruby/object:Gem::Version
|
70
70
|
version: '0'
|
71
71
|
requirements: []
|
72
|
-
rubygems_version: 3.
|
72
|
+
rubygems_version: 3.3.7
|
73
73
|
signing_key:
|
74
74
|
specification_version: 4
|
75
75
|
summary: Ruby extensions to the C++ Perforce API
|
data/lib/2.6/P4.so
DELETED
Binary file
|