11 Release Notes for
2- P4Ruby, Perforce's script API for Ruby
2+ P4Ruby, P4 API for Ruby
33
4- Version 2024.2
4+ Version 2025.1
55
66Introduction
77
@@ -16,22 +16,24 @@ Introduction
1616 release up to the bug fix change level.
1717
1818 Precompiled versions of P4Ruby are built against a corresponding version
19- of the Perforce C ++ API, e.g., P4Ruby 2024.2 will be compiled using a
20- 2024.2 version of the P4API . You can always install P4Ruby using a
21- source-only variation, selecting a specific version of the P4API .
19+ of the P4 C/C ++ API, e.g., P4Ruby 2025.1 will be compiled using a
20+ 2025.1 version of the P4 C/C++ API . You can always install P4Ruby using a
21+ source-only variation, selecting a specific version of the P4 C/C++ API .
2222
2323 To determine the version of your P4Ruby, and which version of the
24- P4API it has been built with, issue the following command:
24+ P4 C/C++ API it has been built with, issue the following command:
2525 ruby -rP4 -e "puts P4.identify"
2626
27-
2827--------------------------------------------------------------------------
2928
30- Important End-of-Life Notice
29+ Important Product Rebrand Notice
3130
32- This release of P4Ruby would be the last to support and test against
33- Ruby 3.1 which is in EOL status. This is part of our commitment to
34- focus on supported technology platforms.
31+ Helix Core is now P4
32+ Perforce has a new look and logo that reflects our place in DevOps
33+ workflows. As part of these changes, Helix Core is now P4. Name updates
34+ and new icons to align with the P4 branding will be rolled out soon.
35+ To learn more, see:
36+ https://www.perforce.com/blog/vcs/introducing-the-p4-platform
3537
3638--------------------------------------------------------------------------
3739
@@ -73,36 +75,35 @@ Compatibility Statements
7375
7476 Server Compatibility
7577
76- This release of P4Ruby supports the 2024.2 Perforce Server.
78+ This release of P4Ruby supports the 2025.1 P4 Server.
7779 Older releases might work but are not supported.
7880
7981 API Compatibility
8082
81- This release of P4Ruby supports the 2024.2 Perforce API
82- (2024.2/2675662 ). Older releases might work but are not supported.
83+ This release of P4Ruby supports the 2025.1 P4 C/C++ API
84+ (2025.1/2761706 ). Older releases might work but are not supported.
8385
8486 Ruby Compatibility
8587
86- This release of P4Ruby is supported on Ruby versions 3.1, 3. 2, 3.3
88+ This release of P4Ruby is supported on Ruby versions 3.2, 3.3
8789 and 3.4
8890
8991 For detailed compatibility, please check the following table:
9092
9193 Ruby Release | P4Ruby Release
9294 ===================================
93- 3.1 | 2022.1 or later
9495 3.2 | 2023.1 or later
9596 3.3 | 2024.2 or later
9697 3.4 | 2024.2.1 or later
9798
9899 OpenSSL Compatibility
99100
100101 To build P4Ruby with encrypted communication support, you must use the
101- version of OpenSSL that Perforce C/C++ API has been built against.
102+ version of OpenSSL that P4 C/C++ API has been built against.
102103
103- Beginning with the 2017.1 release of the Helix C/C++ API, the dependency
104+ Beginning with the 2017.1 release of the P4 C/C++ API, the dependency
104105 on OpenSSL is now enforced and the SSL stub library has been removed.
105- Executables linked against the P4API libraries must also be linked against
106+ Executables linked against the P4 C/C++ API libraries must also be linked against
106107 real OpenSSL libraries: The latest 3.0.x or 1.1.1 patch is recommended
107108
108109 Platform Compatibility
@@ -126,17 +127,17 @@ Compatibility Statements
126127
127128 To build P4Ruby from source, you must use a version of Ruby that
128129 has been compiled with the same compiler used to build the
129- Perforce C++ API: for most platforms, use gcc/g++.
130+ P4 C/ C++ API: for most platforms, use gcc/g++.
130131
131132 Attempting to use a different compiler or a different version
132133 of the compiler causes linker errors due to differences in name
133134 handling between compilers.
134135
135136 Known Limitations
136137
137- The Perforce client-server protocol is not designed to support
138+ The P4 client-server protocol is not designed to support
138139 multiple concurrent queries over the same connection. For this
139- reason, multi-threaded applications using the C++ API or the
140+ reason, multi-threaded applications using the P4 C/ C++ API or the
140141 script APIs (P4Perl, P4Ruby, etc.) should ensure that a
141142 separate connection is used for each thread or that only one
142143 thread may use a shared connection at a time.
@@ -146,12 +147,27 @@ Compatibility Statements
146147Key to symbols used in change notes below.
147148
148149 * -- requires new P4Ruby
149- ** -- requires P4Ruby built with new P4API
150+ ** -- requires P4Ruby built with new P4 C/C++ API
150151 *** -- requires new p4d server program
151152
152153--------------------------------------------------------------------------
153154--------------------------------------------------------------------------
154155
156+ New functionality in 2025.1 (2025.1/2767474) (2025/05/21)
157+
158+ #2757770 (Job #125786) * ** ***
159+ This release of P4Ruby supports P4 C/C++ API 2025.1 (2025.1/2761706)
160+
161+ Bugs fixed in 2025.1
162+
163+ #2753706 (Job #125659) *
164+ Override the "HandleError" method in "clientuserruby", to process
165+ error data after a failed command. This change ensure errors like
166+ "Can't clobber writable file" are captured and processed as P4Message.
167+
168+ --------------------------------------------------------------------------
169+ --------------------------------------------------------------------------
170+
155171New functionality in 2024.2 Patch 1 (2024.2/2736761) (2025/03/19)
156172
157173 #2733739 #2736249 (Job #124477) *
0 commit comments