Completed
Push — stable13 ( b660dd...dc0fd5 )
by
unknown
33:01 queued 16:38
created
lib/public/RichObjectStrings/IValidator.php 1 patch
Indentation   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -29,11 +29,11 @@
 block discarded – undo
29 29
  */
30 30
 interface IValidator {
31 31
 
32
-	/**
33
-	 * @param string $subject
34
-	 * @param array[] $parameters
35
-	 * @throws InvalidObjectExeption
36
-	 * @since 11.0.0
37
-	 */
38
-	public function validate($subject, array $parameters);
32
+    /**
33
+     * @param string $subject
34
+     * @param array[] $parameters
35
+     * @throws InvalidObjectExeption
36
+     * @since 11.0.0
37
+     */
38
+    public function validate($subject, array $parameters);
39 39
 }
Please login to merge, or discard this patch.
lib/public/DB/QueryBuilder/IQueryFunction.php 1 patch
Indentation   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -26,9 +26,9 @@
 block discarded – undo
26 26
  * @since 8.2.0
27 27
  */
28 28
 interface IQueryFunction {
29
-	/**
30
-	 * @return string
31
-	 * @since 8.2.0
32
-	 */
33
-	public function __toString();
29
+    /**
30
+     * @return string
31
+     * @since 8.2.0
32
+     */
33
+    public function __toString();
34 34
 }
Please login to merge, or discard this patch.
lib/public/DB/QueryBuilder/ILiteral.php 1 patch
Indentation   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -26,9 +26,9 @@
 block discarded – undo
26 26
  * @since 8.2.0
27 27
  */
28 28
 interface ILiteral {
29
-	/**
30
-	 * @return string
31
-	 * @since 8.2.0
32
-	 */
33
-	public function __toString();
29
+    /**
30
+     * @return string
31
+     * @since 8.2.0
32
+     */
33
+    public function __toString();
34 34
 }
Please login to merge, or discard this patch.
lib/public/DB/QueryBuilder/ICompositeExpression.php 1 patch
Indentation   +32 added lines, -32 removed lines patch added patch discarded remove patch
@@ -28,39 +28,39 @@
 block discarded – undo
28 28
  * @since 8.2.0
29 29
  */
30 30
 interface ICompositeExpression {
31
-	/**
32
-	 * Adds multiple parts to composite expression.
33
-	 *
34
-	 * @param array $parts
35
-	 *
36
-	 * @return ICompositeExpression
37
-	 * @since 8.2.0
38
-	 */
39
-	public function addMultiple(array $parts = array());
31
+    /**
32
+     * Adds multiple parts to composite expression.
33
+     *
34
+     * @param array $parts
35
+     *
36
+     * @return ICompositeExpression
37
+     * @since 8.2.0
38
+     */
39
+    public function addMultiple(array $parts = array());
40 40
 
41
-	/**
42
-	 * Adds an expression to composite expression.
43
-	 *
44
-	 * @param mixed $part
45
-	 *
46
-	 * @return ICompositeExpression
47
-	 * @since 8.2.0
48
-	 */
49
-	public function add($part);
41
+    /**
42
+     * Adds an expression to composite expression.
43
+     *
44
+     * @param mixed $part
45
+     *
46
+     * @return ICompositeExpression
47
+     * @since 8.2.0
48
+     */
49
+    public function add($part);
50 50
 
51
-	/**
52
-	 * Retrieves the amount of expressions on composite expression.
53
-	 *
54
-	 * @return integer
55
-	 * @since 8.2.0
56
-	 */
57
-	public function count();
51
+    /**
52
+     * Retrieves the amount of expressions on composite expression.
53
+     *
54
+     * @return integer
55
+     * @since 8.2.0
56
+     */
57
+    public function count();
58 58
 
59
-	/**
60
-	 * Returns the type of this composite expression (AND/OR).
61
-	 *
62
-	 * @return string
63
-	 * @since 8.2.0
64
-	 */
65
-	public function getType();
59
+    /**
60
+     * Returns the type of this composite expression (AND/OR).
61
+     *
62
+     * @return string
63
+     * @since 8.2.0
64
+     */
65
+    public function getType();
66 66
 }
Please login to merge, or discard this patch.
lib/public/DB/QueryBuilder/IParameter.php 1 patch
Indentation   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -26,9 +26,9 @@
 block discarded – undo
26 26
  * @since 8.2.0
27 27
  */
28 28
 interface IParameter {
29
-	/**
30
-	 * @return string
31
-	 * @since 8.2.0
32
-	 */
33
-	public function __toString();
29
+    /**
30
+     * @return string
31
+     * @since 8.2.0
32
+     */
33
+    public function __toString();
34 34
 }
Please login to merge, or discard this patch.
lib/public/Contacts.php 1 patch
Indentation   +141 added lines, -141 removed lines patch added patch discarded remove patch
@@ -33,153 +33,153 @@
 block discarded – undo
33 33
 // This means that they should be used by apps instead of the internal ownCloud classes
34 34
 namespace OCP {
35 35
 
36
-	/**
37
-	 * This class provides access to the contacts app. Use this class exclusively if you want to access contacts.
38
-	 *
39
-	 * Contacts in general will be expressed as an array of key-value-pairs.
40
-	 * The keys will match the property names defined in https://tools.ietf.org/html/rfc2426#section-1
41
-	 *
42
-	 * Proposed workflow for working with contacts:
43
-	 *  - search for the contacts
44
-	 *  - manipulate the results array
45
-	 *  - createOrUpdate will save the given contacts overwriting the existing data
46
-	 *
47
-	 * For updating it is mandatory to keep the id.
48
-	 * Without an id a new contact will be created.
49
-	 *
50
-	 * @deprecated 8.1.0 use methods of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
51
-	 * @since 5.0.0
52
-	 */
53
-	class Contacts {
36
+    /**
37
+     * This class provides access to the contacts app. Use this class exclusively if you want to access contacts.
38
+     *
39
+     * Contacts in general will be expressed as an array of key-value-pairs.
40
+     * The keys will match the property names defined in https://tools.ietf.org/html/rfc2426#section-1
41
+     *
42
+     * Proposed workflow for working with contacts:
43
+     *  - search for the contacts
44
+     *  - manipulate the results array
45
+     *  - createOrUpdate will save the given contacts overwriting the existing data
46
+     *
47
+     * For updating it is mandatory to keep the id.
48
+     * Without an id a new contact will be created.
49
+     *
50
+     * @deprecated 8.1.0 use methods of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
51
+     * @since 5.0.0
52
+     */
53
+    class Contacts {
54 54
 
55
-		/**
56
-		 * This function is used to search and find contacts within the users address books.
57
-		 * In case $pattern is empty all contacts will be returned.
58
-		 *
59
-		 * Example:
60
-		 *  Following function shows how to search for contacts for the name and the email address.
61
-		 *
62
-		 *		public static function getMatchingRecipient($term) {
63
-		 *			// The API is not active -> nothing to do
64
-		 *			if (!\OCP\Contacts::isEnabled()) {
65
-		 *				return array();
66
-		 *			}
67
-		 *
68
-		 *			$result = \OCP\Contacts::search($term, array('FN', 'EMAIL'));
69
-		 *			$receivers = array();
70
-		 *			foreach ($result as $r) {
71
-		 *				$id = $r['id'];
72
-		 *				$fn = $r['FN'];
73
-		 *				$email = $r['EMAIL'];
74
-		 *				if (!is_array($email)) {
75
-		 *					$email = array($email);
76
-		 *				}
77
-		 *
78
-		 *				// loop through all email addresses of this contact
79
-		 *				foreach ($email as $e) {
80
-		 *				$displayName = $fn . " <$e>";
81
-		 *				$receivers[] = array(
82
-		 *					'id'    => $id,
83
-		 *					'label' => $displayName,
84
-		 *					'value' => $displayName);
85
-		 *				}
86
-		 *			}
87
-		 *
88
-		 *			return $receivers;
89
-		 *		}
90
-		 *
91
-		 *
92
-		 * @param string $pattern which should match within the $searchProperties
93
-		 * @param array $searchProperties defines the properties within the query pattern should match
94
-		 * @param array $options - for future use. One should always have options!
95
-		 * @return array an array of contacts which are arrays of key-value-pairs
96
-		 * @deprecated 8.1.0 use search() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
97
-		 * @since 5.0.0
98
-		 */
99
-		public static function search($pattern, $searchProperties = array(), $options = array()) {
100
-			$cm = \OC::$server->getContactsManager();
101
-			return $cm->search($pattern, $searchProperties, $options);
102
-		}
55
+        /**
56
+         * This function is used to search and find contacts within the users address books.
57
+         * In case $pattern is empty all contacts will be returned.
58
+         *
59
+         * Example:
60
+         *  Following function shows how to search for contacts for the name and the email address.
61
+         *
62
+         *		public static function getMatchingRecipient($term) {
63
+         *			// The API is not active -> nothing to do
64
+         *			if (!\OCP\Contacts::isEnabled()) {
65
+         *				return array();
66
+         *			}
67
+         *
68
+         *			$result = \OCP\Contacts::search($term, array('FN', 'EMAIL'));
69
+         *			$receivers = array();
70
+         *			foreach ($result as $r) {
71
+         *				$id = $r['id'];
72
+         *				$fn = $r['FN'];
73
+         *				$email = $r['EMAIL'];
74
+         *				if (!is_array($email)) {
75
+         *					$email = array($email);
76
+         *				}
77
+         *
78
+         *				// loop through all email addresses of this contact
79
+         *				foreach ($email as $e) {
80
+         *				$displayName = $fn . " <$e>";
81
+         *				$receivers[] = array(
82
+         *					'id'    => $id,
83
+         *					'label' => $displayName,
84
+         *					'value' => $displayName);
85
+         *				}
86
+         *			}
87
+         *
88
+         *			return $receivers;
89
+         *		}
90
+         *
91
+         *
92
+         * @param string $pattern which should match within the $searchProperties
93
+         * @param array $searchProperties defines the properties within the query pattern should match
94
+         * @param array $options - for future use. One should always have options!
95
+         * @return array an array of contacts which are arrays of key-value-pairs
96
+         * @deprecated 8.1.0 use search() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
97
+         * @since 5.0.0
98
+         */
99
+        public static function search($pattern, $searchProperties = array(), $options = array()) {
100
+            $cm = \OC::$server->getContactsManager();
101
+            return $cm->search($pattern, $searchProperties, $options);
102
+        }
103 103
 
104
-		/**
105
-		 * This function can be used to delete the contact identified by the given id
106
-		 *
107
-		 * @param object $id the unique identifier to a contact
108
-		 * @param string $address_book_key
109
-		 * @return bool successful or not
110
-		 * @deprecated 8.1.0 use delete() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
111
-		 * @since 5.0.0
112
-		 */
113
-		public static function delete($id, $address_book_key) {
114
-			$cm = \OC::$server->getContactsManager();
115
-			return $cm->delete($id, $address_book_key);
116
-		}
104
+        /**
105
+         * This function can be used to delete the contact identified by the given id
106
+         *
107
+         * @param object $id the unique identifier to a contact
108
+         * @param string $address_book_key
109
+         * @return bool successful or not
110
+         * @deprecated 8.1.0 use delete() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
111
+         * @since 5.0.0
112
+         */
113
+        public static function delete($id, $address_book_key) {
114
+            $cm = \OC::$server->getContactsManager();
115
+            return $cm->delete($id, $address_book_key);
116
+        }
117 117
 
118
-		/**
119
-		 * This function is used to create a new contact if 'id' is not given or not present.
120
-		 * Otherwise the contact will be updated by replacing the entire data set.
121
-		 *
122
-		 * @param array $properties this array if key-value-pairs defines a contact
123
-		 * @param string $address_book_key identifier of the address book in which the contact shall be created or updated
124
-		 * @return array an array representing the contact just created or updated
125
-		 * @deprecated 8.1.0 use createOrUpdate() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
126
-		 * @since 5.0.0
127
-		 */
128
-		public static function createOrUpdate($properties, $address_book_key) {
129
-			$cm = \OC::$server->getContactsManager();
130
-			return $cm->createOrUpdate($properties, $address_book_key);
131
-		}
118
+        /**
119
+         * This function is used to create a new contact if 'id' is not given or not present.
120
+         * Otherwise the contact will be updated by replacing the entire data set.
121
+         *
122
+         * @param array $properties this array if key-value-pairs defines a contact
123
+         * @param string $address_book_key identifier of the address book in which the contact shall be created or updated
124
+         * @return array an array representing the contact just created or updated
125
+         * @deprecated 8.1.0 use createOrUpdate() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
126
+         * @since 5.0.0
127
+         */
128
+        public static function createOrUpdate($properties, $address_book_key) {
129
+            $cm = \OC::$server->getContactsManager();
130
+            return $cm->createOrUpdate($properties, $address_book_key);
131
+        }
132 132
 
133
-		/**
134
-		 * Check if contacts are available (e.g. contacts app enabled)
135
-		 *
136
-		 * @return bool true if enabled, false if not
137
-		 * @deprecated 8.1.0 use isEnabled() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
138
-		 * @since 5.0.0
139
-		 */
140
-		public static function isEnabled() {
141
-			$cm = \OC::$server->getContactsManager();
142
-			return $cm->isEnabled();
143
-		}
133
+        /**
134
+         * Check if contacts are available (e.g. contacts app enabled)
135
+         *
136
+         * @return bool true if enabled, false if not
137
+         * @deprecated 8.1.0 use isEnabled() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
138
+         * @since 5.0.0
139
+         */
140
+        public static function isEnabled() {
141
+            $cm = \OC::$server->getContactsManager();
142
+            return $cm->isEnabled();
143
+        }
144 144
 
145
-		/**
146
-		 * @param \OCP\IAddressBook $address_book
147
-		 * @deprecated 8.1.0 use registerAddressBook() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
148
-		 * @since 5.0.0
149
-		 */
150
-		public static function registerAddressBook(\OCP\IAddressBook $address_book) {
151
-			$cm = \OC::$server->getContactsManager();
152
-			$cm->registerAddressBook($address_book);
153
-		}
145
+        /**
146
+         * @param \OCP\IAddressBook $address_book
147
+         * @deprecated 8.1.0 use registerAddressBook() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
148
+         * @since 5.0.0
149
+         */
150
+        public static function registerAddressBook(\OCP\IAddressBook $address_book) {
151
+            $cm = \OC::$server->getContactsManager();
152
+            $cm->registerAddressBook($address_book);
153
+        }
154 154
 
155
-		/**
156
-		 * @param \OCP\IAddressBook $address_book
157
-		 * @deprecated 8.1.0 use unregisterAddressBook() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
158
-		 * @since 5.0.0
159
-		 */
160
-		public static function unregisterAddressBook(\OCP\IAddressBook $address_book) {
161
-			$cm = \OC::$server->getContactsManager();
162
-			$cm->unregisterAddressBook($address_book);
163
-		}
155
+        /**
156
+         * @param \OCP\IAddressBook $address_book
157
+         * @deprecated 8.1.0 use unregisterAddressBook() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
158
+         * @since 5.0.0
159
+         */
160
+        public static function unregisterAddressBook(\OCP\IAddressBook $address_book) {
161
+            $cm = \OC::$server->getContactsManager();
162
+            $cm->unregisterAddressBook($address_book);
163
+        }
164 164
 
165
-		/**
166
-		 * @return array
167
-		 * @deprecated 8.1.0 use getAddressBooks() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
168
-		 * @since 5.0.0
169
-		 */
170
-		public static function getAddressBooks() {
171
-			$cm = \OC::$server->getContactsManager();
172
-			return $cm->getAddressBooks();
173
-		}
165
+        /**
166
+         * @return array
167
+         * @deprecated 8.1.0 use getAddressBooks() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
168
+         * @since 5.0.0
169
+         */
170
+        public static function getAddressBooks() {
171
+            $cm = \OC::$server->getContactsManager();
172
+            return $cm->getAddressBooks();
173
+        }
174 174
 
175
-		/**
176
-		 * removes all registered address book instances
177
-		 * @deprecated 8.1.0 use clear() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
178
-		 * @since 5.0.0
179
-		 */
180
-		public static function clear() {
181
-			$cm = \OC::$server->getContactsManager();
182
-			$cm->clear();
183
-		}
184
-	}
175
+        /**
176
+         * removes all registered address book instances
177
+         * @deprecated 8.1.0 use clear() of \OCP\Contacts\IManager - \OC::$server->getContactsManager();
178
+         * @since 5.0.0
179
+         */
180
+        public static function clear() {
181
+            $cm = \OC::$server->getContactsManager();
182
+            $cm->clear();
183
+        }
184
+    }
185 185
 }
Please login to merge, or discard this patch.
lib/public/ICertificateManager.php 1 patch
Indentation   +36 added lines, -36 removed lines patch added patch discarded remove patch
@@ -29,44 +29,44 @@
 block discarded – undo
29 29
  * @since 8.0.0
30 30
  */
31 31
 interface ICertificateManager {
32
-	/**
33
-	 * Returns all certificates trusted by the user
34
-	 *
35
-	 * @return \OCP\ICertificate[]
36
-	 * @since 8.0.0
37
-	 */
38
-	public function listCertificates();
32
+    /**
33
+     * Returns all certificates trusted by the user
34
+     *
35
+     * @return \OCP\ICertificate[]
36
+     * @since 8.0.0
37
+     */
38
+    public function listCertificates();
39 39
 
40
-	/**
41
-	 * @param string $certificate the certificate data
42
-	 * @param string $name the filename for the certificate
43
-	 * @return \OCP\ICertificate
44
-	 * @throws \Exception If the certificate could not get added
45
-	 * @since 8.0.0 - since 8.1.0 throws exception instead of returning false
46
-	 */
47
-	public function addCertificate($certificate, $name);
40
+    /**
41
+     * @param string $certificate the certificate data
42
+     * @param string $name the filename for the certificate
43
+     * @return \OCP\ICertificate
44
+     * @throws \Exception If the certificate could not get added
45
+     * @since 8.0.0 - since 8.1.0 throws exception instead of returning false
46
+     */
47
+    public function addCertificate($certificate, $name);
48 48
 
49
-	/**
50
-	 * @param string $name
51
-	 * @since 8.0.0
52
-	 */
53
-	public function removeCertificate($name);
49
+    /**
50
+     * @param string $name
51
+     * @since 8.0.0
52
+     */
53
+    public function removeCertificate($name);
54 54
 
55
-	/**
56
-	 * Get the path to the certificate bundle for this user
57
-	 *
58
-	 * @param string $uid (optional) user to get the certificate bundle for, use `null` to get the system bundle (since 9.0.0)
59
-	 * @return string
60
-	 * @since 8.0.0
61
-	 */
62
-	public function getCertificateBundle($uid = '');
55
+    /**
56
+     * Get the path to the certificate bundle for this user
57
+     *
58
+     * @param string $uid (optional) user to get the certificate bundle for, use `null` to get the system bundle (since 9.0.0)
59
+     * @return string
60
+     * @since 8.0.0
61
+     */
62
+    public function getCertificateBundle($uid = '');
63 63
 
64
-	/**
65
-	 * Get the full local path to the certificate bundle for this user
66
-	 *
67
-	 * @param string $uid (optional) user to get the certificate bundle for, use `null` to get the system bundle
68
-	 * @return string
69
-	 * @since 9.0.0
70
-	 */
71
-	public function getAbsoluteBundlePath($uid = '');
64
+    /**
65
+     * Get the full local path to the certificate bundle for this user
66
+     *
67
+     * @param string $uid (optional) user to get the certificate bundle for, use `null` to get the system bundle
68
+     * @return string
69
+     * @since 9.0.0
70
+     */
71
+    public function getAbsoluteBundlePath($uid = '');
72 72
 }
Please login to merge, or discard this patch.
lib/public/IAvatarManager.php 1 patch
Indentation   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -33,14 +33,14 @@
 block discarded – undo
33 33
 
34 34
 interface IAvatarManager {
35 35
 
36
-	/**
37
-	 * return a user specific instance of \OCP\IAvatar
38
-	 * @see \OCP\IAvatar
39
-	 * @param string $user the ownCloud user id
40
-	 * @return \OCP\IAvatar
41
-	 * @throws \Exception In case the username is potentially dangerous
42
-	 * @throws \OCP\Files\NotFoundException In case there is no user folder yet
43
-	 * @since 6.0.0
44
-	 */
45
-	public function getAvatar($user);
36
+    /**
37
+     * return a user specific instance of \OCP\IAvatar
38
+     * @see \OCP\IAvatar
39
+     * @param string $user the ownCloud user id
40
+     * @return \OCP\IAvatar
41
+     * @throws \Exception In case the username is potentially dangerous
42
+     * @throws \OCP\Files\NotFoundException In case there is no user folder yet
43
+     * @since 6.0.0
44
+     */
45
+    public function getAvatar($user);
46 46
 }
Please login to merge, or discard this patch.
lib/public/Preview/IProvider.php 1 patch
Indentation   +25 added lines, -25 removed lines patch added patch discarded remove patch
@@ -29,31 +29,31 @@
 block discarded – undo
29 29
  * @since 8.1.0
30 30
  */
31 31
 interface IProvider {
32
-	/**
33
-	 * @return string Regex with the mimetypes that are supported by this provider
34
-	 * @since 8.1.0
35
-	 */
36
-	public function getMimeType();
32
+    /**
33
+     * @return string Regex with the mimetypes that are supported by this provider
34
+     * @since 8.1.0
35
+     */
36
+    public function getMimeType();
37 37
 
38
-	/**
39
-	 * Check if a preview can be generated for $path
40
-	 *
41
-	 * @param \OCP\Files\FileInfo $file
42
-	 * @return bool
43
-	 * @since 8.1.0
44
-	 */
45
-	public function isAvailable(\OCP\Files\FileInfo $file);
38
+    /**
39
+     * Check if a preview can be generated for $path
40
+     *
41
+     * @param \OCP\Files\FileInfo $file
42
+     * @return bool
43
+     * @since 8.1.0
44
+     */
45
+    public function isAvailable(\OCP\Files\FileInfo $file);
46 46
 
47
-	/**
48
-	 * get thumbnail for file at path $path
49
-	 *
50
-	 * @param string $path Path of file
51
-	 * @param int $maxX The maximum X size of the thumbnail. It can be smaller depending on the shape of the image
52
-	 * @param int $maxY The maximum Y size of the thumbnail. It can be smaller depending on the shape of the image
53
-	 * @param bool $scalingup Disable/Enable upscaling of previews
54
-	 * @param \OC\Files\View $fileview fileview object of user folder
55
-	 * @return bool|\OCP\IImage false if no preview was generated
56
-	 * @since 8.1.0
57
-	 */
58
-	public function getThumbnail($path, $maxX, $maxY, $scalingup, $fileview);
47
+    /**
48
+     * get thumbnail for file at path $path
49
+     *
50
+     * @param string $path Path of file
51
+     * @param int $maxX The maximum X size of the thumbnail. It can be smaller depending on the shape of the image
52
+     * @param int $maxY The maximum Y size of the thumbnail. It can be smaller depending on the shape of the image
53
+     * @param bool $scalingup Disable/Enable upscaling of previews
54
+     * @param \OC\Files\View $fileview fileview object of user folder
55
+     * @return bool|\OCP\IImage false if no preview was generated
56
+     * @since 8.1.0
57
+     */
58
+    public function getThumbnail($path, $maxX, $maxY, $scalingup, $fileview);
59 59
 }
Please login to merge, or discard this patch.