Skip to content

Commit 8421872

Browse files
committed
Merge branch 'master' into GH_8015
2 parents 270edac + 5d78f4a commit 8421872

247 files changed

Lines changed: 36967 additions & 27446 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/run-feature-tests-pg.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ jobs:
131131
"comment": "PostgreSQL ${{ matrix.pgver }} Server",
132132
"db_username": "postgres",
133133
"host": "/var/run/postgresql",
134-
"db_password": "postgres",
134+
"db_password": "",
135135
"db_port": 59${{ matrix.pgver }},
136136
"maintenance_db": "postgres",
137137
"sslmode": "prefer",

.github/workflows/run-python-tests-epas.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ jobs:
4848
if: ${{ matrix.os == 'ubuntu-22.04' }}
4949
run: |
5050
sudo apt update
51-
sudo apt install -y libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev edb-as${{ matrix.pgver }}-server edb-as${{ matrix.pgver }}-server-pldebugger
51+
sudo apt install -y libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev edb-as${{ matrix.pgver }}-server edb-as${{ matrix.pgver }}-server-pldebugger edb-as${{ matrix.pgver }}-postgis34
5252
5353
- name: Install pgagent on Linux
5454
if: ${{ matrix.os == 'ubuntu-22.04' && matrix.pgver <= 16 }}
@@ -105,6 +105,10 @@ jobs:
105105
- name: Create pgagent extension on Linux
106106
if: ${{ matrix.os == 'ubuntu-22.04' && matrix.pgver <= 16 }}
107107
run: psql -U enterprisedb -d postgres -p 58${{ matrix.pgver }} -c 'CREATE EXTENSION IF NOT EXISTS pgagent;'
108+
109+
- name: Create postgis extension on Linux
110+
if: ${{ matrix.os == 'ubuntu-22.04' }}
111+
run: psql -U enterprisedb -d postgres -p 58${{ matrix.pgver }} -c 'CREATE EXTENSION IF NOT EXISTS postgis;'
108112

109113
- name: Install Python dependencies on Linux
110114
if: ${{ matrix.os == 'ubuntu-22.04' }}

.github/workflows/run-python-tests-pg.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151
if: ${{ matrix.os == 'ubuntu-22.04' }}
5252
run: |
5353
sudo apt update
54-
sudo apt install -y libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev postgresql-${{ matrix.pgver }} postgresql-${{ matrix.pgver }}-pldebugger pgagent
54+
sudo apt install -y libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev postgresql-${{ matrix.pgver }} postgresql-${{ matrix.pgver }}-pldebugger pgagent postgresql-${{ matrix.pgver }}-postgis-3
5555
5656
- name: Install platform dependencies on macOS
5757
if: ${{ matrix.os == 'macos-latest' }}
@@ -113,6 +113,7 @@ jobs:
113113
114114
psql -U postgres -p 59${{ matrix.pgver }} -c 'CREATE EXTENSION pgagent;'
115115
psql -U postgres -p 59${{ matrix.pgver }} -c 'CREATE EXTENSION pldbgapi;'
116+
psql -U postgres -p 59${{ matrix.pgver }} -c 'CREATE EXTENSION postgis;'
116117
117118
- name: Start PostgreSQL on macOS
118119
if: ${{ matrix.os == 'macos-latest' }}

.python-version

Lines changed: 0 additions & 1 deletion
This file was deleted.

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ RUN apk add --no-cache \
208208
libedit \
209209
libldap \
210210
libcap && \
211-
/venv/bin/python3 -m pip install --no-cache-dir gunicorn==22.0.0 && \
211+
/venv/bin/python3 -m pip install --no-cache-dir gunicorn==23.0.0 && \
212212
find / -type d -name '__pycache__' -exec rm -rf {} + && \
213213
useradd -r -u 5050 -g root -s /sbin/nologin pgadmin && \
214214
mkdir -p /run/pgadmin /var/lib/pgadmin && \

SECURITY.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Security Policy
2+
3+
## Supported Versions
4+
5+
Only the latest version receives security updates. Users are encouraged to upgrade to the latest stable release.
6+
7+
8+
## Reporting a Vulnerability
9+
10+
We take security seriously and appreciate your efforts to responsibly disclose vulnerabilities. If you believe you have found a vulnerability, please follow the guidelines below to submit a report.
11+
12+
### **What to Include in Your Report**
13+
To help us quickly understand and address the issue, please include the following sections in your report:
14+
15+
#### 1. **Summary**
16+
- A brief description of the vulnerability.
17+
18+
#### 2. **Affected Versions**
19+
- The version(s) of the project affected by the vulnerability.
20+
- Example: "Affects versions 3.4.0 to 3.6.23."
21+
22+
#### 3. **Details**
23+
- A detailed explanation of the vulnerability, including:
24+
- How to reproduce the issue (step-by-step instructions).
25+
- The code or component where the vulnerability exists.
26+
- The expected vs. actual behavior.
27+
28+
#### 4. **Proof of Concept (PoC)**
29+
- Provide a proof of concept to demonstrate the vulnerability. This could be:
30+
- Code snippets.
31+
- Screenshots or videos.
32+
- A minimal reproducible example.
33+
34+
#### 5. **Patches (if applicable)**
35+
- If you have a suggested fix or patch, include it in your report.
36+
- Example: "Sanitize user input using `DOMPurify`."
37+
38+
#### 6. **Impact**
39+
- Describe the potential impact of the vulnerability, such as:
40+
- Remote Code Execution.
41+
- CSRF.
42+
- Data exposure.
43+
- Denial of service.
44+
45+
46+
47+
### **What to Expect**
48+
- **Acknowledgement**: You will receive an acknowledgement of your report within **48 hours**.
49+
- **Timeline**: We will provide a timeline for investigating and addressing the issue.
50+
- **Updates**: You will receive regular updates on the progress of the vulnerability resolution.
51+
- **CVE ID**: If the vulnerability is confirmed, we will request a CVE ID to acknowledge the issue officially and include it in the release notes.
52+
53+
54+
### **Out of Scope**
55+
The following issues are considered out of scope for security reports:
56+
- Vulnerabilities in outdated or unsupported versions.
57+
- Issues related to non-security-impacting bugs or feature requests.
58+
- Vulnerabilities requiring physical access to the device or social engineering.
59+
60+
61+
62+
## Security Updates
63+
64+
We are committed to providing timely security updates for supported versions. Here’s our process:
65+
1. **Assessment**:
66+
- All reported vulnerabilities are assessed for severity and impact.
67+
2. **Patch Development**:
68+
- Patches are developed and tested in a private repository to prevent premature disclosure.
69+
3. **Release**:
70+
- Security patches are released as soon as possible, along with a detailed advisory.
71+
72+
73+
74+
## Acknowledgments
75+
76+
We deeply appreciate the efforts of security researchers and users who help us improve the security of our project.
77+
78+
79+
80+
## Contact
81+
82+
For any questions or concerns regarding security, please contact us at `security@pgadmin.org`.

docs/en_US/directory_dialog.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
`Directory Dialog`:index:
55
*************************
66

7-
Use the Directory dialog to Create an alias for a file system directory path.
7+
Use the Directory dialog to create an alias for a file system directory path.
88
To create directories, you must have the CREATE ANY DIRECTORY system privilege.
99
When you create a directory, you are automatically granted READ and WRITE privileges
1010
on the directory, and you can grant READ and WRITE privileges to other users and roles.
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
.. _export_data_using_query:
2+
3+
***************************************
4+
`Export Data Using Query Dialog`:index:
5+
***************************************
6+
7+
Use the *Export Data Using Query* dialog to copy data to a file.
8+
9+
The *Export Data Using Query* dialog organizes the export of data through the
10+
*General*, *Options* and *Query* tabs.
11+
12+
.. image:: images/export_query_general.png
13+
:alt: Export data using query dialog general tab
14+
:align: center
15+
16+
Use the fields in the *General* tab to specify export preferences:
17+
18+
* Enter the name of the target file in the *Filename* field.
19+
Optionally, select the *Browse* icon (ellipsis) to the right to navigate
20+
into a directory and select a file.
21+
22+
* Use the drop-down listbox in the *Format* field to specify the file type.
23+
Select:
24+
25+
* *binary* for a .bin file.
26+
* *csv* for a .csv file.
27+
* *text* for a .txt file.
28+
29+
* Use the drop-down listbox in the *Encoding* field to specify the type of
30+
character encoding.
31+
32+
.. image:: images/export_query_options.png
33+
:alt: Export data using query dialog options tab
34+
:align: center
35+
36+
* Use the fields in the *Options* tab to specify additional information:
37+
38+
* Move the *Header* switch to the *Yes* position to include the table header
39+
with the data rows. If you include the table header, the first row of the
40+
file will contain the column names.
41+
* If you are exporting data, specify the delimiter that will separate the
42+
columns within the target file in the *Delimiter* field. The separating
43+
character can be a colon, semicolon, a vertical bar, or a tab.
44+
* Specify a quoting character used in the *Quote* field. Quoting can be
45+
applied to string columns only (i.e. numeric columns will not be quoted)
46+
or all columns regardless of data type. The character used for quoting can
47+
be a single quote or a double quote.
48+
* Specify a character that should appear before a data character that matches
49+
the *QUOTE* value in the *Escape* field.
50+
* Use the *NULL String* field to specify a string that will represent a null
51+
value within the source or target file.
52+
53+
Click the *Query* tab to continue.
54+
55+
.. image:: images/export_query.png
56+
:alt: Export data using query dialog query tab
57+
:align: center
58+
59+
Use the fields in the *Query* tab to write the query that will be exported:
60+
61+
* Use the *Export Data Query* field to specifies A SELECT, VALUES, INSERT, UPDATE,
62+
DELETE, or MERGE command whose results are to be copied .
63+
64+
* Use *Force Quote columns* field to forces quoting to be used for all non-NULL
65+
values in each specified column. NULL output is never quoted. This is a creatable
66+
select control. If you would like to quote all columns then provide only '*' in
67+
the field.
68+
69+
After completing the *Export Data Using Query* dialog, click the *OK* button to
70+
perform the export. pgAdmin will notify you when the background
71+
process completes:
72+
73+
.. image:: images/export_query_complete.png
74+
:alt: Export data using query completion notification
75+
:align: center
76+
77+
78+
Use the *View Processes* button on the notification to open the *Process
79+
Watcher* and review detailed information about the execution of the command
80+
that performed the export:
81+
82+
Use the **End Process** button to end the Export process.
83+
84+
.. image:: images/export_query_pw.png
85+
:alt: Export data using query process watcher
86+
:align: center
87+
88+
.. note:: If you are running *pgAdmin* in *Server Mode* you can click on the |sm_icon| icon in the process watcher window to open the file location in the Storage Manager. You can use the :ref:`Storage Manager <storage_manager>` to download the exported file on the client machine .
89+
90+
91+
.. |sm_icon| image:: images/sm_icon.png

docs/en_US/images/add_role.png

26 KB
Loading

docs/en_US/images/add_user.png

-28 KB
Loading

0 commit comments

Comments
 (0)