Skip to content

Commit 7774190

Browse files
committed
silently deprecated methods trigger E_USER_DEPRECATED
1 parent d3cb18f commit 7774190

9 files changed

Lines changed: 28 additions & 13 deletions

src/Http/FileUpload.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ public function __construct(?array $value)
6464
*/
6565
public function getName(): string
6666
{
67+
trigger_error(__METHOD__ . '() is deprecated, use getUntrustedName()', E_USER_DEPRECATED);
6768
return $this->name;
6869
}
6970

src/Http/Request.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,7 @@ public function getHeaders(): array
190190
*/
191191
public function getReferer(): ?UrlImmutable
192192
{
193+
trigger_error(__METHOD__ . '() is deprecated', E_USER_DEPRECATED);
193194
return isset($this->headers['referer'])
194195
? new UrlImmutable($this->headers['referer'])
195196
: null;
@@ -253,6 +254,7 @@ public function getRemoteAddress(): ?string
253254
*/
254255
public function getRemoteHost(): ?string
255256
{
257+
trigger_error(__METHOD__ . '() is deprecated, use gethostbyaddr($request->getRemoteAddress())', E_USER_DEPRECATED);
256258
if ($this->remoteHost === null && $this->remoteAddress !== null) {
257259
$this->remoteHost = gethostbyaddr($this->remoteAddress);
258260
}

src/Http/RequestFactory.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -369,9 +369,10 @@ private function useNonstandardProxy(Url $url, &$remoteAddr, &$remoteHost): void
369369
}
370370

371371

372-
/** @deprecated */
372+
/** @deprecated use fromGlobals() */
373373
public function createHttpRequest(): Request
374374
{
375+
trigger_error(__METHOD__ . '() is deprecated, use fromGlobals()', E_USER_DEPRECATED);
375376
return $this->fromGlobals();
376377
}
377378
}

src/Http/SessionSection.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ public function remove(string|array|null $name = null): void
100100
*/
101101
public function __set(string $name, $value): void
102102
{
103+
trigger_error("Writing to \$session->$name is deprecated, use \$session->set('$name', \$value) instead", E_USER_DEPRECATED);
103104
$this->session->autoStart(true);
104105
$this->getData()[$name] = $value;
105106
}
@@ -111,6 +112,7 @@ public function __set(string $name, $value): void
111112
*/
112113
public function &__get(string $name): mixed
113114
{
115+
trigger_error("Reading from \$session->$name is deprecated, use \$session->get('$name') instead", E_USER_DEPRECATED);
114116
$this->session->autoStart(true);
115117
$data = &$this->getData();
116118
return $data[$name];
@@ -123,6 +125,7 @@ public function &__get(string $name): mixed
123125
*/
124126
public function __isset(string $name): bool
125127
{
128+
trigger_error("Using \$session->$name is deprecated, use \$session->get('$name') instead", E_USER_DEPRECATED);
126129
$this->session->autoStart(false);
127130
return isset($this->getData()[$name]);
128131
}
@@ -134,6 +137,7 @@ public function __isset(string $name): bool
134137
*/
135138
public function __unset(string $name): void
136139
{
140+
trigger_error("Unset(\$session->$name) is deprecated, use \$session->remove('$name') instead", E_USER_DEPRECATED);
137141
$this->remove($name);
138142
}
139143

@@ -144,6 +148,7 @@ public function __unset(string $name): void
144148
*/
145149
public function offsetSet($name, $value): void
146150
{
151+
trigger_error("Writing to \$session['$name'] is deprecated, use \$session->set('$name', \$value) instead", E_USER_DEPRECATED);
147152
$this->__set($name, $value);
148153
}
149154

@@ -154,6 +159,7 @@ public function offsetSet($name, $value): void
154159
*/
155160
public function offsetGet($name): mixed
156161
{
162+
trigger_error("Reading from \$session['$name'] is deprecated, use \$session->get('$name') instead", E_USER_DEPRECATED);
157163
return $this->get($name);
158164
}
159165

@@ -164,6 +170,7 @@ public function offsetGet($name): mixed
164170
*/
165171
public function offsetExists($name): bool
166172
{
173+
trigger_error("Using \$session['$name'] is deprecated, use \$session->get('$name') instead", E_USER_DEPRECATED);
167174
return $this->__isset($name);
168175
}
169176

@@ -174,6 +181,7 @@ public function offsetExists($name): bool
174181
*/
175182
public function offsetUnset($name): void
176183
{
184+
trigger_error("Unset(\$session['$name']) is deprecated, use \$session->remove('$name') instead", E_USER_DEPRECATED);
177185
$this->remove($name);
178186
}
179187

src/Http/Url.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,7 @@ public function getHostUrl(): string
283283
/** @deprecated use UrlScript::getBasePath() instead */
284284
public function getBasePath(): string
285285
{
286+
trigger_error(__METHOD__ . '() is deprecated, use UrlScript object', E_USER_DEPRECATED);
286287
$pos = strrpos($this->path, '/');
287288
return $pos === false ? '' : substr($this->path, 0, $pos + 1);
288289
}
@@ -291,13 +292,15 @@ public function getBasePath(): string
291292
/** @deprecated use UrlScript::getBaseUrl() instead */
292293
public function getBaseUrl(): string
293294
{
295+
trigger_error(__METHOD__ . '() is deprecated, use UrlScript object', E_USER_DEPRECATED);
294296
return $this->getHostUrl() . $this->getBasePath();
295297
}
296298

297299

298300
/** @deprecated use UrlScript::getRelativeUrl() instead */
299301
public function getRelativeUrl(): string
300302
{
303+
trigger_error(__METHOD__ . '() is deprecated, use UrlScript object', E_USER_DEPRECATED);
301304
return substr($this->getAbsoluteUrl(), strlen($this->getBaseUrl()));
302305
}
303306

tests/Http/FileUpload.basic.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ test('', function () {
2222
'size' => 209,
2323
]);
2424

25-
Assert::same('readme.txt', $upload->getName());
25+
Assert::same('readme.txt', @$upload->getName()); // deprecated
2626
Assert::same('readme.txt', $upload->getUntrustedName());
2727
Assert::same('readme.txt', $upload->getSanitizedName());
2828
Assert::same('path/to/readme.txt', $upload->getUntrustedFullPath());
@@ -47,7 +47,7 @@ test('', function () {
4747
'size' => 209,
4848
]);
4949

50-
Assert::same('../.image.png', $upload->getName());
50+
Assert::same('../.image.png', $upload->getUntrustedName());
5151
Assert::same('image.png', $upload->getSanitizedName());
5252
Assert::same('../.image.png', $upload->getUntrustedFullPath());
5353
Assert::same('image/png', $upload->getContentType());

tests/Http/Request.invalidEncoding.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,5 +118,5 @@ test('filtered data', function () {
118118
Assert::null($request->getFile(INVALID));
119119
Assert::null($request->getFile(CONTROL_CHARACTERS));
120120
Assert::type(Nette\Http\FileUpload::class, $request->files['file1']);
121-
Assert::same('', $request->files['file1']->name);
121+
Assert::same('', $request->files['file1']->getUntrustedName());
122122
});

tests/Http/RequestFactory.proxy.forwarded.phpt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ test('', function () {
2121
$factory = new RequestFactory;
2222
$factory->setProxy('127.0.0.1');
2323
Assert::same('127.0.0.3', $factory->fromGlobals()->getRemoteAddress());
24-
Assert::same('localhost', $factory->fromGlobals()->getRemoteHost());
24+
Assert::same('localhost', @$factory->fromGlobals()->getRemoteHost()); // deprecated
2525

2626
$factory->setProxy('127.0.0.1/8');
2727
Assert::same('23.75.45.200', $factory->fromGlobals()->getRemoteAddress());
28-
Assert::same('192.168.0.1', $factory->fromGlobals()->getRemoteHost());
28+
Assert::same('192.168.0.1', @$factory->fromGlobals()->getRemoteHost()); // deprecated
2929

3030
$url = $factory->fromGlobals()->getUrl();
3131
Assert::same('http', $url->getScheme());
@@ -43,7 +43,7 @@ test('', function () {
4343

4444
$factory->setProxy('127.0.0.3');
4545
Assert::same('23.75.45.200', $factory->fromGlobals()->getRemoteAddress());
46-
Assert::same('192.168.0.1', $factory->fromGlobals()->getRemoteHost());
46+
Assert::same('192.168.0.1', @$factory->fromGlobals()->getRemoteHost()); // deprecated
4747

4848
$url = $factory->fromGlobals()->getUrl();
4949
Assert::same(8080, $url->getPort());
@@ -62,7 +62,7 @@ test('', function () {
6262

6363
$factory->setProxy('127.0.0.3');
6464
Assert::same('2001:db8:cafe::17', $factory->fromGlobals()->getRemoteAddress());
65-
Assert::same('2001:db8:cafe::18', $factory->fromGlobals()->getRemoteHost());
65+
Assert::same('2001:db8:cafe::18', @$factory->fromGlobals()->getRemoteHost()); // deprecated
6666

6767
$url = $factory->fromGlobals()->getUrl();
6868
Assert::same('2001:db8:cafe::18', $url->getHost());
@@ -79,7 +79,7 @@ test('', function () {
7979

8080
$factory->setProxy('127.0.0.3');
8181
Assert::same('2001:db8:cafe::17', $factory->fromGlobals()->getRemoteAddress());
82-
Assert::same('2001:db8:cafe::18', $factory->fromGlobals()->getRemoteHost());
82+
Assert::same('2001:db8:cafe::18', @$factory->fromGlobals()->getRemoteHost()); // deprecated
8383

8484
$url = $factory->fromGlobals()->getUrl();
8585
Assert::same(47832, $url->getPort());

tests/Http/RequestFactory.proxy.x-forwarded.phpt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ test('', function () {
2323
$factory = new RequestFactory;
2424
$factory->setProxy('127.0.0.1');
2525
Assert::same('127.0.0.3', $factory->fromGlobals()->getRemoteAddress());
26-
Assert::same('localhost', $factory->fromGlobals()->getRemoteHost());
26+
Assert::same('localhost', @$factory->fromGlobals()->getRemoteHost()); // deprecated
2727

2828
$factory->setProxy('127.0.0.1/8');
2929
Assert::same('23.75.45.200', $factory->fromGlobals()->getRemoteAddress());
30-
Assert::same('otherhost', $factory->fromGlobals()->getRemoteHost());
30+
Assert::same('otherhost', @$factory->fromGlobals()->getRemoteHost()); // deprecated
3131

3232
$url = $factory->fromGlobals()->getUrl();
3333
Assert::same('otherhost', $url->getHost());
@@ -44,11 +44,11 @@ test('', function () {
4444
$factory = new RequestFactory;
4545
$factory->setProxy('10.0.0.0/24');
4646
Assert::same('172.16.0.1', $factory->fromGlobals()->getRemoteAddress());
47-
Assert::same('real', $factory->fromGlobals()->getRemoteHost());
47+
Assert::same('real', @$factory->fromGlobals()->getRemoteHost()); // deprecated
4848

4949
$factory->setProxy(['10.0.0.1', '10.0.0.2']);
5050
Assert::same('172.16.0.1', $factory->fromGlobals()->getRemoteAddress());
51-
Assert::same('real', $factory->fromGlobals()->getRemoteHost());
51+
Assert::same('real', @$factory->fromGlobals()->getRemoteHost()); // deprecated
5252

5353
$url = $factory->fromGlobals()->getUrl();
5454
Assert::same('real', $url->getHost());

0 commit comments

Comments
 (0)