mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-12-31 13:58:04 -06:00
Compare commits
3 Commits
v2.15.2
...
df5af5c8ad
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
df5af5c8ad | ||
|
|
67a97ffc4d | ||
|
|
45b39f36d6 |
@@ -1,5 +1,28 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## paperless-ngx 2.15.2
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
- Fix: Adds better handling during folder checking/creation/permissions for non-root [@stumpylog](https://github.com/stumpylog) ([#9616](https://github.com/paperless-ngx/paperless-ngx/pull/9616))
|
||||||
|
- Fix: Explicitly set the HOME environment to resolve issues running as root with database certificates [@stumpylog](https://github.com/stumpylog) ([#9643](https://github.com/paperless-ngx/paperless-ngx/pull/9643))
|
||||||
|
- Fix: prevent self-linking when bulk edit doc link [@shamoon](https://github.com/shamoon) ([#9629](https://github.com/paperless-ngx/paperless-ngx/pull/9629))
|
||||||
|
|
||||||
|
### Dependencies
|
||||||
|
|
||||||
|
- Chore: Bump celery to 5.5.1 [@hannesortmeier](https://github.com/hannesortmeier) ([#9642](https://github.com/paperless-ngx/paperless-ngx/pull/9642))
|
||||||
|
|
||||||
|
### All App Changes
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>4 changes</summary>
|
||||||
|
|
||||||
|
- Tweak: consistently use created date when displaying doc in list [@shamoon](https://github.com/shamoon) ([#9651](https://github.com/paperless-ngx/paperless-ngx/pull/9651))
|
||||||
|
- Fix: Adds better handling during folder checking/creation/permissions for non-root [@stumpylog](https://github.com/stumpylog) ([#9616](https://github.com/paperless-ngx/paperless-ngx/pull/9616))
|
||||||
|
- Fix: Explicitly set the HOME environment to resolve issues running as root with database certificates [@stumpylog](https://github.com/stumpylog) ([#9643](https://github.com/paperless-ngx/paperless-ngx/pull/9643))
|
||||||
|
- Fix: prevent self-linking when bulk edit doc link [@shamoon](https://github.com/shamoon) ([#9629](https://github.com/paperless-ngx/paperless-ngx/pull/9629))
|
||||||
|
</details>
|
||||||
|
|
||||||
## paperless-ngx 2.15.1
|
## paperless-ngx 2.15.1
|
||||||
|
|
||||||
### Bug Fixes
|
### Bug Fixes
|
||||||
|
|||||||
@@ -1670,7 +1670,7 @@ started by the container.
|
|||||||
|
|
||||||
## Email sending
|
## Email sending
|
||||||
|
|
||||||
Setting an SMTP server for the backend will allow you to reset your
|
Setting an SMTP server for the backend will allow you to use the Email workflow action, send documents from the UI as well as reset your
|
||||||
password. All of these options come from their similarly-named [Django settings](https://docs.djangoproject.com/en/4.2/ref/settings/#email-host)
|
password. All of these options come from their similarly-named [Django settings](https://docs.djangoproject.com/en/4.2/ref/settings/#email-host)
|
||||||
|
|
||||||
#### [`PAPERLESS_EMAIL_HOST=<str>`](#PAPERLESS_EMAIL_HOST) {#PAPERLESS_EMAIL_HOST}
|
#### [`PAPERLESS_EMAIL_HOST=<str>`](#PAPERLESS_EMAIL_HOST) {#PAPERLESS_EMAIL_HOST}
|
||||||
|
|||||||
@@ -622,20 +622,30 @@ def send_webhook(
|
|||||||
as_json: bool = False,
|
as_json: bool = False,
|
||||||
):
|
):
|
||||||
try:
|
try:
|
||||||
|
post_args = {
|
||||||
|
"url": url,
|
||||||
|
"headers": headers,
|
||||||
|
"files": files,
|
||||||
|
}
|
||||||
if as_json:
|
if as_json:
|
||||||
httpx.post(
|
post_args["json"] = data
|
||||||
url,
|
elif isinstance(data, dict):
|
||||||
json=data,
|
post_args["data"] = data
|
||||||
files=files,
|
|
||||||
headers=headers,
|
|
||||||
).raise_for_status()
|
|
||||||
else:
|
else:
|
||||||
httpx.post(
|
post_args["content"] = data
|
||||||
url,
|
|
||||||
content=data,
|
httpx.post(
|
||||||
files=files,
|
**post_args,
|
||||||
headers=headers,
|
).raise_for_status()
|
||||||
).raise_for_status()
|
logger.info(
|
||||||
|
f"Webhook sent to {url}",
|
||||||
|
)
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(
|
||||||
|
f"Failed attempt sending webhook to {url}: {e}",
|
||||||
|
)
|
||||||
|
raise e
|
||||||
|
|
||||||
logger.info(
|
logger.info(
|
||||||
f"Webhook sent to {url}",
|
f"Webhook sent to {url}",
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -2614,7 +2614,7 @@ class TestWorkflows(
|
|||||||
)
|
)
|
||||||
|
|
||||||
mock_post.assert_called_once_with(
|
mock_post.assert_called_once_with(
|
||||||
"http://paperless-ngx.com",
|
url="http://paperless-ngx.com",
|
||||||
content="Test message",
|
content="Test message",
|
||||||
headers={},
|
headers={},
|
||||||
files=None,
|
files=None,
|
||||||
@@ -2623,6 +2623,20 @@ class TestWorkflows(
|
|||||||
expected_str = "Webhook sent to http://paperless-ngx.com"
|
expected_str = "Webhook sent to http://paperless-ngx.com"
|
||||||
self.assertIn(expected_str, cm.output[0])
|
self.assertIn(expected_str, cm.output[0])
|
||||||
|
|
||||||
|
# with dict
|
||||||
|
send_webhook(
|
||||||
|
url="http://paperless-ngx.com",
|
||||||
|
data={"message": "Test message"},
|
||||||
|
headers={},
|
||||||
|
files=None,
|
||||||
|
)
|
||||||
|
mock_post.assert_called_with(
|
||||||
|
url="http://paperless-ngx.com",
|
||||||
|
data={"message": "Test message"},
|
||||||
|
headers={},
|
||||||
|
files=None,
|
||||||
|
)
|
||||||
|
|
||||||
@mock.patch("httpx.post")
|
@mock.patch("httpx.post")
|
||||||
def test_workflow_webhook_send_webhook_retry(self, mock_http):
|
def test_workflow_webhook_send_webhook_retry(self, mock_http):
|
||||||
mock_http.return_value.raise_for_status = mock.Mock(
|
mock_http.return_value.raise_for_status = mock.Mock(
|
||||||
|
|||||||
Reference in New Issue
Block a user