Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7dfcc73e95 | ||
|
|
cbb89b09b1 | ||
|
|
7d0ba9448b | ||
|
|
05b595d32d | ||
|
|
396a22b6be | ||
|
|
7be7d3a024 | ||
|
|
8ba7cea2f1 | ||
|
|
e3aa616edd | ||
|
|
dc8832192d | ||
|
|
72794f9524 | ||
|
|
b337b64eb1 | ||
|
|
67ef438730 | ||
|
|
29053098fc | ||
|
|
b9a3178b43 | ||
|
|
7d068130a4 | ||
|
|
cb070fc365 | ||
|
|
396f6c9d73 | ||
|
|
8b7eeca545 | ||
|
|
702bc8c8ce | ||
|
|
cba3dc9457 | ||
|
|
4baaff4566 | ||
|
|
bdcf1f986f | ||
|
|
7609038a16 | ||
|
|
619680e71f | ||
|
|
fec63c6cf3 | ||
|
|
3e031ad334 | ||
|
|
75cbf9165e | ||
|
|
b6924a84d6 | ||
|
|
96f3ac8a53 | ||
|
|
dd4639d602 | ||
|
|
bfa859e9ce | ||
|
|
b1eba4fc4c | ||
|
|
4b183f7988 | ||
|
|
fb3b2a4635 | ||
|
|
db3d0c6e21 | ||
|
|
cedfd12f6a | ||
|
|
c9013a39b8 | ||
|
|
e04f5a0938 | ||
|
|
48dd32f0e4 | ||
|
|
87c1023c4f | ||
|
|
7ab096d87f | ||
|
|
736879567f | ||
|
|
e2b27da2ef | ||
|
|
4baae7512b | ||
|
|
6949b41fb9 | ||
|
|
4fd1e16bb4 | ||
|
|
c0c9034326 | ||
|
|
6c7f5d1a6b | ||
|
|
c9920063dd | ||
|
|
40b916dc2e | ||
|
|
16e8df8f78 | ||
|
|
b9f9ad8027 | ||
|
|
30107e38f3 | ||
|
|
8ea3346a9d | ||
|
|
c067289012 | ||
|
|
cad4c6b8af | ||
|
|
2ec460bf8f | ||
|
|
acf5eb7a26 | ||
|
|
0431cf7fc1 | ||
|
|
259a534a71 | ||
|
|
2a22cf077c | ||
|
|
1f2f405057 | ||
|
|
5483f70d4b | ||
|
|
af1c70f192 | ||
|
|
d8e00e6586 | ||
|
|
eb1c36bf5b | ||
|
|
377bf554b6 | ||
|
|
1d27cb9251 | ||
|
|
5c57fd0170 | ||
|
|
d6f01b552a | ||
|
|
4fbfcdfee9 | ||
|
|
cba42ef277 | ||
|
|
4fc49390ed | ||
|
|
a73f58160f | ||
|
|
14f617681f | ||
|
|
52829d6f31 | ||
|
|
b2864add54 | ||
|
|
1219dcb1d8 | ||
|
|
39401469fd | ||
|
|
8a6a6624ae | ||
|
|
7aec8bd9d7 | ||
|
|
a5a2a7c52f | ||
|
|
2836285ba2 | ||
|
|
b9686fcb00 | ||
|
|
edb74a0839 | ||
|
|
1ccdbf27e2 | ||
|
|
5fbf0b9fe5 | ||
|
|
8428df97ca | ||
|
|
978979c39f | ||
|
|
0e0d0c7c2e | ||
|
|
f4b910bffc | ||
|
|
e20e75aeba | ||
|
|
46a9d4a69d | ||
|
|
35cbe968f4 | ||
|
|
23eaa47fea | ||
|
|
861c66d180 | ||
|
|
1d7d6561f6 | ||
|
|
6d1e918c78 | ||
|
|
1e7517dc98 | ||
|
|
60265b306f | ||
|
|
f12d6336cf | ||
|
|
05938fa6e1 | ||
|
|
cc9297327b | ||
|
|
3ac789f615 | ||
|
|
4c2ae44e4c | ||
|
|
32fb3f3c1f | ||
|
|
625508e32a | ||
|
|
39a0f46159 | ||
|
|
62baa0dccb | ||
|
|
1f17051bec | ||
|
|
ad9a67d6d1 | ||
|
|
0ccfa7900c | ||
|
|
d98f411ea9 | ||
|
|
c19fc3628c | ||
|
|
20132f8daa | ||
|
|
7e2add8db1 | ||
|
|
d6ecc531e0 | ||
|
|
ed941b5b95 | ||
|
|
41e4f3eed9 | ||
|
|
bd3eeb7111 | ||
|
|
f1e7782ca2 | ||
|
|
4ede084b8f | ||
|
|
a6faa77e5b | ||
|
|
e2c5d9a916 | ||
|
|
26f79bafc6 | ||
|
|
47a0009d32 | ||
|
|
e33468e661 | ||
|
|
e24bd7c0e8 | ||
|
|
569bf4d5a2 | ||
|
|
f65d856d13 | ||
|
|
1daf4b08e5 | ||
|
|
80df33c179 | ||
|
|
1fd9353d4d | ||
|
|
62921600bd | ||
|
|
686f52f636 | ||
|
|
947630e0f0 | ||
|
|
64d5457e2b | ||
|
|
ec19fc2b01 | ||
|
|
993e1eb1b6 | ||
|
|
1131e0f742 | ||
|
|
d92a836647 | ||
|
|
288ba1d1f9 | ||
|
|
9587d2bb3b | ||
|
|
c2a54f3524 | ||
|
|
097080ba97 | ||
|
|
6ab102fcbc | ||
|
|
290e160e13 | ||
|
|
af13d6da16 | ||
|
|
6b31fc4552 | ||
|
|
660a75a582 | ||
|
|
15914fe5e3 | ||
|
|
96450fee63 | ||
|
|
b79b2b1265 | ||
|
|
a93c0c8d94 | ||
|
|
644575415e | ||
|
|
b14834b06c | ||
|
|
0987c955f5 | ||
|
|
bdb43f84e8 | ||
|
|
401358568a | ||
|
|
6969d5c16f | ||
|
|
2d024fd7e6 | ||
|
|
94bba36713 | ||
|
|
c08ec7a1bd | ||
|
|
fa29ba9163 | ||
|
|
c1a022c40c | ||
|
|
a18d469c90 | ||
|
|
fdf7a459eb | ||
|
|
abea2c7172 | ||
|
|
6027fdc10c | ||
|
|
ca088e83f7 | ||
|
|
e334b87b4c | ||
|
|
53b9fe1c86 | ||
|
|
415e9c0ac5 | ||
|
|
dfa367a127 | ||
|
|
bc5e710d49 | ||
|
|
c80f760d07 | ||
|
|
3eac4ba59e | ||
|
|
287c53cd5a | ||
|
|
6710969143 | ||
|
|
6c7116a20c | ||
|
|
17a4faeb6b | ||
|
|
4df23bd576 | ||
|
|
33953e9119 | ||
|
|
94051a0991 | ||
|
|
f334b132d9 | ||
|
|
b47c9039d7 | ||
|
|
659316d3cb | ||
|
|
21cbc6e9e5 | ||
|
|
50391ae3fd | ||
|
|
ce637ecd4b | ||
|
|
5a870a102e | ||
|
|
3f5aafd263 | ||
|
|
c47876e9ce | ||
|
|
c638b2a500 | ||
|
|
78a48bbe7e | ||
|
|
57fbeced39 | ||
|
|
d3d1f92102 | ||
|
|
222de66a83 | ||
|
|
374941bfab | ||
|
|
d9fff8c480 | ||
|
|
fb6e59bab8 | ||
|
|
01ef5c664f | ||
|
|
da937e2618 | ||
|
|
e7bea6686b | ||
|
|
b780339abb | ||
|
|
bbc46c0990 | ||
|
|
1527daede8 | ||
|
|
5330121b36 | ||
|
|
3f78cfa092 | ||
|
|
8d1bf6f735 | ||
|
|
cc4dfaf951 | ||
|
|
d3f058cf1f | ||
|
|
87985e9e45 | ||
|
|
b056fa5914 | ||
|
|
fc7edd76e1 | ||
|
|
a705a37999 | ||
|
|
7ee68d98d6 | ||
|
|
ac4827c33b | ||
|
|
140494454a | ||
|
|
43449be18c | ||
|
|
b37c5ff8c7 | ||
|
|
150a438a77 | ||
|
|
fb91ec1b75 | ||
|
|
9556e64c54 | ||
|
|
150b91f195 | ||
|
|
af7f58b4d2 | ||
|
|
0f525c8401 | ||
|
|
b7b94da285 | ||
|
|
1780973bb3 | ||
|
|
85bb7bf772 | ||
|
|
2f42481346 | ||
|
|
f5e2157658 | ||
|
|
48839983fd | ||
|
|
36d18ba5cb | ||
|
|
a607ab2d94 | ||
|
|
ec33c3e7ec | ||
|
|
9924fae378 | ||
|
|
05f3efbc97 | ||
|
|
e797eb17eb | ||
|
|
fc0e36b313 | ||
|
|
c78904501d | ||
|
|
501bff6f7a | ||
|
|
12f82820c9 | ||
|
|
66cb4e3bcf | ||
|
|
51c22608b2 | ||
|
|
034e96f713 | ||
|
|
97bd417ea8 | ||
|
|
7ce03f3bea | ||
|
|
636ab5cbab | ||
|
|
eef7461ae6 | ||
|
|
49b5ab71c2 | ||
|
|
bf25fcc919 | ||
|
|
b429a38176 | ||
|
|
c8945883c1 | ||
|
|
40013fb26c | ||
|
|
58aca506fe | ||
|
|
8700a17dad | ||
|
|
1d01b5a8a2 | ||
|
|
207812582d | ||
|
|
f1aa82ad36 | ||
|
|
5cb64f7602 | ||
|
|
70b2ead852 | ||
|
|
7e8cc539dc | ||
|
|
fb448bcecc | ||
|
|
e4eeba2aa7 | ||
|
|
8b815d4aac | ||
|
|
e046101305 | ||
|
|
88fc8772d1 | ||
|
|
4549abb6b3 | ||
|
|
13a3b153e5 | ||
|
|
2353702f0b | ||
|
|
0e38d1b82b | ||
|
|
e03676f138 | ||
|
|
faab0c3896 | ||
|
|
bf38a0caa8 | ||
|
|
319701dbbd | ||
|
|
a026353df8 | ||
|
|
c5e1e74757 | ||
|
|
a66dfff39d | ||
|
|
38f0809858 | ||
|
|
f3ee014cbd | ||
|
|
64ddfc0eb7 | ||
|
|
8fbe2fb8f2 | ||
|
|
ff5b92aaeb | ||
|
|
1b327d1997 | ||
|
|
eba306618c | ||
|
|
b923f5fcfa | ||
|
|
64aa739224 | ||
|
|
366dd3a973 | ||
|
|
f43b3b0ce5 | ||
|
|
3ca7bb854f | ||
|
|
97d3b6c7db | ||
|
|
28e1e34407 | ||
|
|
5a0731587a | ||
|
|
4577acae71 | ||
|
|
f9fee9103b | ||
|
|
6c12829cd4 | ||
|
|
a9399030f4 | ||
|
|
e6e49091b6 | ||
|
|
3ce1589681 | ||
|
|
42ac0d577d | ||
|
|
37c0de5d7d | ||
|
|
7b18ce10fe | ||
|
|
89c8a7f907 | ||
|
|
3de2e625b5 | ||
|
|
8c8be6461c | ||
|
|
292d76b39e | ||
|
|
294282c7ca | ||
|
|
0a543d0e95 | ||
|
|
48f2e2744c | ||
|
|
e408049bae | ||
|
|
d053742ca4 | ||
|
|
59edf50c02 | ||
|
|
fea1b9cf82 | ||
|
|
f72f4aa359 | ||
|
|
e32019882e | ||
|
|
63c7d14638 | ||
|
|
6ab43e4582 | ||
|
|
ec32099d2f | ||
|
|
66c4b9d05a | ||
|
|
fead2b25be | ||
|
|
3c56c0e4b7 | ||
|
|
c63442732b | ||
|
|
4d5c915144 | ||
|
|
323fcad8a7 | ||
|
|
31818bb67a | ||
|
|
6bd0ea7a02 | ||
|
|
53f460ca7d | ||
|
|
79de2ad571 | ||
|
|
17f18e795f | ||
|
|
ca33283930 | ||
|
|
262d1a1c95 | ||
|
|
9da8a188fa | ||
|
|
c35d449d7e | ||
|
|
9b7a38ac52 | ||
|
|
948feeb11f | ||
|
|
740164fbd0 | ||
|
|
5abb748c3e | ||
|
|
ff3555cf1d | ||
|
|
89a2e427f3 | ||
|
|
ff25afb88e | ||
|
|
55b917f24b | ||
|
|
a008f9ba79 | ||
|
|
1c0b826d23 | ||
|
|
59b47847d7 | ||
|
|
486e68b8be | ||
|
|
b640df5bdd | ||
|
|
9abbd30790 | ||
|
|
cf28d7df32 | ||
|
|
f404fdcf8a | ||
|
|
08062e67ca | ||
|
|
8967a510c9 | ||
|
|
e56a1f3e2d | ||
|
|
b1e6eaad61 | ||
|
|
b9cbf08b51 | ||
|
|
aeb4867bdf | ||
|
|
5f52bb59dd | ||
|
|
a0b8676f61 | ||
|
|
5e0daccf76 | ||
|
|
7a4951f211 | ||
|
|
d8c5bc4320 | ||
|
|
5303a36ff4 | ||
|
|
e70f115b48 | ||
|
|
8388f1e7ba | ||
|
|
f623d563b1 | ||
|
|
0fd1e0963e | ||
|
|
026334a71a | ||
|
|
83ec0f3d90 | ||
|
|
ed2b8ea1de | ||
|
|
be72cee6be | ||
|
|
ff877d6e91 | ||
|
|
b0846908da | ||
|
|
428e432732 | ||
|
|
ff6f0825b8 | ||
|
|
713ddb5f62 | ||
|
|
1806866bf5 | ||
|
|
696cb0fa05 | ||
|
|
cf948603cf | ||
|
|
426cc683eb | ||
|
|
027f23bc47 | ||
|
|
6833fdd731 | ||
|
|
4a3bcfa202 | ||
|
|
f3bb4776e4 | ||
|
|
c2acaa2fc8 | ||
|
|
4c34781b15 | ||
|
|
a3202ccb2d | ||
|
|
ca43f938bd | ||
|
|
b3a3b8beab | ||
|
|
cdc1248794 | ||
|
|
adc7155fe9 | ||
|
|
e247867abf | ||
|
|
aa6c199e98 | ||
|
|
932dcd9666 | ||
|
|
103cf0eba5 | ||
|
|
ff4a409e27 | ||
|
|
b02f81505b | ||
|
|
ec86152396 | ||
|
|
cdcc4e7314 | ||
|
|
d206b1c403 | ||
|
|
7a18ceab64 | ||
|
|
ea3dffe78d | ||
|
|
fd1c26408b | ||
|
|
7dc0c1d05c | ||
|
|
a7cf698d09 | ||
|
|
91049445dd | ||
|
|
6ae91592d1 | ||
|
|
22cc658dca | ||
|
|
10c6a4f8dc | ||
|
|
9c4573fd80 | ||
|
|
a48828e7a3 |
No files matched your search
@@ -0,0 +1,55 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "docker"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
labels:
|
||||
- "Dependencies"
|
||||
commit-message:
|
||||
prefix: "Docker dependency"
|
||||
|
||||
- package-ecosystem: "pip"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
labels:
|
||||
- "Dependencies"
|
||||
commit-message:
|
||||
prefix: "Python dependency"
|
||||
|
||||
- package-ecosystem: "pip"
|
||||
directory: "/tools"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
labels:
|
||||
- "Dependencies"
|
||||
commit-message:
|
||||
prefix: "Python dependency"
|
||||
|
||||
- package-ecosystem: "pip"
|
||||
directory: "/web/regression"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
labels:
|
||||
- "Dependencies"
|
||||
commit-message:
|
||||
prefix: "Python dependency"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/runtime"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
labels:
|
||||
- "Dependencies"
|
||||
commit-message:
|
||||
prefix: "Python dependency"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/web"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
labels:
|
||||
- "Dependencies"
|
||||
commit-message:
|
||||
prefix: "Python dependency"
|
||||
@@ -0,0 +1,23 @@
|
||||
name: Check container build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Build the container
|
||||
run: docker build .
|
||||
@@ -1,39 +0,0 @@
|
||||
name: Check documentation build
|
||||
|
||||
on:
|
||||
# Triggers the workflow on push or pull request events but only for the "master" branch
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
||||
jobs:
|
||||
# This workflow contains a single job called "build"
|
||||
build:
|
||||
# The type of runner that the job will run on
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
# Steps represent a sequence of tasks that will be executed as part of the job
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
# Run the tests
|
||||
- name: Install dependencies
|
||||
run: sudo apt install build-essential python3-dev libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev
|
||||
|
||||
- name: Install requirements
|
||||
run: pip install -r requirements.txt
|
||||
|
||||
- name: Install sphinx
|
||||
run: pip install sphinx==6.1.1
|
||||
|
||||
- name: Install sphinx youtube
|
||||
run: pip install sphinxcontrib-youtube
|
||||
|
||||
- name: Check the documentation
|
||||
run: make docs
|
||||
@@ -0,0 +1,61 @@
|
||||
name: Check documentation builds
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install platform dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev latexmk texlive-latex-recommended tex-gyre texlive-latex-extra
|
||||
|
||||
- name: Install Python dependencies
|
||||
run: make install-python
|
||||
|
||||
- name: Check the HTML build
|
||||
run: |
|
||||
. venv/bin/activate
|
||||
make docs
|
||||
|
||||
- name: Archive HTML
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: pgadmin4-html-build-output
|
||||
path: docs/en_US/_build/html/*
|
||||
|
||||
- name: Check the ePub build
|
||||
run: |
|
||||
. venv/bin/activate
|
||||
make docs-epub
|
||||
|
||||
- name: Archive ePub
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: pgadmin4-epub-build-output
|
||||
path: docs/en_US/_build/epub/pgAdmin4.epub
|
||||
|
||||
- name: Check the PDF build
|
||||
run: |
|
||||
. venv/bin/activate
|
||||
make docs-pdf
|
||||
|
||||
- name: Archive PDF
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: pgadmin4-pdf-build-output
|
||||
path: docs/en_US/_build/latex/pgadmin4.pdf
|
||||
@@ -1,36 +1,30 @@
|
||||
name: Check Javascript style
|
||||
|
||||
on:
|
||||
# Triggers the workflow on push or pull request events but only for the "master" branch
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
# This workflow contains a single job called "build"
|
||||
build:
|
||||
# The type of runner that the job will run on
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
# Steps represent a sequence of tasks that will be executed as part of the job
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
# Run the tests
|
||||
- name: Install nodejs
|
||||
run: sudo apt install nodejs
|
||||
|
||||
- name: Install yarn
|
||||
run: sudo npm install --global yarn
|
||||
|
||||
- name: Install Node modules
|
||||
run: cd web && yarn install
|
||||
run: |
|
||||
cd web
|
||||
yarn install
|
||||
|
||||
- name: Run the linter
|
||||
run: cd web && yarn run linter
|
||||
run: |
|
||||
cd web
|
||||
yarn run linter
|
||||
@@ -0,0 +1,39 @@
|
||||
name: Check Python build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install platform dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev
|
||||
|
||||
- name: Install Python dependencies
|
||||
run: make install-python
|
||||
|
||||
- name: Check the Python wheel build
|
||||
run: |
|
||||
. venv/bin/activate
|
||||
make pip
|
||||
|
||||
- name: Archive Python wheel
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: pgadmin4-python-build-output
|
||||
path: dist/*
|
||||
@@ -1,30 +1,28 @@
|
||||
name: Check Python style
|
||||
|
||||
on:
|
||||
# Triggers the workflow on push or pull request events but only for the "master" branch
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
# This workflow contains a single job called "build"
|
||||
build:
|
||||
# The type of runner that the job will run on
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
# Steps represent a sequence of tasks that will be executed as part of the job
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
# Run the tests
|
||||
- name: Install pycodestyle
|
||||
run: pip install pycodestyle
|
||||
- name: Install Python dependencies
|
||||
run: |
|
||||
sudo pip install --upgrade pip
|
||||
sudo pip install pycodestyle
|
||||
|
||||
- name: Check the documentation
|
||||
run: pycodestyle --config=.pycodestyle docs/
|
||||
@@ -36,4 +34,4 @@ jobs:
|
||||
run: pycodestyle --config=.pycodestyle web/
|
||||
|
||||
- name: Check the tools
|
||||
run: pycodestyle --config=.pycodestyle tools/
|
||||
run: pycodestyle --config=.pycodestyle tools/
|
||||
@@ -0,0 +1,39 @@
|
||||
name: Check tarball build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install platform dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev
|
||||
|
||||
- name: Install Python dependencies
|
||||
run: make install-python
|
||||
|
||||
- name: Check the tarball build
|
||||
run: |
|
||||
. venv/bin/activate
|
||||
make src
|
||||
|
||||
- name: Archive source tarball
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: pgadmin4-tarball-build-output
|
||||
path: dist/*
|
||||
@@ -0,0 +1,34 @@
|
||||
name: Check translations
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install platform dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y python3-babel python3-jinja2
|
||||
|
||||
- name: Check we can extract messages
|
||||
run: make msg-extract
|
||||
|
||||
- name: Check we can update the catalogs
|
||||
run: make msg-update
|
||||
|
||||
- name: Check the catalogs will compile
|
||||
run: make msg-compile
|
||||
@@ -0,0 +1,39 @@
|
||||
name: Run Javascript tests
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [macos-latest, ubuntu-latest, windows-latest]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Upgrade yarn
|
||||
run: |
|
||||
yarn set version berry
|
||||
|
||||
- name: Install Node modules
|
||||
run: |
|
||||
cd web
|
||||
yarn install
|
||||
|
||||
- name: Run the tests
|
||||
run: |
|
||||
cd web
|
||||
yarn run test:karma-once
|
||||
@@ -0,0 +1,285 @@
|
||||
# This workflow requires the following configuration in Github
|
||||
#
|
||||
# Vars:
|
||||
# ENABLE_EPAS_TESTS - Set to true to enable this test
|
||||
#
|
||||
# Secrets:
|
||||
# EDB_REPO_USERNAME - Username for accessing EDB Repos 1.0
|
||||
# EDB_REPO_PASSWORD - Password for accessing EDB Repos 1.0
|
||||
# EDB_SBP_URL - URL to the EDB StackBuilder Plus catalog
|
||||
|
||||
name: Run Python tests on EPAS
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
# Only run if the tests are enabled
|
||||
# TODO: Figure out a way to test for the presence of the secrets instead
|
||||
if: vars.ENABLE_EPAS_TESTS == 'true'
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-22.04, windows-latest]
|
||||
pgver: [11, 12, 13, 14, 15]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Setup the EDB APT repo on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-22.04' }}
|
||||
run: |
|
||||
sudo su -c 'echo "deb [arch=amd64] https://apt.enterprisedb.com/$(lsb_release -cs)-edb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/edb-$(lsb_release -cs).list'
|
||||
sudo su -c 'echo "machine apt.enterprisedb.com login ${{ secrets.EDB_REPO_USERNAME }} password ${{ secrets.EDB_REPO_PASSWORD }}" > /etc/apt/auth.conf.d/edb.conf'
|
||||
sudo wget -q -O - https://apt.enterprisedb.com/edb-deb.gpg.key | sudo apt-key add -
|
||||
|
||||
- name: Install platform dependencies on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-22.04' }}
|
||||
run: |
|
||||
sudo apt update
|
||||
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 }}-pgagent
|
||||
|
||||
- name: Install platform dependencies on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
FOR /f "delims=" %%F IN ('python tools\get_sb_package.py "${{ secrets.EDB_SBP_URL }}" "edb_as${{ matrix.pgver }}_dbserver" "windows-x64"') DO SET INSTALLER_EXE=%%F
|
||||
ECHO Running %INSTALLER_EXE%...
|
||||
%INSTALLER_EXE% --prefix C:\EPAS\${{ matrix.pgver }} --datadir C:\EPAS\${{ matrix.pgver }}\data --serverport 58${{ matrix.pgver }} --superpassword enterprisedb --create_samples no --install_runtimes 0 --mode unattended --unattendedmodeui none --disable-components stackbuilderplus${{ matrix.pgver < 15 && ',pgadmin4' || '' }}
|
||||
|
||||
choco install -y mitkerberos
|
||||
|
||||
REM Ignore error 3010 (reboot required)
|
||||
IF %ERRORLEVEL% EQU 3010 cmd /c "exit /b 0"
|
||||
shell: cmd
|
||||
|
||||
- name: Create the tablespace directory on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-22.04' }}
|
||||
run: |
|
||||
sudo mkdir -p /var/lib/edb-as/tablespaces/${{ matrix.pgver }}
|
||||
sudo chown enterprisedb:enterprisedb /var/lib/edb-as/tablespaces/${{ matrix.pgver }}
|
||||
|
||||
- name: Create the tablespace directory on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
mkdir "C:\EPAS\${{ matrix.pgver }}\tablespaces"
|
||||
icacls "C:\EPAS\${{ matrix.pgver }}\tablespaces" /grant "NETWORK SERVICE":(OI)(CI)F /T
|
||||
shell: cmd
|
||||
|
||||
- name: Start PostgreSQL on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-22.04' }}
|
||||
run: |
|
||||
# Note: we use a custom port for PostgreSQL as the runner may already have a version of PostgreSQL installed
|
||||
sudo su -c "echo local all all trust > /etc/edb-as/${{ matrix.pgver }}/main/pg_hba.conf"
|
||||
sudo sed -i "s/port = 544[0-9]/port = 58${{ matrix.pgver }}/g" /etc/edb-as/${{ matrix.pgver }}/main/postgresql.conf
|
||||
sudo sed -i "s/shared_preload_libraries = '/shared_preload_libraries = '\$libdir\/plugin_debugger,/g" /etc/edb-as/${{ matrix.pgver }}/main/postgresql.conf
|
||||
sudo su - enterprisedb -c "mkdir -p /var/run/edb-as/${{ matrix.pgver }}-main.epas_stat_tmp"
|
||||
sudo systemctl restart edb-as@${{ matrix.pgver }}-main
|
||||
|
||||
until sudo runuser -l enterprisedb -c "/usr/lib/edb-as/${{ matrix.pgver }}/bin/pg_isready -p 58${{ matrix.pgver }}" 2>/dev/null; do
|
||||
>&2 echo "EPAS is unavailable - sleeping for 2 seconds"
|
||||
sleep 2
|
||||
done
|
||||
|
||||
psql -U enterprisedb -d postgres -p 58${{ matrix.pgver }} -c 'CREATE EXTENSION IF NOT EXISTS pgagent;'
|
||||
|
||||
- name: Install Python dependencies on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-22.04' }}
|
||||
run: make install-python-testing
|
||||
|
||||
- name: Install Python dependencies on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
SET LIB=C:\EPAS\${{ matrix.pgver }}\lib;%LIB%
|
||||
SET INCLUDE=C:\EPAS\${{ matrix.pgver }}\include;%INCLUDE%
|
||||
python -m venv venv
|
||||
call venv\Scripts\activate.bat
|
||||
python -m pip install --upgrade pip
|
||||
pip install wheel sphinx sphinxcontrib-youtube -r web\regression\requirements.txt
|
||||
shell: cmd
|
||||
|
||||
- name: Create the test configuration on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-22.04' }}
|
||||
run: |
|
||||
cat <<EOF > web/config_local.py
|
||||
from config import *
|
||||
|
||||
# Debug mode
|
||||
DEBUG = True
|
||||
|
||||
# App mode
|
||||
SERVER_MODE = False
|
||||
|
||||
# Log
|
||||
CONSOLE_LOG_LEVEL = DEBUG
|
||||
FILE_LOG_LEVEL = DEBUG
|
||||
|
||||
DEFAULT_SERVER = '127.0.0.1'
|
||||
|
||||
UPGRADE_CHECK_ENABLED = False
|
||||
|
||||
LOG_FILE = "$(pwd)/var/pgadmin4.log"
|
||||
SESSION_DB_PATH = "$(pwd)/var/sessions"
|
||||
STORAGE_DIR = "$(pwd)/var/storage"
|
||||
SQLITE_PATH = "$(pwd)/var/pgadmin4.db"
|
||||
TEST_SQLITE_PATH = "$(pwd)/var/pgadmin4.db"
|
||||
AZURE_CREDENTIAL_CACHE_DIR = "$(pwd)/var/azurecredentialcache"
|
||||
EOF
|
||||
|
||||
cat <<EOF > web/regression/test_config.json
|
||||
{
|
||||
"pgAdmin4_login_credentials": {
|
||||
"new_password": "NEWPASSWORD",
|
||||
"login_password": "PASSWORD",
|
||||
"login_username": "USER@EXAMPLE.COM"
|
||||
},
|
||||
"pgAdmin4_test_user_credentials": {
|
||||
"new_password": "NEWPASSWORD",
|
||||
"login_password": "PASSWORD",
|
||||
"login_username": "USER2@EXAMPLE.COM"
|
||||
},
|
||||
"pgAdmin4_test_non_admin_credentials": {
|
||||
"new_password": "NEWPASSWORD",
|
||||
"login_password": "PASSWORD",
|
||||
"login_username": "USER@EXAMPLE.COM"
|
||||
},
|
||||
"server_group": 1,
|
||||
"server_credentials": [
|
||||
{
|
||||
"name": "EPAS ${{ matrix.pgver }}",
|
||||
"comment": "EPAS ${{ matrix.pgver }} Server",
|
||||
"db_username": "enterprisedb",
|
||||
"host": "/var/run/edb-as",
|
||||
"db_password": "",
|
||||
"db_port": 58${{ matrix.pgver }},
|
||||
"maintenance_db": "postgres",
|
||||
"sslmode": "prefer",
|
||||
"tablespace_path": "/var/lib/edb-as/tablespaces/${{ matrix.pgver }}",
|
||||
"enabled": true,
|
||||
"default_binary_paths": {
|
||||
"pg": "",
|
||||
"ppas": "/usr/lib/edb-as/${{ matrix.pgver }}/bin"
|
||||
}
|
||||
}
|
||||
],
|
||||
"server_update_data": [
|
||||
{
|
||||
"comment": "This is test update comment"
|
||||
}
|
||||
]
|
||||
}
|
||||
EOF
|
||||
|
||||
- name: Create the test configuration on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
FOR /f "delims=" %%D IN ('python -c "import os; print(os.getcwd().replace('\\', '\\\\'))"') DO SET WORKING_DIR=%%D
|
||||
|
||||
> web\config_local.py (
|
||||
@echo.from config import *
|
||||
@echo.
|
||||
@echo.# Debug mode
|
||||
@echo.DEBUG = True
|
||||
@echo.
|
||||
@echo.# App mode
|
||||
@echo.SERVER_MODE = False
|
||||
@echo.
|
||||
@echo.# Log
|
||||
@echo.CONSOLE_LOG_LEVEL = DEBUG
|
||||
@echo.FILE_LOG_LEVEL = DEBUG
|
||||
@echo.
|
||||
@echo.DEFAULT_SERVER = '127.0.0.1'
|
||||
@echo.
|
||||
@echo.UPGRADE_CHECK_ENABLED = False
|
||||
@echo.
|
||||
@echo.LOG_FILE = "%WORKING_DIR%\\var\\pgadmin4.log"
|
||||
@echo.SESSION_DB_PATH = "%WORKING_DIR%\\var\\sessions"
|
||||
@echo.STORAGE_DIR = "%WORKING_DIR%\\var\\storage"
|
||||
@echo.SQLITE_PATH = "%WORKING_DIR%\\var\\pgadmin4.db"
|
||||
@echo.TEST_SQLITE_PATH = "%WORKING_DIR%\\var\\test_pgadmin4.db"
|
||||
@echo.AZURE_CREDENTIAL_CACHE_DIR = "%WORKING_DIR%\\var\\azurecredentialcache"
|
||||
)
|
||||
|
||||
> web\regression\test_config.json (
|
||||
@echo.{
|
||||
@echo. "pgAdmin4_login_credentials": {
|
||||
@echo. "new_password": "NEWPASSWORD",
|
||||
@echo. "login_password": "PASSWORD",
|
||||
@echo. "login_username": "USER@EXAMPLE.COM"
|
||||
@echo. },
|
||||
@echo. "pgAdmin4_test_user_credentials": {
|
||||
@echo. "new_password": "NEWPASSWORD",
|
||||
@echo. "login_password": "PASSWORD",
|
||||
@echo. "login_username": "USER2@EXAMPLE.COM"
|
||||
@echo. },
|
||||
@echo. "pgAdmin4_test_non_admin_credentials": {
|
||||
@echo. "new_password": "NEWPASSWORD",
|
||||
@echo. "login_password": "PASSWORD",
|
||||
@echo. "login_username": "USER@EXAMPLE.COM"
|
||||
@echo. },
|
||||
@echo. "server_group": 1,
|
||||
@echo. "server_credentials": [
|
||||
@echo. {
|
||||
@echo. "name": "EPAS ${{ matrix.pgver }}",
|
||||
@echo. "comment": "EPAS ${{ matrix.pgver }} Server",
|
||||
@echo. "db_username": "enterprisedb",
|
||||
@echo. "host": "127.0.0.1",
|
||||
@echo. "db_password": "enterprisedb",
|
||||
@echo. "db_port": 58${{ matrix.pgver }},
|
||||
@echo. "maintenance_db": "postgres",
|
||||
@echo. "sslmode": "prefer",
|
||||
@echo. "tablespace_path": "C:\\EPAS\\${{ matrix.pgver }}\\tablespaces",
|
||||
@echo. "enabled": true,
|
||||
@echo. "default_binary_paths": {
|
||||
@echo. "pg": "",
|
||||
@echo. "ppas": "C:\\EPAS\\${{ matrix.pgver }}\\bin"
|
||||
@echo. }
|
||||
@echo. }
|
||||
@echo. ],
|
||||
@echo. "server_update_data": [
|
||||
@echo. {
|
||||
@echo. "comment": "This is test update comment"
|
||||
@echo. }
|
||||
@echo. ]
|
||||
@echo.}
|
||||
)
|
||||
shell: cmd
|
||||
|
||||
- name: Run the tests on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-22.04' }}
|
||||
run: |
|
||||
. venv/bin/activate
|
||||
make check-python
|
||||
|
||||
- name: Run the tests on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
call venv\Scripts\activate.bat
|
||||
python web\regression\runtests.py --exclude feature_tests
|
||||
shell: cmd
|
||||
|
||||
- name: Archive server log
|
||||
if: success() || failure()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: server-log-epas${{ matrix.pgver }}
|
||||
path: var/pgadmin4.log
|
||||
|
||||
- name: Archive regression log
|
||||
if: success() || failure()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: regression-log-epas${{ matrix.pgver }}
|
||||
path: web/regression/regression.log
|
||||
@@ -0,0 +1,304 @@
|
||||
name: Run Python tests on PostgreSQL
|
||||
|
||||
# Note: we use a custom port (and installation directory on Windows) for
|
||||
# PostgreSQL as the runners may already have a version installed.
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [macos-latest, ubuntu-latest, windows-latest]
|
||||
pgver: [11, 12, 13, 14, 15]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Setup the PGDG APT repo on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-latest' }}
|
||||
run: |
|
||||
sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
|
||||
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
|
||||
|
||||
- name: Install platform dependencies on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-latest' }}
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y libpq-dev libffi-dev libssl-dev libkrb5-dev zlib1g-dev postgresql-${{ matrix.pgver }} postgresql-${{ matrix.pgver }}-pldebugger pgagent
|
||||
|
||||
- name: Install platform dependencies on macOS
|
||||
if: ${{ matrix.os == 'macos-latest' }}
|
||||
run: |
|
||||
brew install postgresql@${{ matrix.pgver }}
|
||||
|
||||
- name: Uninstall PostgreSQL if already present
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
if exist "C:\Program Files\PostgreSQL\{{ matrix.pgver }}\uninstall-postgresql.exe" (
|
||||
"C:\Program Files\PostgreSQL\{{ matrix.pgver }}\uninstall-postgresql.exe" --mode unattended
|
||||
)
|
||||
reg delete "HKLM\SOFTWARE\PostgreSQL" /f
|
||||
shell: cmd
|
||||
|
||||
- name: Install platform dependencies on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
choco install -y postgresql${{ matrix.pgver }} --params "/Password:postgres /Port:59${{ matrix.pgver }}" --ia "--prefix C:\PostgreSQL\${{ matrix.pgver }} --datadir C:\PostgreSQL\${{ matrix.pgver }}\data --install_runtimes 0 --disable-components pgAdmin,stackbuilder --enable-components server,commandlinetools"
|
||||
choco install -y mitkerberos
|
||||
|
||||
REM Ignore error 3010 (reboot required)
|
||||
IF %ERRORLEVEL% EQU 3010 cmd /c "exit /b 0"
|
||||
shell: cmd
|
||||
|
||||
- name: Create the tablespace directory on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-latest' }}
|
||||
run: |
|
||||
sudo mkdir -p /var/lib/postgresql/tablespaces/${{ matrix.pgver }}
|
||||
sudo chown postgres:postgres /var/lib/postgresql/tablespaces/${{ matrix.pgver }}
|
||||
|
||||
- name: Create the tablespace directory on macOS
|
||||
if: ${{ matrix.os == 'macos-latest' }}
|
||||
run: |
|
||||
mkdir -p /usr/local/var/tablespaces/${{ matrix.pgver }}
|
||||
|
||||
- name: Create the tablespace directory on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
mkdir "C:\PostgreSQL\${{ matrix.pgver }}\tablespaces"
|
||||
icacls "C:\PostgreSQL\${{ matrix.pgver }}\tablespaces" /grant "NETWORK SERVICE":(OI)(CI)F /T
|
||||
shell: cmd
|
||||
|
||||
- name: Start PostgreSQL on Linux
|
||||
if: ${{ matrix.os == 'ubuntu-latest' }}
|
||||
run: |
|
||||
sudo su -c "echo local all all trust > /etc/postgresql/${{ matrix.pgver }}/main/pg_hba.conf"
|
||||
sudo sed -i "s/port = 543[0-9]/port = 59${{ matrix.pgver }}/g" /etc/postgresql/${{ matrix.pgver }}/main/postgresql.conf
|
||||
sudo sed -i "s/#shared_preload_libraries = ''/shared_preload_libraries = '\$libdir\/plugin_debugger'/g" /etc/postgresql/${{ matrix.pgver }}/main/postgresql.conf
|
||||
sudo su - postgres -c "/usr/lib/postgresql/${{ matrix.pgver }}/bin/postgres -D /var/lib/postgresql/${{ matrix.pgver }}/main -c config_file=/etc/postgresql/${{ matrix.pgver }}/main/postgresql.conf &"
|
||||
|
||||
until sudo runuser -l postgres -c "pg_isready -p 59${{ matrix.pgver }}" 2>/dev/null; do
|
||||
>&2 echo "Postgres is unavailable - sleeping for 2 seconds"
|
||||
sleep 2
|
||||
done
|
||||
|
||||
psql -U postgres -p 59${{ matrix.pgver }} -c 'CREATE EXTENSION pgagent;'
|
||||
psql -U postgres -p 59${{ matrix.pgver }} -c 'CREATE EXTENSION pldbgapi;'
|
||||
|
||||
- name: Start PostgreSQL on macOS
|
||||
if: ${{ matrix.os == 'macos-latest' }}
|
||||
run: |
|
||||
echo local all all trust > /usr/local/var/postgresql@${{ matrix.pgver }}/pg_hba.conf
|
||||
sed -i '' "s/#port = 543[0-9]/port = 59${{ matrix.pgver }}/g" /usr/local/var/postgresql@${{ matrix.pgver }}/postgresql.conf
|
||||
brew services restart postgresql@${{ matrix.pgver }}
|
||||
|
||||
until /usr/local/opt/postgresql@${{ matrix.pgver }}/bin/pg_isready -p 59${{ matrix.pgver }} 2>/dev/null; do
|
||||
>&2 echo "Postgres is unavailable - sleeping for 2 seconds"
|
||||
sleep 2
|
||||
done
|
||||
|
||||
psql postgres -p 59${{ matrix.pgver }} -c 'CREATE ROLE postgres SUPERUSER LOGIN;'
|
||||
|
||||
- name: Install Python dependencies on Linux and macOS
|
||||
if: ${{ matrix.os == 'macos-latest' || matrix.os == 'ubuntu-latest' }}
|
||||
run: make install-python-testing
|
||||
|
||||
- name: Install Python dependencies on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
SET LIB=C:\PostgreSQL\${{ matrix.pgver }}\lib;%LIB%
|
||||
SET INCLUDE=C:\PostgreSQL\${{ matrix.pgver }}\include;%INCLUDE%
|
||||
python -m venv venv
|
||||
call venv\Scripts\activate.bat
|
||||
python -m pip install --upgrade pip
|
||||
pip install wheel sphinx sphinxcontrib-youtube -r web\regression\requirements.txt
|
||||
shell: cmd
|
||||
|
||||
- name: Create the test configuration on Linux and macOS
|
||||
if: ${{ matrix.os == 'macos-latest' || matrix.os == 'ubuntu-latest' }}
|
||||
run: |
|
||||
cat <<EOF > web/config_local.py
|
||||
from config import *
|
||||
|
||||
# Debug mode
|
||||
DEBUG = True
|
||||
|
||||
# App mode
|
||||
SERVER_MODE = False
|
||||
|
||||
# Log
|
||||
CONSOLE_LOG_LEVEL = DEBUG
|
||||
FILE_LOG_LEVEL = DEBUG
|
||||
|
||||
DEFAULT_SERVER = '127.0.0.1'
|
||||
|
||||
UPGRADE_CHECK_ENABLED = False
|
||||
|
||||
LOG_FILE = "$(pwd)/var/pgadmin4.log"
|
||||
SESSION_DB_PATH = "$(pwd)/var/sessions"
|
||||
STORAGE_DIR = "$(pwd)/var/storage"
|
||||
SQLITE_PATH = "$(pwd)/var/pgadmin4.db"
|
||||
TEST_SQLITE_PATH = "$(pwd)/var/pgadmin4.db"
|
||||
AZURE_CREDENTIAL_CACHE_DIR = "$(pwd)/var/azurecredentialcache"
|
||||
EOF
|
||||
|
||||
cat <<EOF > web/regression/test_config.json
|
||||
{
|
||||
"pgAdmin4_login_credentials": {
|
||||
"new_password": "NEWPASSWORD",
|
||||
"login_password": "PASSWORD",
|
||||
"login_username": "USER@EXAMPLE.COM"
|
||||
},
|
||||
"pgAdmin4_test_user_credentials": {
|
||||
"new_password": "NEWPASSWORD",
|
||||
"login_password": "PASSWORD",
|
||||
"login_username": "USER2@EXAMPLE.COM"
|
||||
},
|
||||
"pgAdmin4_test_non_admin_credentials": {
|
||||
"new_password": "NEWPASSWORD",
|
||||
"login_password": "PASSWORD",
|
||||
"login_username": "USER@EXAMPLE.COM"
|
||||
},
|
||||
"server_group": 1,
|
||||
"server_credentials": [
|
||||
{
|
||||
"name": "PostgreSQL ${{ matrix.pgver }}",
|
||||
"comment": "PostgreSQL ${{ matrix.pgver }} Server",
|
||||
"db_username": "postgres",
|
||||
"host": "${{ matrix.os == 'macos-latest' && '/tmp' || matrix.os == 'ubuntu-latest' && '/var/run/postgresql' || '127.0.0.1' }}",
|
||||
"db_password": "postgres",
|
||||
"db_port": 59${{ matrix.pgver }},
|
||||
"maintenance_db": "postgres",
|
||||
"sslmode": "prefer",
|
||||
"tablespace_path": "${{ matrix.os == 'macos-latest' && format('/usr/local/var/tablespaces/{0}', matrix.pgver) || format('/var/lib/postgresql/tablespaces/{0}', matrix.pgver) }}",
|
||||
"enabled": true,
|
||||
"default_binary_paths": {
|
||||
"pg": "${{ matrix.os == 'macos-latest' && format('/usr/local/opt/postgresql@{0}/bin', matrix.pgver) || format('/usr/lib/postgresql/{0}/bin', matrix.pgver) }}",
|
||||
"ppas": ""
|
||||
}
|
||||
}
|
||||
],
|
||||
"server_update_data": [
|
||||
{
|
||||
"comment": "This is test update comment"
|
||||
}
|
||||
]
|
||||
}
|
||||
EOF
|
||||
|
||||
- name: Create the test configuration on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
FOR /f "delims=" %%D IN ('python -c "import os; print(os.getcwd().replace('\\', '\\\\'))"') DO SET WORKING_DIR=%%D
|
||||
|
||||
> web\config_local.py (
|
||||
@echo.from config import *
|
||||
@echo.
|
||||
@echo.# Debug mode
|
||||
@echo.DEBUG = True
|
||||
@echo.
|
||||
@echo.# App mode
|
||||
@echo.SERVER_MODE = False
|
||||
@echo.
|
||||
@echo.# Log
|
||||
@echo.CONSOLE_LOG_LEVEL = DEBUG
|
||||
@echo.FILE_LOG_LEVEL = DEBUG
|
||||
@echo.
|
||||
@echo.DEFAULT_SERVER = '127.0.0.1'
|
||||
@echo.
|
||||
@echo.UPGRADE_CHECK_ENABLED = False
|
||||
@echo.
|
||||
@echo.LOG_FILE = "%WORKING_DIR%\\var\\pgadmin4.log"
|
||||
@echo.SESSION_DB_PATH = "%WORKING_DIR%\\var\\sessions"
|
||||
@echo.STORAGE_DIR = "%WORKING_DIR%\\var\\storage"
|
||||
@echo.SQLITE_PATH = "%WORKING_DIR%\\var\\pgadmin4.db"
|
||||
@echo.TEST_SQLITE_PATH = "%WORKING_DIR%\\var\\test_pgadmin4.db"
|
||||
@echo.AZURE_CREDENTIAL_CACHE_DIR = "%WORKING_DIR%\\var\\azurecredentialcache"
|
||||
)
|
||||
|
||||
> web\regression\test_config.json (
|
||||
@echo.{
|
||||
@echo. "pgAdmin4_login_credentials": {
|
||||
@echo. "new_password": "NEWPASSWORD",
|
||||
@echo. "login_password": "PASSWORD",
|
||||
@echo. "login_username": "USER@EXAMPLE.COM"
|
||||
@echo. },
|
||||
@echo. "pgAdmin4_test_user_credentials": {
|
||||
@echo. "new_password": "NEWPASSWORD",
|
||||
@echo. "login_password": "PASSWORD",
|
||||
@echo. "login_username": "USER2@EXAMPLE.COM"
|
||||
@echo. },
|
||||
@echo. "pgAdmin4_test_non_admin_credentials": {
|
||||
@echo. "new_password": "NEWPASSWORD",
|
||||
@echo. "login_password": "PASSWORD",
|
||||
@echo. "login_username": "USER@EXAMPLE.COM"
|
||||
@echo. },
|
||||
@echo. "server_group": 1,
|
||||
@echo. "server_credentials": [
|
||||
@echo. {
|
||||
@echo. "name": "PostgreSQL ${{ matrix.pgver }}",
|
||||
@echo. "comment": "PostgreSQL ${{ matrix.pgver }} Server",
|
||||
@echo. "db_username": "postgres",
|
||||
@echo. "host": "127.0.0.1",
|
||||
@echo. "db_password": "postgres",
|
||||
@echo. "db_port": 59${{ matrix.pgver }},
|
||||
@echo. "maintenance_db": "postgres",
|
||||
@echo. "sslmode": "prefer",
|
||||
@echo. "tablespace_path": "C:\\PostgreSQL\\${{ matrix.pgver }}\\tablespaces",
|
||||
@echo. "enabled": true,
|
||||
@echo. "default_binary_paths": {
|
||||
@echo. "pg": "C:\\PostgreSQL\\${{ matrix.pgver }}\\bin",
|
||||
@echo. "ppas": ""
|
||||
@echo. }
|
||||
@echo. }
|
||||
@echo. ],
|
||||
@echo. "server_update_data": [
|
||||
@echo. {
|
||||
@echo. "comment": "This is test update comment"
|
||||
@echo. }
|
||||
@echo. ]
|
||||
@echo.}
|
||||
)
|
||||
shell: cmd
|
||||
|
||||
- name: Run the tests on Linux and macOS
|
||||
if: ${{ matrix.os == 'macos-latest' || matrix.os == 'ubuntu-latest' }}
|
||||
run: |
|
||||
. venv/bin/activate
|
||||
make check-python
|
||||
|
||||
- name: Run the tests on Windows
|
||||
if: ${{ matrix.os == 'windows-latest' }}
|
||||
run: |
|
||||
call venv\Scripts\activate.bat
|
||||
python web\regression\runtests.py --exclude feature_tests
|
||||
shell: cmd
|
||||
|
||||
- name: Archive server log
|
||||
if: success() || failure()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: server-log-${{ matrix.os }}-pg${{ matrix.pgver }}
|
||||
path: var/pgadmin4.log
|
||||
|
||||
- name: Archive regression log
|
||||
if: success() || failure()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: regression-log-${{ matrix.os }}-pg${{ matrix.pgver }}
|
||||
path: web/regression/regression.log
|
||||
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
# This workflow requires the following configuration in Github
|
||||
#
|
||||
# Variables:
|
||||
# SONARQUBE_PROJECT_KEY - The project key in SonarQube
|
||||
#
|
||||
# Secrets:
|
||||
# SONARQUBE_TOKEN - SonarQube API token
|
||||
# SONARQUBE_HOST - The URL of the SonarQube host
|
||||
|
||||
name: SonarQube scan
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
|
||||
concurrency:
|
||||
group: sonarqube
|
||||
cancel-in-progress: false
|
||||
|
||||
jobs:
|
||||
build:
|
||||
# Only run if the project key is set
|
||||
if: vars.SONARQUBE_PROJECT_KEY != null
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Create the scan properties file
|
||||
run: |
|
||||
cat <<EOF > sonar-project.properties
|
||||
sonar.projectKey=${{ vars.SONARQUBE_PROJECT_KEY }}
|
||||
sonar.projectName=pgAdmin 4
|
||||
sonar.projectVersion=%VERSION%
|
||||
|
||||
# Ignore templates and SQL scripts as they confuse the scanner
|
||||
sonar.exclusions=**/templates/**/*, **/*.sql
|
||||
|
||||
# Let SonarQube know where tests can be found
|
||||
sonar.test.inclusions=**/tests/**, web/regression
|
||||
|
||||
# Python compatibility
|
||||
sonar.python.version=3.7, 3.8, 3.9, 3.10, 3.11
|
||||
EOF
|
||||
|
||||
APP_RELEASE=`grep "^APP_RELEASE" web/config.py | cut -d"=" -f2 | sed 's/ //g'`
|
||||
APP_REVISION=`grep "^APP_REVISION" web/config.py | cut -d"=" -f2 | sed 's/ //g'`
|
||||
APP_LONG_VERSION=${APP_RELEASE}.${APP_REVISION}
|
||||
sed -i "s/%VERSION%/${APP_LONG_VERSION}/g" sonar-project.properties
|
||||
|
||||
- name: SonarQube Scan
|
||||
uses: sonarsource/sonarqube-scan-action@master
|
||||
env:
|
||||
SONAR_TOKEN: ${{ secrets.SONARQUBE_TOKEN }}
|
||||
SONAR_HOST_URL: ${{ secrets.SONARQUBE_HOST }}
|
||||
@@ -9,6 +9,7 @@
|
||||
.DS_Store
|
||||
.idea
|
||||
.vscode
|
||||
.yarn
|
||||
/*.diff
|
||||
/*.patch
|
||||
/dist
|
||||
|
||||
@@ -12,143 +12,154 @@ Name Version
|
||||
---- ------- ------- ---
|
||||
Python 3.6+ PSF https://www.python.org/
|
||||
nw 0.50.2 MIT git://github.com/nwjs/npm-installer.git
|
||||
axios 0.21.4 MIT https://github.com/axios/axios.git
|
||||
asynckit 0.4.0 MIT git+https://github.com/alexindigo/asynckit.git
|
||||
axios 1.3.5 MIT https://github.com/axios/axios.git
|
||||
bootstrap 4.6.2 MIT git+https://github.com/twbs/bootstrap.git
|
||||
combined-stream 1.0.8 MIT git://github.com/felixge/node-combined-stream.git
|
||||
delayed-stream 1.0.0 MIT git://github.com/felixge/node-delayed-stream.git
|
||||
follow-redirects 1.15.2 MIT git@github.com:follow-redirects/follow-redirects.git
|
||||
form-data 4.0.0 MIT git://github.com/form-data/form-data.git
|
||||
mime-db 1.52.0 MIT https://github.com/jshttp/mime-db.git
|
||||
mime-types 2.1.35 MIT https://github.com/jshttp/mime-types.git
|
||||
proxy-from-env 1.1.0 MIT https://github.com/Rob--W/proxy-from-env.git
|
||||
|
||||
5 dependencies listed.
|
||||
12 dependencies listed.
|
||||
|
||||
Python Dependencies
|
||||
===================
|
||||
|
||||
Name Version Licence URL
|
||||
---- ------- ------- ---
|
||||
Flask 2.1.3 BSD-3-Clause https://palletsprojects.com/p/flask
|
||||
Flask 2.2.4 BSD-3-Clause https://palletsprojects.com/p/flask
|
||||
Flask-Gravatar 0.5.0 BSD https://github.com/zzzsochi/Flask-Gravatar/
|
||||
Flask-Login 0.6.2 MIT https://github.com/maxcountryman/flask-login
|
||||
Flask-Mail 0.9.1 BSD https://github.com/rduplain/flask-mail
|
||||
Flask-Migrate 3.1.0 UNKNOWN https://github.com/miguelgrinberg/flask-migrate
|
||||
Flask-SQLAlchemy 2.5.1 BSD-3-Clause https://github.com/pallets/flask-sqlalchemy
|
||||
Flask-WTF 1.0.1 BSD-3-Clause https://github.com/wtforms/flask-wtf/
|
||||
Flask-Migrate 4.0.4 MIT https://github.com/miguelgrinberg/flask-migrate
|
||||
Flask-SQLAlchemy 3.0.3 BSD-3-Clause Unknown
|
||||
Flask-WTF 1.1.1 BSD-3-Clause https://github.com/wtforms/flask-wtf/
|
||||
Flask-Compress 1.13 MIT https://github.com/colour-science/flask-compress
|
||||
Flask-Paranoid 0.3.0 UNKNOWN https://github.com/miguelgrinberg/flask-paranoid
|
||||
Flask-Babel 2.0.0 BSD http://github.com/python-babel/flask-babel
|
||||
Flask-Security-Too 4.1.5 MIT https://github.com/Flask-Middleware/flask-security
|
||||
Flask-SocketIO 5.2.0 Unknown https://github.com/miguelgrinberg/flask-socketio
|
||||
flask-babel 3.1.0 BSD-3-Clause https://github.com/python-babel/flask-babel
|
||||
Flask-Security-Too 5.1.2 MIT https://github.com/Flask-Middleware/flask-security
|
||||
Flask-SocketIO 5.3.3 Unknown https://github.com/miguelgrinberg/flask-socketio
|
||||
WTForms 3.0.1 BSD-3-Clause https://wtforms.readthedocs.io/
|
||||
passlib 1.7.4 BSD https://passlib.readthedocs.io
|
||||
pytz 2021.3 MIT http://pythonhosted.org/pytz
|
||||
simplejson 3.18.0 MIT License https://github.com/simplejson/simplejson
|
||||
pytz 2023.3 MIT http://pythonhosted.org/pytz
|
||||
speaklater3 1.4 UNKNOWN https://github.com/ThomasWaldmann/speaklater
|
||||
sqlparse 0.4.3 BSD-3-Clause https://github.com/andialbrecht/sqlparse
|
||||
psutil 5.9.3 BSD-3-Clause https://github.com/giampaolo/psutil
|
||||
psycopg2 2.9.5 LGPL with exceptions https://psycopg.org/
|
||||
sqlparse 0.4.4 Unknown Unknown
|
||||
psutil 5.9.5 BSD-3-Clause https://github.com/giampaolo/psutil
|
||||
psycopg 3.1.8 GNU Lesser General Public License v3 (LGPLv3) https://psycopg.org/psycopg3/
|
||||
python-dateutil 2.8.2 Dual License https://github.com/dateutil/dateutil
|
||||
SQLAlchemy 1.4.45 MIT https://www.sqlalchemy.org
|
||||
bcrypt 3.2.2 Apache License, Version 2.0 https://github.com/pyca/bcrypt/
|
||||
cryptography 3.4.8 BSD or Apache License, Version 2.0 https://github.com/pyca/cryptography
|
||||
SQLAlchemy 2.0.11 MIT https://www.sqlalchemy.org
|
||||
bcrypt 4.0.1 Apache License, Version 2.0 https://github.com/pyca/bcrypt/
|
||||
cryptography 40.0.2 (Apache-2.0 OR BSD-3-Clause) AND PSF-2.0 https://github.com/pyca/cryptography
|
||||
sshtunnel 0.4.0 MIT https://github.com/pahaz/sshtunnel
|
||||
ldap3 2.9.1 LGPL v3 https://github.com/cannatag/ldap3
|
||||
gssapi 1.8.2 LICENSE.txt https://github.com/pythongssapi/python-gssapi
|
||||
eventlet 0.33.0 UNKNOWN http://eventlet.net
|
||||
eventlet 0.33.3 Unknown http://eventlet.net
|
||||
httpagentparser 1.9.5 http://www.opensource.org/licenses/mit-license.php https://github.com/shon/httpagentparser
|
||||
user-agents 2.2.0 MIT https://github.com/selwin/python-user-agents
|
||||
pywinpty 1.1.* Unknown Unknown
|
||||
Authlib 1.1.0 BSD 3-Clause License https://authlib.org/
|
||||
requests 2.25.1 Apache 2.0 https://requests.readthedocs.io
|
||||
pyotp 2.7.0 MIT License https://github.com/pyotp/pyotp
|
||||
qrcode 7.3.1 BSD https://github.com/lincolnloop/python-qrcode
|
||||
Pillow 9.3.0 HPND https://python-pillow.org
|
||||
boto3 1.26.42 Apache License 2.0 https://github.com/boto/boto3
|
||||
botocore 1.29.42 Apache License 2.0 https://github.com/boto/botocore
|
||||
urllib3 1.26.13 MIT https://urllib3.readthedocs.io/
|
||||
Werkzeug 2.1.2 BSD-3-Clause https://palletsprojects.com/p/werkzeug/
|
||||
pywinpty 2.0.* Unknown Unknown
|
||||
Authlib 1.2.0 BSD 3-Clause License https://authlib.org/
|
||||
requests 2.28.2 Apache 2.0 https://requests.readthedocs.io
|
||||
pyotp 2.8.0 MIT License https://github.com/pyotp/pyotp
|
||||
qrcode 7.4.2 BSD https://github.com/lincolnloop/python-qrcode
|
||||
Pillow 9.5.0 HPND https://python-pillow.org
|
||||
boto3 1.26.121 Apache License 2.0 https://github.com/boto/boto3
|
||||
botocore 1.29.121 Apache License 2.0 https://github.com/boto/botocore
|
||||
urllib3 1.26.15 MIT https://urllib3.readthedocs.io/
|
||||
azure-mgmt-rdbms 10.1.0 MIT License https://github.com/Azure/azure-sdk-for-python
|
||||
azure-mgmt-resource 21.0.0 MIT License https://github.com/Azure/azure-sdk-for-python
|
||||
azure-mgmt-subscription 3.0.0 MIT License https://github.com/Azure/azure-sdk-for-python
|
||||
azure-identity 1.9.0 MIT License https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity
|
||||
azure-mgmt-resource 23.0.0 MIT License https://github.com/Azure/azure-sdk-for-python
|
||||
azure-mgmt-subscription 3.1.1 MIT License https://github.com/Azure/azure-sdk-for-python
|
||||
azure-identity 1.12.0 MIT License https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity
|
||||
google-api-python-client 2.86.0 Apache 2.0 https://github.com/googleapis/google-api-python-client/
|
||||
google-auth-oauthlib 1.0.0 Apache 2.0 https://github.com/GoogleCloudPlatform/google-auth-library-python-oauthlib
|
||||
Werkzeug 2.2.3 BSD-3-Clause https://palletsprojects.com/p/werkzeug/
|
||||
keyring 23.13.1 Unknown https://github.com/jaraco/keyring
|
||||
|
||||
NOTE: This report was generated using Python 3.10. Full information may not be
|
||||
NOTE: This report was generated using Python 3.11. Full information may not be
|
||||
shown for Python modules that are not required with this version.
|
||||
|
||||
44 dependencies listed.
|
||||
46 dependencies listed.
|
||||
|
||||
Javascript Dependencies
|
||||
=======================
|
||||
|
||||
Name Version Licence URL
|
||||
---- ------- ------- ---
|
||||
@ampproject/remapping 2.2.0 Apache-2.0 git+https://github.com/ampproject/remapping.git
|
||||
anti-trojan-source 1.4.0 Apache-2.0 https://github.com/lirantal/anti-trojan-source.git
|
||||
bootstrap-datepicker 1.9.0 Apache-2.0 https://github.com/uxsolutions/bootstrap-datepicker.git
|
||||
@ampproject/remapping 2.2.1 Apache-2.0 git+https://github.com/ampproject/remapping.git
|
||||
anti-trojan-source 1.4.1 Apache-2.0 https://github.com/lirantal/anti-trojan-source.git
|
||||
eve 0.5.4 Apache-2.0 git@github.com:adobe-webplatform/eve.git
|
||||
jmespath 0.16.0 Apache-2.0 git://github.com/jmespath/jmespath.js
|
||||
jsoneditor 9.9.2 Apache-2.0 https://github.com/josdejong/jsoneditor.git
|
||||
jsoneditor 9.10.2 Apache-2.0 https://github.com/josdejong/jsoneditor.git
|
||||
paths-js 0.4.11 Apache-2.0 https://github.com/andreaferretti/paths-js.git
|
||||
rc-dock 3.2.14 Apache-2.0 https://github.com/ticlo/rc-dock.git
|
||||
rc-dock 3.2.17 Apache-2.0 https://github.com/ticlo/rc-dock.git
|
||||
rc-new-window 0.1.13 Apache-2.0 https://github.com/ticlo/rc-new-window.git
|
||||
snapsvg 0.5.1 Apache-2.0 git@github.com:adobe-webplatform/Snap.svg.git
|
||||
spdx-correct 3.1.1 Apache-2.0 https://github.com/jslicense/spdx-correct.js.git
|
||||
spdx-correct 3.2.0 Apache-2.0 https://github.com/jslicense/spdx-correct.js.git
|
||||
validate-npm-package-license 3.0.4 Apache-2.0 https://github.com/kemitchell/validate-npm-package-license.js.git
|
||||
@babel/code-frame 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/compat-data 7.20.1 MIT https://github.com/babel/babel.git
|
||||
@babel/core 7.20.2 MIT https://github.com/babel/babel.git
|
||||
@babel/generator 7.20.4 MIT https://github.com/babel/babel.git
|
||||
@babel/code-frame 7.21.4 MIT https://github.com/babel/babel.git
|
||||
@babel/compat-data 7.21.9 MIT https://github.com/babel/babel.git
|
||||
@babel/core 7.21.8 MIT https://github.com/babel/babel.git
|
||||
@babel/generator 7.21.9 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-annotate-as-pure 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-compilation-targets 7.20.0 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-create-class-features-plugin 7.20.2 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-environment-visitor 7.18.9 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-function-name 7.19.0 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-compilation-targets 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-create-class-features-plugin 7.21.8 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-environment-visitor 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-function-name 7.21.0 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-hoist-variables 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-member-expression-to-functions 7.18.9 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-module-imports 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-module-transforms 7.20.2 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-member-expression-to-functions 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-module-imports 7.21.4 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-module-transforms 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-optimise-call-expression 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-plugin-utils 7.20.2 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-replace-supers 7.19.1 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-simple-access 7.20.2 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-plugin-utils 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-replace-supers 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-simple-access 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-skip-transparent-expression-wrappers 7.20.0 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-split-export-declaration 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-string-parser 7.19.4 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-string-parser 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-validator-identifier 7.19.1 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-validator-option 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/helpers 7.20.1 MIT https://github.com/babel/babel.git
|
||||
@babel/helper-validator-option 7.21.0 MIT https://github.com/babel/babel.git
|
||||
@babel/helpers 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/highlight 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/parser 7.20.3 MIT https://github.com/babel/babel.git
|
||||
@babel/parser 7.21.9 MIT https://github.com/babel/babel.git
|
||||
@babel/plugin-proposal-class-properties 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/plugin-syntax-jsx 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/plugin-syntax-jsx 7.21.4 MIT https://github.com/babel/babel.git
|
||||
@babel/plugin-transform-react-display-name 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/plugin-transform-react-jsx 7.19.0 MIT https://github.com/babel/babel.git
|
||||
@babel/plugin-transform-react-jsx 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/plugin-transform-react-jsx-development 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/plugin-transform-react-pure-annotations 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/preset-react 7.18.6 MIT https://github.com/babel/babel.git
|
||||
@babel/runtime 7.20.1 MIT https://github.com/babel/babel.git
|
||||
@babel/template 7.18.10 MIT https://github.com/babel/babel.git
|
||||
@babel/traverse 7.20.1 MIT https://github.com/babel/babel.git
|
||||
@babel/types 7.20.2 MIT https://github.com/babel/babel.git
|
||||
@babel/runtime 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/template 7.21.9 MIT https://github.com/babel/babel.git
|
||||
@babel/traverse 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@babel/types 7.21.5 MIT https://github.com/babel/babel.git
|
||||
@date-io/core 1.3.13 MIT https://github.com/dmtrKovalenko/date-io
|
||||
@date-io/date-fns 1.3.13 MIT https://github.com/dmtrKovalenko/date-io
|
||||
@emotion/babel-plugin 11.10.5 MIT https://github.com/emotion-js/emotion/tree/main/packages/babel-plugin
|
||||
@emotion/cache 11.10.5 MIT https://github.com/emotion-js/emotion/tree/main/packages/cache
|
||||
@emotion/babel-plugin 11.11.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/babel-plugin
|
||||
@emotion/cache 11.11.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/cache
|
||||
@emotion/hash 0.8.0 MIT https://github.com/emotion-js/emotion/tree/master/packages/hash
|
||||
@emotion/hash 0.9.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/hash
|
||||
@emotion/is-prop-valid 1.2.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/is-prop-valid
|
||||
@emotion/memoize 0.8.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/memoize
|
||||
@emotion/react 11.10.5 MIT https://github.com/emotion-js/emotion/tree/main/packages/react
|
||||
@emotion/serialize 1.1.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/serialize
|
||||
@emotion/sheet 1.2.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/sheet
|
||||
@emotion/hash 0.9.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/hash
|
||||
@emotion/is-prop-valid 1.2.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/is-prop-valid
|
||||
@emotion/memoize 0.8.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/memoize
|
||||
@emotion/react 11.11.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/react
|
||||
@emotion/serialize 1.1.2 MIT https://github.com/emotion-js/emotion/tree/main/packages/serialize
|
||||
@emotion/sheet 1.2.2 MIT https://github.com/emotion-js/emotion/tree/main/packages/sheet
|
||||
@emotion/stylis 0.8.5 MIT https://github.com/emotion-js/emotion/tree/master/packages/stylis
|
||||
@emotion/unitless 0.8.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/unitless
|
||||
@emotion/unitless 0.8.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/unitless
|
||||
@emotion/unitless 0.7.5 MIT https://github.com/emotion-js/emotion/tree/master/packages/unitless
|
||||
@emotion/use-insertion-effect-with-fallbacks 1.0.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/use-insertion-effect-with-fallbacks
|
||||
@emotion/utils 1.2.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/utils
|
||||
@emotion/weak-memoize 0.3.0 MIT https://github.com/emotion-js/emotion/tree/main/packages/weak-memoize
|
||||
@emotion/use-insertion-effect-with-fallbacks 1.0.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/use-insertion-effect-with-fallbacks
|
||||
@emotion/utils 1.2.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/utils
|
||||
@emotion/weak-memoize 0.3.1 MIT https://github.com/emotion-js/emotion/tree/main/packages/weak-memoize
|
||||
@floating-ui/core 1.2.6 MIT https://github.com/floating-ui/floating-ui.git
|
||||
@floating-ui/dom 1.2.8 MIT https://github.com/floating-ui/floating-ui.git
|
||||
@istanbuljs/schema 0.1.3 MIT git+https://github.com/istanbuljs/schema.git
|
||||
@jridgewell/gen-mapping 0.3.2 MIT https://github.com/jridgewell/gen-mapping
|
||||
@jridgewell/gen-mapping 0.1.1 MIT https://github.com/jridgewell/gen-mapping
|
||||
@jridgewell/gen-mapping 0.3.3 MIT https://github.com/jridgewell/gen-mapping
|
||||
@jridgewell/resolve-uri 3.1.0 MIT https://github.com/jridgewell/resolve-uri
|
||||
@jridgewell/set-array 1.1.2 MIT https://github.com/jridgewell/set-array
|
||||
@jridgewell/sourcemap-codec 1.4.14 MIT git+https://github.com/jridgewell/sourcemap-codec.git
|
||||
@jridgewell/trace-mapping 0.3.17 MIT git+https://github.com/jridgewell/trace-mapping.git
|
||||
@jridgewell/sourcemap-codec 1.4.15 MIT git+https://github.com/jridgewell/sourcemap-codec.git
|
||||
@jridgewell/trace-mapping 0.3.18 MIT git+https://github.com/jridgewell/trace-mapping.git
|
||||
@material-ui/core 4.11.0 MIT https://github.com/mui-org/material-ui.git
|
||||
@material-ui/icons 4.11.3 MIT https://github.com/mui-org/material-ui.git
|
||||
@material-ui/lab 4.0.0-alpha.58 MIT https://github.com/mui-org/material-ui.git
|
||||
@@ -166,27 +177,30 @@ validate-npm-package-license 3.0.4
|
||||
@projectstorm/react-diagrams-core 6.7.4 MIT https://github.com/projectstorm/react-diagrams.git
|
||||
@projectstorm/react-diagrams-defaults 6.7.4 MIT https://github.com/projectstorm/react-diagrams.git
|
||||
@projectstorm/react-diagrams-routing 6.7.4 MIT https://github.com/projectstorm/react-diagrams.git
|
||||
@rc-component/portal 1.1.1 MIT https://github.com/react-component/portal.git
|
||||
@rc-component/trigger 1.13.3 MIT https://github.com/react-component/trigger.git
|
||||
@react-dnd/asap 5.0.2 MIT https://github.com/react-dnd/react-dnd
|
||||
@react-dnd/invariant 4.0.2 MIT https://github.com/react-dnd/react-dnd
|
||||
@react-dnd/shallowequal 4.0.2 MIT https://github.com/react-dnd/react-dnd
|
||||
@remix-run/router 1.0.3 MIT https://github.com/remix-run/react-router
|
||||
@remix-run/router 1.6.2 MIT https://github.com/remix-run/react-router
|
||||
@simonwep/pickr 1.8.2 MIT https://github.com/Simonwep/pickr.git
|
||||
@sindresorhus/is 0.7.0 MIT https://github.com/sindresorhus/is.git
|
||||
@socket.io/component-emitter 3.1.0 MIT https://github.com/socketio/emitter.git
|
||||
@szhsin/react-menu 2.3.4 MIT https://github.com/szhsin/react-menu.git
|
||||
@types/classnames 2.3.1 MIT Unknown
|
||||
@types/minimist 1.2.2 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/node 18.11.9 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/node 20.2.4 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/normalize-package-data 2.4.1 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/parse-json 4.0.0 MIT https://www.github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/prop-types 15.7.5 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react 18.0.25 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react 16.14.34 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react-dom 16.9.17 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react-transition-group 4.4.5 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/scheduler 0.16.2 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react 18.2.7 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react 16.14.42 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react 17.0.60 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react-dom 17.0.20 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/react-transition-group 4.4.6 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/scheduler 0.16.3 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
@types/styled-jsx 2.2.9 MIT https://github.com/DefinitelyTyped/DefinitelyTyped.git
|
||||
ajv 8.11.2 MIT https://github.com/ajv-validator/ajv.git
|
||||
ajv 8.12.0 MIT https://github.com/ajv-validator/ajv.git
|
||||
ajv 6.12.6 MIT https://github.com/ajv-validator/ajv.git
|
||||
ansi-styles 3.2.1 MIT https://github.com/chalk/ansi-styles.git
|
||||
array-union 3.0.1 MIT https://github.com/sindresorhus/array-union.git
|
||||
@@ -198,20 +212,19 @@ async 2.6.4
|
||||
attr-accept 2.2.2 MIT https://github.com/react-dropzone/attr-accept.git
|
||||
axios 0.21.4 MIT https://github.com/axios/axios.git
|
||||
babel-plugin-macros 3.1.0 MIT https://github.com/kentcdodds/babel-plugin-macros
|
||||
babel-plugin-styled-components 2.0.7 MIT https://github.com/styled-components/babel-plugin-styled-components.git
|
||||
babel-plugin-styled-components 2.1.3 MIT https://github.com/styled-components/babel-plugin-styled-components.git
|
||||
babel-plugin-syntax-jsx 6.18.0 MIT https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-jsx
|
||||
babelify 10.0.0 MIT https://github.com/babel/babelify.git
|
||||
balanced-match 1.0.2 MIT git://github.com/juliangruber/balanced-match.git
|
||||
base64-arraybuffer 1.0.2 MIT https://github.com/niklasvh/base64-arraybuffer
|
||||
bignumber.js 9.1.0 MIT https://github.com/MikeMcl/bignumber.js.git
|
||||
bignumber.js 9.1.1 MIT https://github.com/MikeMcl/bignumber.js.git
|
||||
bootstrap 4.6.2 MIT git+https://github.com/twbs/bootstrap.git
|
||||
bootstrap4-toggle 3.6.1 MIT https://github.com/gitbrent/bootstrap4-toggle.git
|
||||
bowser 2.11.0 MIT git+https://github.com/lancedikson/bowser.git
|
||||
brace 0.11.1 MIT git://github.com/thlorenz/brace.git
|
||||
brace-expansion 1.1.11 MIT git://github.com/juliangruber/brace-expansion.git
|
||||
braces 3.0.2 MIT https://github.com/micromatch/braces.git
|
||||
browserfs 1.4.3 MIT https://github.com/jvilk/BrowserFS.git
|
||||
browserslist 4.21.4 MIT https://github.com/browserslist/browserslist.git
|
||||
browserslist 4.21.5 MIT https://github.com/browserslist/browserslist.git
|
||||
callsites 3.1.0 MIT https://github.com/sindresorhus/callsites.git
|
||||
camelcase 6.3.0 MIT https://github.com/sindresorhus/camelcase.git
|
||||
camelcase-keys 7.0.2 MIT https://github.com/sindresorhus/camelcase-keys.git
|
||||
@@ -223,7 +236,7 @@ chartjs-plugin-zoom 1.3.0
|
||||
classnames 2.3.2 MIT https://github.com/JedWatson/classnames.git
|
||||
closest 0.0.1 MIT https://github.com/ForbesLindesay/closest.git
|
||||
clsx 1.2.1 MIT https://github.com/lukeed/clsx.git
|
||||
codemirror 5.65.10 MIT https://github.com/codemirror/CodeMirror.git
|
||||
codemirror 5.65.13 MIT https://github.com/codemirror/CodeMirror.git
|
||||
color-convert 1.9.3 MIT https://github.com/Qix-/color-convert.git
|
||||
color-name 1.1.3 MIT git@github.com:dfcreative/color-name.git
|
||||
colord 2.9.3 MIT https://github.com/omgovich/colord.git
|
||||
@@ -231,21 +244,21 @@ commander 7.2.0
|
||||
concat-map 0.0.1 MIT git://github.com/substack/node-concat-map.git
|
||||
convert-source-map 1.9.0 MIT git://github.com/thlorenz/convert-source-map.git
|
||||
convert-units 2.3.4 MIT git://github.com/ben-ng/convert-units.git
|
||||
core-js 3.26.1 MIT https://github.com/zloirock/core-js.git
|
||||
core-js 3.30.2 MIT https://github.com/zloirock/core-js.git
|
||||
cosmiconfig 7.1.0 MIT git+https://github.com/davidtheclark/cosmiconfig.git
|
||||
css-line-break 2.1.0 MIT git+ssh://git@github.com/niklasvh/css-line-break.git
|
||||
css-to-react-native 3.0.0 MIT git+https://github.com/styled-components/css-to-react-native.git
|
||||
css-to-react-native 3.2.0 MIT git+https://github.com/styled-components/css-to-react-native.git
|
||||
css-tree 1.1.3 MIT https://github.com/csstree/csstree.git
|
||||
css-vendor 2.0.8 MIT git@github.com:cssinjs/css-vendor.git
|
||||
cssesc 3.0.0 MIT https://github.com/mathiasbynens/cssesc.git
|
||||
cssnano 5.1.14 MIT https://github.com/cssnano/cssnano.git
|
||||
cssnano-preset-default 5.2.13 MIT https://github.com/cssnano/cssnano.git
|
||||
cssnano 5.1.15 MIT https://github.com/cssnano/cssnano.git
|
||||
cssnano-preset-default 5.2.14 MIT https://github.com/cssnano/cssnano.git
|
||||
cssnano-utils 3.1.0 MIT https://github.com/cssnano/cssnano.git
|
||||
csso 4.2.0 MIT https://github.com/css/csso.git
|
||||
csstype 2.6.21 MIT https://github.com/frenic/csstype
|
||||
csstype 3.1.1 MIT https://github.com/frenic/csstype
|
||||
csstype 3.1.2 MIT https://github.com/frenic/csstype
|
||||
dagre 0.8.5 MIT https://github.com/dagrejs/dagre.git
|
||||
date-fns 2.29.3 MIT https://github.com/date-fns/date-fns
|
||||
date-fns 2.30.0 MIT https://github.com/date-fns/date-fns
|
||||
debug 4.3.4 MIT git://github.com/debug-js/debug.git
|
||||
decamelize 5.0.1 MIT https://github.com/sindresorhus/decamelize.git
|
||||
decamelize 1.2.0 MIT https://github.com/sindresorhus/decamelize.git
|
||||
@@ -257,8 +270,8 @@ dnd-core 16.0.1
|
||||
dom-align 1.12.4 MIT git@github.com:yiminghe/dom-align.git
|
||||
dom-helpers 5.2.1 MIT git+https://github.com/react-bootstrap/dom-helpers.git
|
||||
dom-serializer 1.4.1 MIT git://github.com/cheeriojs/dom-renderer.git
|
||||
engine.io-client 6.2.3 MIT https://github.com/socketio/engine.io-client.git
|
||||
engine.io-parser 5.0.4 MIT git@github.com:socketio/engine.io-parser.git
|
||||
engine.io-client 6.4.0 MIT https://github.com/socketio/engine.io-client.git
|
||||
engine.io-parser 5.0.7 MIT git@github.com:socketio/engine.io-parser.git
|
||||
error-ex 1.3.2 MIT https://github.com/qix-/node-error-ex.git
|
||||
escalade 3.1.1 MIT https://github.com/lukeed/escalade.git
|
||||
escape-string-regexp 1.0.5 MIT https://github.com/sindresorhus/escape-string-regexp.git
|
||||
@@ -285,15 +298,15 @@ has-flag 3.0.0
|
||||
has-flag 4.0.0 MIT https://github.com/sindresorhus/has-flag.git
|
||||
html-escaper 2.0.2 MIT https://github.com/WebReflection/html-escaper.git
|
||||
html2canvas 1.4.1 MIT git@github.com:niklasvh/html2canvas.git
|
||||
ignore 5.2.1 MIT git@github.com:kaelzhang/node-ignore.git
|
||||
ignore 5.2.4 MIT git@github.com:kaelzhang/node-ignore.git
|
||||
immutability-helper 3.1.1 MIT git+https://github.com/kolodny/immutability-helper.git
|
||||
import-fresh 3.3.0 MIT https://github.com/sindresorhus/import-fresh.git
|
||||
indent-string 5.0.0 MIT https://github.com/sindresorhus/indent-string.git
|
||||
insert-if 1.2.0 MIT git+https://github.com/chipto/insert-if.git
|
||||
ip-address 7.1.0 MIT git://github.com/beaugunderson/ip-address.git
|
||||
is-any-array 2.0.0 MIT https://github.com/cheminfo-js/is-any-array.git
|
||||
is-any-array 2.0.1 MIT https://github.com/cheminfo-js/is-any-array.git
|
||||
is-arrayish 0.2.1 MIT https://github.com/qix-/node-is-arrayish.git
|
||||
is-core-module 2.11.0 MIT git+https://github.com/inspect-js/is-core-module.git
|
||||
is-core-module 2.12.1 MIT git+https://github.com/inspect-js/is-core-module.git
|
||||
is-extglob 2.1.1 MIT https://github.com/jonschlinkert/is-extglob.git
|
||||
is-glob 4.0.3 MIT https://github.com/micromatch/is-glob.git
|
||||
is-in-browser 1.1.3 MIT git+https://github.com/tuxsudo/is-in-browser.git
|
||||
@@ -302,7 +315,7 @@ is-plain-obj 1.1.0
|
||||
is-relative 1.0.0 MIT https://github.com/jonschlinkert/is-relative.git
|
||||
is-unc-path 1.0.0 MIT https://github.com/jonschlinkert/is-unc-path.git
|
||||
javascript-natural-sort 0.7.1 MIT https://github.com/Bill4Time/javascript-natural-sort.git
|
||||
jquery 3.6.1 MIT https://github.com/jquery/jquery.git
|
||||
jquery 3.7.0 MIT https://github.com/jquery/jquery.git
|
||||
jquery-contextmenu 2.9.2 MIT git://github.com/swisnl/jQuery-contextMenu.git
|
||||
js-tokens 4.0.0 MIT https://github.com/lydell/js-tokens.git
|
||||
jsbn 1.1.0 MIT https://github.com/andyperlitch/jsbn.git
|
||||
@@ -313,18 +326,17 @@ json-schema-traverse 1.0.0
|
||||
json-schema-traverse 0.4.1 MIT git+https://github.com/epoberezkin/json-schema-traverse.git
|
||||
json-source-map 0.6.1 MIT git+https://github.com/epoberezkin/json-source-map.git
|
||||
json5 2.2.3 MIT git+https://github.com/json5/json5.git
|
||||
jsoneditor-react 3.1.2 MIT git+https://github.com/vankop/jsoneditor-react.git
|
||||
jss 10.9.2 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-camel-case 10.9.2 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-default-unit 10.9.2 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-global 10.9.2 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-nested 10.9.2 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-props-sort 10.9.2 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-rule-value-function 10.9.2 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-vendor-prefixer 10.9.2 MIT https://github.com/cssinjs/jss.git
|
||||
jss 10.10.0 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-camel-case 10.10.0 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-default-unit 10.10.0 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-global 10.10.0 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-nested 10.10.0 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-props-sort 10.10.0 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-rule-value-function 10.10.0 MIT https://github.com/cssinjs/jss.git
|
||||
jss-plugin-vendor-prefixer 10.10.0 MIT https://github.com/cssinjs/jss.git
|
||||
karma-coverage 2.2.0 MIT git://github.com/karma-runner/karma-coverage.git
|
||||
kind-of 6.0.3 MIT https://github.com/jonschlinkert/kind-of.git
|
||||
lilconfig 2.0.6 MIT https://github.com/antonk52/lilconfig
|
||||
lilconfig 2.1.0 MIT https://github.com/antonk52/lilconfig
|
||||
lines-and-columns 1.2.4 MIT https://github.com/eventualbuddha/lines-and-columns.git
|
||||
locate-path 6.0.0 MIT https://github.com/sindresorhus/locate-path.git
|
||||
lodash 4.17.21 MIT https://github.com/lodash/lodash.git
|
||||
@@ -355,6 +367,7 @@ map-obj 4.3.0
|
||||
map-obj 1.0.1 MIT https://github.com/sindresorhus/map-obj.git
|
||||
matches-selector 0.0.1 MIT https://github.com/ForbesLindesay/matches-selector.git
|
||||
memoize-one 5.2.1 MIT https://github.com/alexreardon/memoize-one.git
|
||||
memoize-one 6.0.0 MIT https://github.com/alexreardon/memoize-one.git
|
||||
meow 10.1.5 MIT https://github.com/sindresorhus/meow.git
|
||||
merge2 1.4.1 MIT git@github.com:teambition/merge2.git
|
||||
micromatch 4.0.5 MIT https://github.com/micromatch/micromatch.git
|
||||
@@ -366,11 +379,11 @@ ml-array-rescale 1.3.7
|
||||
ml-matrix 6.10.4 MIT https://github.com/mljs/matrix.git
|
||||
mobius1-selectr 2.4.13 MIT git+https://github.com/Mobius1/Selectr.git
|
||||
moment 2.29.4 MIT https://github.com/moment/moment.git
|
||||
moment-timezone 0.5.39 MIT https://github.com/moment/moment-timezone.git
|
||||
moment-timezone 0.5.43 MIT https://github.com/moment/moment-timezone.git
|
||||
ms 2.1.2 MIT https://github.com/zeit/ms.git
|
||||
nanoid 3.3.4 MIT https://github.com/ai/nanoid.git
|
||||
nanopop 2.2.0 MIT https://github.com/Simonwep/nanopop.git
|
||||
node-releases 2.0.6 MIT https://github.com/chicoxyzzy/node-releases.git
|
||||
nanoid 3.3.6 MIT https://github.com/ai/nanoid.git
|
||||
nanopop 2.3.0 MIT https://github.com/Simonwep/nanopop.git
|
||||
node-releases 2.0.12 MIT https://github.com/chicoxyzzy/node-releases.git
|
||||
normalize-url 6.1.0 MIT https://github.com/sindresorhus/normalize-url.git
|
||||
notificar 1.0.1 MIT git+https://github.com/neeksandhu/notificar.git
|
||||
notistack 1.0.10 MIT git+https://github.com/iamhosseindhv/notistack.git
|
||||
@@ -391,16 +404,16 @@ picomatch 2.3.1
|
||||
picomodal 3.0.0 MIT https://github.com/Nycto/PicoModal.git
|
||||
popper.js 1.16.1-lts MIT git+https://github.com/FezVrasta/popper.js.git
|
||||
popper.js 1.16.1 MIT git+https://github.com/FezVrasta/popper.js.git
|
||||
postcss 8.4.19 MIT https://github.com/postcss/postcss.git
|
||||
postcss 8.4.23 MIT https://github.com/postcss/postcss.git
|
||||
postcss-calc 8.2.4 MIT https://github.com/postcss/postcss-calc.git
|
||||
postcss-colormin 5.3.0 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-colormin 5.3.1 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-convert-values 5.1.3 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-discard-comments 5.1.2 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-discard-duplicates 5.1.0 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-discard-empty 5.1.1 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-discard-overridden 5.1.0 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-merge-longhand 5.1.7 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-merge-rules 5.1.3 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-merge-rules 5.1.4 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-minify-font-values 5.1.0 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-minify-gradients 5.1.1 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-minify-params 5.1.4 MIT https://github.com/cssnano/cssnano.git
|
||||
@@ -415,28 +428,28 @@ postcss-normalize-unicode 5.1.1
|
||||
postcss-normalize-url 5.1.0 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-normalize-whitespace 5.1.1 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-ordered-values 5.1.3 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-reduce-initial 5.1.1 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-reduce-initial 5.1.2 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-reduce-transforms 5.1.0 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-selector-parser 6.0.11 MIT https://github.com/postcss/postcss-selector-parser.git
|
||||
postcss-selector-parser 6.0.13 MIT https://github.com/postcss/postcss-selector-parser.git
|
||||
postcss-svgo 5.1.0 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-unique-selectors 5.1.1 MIT https://github.com/cssnano/cssnano.git
|
||||
postcss-value-parser 4.2.0 MIT https://github.com/TrySound/postcss-value-parser.git
|
||||
prop-types 15.8.1 MIT https://github.com/facebook/prop-types.git
|
||||
punycode 2.1.1 MIT https://github.com/bestiejs/punycode.js.git
|
||||
punycode 2.3.0 MIT https://github.com/mathiasbynens/punycode.js.git
|
||||
queue-microtask 1.2.3 MIT git://github.com/feross/queue-microtask.git
|
||||
quick-lru 5.1.1 MIT https://github.com/sindresorhus/quick-lru.git
|
||||
raf 3.4.1 MIT git://github.com/chrisdickinson/raf.git
|
||||
rc-align 4.0.12 MIT git@github.com:react-component/align.git
|
||||
rc-align 4.0.15 MIT git@github.com:react-component/align.git
|
||||
rc-dropdown 3.6.2 MIT git@github.com:react-component/dropdown.git
|
||||
rc-dropdown 4.0.1 MIT git@github.com:react-component/dropdown.git
|
||||
rc-menu 9.8.0 MIT git@github.com:react-component/menu.git
|
||||
rc-menu 9.9.1 MIT git@github.com:react-component/menu.git
|
||||
rc-menu 9.6.4 MIT git@github.com:react-component/menu.git
|
||||
rc-motion 2.6.2 MIT git@github.com:react-component/motion.git
|
||||
rc-overflow 1.2.8 MIT git@github.com:react-component/overflow.git
|
||||
rc-resize-observer 1.2.0 MIT git@github.com:react-component/resize-observer.git
|
||||
rc-motion 2.7.3 MIT git@github.com:react-component/motion.git
|
||||
rc-overflow 1.3.0 MIT git@github.com:react-component/overflow.git
|
||||
rc-resize-observer 1.3.1 MIT git@github.com:react-component/resize-observer.git
|
||||
rc-tabs 11.16.1 MIT git@github.com:react-component/tabs.git
|
||||
rc-trigger 5.3.4 MIT https://github.com/react-component/trigger.git
|
||||
rc-util 5.24.6 MIT git@github.com:react-component/util.git
|
||||
rc-util 5.32.2 MIT git@github.com:react-component/util.git
|
||||
re-resizable 6.9.6 MIT https://github.com/bokuweb/react-resizable-box.git
|
||||
react 17.0.2 MIT https://github.com/facebook/react.git
|
||||
react-aspen 1.2.0 MIT https://github.com/neeksandhu/react-aspen.git
|
||||
@@ -446,63 +459,63 @@ react-dnd 16.0.1
|
||||
react-dnd-html5-backend 16.0.1 MIT https://github.com/react-dnd/react-dnd.git
|
||||
react-dom 17.0.2 MIT https://github.com/facebook/react.git
|
||||
react-draggable 4.4.5 MIT https://github.com/react-grid-layout/react-draggable.git
|
||||
react-draggable 4.4.4 MIT https://github.com/react-grid-layout/react-draggable.git
|
||||
react-dropzone 14.2.3 MIT https://github.com/react-dropzone/react-dropzone.git
|
||||
react-input-autosize 3.0.0 MIT https://github.com/JedWatson/react-input-autosize.git
|
||||
react-is 16.13.1 MIT https://github.com/facebook/react.git
|
||||
react-is 17.0.2 MIT https://github.com/facebook/react.git
|
||||
react-rnd 10.3.7 MIT https://github.com/bokuweb/react-rnd.git
|
||||
react-router 6.4.3 MIT https://github.com/remix-run/react-router
|
||||
react-router-dom 6.4.3 MIT https://github.com/remix-run/react-router
|
||||
react-select 4.3.1 MIT https://github.com/JedWatson/react-select/tree/master/packages/react-select
|
||||
react-resize-detector 9.1.0 MIT git+https://github.com/maslianok/react-resize-detector.git
|
||||
react-rnd 10.4.1 MIT https://github.com/bokuweb/react-rnd.git
|
||||
react-router 6.11.2 MIT https://github.com/remix-run/react-router
|
||||
react-router-dom 6.11.2 MIT https://github.com/remix-run/react-router
|
||||
react-select 5.7.3 MIT https://github.com/JedWatson/react-select/tree/master/packages/react-select
|
||||
react-table 7.8.0 MIT https://github.com/tannerlinsley/react-table
|
||||
react-transition-state 1.1.5 MIT https://github.com/szhsin/react-transition-state.git
|
||||
react-virtualized-auto-sizer 1.0.7 MIT https://github.com/bvaughn/react-virtualized-auto-sizer.git
|
||||
react-window 1.8.8 MIT https://github.com/bvaughn/react-window.git
|
||||
react-virtualized-auto-sizer 1.0.17 MIT https://github.com/bvaughn/react-virtualized-auto-sizer.git
|
||||
react-window 1.8.9 MIT https://github.com/bvaughn/react-window.git
|
||||
read-pkg 6.0.0 MIT https://github.com/sindresorhus/read-pkg.git
|
||||
read-pkg-up 8.0.0 MIT https://github.com/sindresorhus/read-pkg-up.git
|
||||
redent 4.0.0 MIT https://github.com/sindresorhus/redent.git
|
||||
redux 4.2.0 MIT https://github.com/reduxjs/redux.git
|
||||
redux 4.2.1 MIT https://github.com/reduxjs/redux.git
|
||||
regenerator-runtime 0.13.11 MIT https://github.com/facebook/regenerator/tree/main/packages/runtime
|
||||
require-from-string 2.0.2 MIT https://github.com/floatdrop/require-from-string.git
|
||||
resize-observer-polyfill 1.5.1 MIT https://github.com/que-etc/resize-observer-polyfill.git
|
||||
resolve 1.22.1 MIT git://github.com/browserify/resolve.git
|
||||
resolve 1.22.2 MIT git://github.com/browserify/resolve.git
|
||||
resolve-from 4.0.0 MIT https://github.com/sindresorhus/resolve-from.git
|
||||
reusify 1.0.4 MIT git+https://github.com/mcollina/reusify.git
|
||||
rifm 0.7.0 MIT https://github.com/istarkov/rifm.git
|
||||
run-parallel 1.2.0 MIT git://github.com/feross/run-parallel.git
|
||||
scheduler 0.20.2 MIT https://github.com/facebook/react.git
|
||||
select2 4.0.13 MIT git://github.com/select2/select2.git
|
||||
shallowequal 1.1.0 MIT https://github.com/dashed/shallowequal.git
|
||||
slash 4.0.0 MIT https://github.com/sindresorhus/slash.git
|
||||
snapsvg-cjs 0.0.6 MIT git+https://github.com/geelen/Snap.svg-cjs.git
|
||||
socket.io-client 4.5.4 MIT https://github.com/socketio/socket.io-client.git
|
||||
socket.io-parser 4.2.1 MIT https://github.com/socketio/socket.io-parser.git
|
||||
socket.io-client 4.6.1 MIT https://github.com/socketio/socket.io-client.git
|
||||
socket.io-parser 4.2.3 MIT https://github.com/socketio/socket.io-parser.git
|
||||
spdx-expression-parse 3.0.1 MIT https://github.com/jslicense/spdx-expression-parse.js.git
|
||||
split.js 1.6.5 MIT https://github.com/nathancahill/split
|
||||
stable 0.1.8 MIT https://github.com/Two-Screen/stable.git
|
||||
strip-indent 4.0.0 MIT https://github.com/sindresorhus/strip-indent.git
|
||||
styled-components 5.3.6 MIT git+https://github.com/styled-components/styled-components.git
|
||||
styled-components 5.3.11 MIT git+https://github.com/styled-components/styled-components.git
|
||||
stylehacks 5.1.1 MIT https://github.com/cssnano/cssnano.git
|
||||
stylis 4.1.3 MIT https://github.com/thysultan/stylis.js
|
||||
stylis 4.2.0 MIT https://github.com/thysultan/stylis.js
|
||||
supports-color 5.5.0 MIT https://github.com/chalk/supports-color.git
|
||||
supports-color 7.2.0 MIT https://github.com/chalk/supports-color.git
|
||||
supports-preserve-symlinks-flag 1.0.0 MIT git+https://github.com/inspect-js/node-supports-preserve-symlinks-flag.git
|
||||
svgo 2.8.0 MIT git://github.com/svg/svgo.git
|
||||
tempusdominus-bootstrap-4 5.39.2 MIT https://github.com/tempusdominus/bootstrap-4.git
|
||||
tempusdominus-core 5.19.3 MIT https://github.com/tempusdominus/core.git
|
||||
text-segmentation 1.0.3 MIT git+ssh://git@github.com/niklasvh/text-segmentation.git
|
||||
tiny-warning 1.0.3 MIT https://github.com/alexreardon/tiny-warning.git
|
||||
to-fast-properties 2.0.0 MIT https://github.com/sindresorhus/to-fast-properties.git
|
||||
to-regex-range 5.0.1 MIT https://github.com/micromatch/to-regex-range.git
|
||||
trim-newlines 4.0.2 MIT https://github.com/sindresorhus/trim-newlines.git
|
||||
trim-newlines 4.1.1 MIT https://github.com/sindresorhus/trim-newlines.git
|
||||
unc-path-regex 0.1.2 MIT https://github.com/regexhq/unc-path-regex.git
|
||||
update-browserslist-db 1.0.10 MIT https://github.com/browserslist/update-db.git
|
||||
update-browserslist-db 1.0.11 MIT https://github.com/browserslist/update-db.git
|
||||
uplot 1.6.24 MIT git+https://github.com/leeoniya/uPlot.git
|
||||
uplot-react 1.1.4 MIT https://github.com/skalinichev/uplot-wrappers.git
|
||||
use-isomorphic-layout-effect 1.1.2 MIT git+https://github.com/Andarist/use-isomorphic-layout-effect.git
|
||||
util-deprecate 1.0.2 MIT git://github.com/TooTallNate/util-deprecate.git
|
||||
utrie 1.0.2 MIT git+ssh://git@github.com/niklasvh/utrie.git
|
||||
valid-filename 2.0.1 MIT https://github.com/sindresorhus/valid-filename.git
|
||||
wkx 0.5.0 MIT http://github.com/cschwarz/wkx.git
|
||||
ws 8.2.3 MIT https://github.com/websockets/ws.git
|
||||
ws 8.11.0 MIT https://github.com/websockets/ws.git
|
||||
xmlhttprequest-ssl 2.0.0 MIT git://github.com/mjwwit/node-XMLHttpRequest.git
|
||||
xterm 4.19.0 MIT https://github.com/xtermjs/xterm.js
|
||||
xterm-addon-fit 0.5.0 MIT https://github.com/xtermjs/xterm.js
|
||||
@@ -516,23 +529,25 @@ react-leaflet 3.2.5
|
||||
@trysound/sax 0.2.0 ISC git://github.com/svg/sax.git
|
||||
boolbase 1.0.0 ISC https://github.com/fb55/boolbase
|
||||
css-color-keywords 1.0.0 ISC https://github.com/sonicdoe/css-color-keywords.git
|
||||
css-declaration-sorter 6.3.1 ISC https://github.com/Siilwyn/css-declaration-sorter.git
|
||||
electron-to-chromium 1.4.284 ISC https://github.com/kilian/electron-to-chromium/
|
||||
fastq 1.13.0 ISC git+https://github.com/mcollina/fastq.git
|
||||
css-declaration-sorter 6.4.0 ISC https://github.com/Siilwyn/css-declaration-sorter.git
|
||||
electron-to-chromium 1.4.408 ISC https://github.com/kilian/electron-to-chromium/
|
||||
fastq 1.15.0 ISC git+https://github.com/mcollina/fastq.git
|
||||
glob-parent 5.1.2 ISC https://github.com/gulpjs/glob-parent.git
|
||||
hosted-git-info 4.1.0 ISC git+https://github.com/npm/hosted-git-info.git
|
||||
jsonrepair 2.2.1 ISC https://github.com/josdejong/jsonrepair.git
|
||||
jsonrepair 3.1.0 ISC https://github.com/josdejong/jsonrepair.git
|
||||
lru-cache 6.0.0 ISC git://github.com/isaacs/node-lru-cache.git
|
||||
lru-cache 5.1.1 ISC git://github.com/isaacs/node-lru-cache.git
|
||||
minimatch 3.1.2 ISC git://github.com/isaacs/minimatch.git
|
||||
picocolors 1.0.0 ISC https://github.com/alexeyraspopov/picocolors.git
|
||||
react-timer-hook 3.0.5 ISC git+https://github.com/amrlabib/react-timer-hook.git
|
||||
semver 7.3.8 ISC https://github.com/npm/node-semver.git
|
||||
react-timer-hook 3.0.6 ISC git+https://github.com/amrlabib/react-timer-hook.git
|
||||
semver 6.3.0 ISC https://github.com/npm/node-semver
|
||||
semver 7.5.1 ISC https://github.com/npm/node-semver.git
|
||||
vanilla-picker 2.12.1 ISC https://github.com/Sphinxxxx/vanilla-picker.git
|
||||
yallist 4.0.0 ISC git+https://github.com/isaacs/yallist.git
|
||||
yallist 3.1.1 ISC git+https://github.com/isaacs/yallist.git
|
||||
yaml 1.10.2 ISC https://github.com/eemeli/yaml.git
|
||||
yargs-parser 20.2.9 ISC https://github.com/yargs/yargs-parser.git
|
||||
ace-builds 1.13.1 BSD-3-Clause https://github.com/ajaxorg/ace-builds.git
|
||||
ace-builds 1.22.0 BSD-3-Clause https://github.com/ajaxorg/ace-builds.git
|
||||
hoist-non-react-statics 3.3.2 BSD-3-Clause git://github.com/mridgway/hoist-non-react-statics.git
|
||||
hyphenate-style-name 1.0.4 BSD-3-Clause git+ssh://git@github.com/rexxars/hyphenate-style-name.git
|
||||
istanbul-lib-coverage 3.2.0 BSD-3-Clause git+ssh://git@github.com/istanbuljs/istanbuljs.git
|
||||
@@ -545,28 +560,28 @@ source-map 0.6.1
|
||||
source-map 0.5.7 BSD-3-Clause http://github.com/mozilla/source-map.git
|
||||
source-map-js 1.0.2 BSD-3-Clause https://github.com/7rulnik/source-map-js.git
|
||||
sprintf-js 1.1.2 BSD-3-Clause https://github.com/alexei/sprintf.js.git
|
||||
caniuse-lite 1.0.30001434 CC-BY-4.0 https://github.com/browserslist/caniuse-lite.git
|
||||
caniuse-lite 1.0.30001489 CC-BY-4.0 https://github.com/browserslist/caniuse-lite.git
|
||||
css-select 4.3.0 BSD-2-Clause git://github.com/fb55/css-select.git
|
||||
css-what 6.1.0 BSD-2-Clause https://github.com/fb55/css-what
|
||||
domelementtype 2.3.0 BSD-2-Clause git://github.com/fb55/domelementtype.git
|
||||
domhandler 4.3.1 BSD-2-Clause git://github.com/fb55/domhandler.git
|
||||
domutils 2.8.0 BSD-2-Clause git://github.com/fb55/domutils.git
|
||||
entities 2.2.0 BSD-2-Clause git://github.com/fb55/entities.git
|
||||
leaflet 1.9.3 BSD-2-Clause git://github.com/Leaflet/Leaflet.git
|
||||
leaflet 1.9.4 BSD-2-Clause git://github.com/Leaflet/Leaflet.git
|
||||
normalize-package-data 3.0.3 BSD-2-Clause git://github.com/npm/normalize-package-data.git
|
||||
nth-check 2.1.1 BSD-2-Clause https://github.com/fb55/nth-check
|
||||
uri-js 4.4.1 BSD-2-Clause http://github.com/garycourt/uri-js
|
||||
FileSaver 0.10.0 UNKNOWN Unknown
|
||||
heap 0.2.5 UNKNOWN git://github.com/qiao/heap.js.git
|
||||
mdn-data 2.0.14 CC0-1.0 https://github.com/mdn/data.git
|
||||
spdx-license-ids 3.0.12 CC0-1.0 https://github.com/jslicense/spdx-license-ids.git
|
||||
spdx-license-ids 3.0.13 CC0-1.0 https://github.com/jslicense/spdx-license-ids.git
|
||||
mousetrap 1.6.5 Apache-2.0 WITH LLVM-exception git://github.com/ccampbell/mousetrap.git
|
||||
pako 1.0.11 (MIT AND Zlib) https://github.com/nodeca/pako.git
|
||||
spdx-exceptions 2.3.0 CC-BY-3.0 https://github.com/kemitchell/spdx-exceptions.json.git
|
||||
tslib 2.4.1 0BSD https://github.com/Microsoft/tslib.git
|
||||
tslib 2.5.2 0BSD https://github.com/Microsoft/tslib.git
|
||||
tslib 2.3.1 0BSD https://github.com/Microsoft/tslib.git
|
||||
type-fest 1.4.0 (MIT OR CC0-1.0) https://github.com/sindresorhus/type-fest.git
|
||||
webcabin-docker 2.2.5 MIT* Unknown
|
||||
|
||||
489 dependencies listed.
|
||||
495 dependencies listed.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# pgAdmin 4 - PostgreSQL Tools
|
||||
#
|
||||
# Copyright (C) 2013 - 2018, The pgAdmin Development Team
|
||||
# Copyright (C) 2013 - 2023, The pgAdmin Development Team
|
||||
# This software is released under the PostgreSQL Licence
|
||||
#
|
||||
#########################################################################
|
||||
@@ -27,6 +27,7 @@ RUN apk add --no-cache \
|
||||
make \
|
||||
nasm \
|
||||
nodejs \
|
||||
npm \
|
||||
yarn \
|
||||
zlib-dev
|
||||
|
||||
@@ -45,6 +46,7 @@ WORKDIR /pgadmin4/web
|
||||
|
||||
# Build the JS vendor code in the app-builder, and then remove the vendor source.
|
||||
RUN export CPPFLAGS="-DPNG_ARM_NEON_OPT=0" && \
|
||||
yarn set version berry && \
|
||||
yarn install && \
|
||||
yarn run bundle && \
|
||||
rm -rf node_modules \
|
||||
@@ -91,7 +93,7 @@ RUN apk add --no-cache \
|
||||
FROM env-builder as docs-builder
|
||||
|
||||
# Install Sphinx
|
||||
RUN /venv/bin/python3 -m pip install --no-cache-dir sphinx==6.1.1
|
||||
RUN /venv/bin/python3 -m pip install --no-cache-dir sphinx
|
||||
RUN /venv/bin/python3 -m pip install --no-cache-dir sphinxcontrib-youtube
|
||||
|
||||
# Copy the docs from the local tree. Explicitly remove any existing builds that
|
||||
@@ -203,7 +205,7 @@ RUN apk add \
|
||||
chown pgadmin:root /pgadmin4/config_distro.py && \
|
||||
chmod g=u /pgadmin4/config_distro.py && \
|
||||
chmod g=u /etc/passwd && \
|
||||
setcap CAP_NET_BIND_SERVICE=+eip /usr/bin/python3.10 && \
|
||||
setcap CAP_NET_BIND_SERVICE=+eip /usr/bin/python3.11 && \
|
||||
echo "pgadmin ALL = NOPASSWD: /usr/sbin/postfix start" > /etc/sudoers.d/postfix && \
|
||||
echo "pgadminr ALL = NOPASSWD: /usr/sbin/postfix start" >> /etc/sudoers.d/postfix
|
||||
|
||||
|
||||
@@ -246,7 +246,7 @@ REM Main build sequence Ends
|
||||
ECHO } >> "%BUILDROOT%\web\config_distro.py"
|
||||
|
||||
ECHO Building docs...
|
||||
CALL pip install sphinx==6.1.1 || EXIT /B 1
|
||||
CALL pip install sphinx || EXIT /B 1
|
||||
CALL pip install sphinxcontrib-youtube || EXIT /B 1
|
||||
MKDIR "%BUILDROOT%\docs\en_US\html"
|
||||
CD "%WD%\docs\en_US"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# pgAdmin 4 - PostgreSQL Tools
|
||||
#
|
||||
# Copyright (C) 2013 - 2018, The pgAdmin Development Team
|
||||
# Copyright (C) 2013 - 2023, The pgAdmin Development Team
|
||||
# This software is released under the PostgreSQL Licence
|
||||
#
|
||||
#########################################################################
|
||||
@@ -18,13 +18,19 @@ APP_REVISION := $(shell grep ^APP_REVISION web/config.py | awk -F"=" '{print $$N
|
||||
#########################################################################
|
||||
|
||||
# Include only platform-independent builds in all
|
||||
all: docs pip src runtime
|
||||
all: docs pip src
|
||||
|
||||
appbundle:
|
||||
./pkg/mac/build.sh
|
||||
|
||||
install-node:
|
||||
cd web && yarn install && npm rebuild
|
||||
cd web && yarn install
|
||||
|
||||
install-python:
|
||||
./tools/setup-python-env.sh
|
||||
|
||||
install-python-testing:
|
||||
./tools/setup-python-env.sh --test
|
||||
|
||||
bundle:
|
||||
cd web && yarn run bundle
|
||||
@@ -76,23 +82,13 @@ check-js: install-node linter
|
||||
check-js-coverage:
|
||||
cd web && yarn run test:karma-coverage
|
||||
|
||||
runtime-debug:
|
||||
cd runtime && qmake CONFIG+=debug && make
|
||||
|
||||
runtime:
|
||||
cd runtime && qmake CONFIG+=release && make
|
||||
|
||||
# Include all clean sub-targets in clean
|
||||
clean: clean-appbundle clean-debian clean-dist clean-docs clean-node clean-pip clean-redhat clean-src clean-runtime
|
||||
clean: clean-appbundle clean-debian clean-dist clean-docs clean-node clean-pip clean-redhat clean-src
|
||||
rm -rf web/pgadmin/static/js/generated/*
|
||||
rm -rf web/pgadmin/static/js/generated/.cache
|
||||
rm -rf web/pgadmin/static/css/generated/*
|
||||
rm -rf web/pgadmin/static/css/generated/.cache
|
||||
|
||||
clean-runtime:
|
||||
if [ -f runtime/Makefile ]; then (cd runtime && make clean); fi;
|
||||
rm -rf build-*
|
||||
|
||||
clean-appbundle:
|
||||
rm -rf mac-build/
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ node_modules/nw/nwjs/nwjs.app/Contents/MacOS/nwjs .
|
||||
# Configuring the Python Environment
|
||||
|
||||
In order to run the Python code, a suitable runtime environment is required.
|
||||
Python version 3.6 and later are currently supported. It is recommended that a
|
||||
Python version 3.7 and later are currently supported. It is recommended that a
|
||||
Python Virtual Environment is setup for this purpose, rather than using the
|
||||
system Python environment. On Linux and Mac systems, the process is fairly
|
||||
simple - adapt as required for your distribution:
|
||||
@@ -74,7 +74,7 @@ simple - adapt as required for your distribution:
|
||||
```
|
||||
|
||||
4. Ensure that a PostgreSQL installation's bin/ directory is in the path (so
|
||||
pg_config can be found for building psycopg2), and install the required
|
||||
pg_config can be found for building psycopg3), and install the required
|
||||
packages:
|
||||
|
||||
```bash
|
||||
|
||||
@@ -13,6 +13,9 @@ Please consider the following guidelines when selecting a password:
|
||||
|
||||
* Ensure that your password is an adequate length; 6 characters should be the
|
||||
absolute minimum number of characters in the password.
|
||||
* The minimum password length is set by default to six characters. This value
|
||||
can be changed by setting the *PASSWORD_LENGTH_MIN* option to desired length
|
||||
in pgAdmin configuration; see :ref:`config_py` for more information.
|
||||
* Ensure that your password is not open to dictionary attacks. Use a mixture of
|
||||
upper and lower case letters and numerics, and avoid words or names. Consider
|
||||
using the first letter from each word in a phrase that you will remember
|
||||
|
||||
@@ -13,6 +13,9 @@ Please consider the following guidelines when selecting a password:
|
||||
|
||||
* Ensure that your password is an adequate length; 6 characters should be the
|
||||
absolute minimum number of characters in the password.
|
||||
* The minimum password length is set by default to six characters. This value
|
||||
can be changed by setting the *PASSWORD_LENGTH_MIN* option to desired length
|
||||
in pgAdmin configuration; see :ref:`config_py` for more information.
|
||||
* Ensure that your password is not open to dictionary attacks. Use a mixture of
|
||||
upper and lower case letters and numerics, and avoid words or names. Consider
|
||||
using the first letter from each word in a phrase that you will remember
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
.. _cloud_aws_rds:
|
||||
|
||||
******************************************
|
||||
`Amazon AWS RDS Cloud Deployment`:index:
|
||||
`Amazon RDS Cloud Deployment`:index:
|
||||
******************************************
|
||||
|
||||
To deploy a PostgreSQL server on the Amazon AWS cloud, follow the below steps.
|
||||
To deploy a PostgreSQL server on the Amazon cloud, follow the below steps.
|
||||
|
||||
.. image:: images/cloud_aws_provider.png
|
||||
.. image:: images/cloud_provider_for_postgresql.png
|
||||
:alt: Cloud Deployment Provider
|
||||
:align: center
|
||||
|
||||
@@ -32,8 +32,7 @@ Use the fields from the Instance Specification tab to specify the Instance
|
||||
details.
|
||||
|
||||
* Use the *Instance name* field to add an instance name for the PostgreSQL
|
||||
server; the name specified will be displayed in the *Browser* tree control
|
||||
too.
|
||||
server; the name specified will be displayed in the *Object Explorer* too.
|
||||
|
||||
* Use the *Public IP* field to specify the IP Address range for permitting the
|
||||
inbound traffic.
|
||||
@@ -63,8 +62,8 @@ details.
|
||||
Use the fields from the Database Details tab to specify the Instance details.
|
||||
|
||||
* Use the drop-down list box in the *Server group* field to select the parent
|
||||
node for the server; the server will be displayed in the *Browser* tree
|
||||
control within the specified group.
|
||||
node for the server; the server will be displayed in the *Object Explorer*
|
||||
within the specified group.
|
||||
|
||||
* Use the *Database name* field to add the database name for the PostgreSQL
|
||||
server.
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
.. _cloud_azure_postgresql:
|
||||
.. cloud_azure_database:
|
||||
|
||||
******************************************
|
||||
`Azure PostgreSQL Cloud Deployment`:index:
|
||||
`Azure Database Cloud Deployment`:index:
|
||||
******************************************
|
||||
|
||||
To deploy a PostgreSQL server on the Azure cloud, follow the below steps.
|
||||
To deploy a PostgreSQL server on the Azure Database, follow the below steps.
|
||||
|
||||
.. image:: images/cloud_azure_provider.png
|
||||
.. image:: images/cloud_provider_for_postgresql.png
|
||||
:alt: Cloud Deployment
|
||||
:align: center
|
||||
|
||||
Once you launch the tool, select the Azure PostgreSQL option.
|
||||
Once you launch the tool, select the Azure Database option.
|
||||
Click on the *Next* button to proceed further.
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ Use the fields from the Instance Specification tab to specify the Instance
|
||||
details.
|
||||
|
||||
* Use the *Cluster name* field to add a name for the PostgreSQL
|
||||
server; the name specified will be displayed in the *Browser* tree control too.
|
||||
server; the name specified will be displayed in the *Object Explorer* too.
|
||||
|
||||
* Select a subscription from the *Subscription* options which are populated based
|
||||
on user access levels in Azure portal.
|
||||
@@ -85,8 +85,8 @@ details.
|
||||
Use the fields from the Database Details tab to specify the PostgreSQL database details.
|
||||
|
||||
* Use the drop-down list in the *pgAdmin server group* field to select the parent
|
||||
node for the server; the server will be displayed in the *Browser* tree
|
||||
control within the specified group.
|
||||
node for the server; the server will be displayed in the *Object Explorer*
|
||||
within the specified group.
|
||||
|
||||
* Use the *Admin username* field to add the database name for the PostgreSQL
|
||||
server.
|
||||
@@ -103,7 +103,7 @@ Click on the next button to proceed.
|
||||
:align: center
|
||||
|
||||
At the end, review the instance details that you provided. Click on Finish
|
||||
button to deploy the instance on Azure PostgreSQL.
|
||||
button to deploy the instance on Azure Database.
|
||||
|
||||
Once you click on the finish, one background process will start which will
|
||||
deploy the instance in the cloud and monitor the progress of the deployment.
|
||||
|
After Width: | Height: | Size: 97 KiB |
@@ -1,11 +1,12 @@
|
||||
.. _cloud_deployment:
|
||||
|
||||
******************************
|
||||
`Cloud Deployment`:index:
|
||||
******************************
|
||||
*************************************
|
||||
`PostgreSQL Cloud Deployment`:index:
|
||||
*************************************
|
||||
|
||||
A PostgreSQL server can be deployed on the Amazon AWS and EDB BigAnimal
|
||||
cloud using this module. In future more cloud options will be available.
|
||||
A PostgreSQL server can be deployed on the Amazon, EDB BigAnimal, Azure,
|
||||
Google cloud using this module. In future more cloud provider options will
|
||||
be available.
|
||||
|
||||
To launch the *Cloud Deployment...* tool, right click on the *Server Group* or
|
||||
*Server* of the tree control, and select *Deploy a Cloud Instance* from the
|
||||
@@ -16,4 +17,5 @@ To launch the *Cloud Deployment...* tool, right click on the *Server Group* or
|
||||
|
||||
cloud_aws_rds
|
||||
cloud_edb_biganimal
|
||||
cloud_azure_postgresql
|
||||
cloud_azure_database
|
||||
cloud_google_cloud_sql
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
To deploy a PostgreSQL server on the EDB BigAnimal cloud, follow the below steps.
|
||||
|
||||
.. image:: images/cloud_biganimal_provider.png
|
||||
.. image:: images/cloud_provider_for_postgresql.png
|
||||
:alt: Cloud Deployment Provider
|
||||
:align: center
|
||||
|
||||
@@ -27,12 +27,13 @@ and the next button will be enabled. To proceed further, click on the next butto
|
||||
:alt: Cloud Deployment Provider
|
||||
:align: center
|
||||
|
||||
* Use the *Project* field to choose a project in your Biganimal account.
|
||||
|
||||
* Use the *Cluster type* field to choose a cluster type.
|
||||
|
||||
* Use the *No. of Standby Replicas* field to specify the replicas if you have selected the High Availability cluster.
|
||||
|
||||
* Use the *Cluster provider* field to coose the provider.
|
||||
* Use the *Cluster provider* field to choose the provider.
|
||||
|
||||
|
||||
.. image:: images/cloud_biganimal_instance.png
|
||||
@@ -43,8 +44,7 @@ Use the fields from the Instance Specification tab to specify the Instance
|
||||
details.
|
||||
|
||||
* Use the *Cluster name* field to add a cluster name for the PostgreSQL
|
||||
server; the name specified will be displayed in the *Browser* tree control
|
||||
too.
|
||||
server; the name specified will be displayed in the *Object Explorer* too.
|
||||
|
||||
* Use the *Region* field to select the region.
|
||||
|
||||
@@ -74,8 +74,8 @@ details.
|
||||
Use the fields from the Database Details tab to specify the Instance details.
|
||||
|
||||
* Use the drop-down list box in the *Server group* field to select the parent
|
||||
node for the server; the server will be displayed in the *Browser* tree
|
||||
control within the specified group.
|
||||
node for the server; the server will be displayed in the *Object Explorer*
|
||||
within the specified group.
|
||||
|
||||
* Use the *Database type* field to specify the PostgreSQL
|
||||
type, EnterpriseDB PostgreSQL Advanced Server or PostgreSQL.
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
.. cloud_google_cloud_sql:
|
||||
|
||||
************************************************
|
||||
`Google Cloud SQL Deployment`:index:
|
||||
************************************************
|
||||
|
||||
To deploy a PostgreSQL server on the Google Cloud SQL, follow the below steps.
|
||||
|
||||
.. image:: images/cloud_provider_for_postgresql.png
|
||||
:alt: Cloud Deployment
|
||||
:align: center
|
||||
|
||||
Once you launch the tool, select the Google Cloud SQL option.
|
||||
Click on the *Next* button to proceed further.
|
||||
|
||||
|
||||
.. image:: images/cloud_google_credentials.png
|
||||
:alt: Cloud Deployment
|
||||
:align: center
|
||||
|
||||
In the Credentials dialog, select client secret file to authenticate
|
||||
using google.You can download a client secret which is json formatted file
|
||||
from google cloud console once OAuth2 client ID is created.
|
||||
|
||||
.. note:: While creating client OAuth client ID, select Desktop App as application type.
|
||||
Refer `this <https://support.google.com/cloud/answer/6158849?hl=en/>`_ link for creating client secret.
|
||||
|
||||
Clicking the *Click here to authenticate yourself to Google*
|
||||
button, user will be redirected to the Google authentication page in a
|
||||
new browser tab.
|
||||
|
||||
Once authentication is completed, click on the next button to proceed.
|
||||
|
||||
.. image:: images/cloud_google_instance.png
|
||||
:alt: Cloud Deployment
|
||||
:align: center
|
||||
|
||||
Use the fields from the Instance Specification tab to specify the Instance
|
||||
details.
|
||||
|
||||
* Use the *Cluster name* field to add a name for the PostgreSQL
|
||||
server; the name specified will be displayed in the *Object Explorer* too.
|
||||
|
||||
* Select the project from *project* dropdown under which the
|
||||
PostgreSQL instance will be created.
|
||||
|
||||
* Select the location to deploy PostgreSQL instance from *Location*
|
||||
options.
|
||||
|
||||
* Select the availability zone in specified region to deploy PostgreSQL
|
||||
instance from *Availability zone* options.
|
||||
|
||||
* Use *Database version* options to specify PostgreSQL database version.
|
||||
|
||||
* Use the *Instance class* field to allocate the computational and
|
||||
memory capacity required by planned workload of this DB instance.
|
||||
|
||||
* Use the *Instance type* field to select the instance type.
|
||||
|
||||
* Specify storage type by selecting option from *Storage type*.
|
||||
|
||||
* Use the *Storage capacity* option to specify the storage capacity.
|
||||
|
||||
.. image:: images/cloud_google_network.png
|
||||
:alt: Cloud Deployment
|
||||
:align: center
|
||||
|
||||
* Use the *Public IP* field to specify the list of IP address range
|
||||
for allowed inbound traffic, for example: 127.0.0.1/32. Add multiple
|
||||
IP addresses/ranges separated with commas.
|
||||
|
||||
* Use the *High Availability* option to specify High Availability
|
||||
option. This option creates a standby in a select Secondary
|
||||
Availability Zone.
|
||||
|
||||
* Select the secondary availability zone for high availability
|
||||
from *Secondary Availability zone* options.
|
||||
|
||||
.. image:: images/cloud_google_database.png
|
||||
:alt: Cloud Deployment
|
||||
:align: center
|
||||
|
||||
Use the fields from the Database Details tab to specify the PostgreSQL database details.
|
||||
|
||||
* Use the drop-down list in the *pgAdmin server group* field to select the parent
|
||||
node for the server; the server will be displayed in the *Object Explorer*
|
||||
within the specified group.
|
||||
|
||||
* Admin username field will be default to postgres.
|
||||
server.
|
||||
|
||||
* Use the *Password* field to provide a password that will be supplied when
|
||||
authenticating with the server.
|
||||
|
||||
* Use the *Confirm password* field to repeat the password.
|
||||
|
||||
Click on the next button to proceed.
|
||||
|
||||
.. image:: images/cloud_google_review.png
|
||||
:alt: Cloud Deployment
|
||||
:align: center
|
||||
|
||||
At the end, review the instance details that you provided. Click on Finish
|
||||
button to deploy the instance on Azure PostgreSQL.
|
||||
|
||||
Once you click on the finish, one background process will start which will
|
||||
deploy the instance in the cloud and monitor the progress of the deployment.
|
||||
You can view all the background process with there running status and logs
|
||||
on the :ref:`Processes <processes>` tab
|
||||
|
||||
|
||||
The Server will be added to the tree with the cloud deployment icon. Once the
|
||||
deployment is done, the server details will be updated.
|
||||
|
||||
.. image:: images/cloud_google_deployment_tree.png
|
||||
:alt: Cloud Deployment Provider
|
||||
:align: center
|
||||
@@ -194,7 +194,7 @@ Nodes
|
||||
*****
|
||||
|
||||
Nodes are very similar to modules, it represents an individual node or,
|
||||
collection object on the browser treeview. To recognised as a node module, a
|
||||
collection object on the object explorer treeview. To recognised as a node module, a
|
||||
Python package (along with javascript modules) must be created. This must:
|
||||
|
||||
1) Be placed within the **web/pgadmin/browser/** directory, and
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
`View/Edit Data`:index:
|
||||
***********************
|
||||
|
||||
To view or modify data, right click on a table or view name in the *Browser*
|
||||
tree control. When the context menu opens, use the *View/Edit Data* menu to
|
||||
specify the number of rows you would like to display in the editor panel.
|
||||
To view or modify data, right click on a table or view name in the
|
||||
*Object Explorer*. When the context menu opens, use the *View/Edit Data* menu
|
||||
to specify the number of rows you would like to display in the editor panel.
|
||||
|
||||
.. image:: images/editgrid.png
|
||||
:alt: Edit grid window
|
||||
|
||||
@@ -12,7 +12,7 @@ The Entity-Relationship Diagram (ERD) tool is a database design tool that provid
|
||||
* Save the diagram and open it later to continue working on it.
|
||||
* Generate ready to run SQL from the database design.
|
||||
* Generate the database diagram for an existing database.
|
||||
* Drag and drop tables from browser tree to the diagram.
|
||||
* Drag and drop tables from object explorer to the diagram.
|
||||
|
||||
.. image:: images/erd_tool.png
|
||||
:alt: ERD tool window
|
||||
@@ -135,18 +135,21 @@ Utility Options
|
||||
:class: longtable
|
||||
:widths: 1 4 1
|
||||
|
||||
+----------------------+---------------------------------------------------------------------------------------------------+----------------+
|
||||
| Icon | Behavior | Shortcut |
|
||||
+======================+===================================================================================================+================+
|
||||
| *Add/Edit note* | Click this button to make notes on tables nodes while designing the database. | Option/Alt + |
|
||||
| | | Ctrl + N |
|
||||
+----------------------+---------------------------------------------------------------------------------------------------+----------------+
|
||||
| *Auto align* | Click this button to auto align all tables and links to make it look more cleaner. | Option/Alt + |
|
||||
| | | Ctrl + L |
|
||||
+----------------------+---------------------------------------------------------------------------------------------------+----------------+
|
||||
| *Show details* | Click this button to toggle the column details visibility. It allows you to show few or more | Option/Alt + |
|
||||
| | column details. | Shift + D |
|
||||
+----------------------+---------------------------------------------------------------------------------------------------+----------------+
|
||||
+-------------------------+------------------------------------------------------------------------------------------------+----------------+
|
||||
| Icon | Behavior | Shortcut |
|
||||
+=========================+================================================================================================+================+
|
||||
| *Add/Edit note* | Click this button to make notes on tables nodes while designing the database. | Option/Alt + |
|
||||
| | | Ctrl + N |
|
||||
+-------------------------+------------------------------------------------------------------------------------------------+----------------+
|
||||
| *Auto align* | Click this button to auto align all tables and links to make it look more cleaner. | Option/Alt + |
|
||||
| | | Ctrl + L |
|
||||
+-------------------------+------------------------------------------------------------------------------------------------+----------------+
|
||||
| *Show details* | Click this button to toggle the column details visibility. It allows you to show few or more | Option/Alt + |
|
||||
| | column details. | Shift + D |
|
||||
+-------------------------+------------------------------------------------------------------------------------------------+----------------+
|
||||
| *Cardinality Notation* | Change the cardinality notation format used to present relationship links. Options available | |
|
||||
| | are - Crow's Foot Notation and Chen Notation. | |
|
||||
+-------------------------+------------------------------------------------------------------------------------------------+----------------+
|
||||
|
||||
Zoom Options
|
||||
************
|
||||
|
||||
|
Before Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 68 KiB |
|
After Width: | Height: | Size: 119 KiB |
|
After Width: | Height: | Size: 95 KiB |
|
After Width: | Height: | Size: 56 KiB |
|
After Width: | Height: | Size: 119 KiB |
|
After Width: | Height: | Size: 135 KiB |
|
After Width: | Height: | Size: 151 KiB |
|
After Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 185 KiB After Width: | Height: | Size: 340 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 108 KiB After Width: | Height: | Size: 193 KiB |
|
Before Width: | Height: | Size: 114 KiB After Width: | Height: | Size: 179 KiB |
|
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 123 KiB |
|
After Width: | Height: | Size: 91 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 98 KiB |
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 217 KiB |
|
Before Width: | Height: | Size: 92 KiB After Width: | Height: | Size: 184 KiB |
|
Before Width: | Height: | Size: 61 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 6.5 KiB |
|
After Width: | Height: | Size: 8.4 KiB |
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 9.9 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 49 KiB |
|
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 113 KiB |
|
After Width: | Height: | Size: 6.0 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 124 KiB |
@@ -20,7 +20,7 @@ Use the fields in the *General* tab to specify import and export preferences:
|
||||
server should import data to a table from a file. The default is *Import*.
|
||||
|
||||
* Enter the name of the source or target file in the *Filename* field.
|
||||
Optionally, select the *Browser* icon (ellipsis) to the right to navigate
|
||||
Optionally, select the *Browse* icon (ellipsis) to the right to navigate
|
||||
into a directory and select a file.
|
||||
|
||||
* Use the drop-down listbox in the *Format* field to specify the file type.
|
||||
|
||||
@@ -20,7 +20,7 @@ When using main browser window, the following keyboard shortcuts are available:
|
||||
+============================+=======================================================+
|
||||
| Shift+Ctrl+a | Add grid row |
|
||||
+----------------------------+-------------------------------------------------------+
|
||||
| Shift+Alt+b | Browser tree |
|
||||
| Shift+Alt+b | Object explorer |
|
||||
+----------------------------+-------------------------------------------------------+
|
||||
| Shift+Alt+n | Create object |
|
||||
+----------------------------+-------------------------------------------------------+
|
||||
@@ -50,7 +50,7 @@ When using main browser window, the following keyboard shortcuts are available:
|
||||
+----------------------------+-------------------------------------------------------+
|
||||
| Shift+Ctrl+f | Quick Search |
|
||||
+----------------------------+-------------------------------------------------------+
|
||||
| F5 | Refresh browser tree |
|
||||
| F5 | Refresh object explorer |
|
||||
+----------------------------+-------------------------------------------------------+
|
||||
| Shift+Alt+s | Search objects |
|
||||
+----------------------------+-------------------------------------------------------+
|
||||
|
||||
@@ -56,3 +56,5 @@ passwords. This is applicable only for desktop mode users.
|
||||
|
||||
.. warning:: Resetting the master password will also remove all saved passwords
|
||||
and close all existing established connections.
|
||||
|
||||
**Note:** pgAdmin 4 will use the OS password manager from version 7.2 onwards and fallback to master password if OS password manager is not available.
|
||||
@@ -31,7 +31,7 @@ Use the fields on the *Display* panel to specify general display preferences:
|
||||
be automatically expanded if a treeview node is expanded and has only a single
|
||||
child.
|
||||
|
||||
* Use the *Browser tree state saving interval* field to set the treeview state
|
||||
* Use the *Object explorer state saving interval* field to set the treeview state
|
||||
saving interval. A value of *-1* will disable the treeview state saving
|
||||
functionality.
|
||||
|
||||
@@ -44,7 +44,7 @@ Use the fields on the *Display* panel to specify general display preferences:
|
||||
them to continue.
|
||||
|
||||
* When the *Hide shared servers?* switch is set to *True*, the client will hide
|
||||
all the shared servers from the browser tree.
|
||||
all the shared servers from the object explorer.
|
||||
|
||||
* Use the *Lock layout* field to lock the UI layout at different levels. This
|
||||
can also be changed from File menu on the :ref:`menu bar <menu_bar>`
|
||||
@@ -59,6 +59,8 @@ Use the fields on the *Display* panel to specify general display preferences:
|
||||
| *Full* | This will disable resizing, docking/undocking of the panels |
|
||||
+---------------------+-------------------------------------------------------------------+
|
||||
|
||||
* When the *Show empty object collections?* switch is turned off, then all object
|
||||
collections which are empty will be hidden from browser tree.
|
||||
* When the *Show system objects?* switch is set to *True*, the client will
|
||||
display system objects such as system schemas (for example, *pg_temp*) or
|
||||
system columns (for example, *xmin* or *ctid*) in the tree control.
|
||||
@@ -88,6 +90,30 @@ displayed in the *Browser* tree control:
|
||||
catalogs, you can reduce the number of object types displayed to increase
|
||||
speed.
|
||||
|
||||
Use the fields on the *Object Breadcrumbs* panel to change object breadcrumbs
|
||||
related settings:
|
||||
|
||||
.. image:: images/preferences_browser_breadcrumbs.png
|
||||
:alt: Preferences dialog object breadcrumbs section
|
||||
:align: center
|
||||
|
||||
* Use *Enable object breadcrumbs?* to enable or disable object breadcrumbs
|
||||
displayed on on object mouse hover.
|
||||
|
||||
* Use *Show comment with object breadcrumbs?* to enable or disable the
|
||||
comment visibility which comes displayed with object breadcrumbs.
|
||||
|
||||
|
||||
Use the fields on the *Processes* panel to change processes tab
|
||||
related settings:
|
||||
|
||||
.. image:: images/preferences_browser_processes.png
|
||||
:alt: Preferences dialog processes section
|
||||
:align: center
|
||||
|
||||
* Change *Process details/logs retention days* to the number of days,
|
||||
the process info and logs will be automatically cleared.
|
||||
|
||||
Use fields on the *Properties* panel to specify browser properties:
|
||||
|
||||
.. image:: images/preferences_browser_properties.png
|
||||
@@ -440,6 +466,9 @@ preferences for copied data.
|
||||
* Specify the maximum width of the column in pixels when 'Columns sized by' is
|
||||
set to *Column data*. If 'Columns sized by' is set to *Column name* then this
|
||||
setting won't have any effect.
|
||||
* Specify the number of records to fetch in one batch in query tool when
|
||||
query result set is large. Changing this value will override
|
||||
ON_DEMAND_ROW_COUNT setting from config file.
|
||||
* Use the *Result copy field separator* drop-down listbox to select the field
|
||||
separator for copied data.
|
||||
* Use the *Result copy quote character* drop-down listbox to select the quote
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
The PSQL tool allows users to connect to PostgreSQL or EDB Advanced server using
|
||||
the psql command line interface through their browser.
|
||||
|
||||
* Open the PSQL tool from the Tools or browser tree context menu, or use PSQL
|
||||
tool button at the top of the browser tree.
|
||||
* Open the PSQL tool from the Tools or object explorer context menu, or use PSQL
|
||||
tool button at the top of the object explorer.
|
||||
|
||||
* PSQL will connect to the current connected database from the browser tree.
|
||||
* PSQL will connect to the current connected database from the object explorer.
|
||||
|
||||
.. image:: images/psql_tool.png
|
||||
:alt: PSQL tool window
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
`Publication Dialog`:index:
|
||||
***************************
|
||||
|
||||
`Logical replication <https://www.postgresql.org/docs/13/logical-replication.html>`_ uses a *publish* and *subscribe* model with one or more *subscribers* subscribing to one or more *publications* on a publisher node.
|
||||
`Logical replication <https://www.postgresql.org/docs/15/logical-replication.html>`_ uses a *publish* and *subscribe* model with one or more *subscribers* subscribing to one or more *publications* on a publisher node.
|
||||
|
||||
Use the *publication* dialog to create a publication. A publication is a set of changes generated from a table or a group of tables, and might also be described as a change set or replication set.
|
||||
Use the *publication* dialog to create a publication. A publication is a set of changes generated from a table or a group of tables or a schema or a group of schemas, and might also be described as a change set or replication set.
|
||||
|
||||
The *publication* dialog organizes the development of a publication through the following dialog tabs: *General* and *Definition*. The *SQL* tab displays the SQL code generated by dialog selections.
|
||||
The *publication* dialog organizes the development of a publication through the following dialog tabs: *General*, *Tables* and *Options*. The *SQL* tab displays the SQL code generated by dialog selections.
|
||||
|
||||
.. image:: images/publication_general.png
|
||||
:alt: Publication dialog general tab
|
||||
@@ -19,20 +19,39 @@ Use the fields in the *General* tab to identify the publication:
|
||||
* Use the *Name* field to add a descriptive name for the publication. The name will be displayed in the *pgAdmin* tree control.
|
||||
* The *Owner* field takes the name of the user automatically as current connected user. You can change the owner after creating publication using alter publication.
|
||||
|
||||
Click the *Definition* tab to continue.
|
||||
Click the *Tables* tab to continue.
|
||||
|
||||
.. image:: images/publication_definition.png
|
||||
Tables tab for PostgreSQL version <= 14
|
||||
|
||||
.. image:: images/publication_tables_14.png
|
||||
:alt: Publication dialog definition tab
|
||||
:align: center
|
||||
|
||||
Use the *Definition* tab to set properties for the publication:
|
||||
Tables tab for PostgreSQL version >= 15
|
||||
|
||||
.. image:: images/publication_tables_15.png
|
||||
:alt: Publication dialog definition tab
|
||||
:align: center
|
||||
|
||||
Use the *Tables* tab to set table properties for the publication:
|
||||
|
||||
* Move the switch next to *All tables?* to *Yes* to replicate all the tables of the database, including tables created in the future.
|
||||
* Move the switch next to *Only table?* to *Yes* to replicate only the listed tables excluding all its descendant tables.
|
||||
* Specify a table or list of tables separated by a comma in *Tables* field to replicate all the listed table.
|
||||
* Specify a table or list of tables separated by a comma in *Tables* field to replicate all the listed table. With PostgreSQL 15 forward, specify a table or list of tables to replicate all the listed tables along with specific columns and/or WHERE clause to filter rows.
|
||||
* With PostgreSQL 15 forward, specify a schema or list of schemas separated by a comma in *Tables In Schema* field to replicate all the listed schemas. This field will be disabled if any columns are selected for tables.
|
||||
|
||||
Click the *Options* tab to continue.
|
||||
|
||||
.. image:: images/publication_options.png
|
||||
:alt: Publication dialog options tab
|
||||
:align: center
|
||||
|
||||
Use the *Options* tab to set option properties for the publication:
|
||||
|
||||
* Use the *With* section to determine which DML operations will be published by the new publication to the subscribers. Move the switch next to *INSERT*, *UPDATE*, *DELETE*, or *TRUNCATE* to *No* if you do not want to replicate any of these DML operations from Publication to Subscription. By default, all the switches are set to *Yes* allowing all the DML operations.
|
||||
|
||||
.. note:: A published table must have a “replica identity” configured in order to be able to replicate UPDATE and DELETE operations. You can change with ALTER TABLE statement. For more information on replica identity see `Logical Replication Publication <https://www.postgresql.org/docs/13/logical-replication-publication.html>`_.
|
||||
|
||||
.. note:: A published table must have a “replica identity” configured in order to be able to replicate UPDATE and DELETE operations. You can change with ALTER TABLE statement. For more information on replica identity see `Logical Replication Publication <https://www.postgresql.org/docs/15/logical-replication-publication.html>`_.
|
||||
|
||||
Click the *SQL* tab to continue.
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
The Query Tool is a powerful, feature-rich environment that allows you to
|
||||
execute arbitrary SQL commands and review the result set. You can access the
|
||||
Query Tool via the *Query Tool* menu option on the *Tools* menu, or through the
|
||||
context menu of select nodes of the Browser tree control. The Query Tool
|
||||
context menu of select nodes of the Object explorer control. The Query Tool
|
||||
allows you to:
|
||||
|
||||
* Issue ad-hoc SQL queries.
|
||||
|
||||
@@ -178,7 +178,12 @@ Data Editing Options
|
||||
| | | |
|
||||
| | * Click *Copy with headers* to copy the highlighted content along with the header. | |
|
||||
+----------------------+---------------------------------------------------------------------------------------------------+----------------+
|
||||
| *Paste* | Click the *Paste* icon to paste a previously copied row into a new row. | Accesskey + P |
|
||||
| *Paste* | Click the *Paste* icon to paste a previously copied row with or without serial/identity values: | Accesskey + P |
|
||||
| | | |
|
||||
| | * Click the *Paste* icon to paste a previously copied row into a new row. | |
|
||||
| | | |
|
||||
| | * Click the *Paste with SERIAL/IDENTITY values?* if you want to paste the copied column values | |
|
||||
| | in the serial/identity columns. | |
|
||||
+----------------------+---------------------------------------------------------------------------------------------------+----------------+
|
||||
| *Delete* | Click the *Delete* icon to mark the selected rows for deletion. These marked rows get deleted | Accesskey + D |
|
||||
| | when you click the *Save Data Changes* icon. | |
|
||||
|
||||
@@ -11,6 +11,11 @@ notes for it.
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
release_notes_7_2
|
||||
release_notes_7_1
|
||||
release_notes_7_0
|
||||
release_notes_6_21
|
||||
release_notes_6_20
|
||||
release_notes_6_19
|
||||
release_notes_6_18
|
||||
release_notes_6_17
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
************
|
||||
Version 6.20
|
||||
************
|
||||
|
||||
Release date: 2023-02-09
|
||||
|
||||
This release contains a number of bug fixes and new features since the release of pgAdmin 4 v6.19.
|
||||
|
||||
Supported Database Servers
|
||||
**************************
|
||||
**PostgreSQL**: 10, 11, 12, 13, 14 and 15
|
||||
|
||||
**EDB Advanced Server**: 10, 11, 12, 13, 14 and 15
|
||||
|
||||
Bundled PostgreSQL Utilities
|
||||
****************************
|
||||
**psql**, **pg_dump**, **pg_dumpall**, **pg_restore**: 15.1
|
||||
|
||||
|
||||
New features
|
||||
************
|
||||
|
||||
| `Issue #4728 <https://github.com/pgadmin-org/pgadmin4/issues/4728>`_ - Added support for setting PostgreSQL connection parameters.
|
||||
|
||||
Housekeeping
|
||||
************
|
||||
|
||||
| `Issue #4320 <https://github.com/pgadmin-org/pgadmin4/issues/4320>`_ - Added bundled PG utilities in the release note.
|
||||
| `Issue #5525 <https://github.com/pgadmin-org/pgadmin4/issues/5525>`_ - Upgrade Flask-Migrate to 4.x.
|
||||
| `Issue #5723 <https://github.com/pgadmin-org/pgadmin4/issues/5723>`_ - Improve performance by removing signal-based zoom-in, zoom-out, etc functionality from the runtime environment.
|
||||
| `Issue #5794 <https://github.com/pgadmin-org/pgadmin4/issues/5794>`_ - Use uplot for Dashboard graphs to reduce CPU usage.
|
||||
|
||||
Bug fixes
|
||||
*********
|
||||
|
||||
| `Issue #5532 <https://github.com/pgadmin-org/pgadmin4/issues/5532>`_ - Fixed an issue where the client cert location was not stored on the shared servers.
|
||||
| `Issue #5567 <https://github.com/pgadmin-org/pgadmin4/issues/5567>`_ - Fix orphan database connections resulting in an inability to connect to databases.
|
||||
| `Issue #5702 <https://github.com/pgadmin-org/pgadmin4/issues/5702>`_ - Fix an issue where role is used as username for newly added servers when opening query tool.
|
||||
| `Issue #5705 <https://github.com/pgadmin-org/pgadmin4/issues/5705>`_ - Ensure that all parts of the application recommend and enforce the same length of passwords.
|
||||
| `Issue #5732 <https://github.com/pgadmin-org/pgadmin4/issues/5732>`_ - Fixed an issue where Kerberos authentication to the server is not imported/exported.
|
||||
| `Issue #5733 <https://github.com/pgadmin-org/pgadmin4/issues/5733>`_ - Ensure that the system columns should not visible in the import/export data.
|
||||
| `Issue #5746 <https://github.com/pgadmin-org/pgadmin4/issues/5746>`_ - Increase the length of the value column of the setting table.
|
||||
| `Issue #5748 <https://github.com/pgadmin-org/pgadmin4/issues/5748>`_ - Fixed console error while attaching the partition.
|
||||
| `Issue #5751 <https://github.com/pgadmin-org/pgadmin4/issues/5751>`_ - Fix failing import servers CLI due to vulnerability fix.
|
||||
| `Issue #5761 <https://github.com/pgadmin-org/pgadmin4/issues/5761>`_ - Fix an issue where drag and drop object names is not working.
|
||||
| `Issue #5763 <https://github.com/pgadmin-org/pgadmin4/issues/5763>`_ - Ensure that keyboard hotkey to open query tool and search object should work properly.
|
||||
| `Issue #5781 <https://github.com/pgadmin-org/pgadmin4/issues/5781>`_ - Fixed an issue where Query history is not getting loaded with external database.
|
||||
| `Issue #5796 <https://github.com/pgadmin-org/pgadmin4/issues/5796>`_ - Ensure nested menu items are shown in quick search result.
|
||||
@@ -0,0 +1,49 @@
|
||||
************
|
||||
Version 6.21
|
||||
************
|
||||
|
||||
Release date: 2023-03-09
|
||||
|
||||
This release contains a number of bug fixes and new features since the release of pgAdmin 4 v6.20.
|
||||
|
||||
Supported Database Servers
|
||||
**************************
|
||||
**PostgreSQL**: 10, 11, 12, 13, 14 and 15
|
||||
|
||||
**EDB Advanced Server**: 10, 11, 12, 13, 14 and 15
|
||||
|
||||
Bundled PostgreSQL Utilities
|
||||
****************************
|
||||
**psql**, **pg_dump**, **pg_dumpall**, **pg_restore**: 15.1
|
||||
|
||||
|
||||
New features
|
||||
************
|
||||
|
||||
| `Issue #5832 <https://github.com/pgadmin-org/pgadmin4/issues/5832>`_ - Allow changing cardinality notation in ERD to use Chen notation.
|
||||
| `Issue #5842 <https://github.com/pgadmin-org/pgadmin4/issues/5842>`_ - Add additional logging for successful logins and user creation.
|
||||
|
||||
Housekeeping
|
||||
************
|
||||
|
||||
|
||||
Bug fixes
|
||||
*********
|
||||
|
||||
| `Issue #5269 <https://github.com/pgadmin-org/pgadmin4/issues/5269>`_ - Ensure that the schema diff tool should pick up the change in the column grants.
|
||||
| `Issue #5685 <https://github.com/pgadmin-org/pgadmin4/issues/5685>`_ - Ensure that Grant column permission to a view is visible in the SQL tab.
|
||||
| `Issue #5747 <https://github.com/pgadmin-org/pgadmin4/issues/5747>`_ - Ensure that content on the DDL comparison panel should get refreshed on selecting the object using the up and down arrow keys.
|
||||
| `Issue #5756 <https://github.com/pgadmin-org/pgadmin4/issues/5756>`_ - Fix for query tool prompting for unsaved changes even if no changes have been made.
|
||||
| `Issue #5758 <https://github.com/pgadmin-org/pgadmin4/issues/5758>`_ - Fixed an issue where lock layout menu was not in sync with preferences.
|
||||
| `Issue #5760 <https://github.com/pgadmin-org/pgadmin4/issues/5760>`_ - Fixed an issue where query was not pasted to editor after trojan source warning.
|
||||
| `Issue #5764 <https://github.com/pgadmin-org/pgadmin4/issues/5764>`_ - Fix an issue where the maintenance dialog for Materialized View gives an error.
|
||||
| `Issue #5773 <https://github.com/pgadmin-org/pgadmin4/issues/5773>`_ - Fixed an issue where Clear Saved Password should be disabled if the password is already cleared.
|
||||
| `Issue #5790 <https://github.com/pgadmin-org/pgadmin4/issues/5790>`_ - Fixed an issue where the user can't create trigger AFTER UPDATE OF.
|
||||
| `Issue #5803 <https://github.com/pgadmin-org/pgadmin4/issues/5803>`_ - Fix an issue where query tool is stripping spaces in grid cell.
|
||||
| `Issue #5810 <https://github.com/pgadmin-org/pgadmin4/issues/5810>`_ - Fix an issue where sequence owner is remove on sequence edit.
|
||||
| `Issue #5822 <https://github.com/pgadmin-org/pgadmin4/issues/5822>`_ - Do not allow to save invalid JSON in query tool JSON editor.
|
||||
| `Issue #5847 <https://github.com/pgadmin-org/pgadmin4/issues/5847>`_ - Fixed an issue where pgAdmin failed to connect when the Postgres password included special characters.
|
||||
| `Issue #5870 <https://github.com/pgadmin-org/pgadmin4/issues/5870>`_ - Ensure that the database migration does not fail with a NoSuchTableError exception.
|
||||
| `Issue #5872 <https://github.com/pgadmin-org/pgadmin4/issues/5872>`_ - Handle MERGE operation in query tool explain introduced in PostgreSQL 15.
|
||||
| `Issue #5889 <https://github.com/pgadmin-org/pgadmin4/issues/5889>`_ - Fixed an issue where the database server is not connected using a service file.
|
||||
| `Issue #5909 <https://github.com/pgadmin-org/pgadmin4/issues/5909>`_ - Fixed an issue where the file name in the query tool tab was not changing if another file is opened.
|
||||
@@ -0,0 +1,73 @@
|
||||
***********
|
||||
Version 7.0
|
||||
***********
|
||||
|
||||
Release date: 2023-04-13
|
||||
|
||||
This release contains a number of bug fixes and new features since the release of pgAdmin 4 v6.21.
|
||||
|
||||
Supported Database Servers
|
||||
**************************
|
||||
**PostgreSQL**: 11, 12, 13, 14 and 15
|
||||
|
||||
**EDB Advanced Server**: 11, 12, 13, 14 and 15
|
||||
|
||||
Bundled PostgreSQL Utilities
|
||||
****************************
|
||||
**psql**, **pg_dump**, **pg_dumpall**, **pg_restore**: 15.2
|
||||
|
||||
|
||||
New features
|
||||
************
|
||||
|
||||
| `Issue #3298 <https://github.com/pgadmin-org/pgadmin4/issues/3298>`_ - Auto expand row edit form when a new row is added for Primary Key, Foreign Key, Unique Constraint and Exclusion Constraint.
|
||||
| `Issue #5014 <https://github.com/pgadmin-org/pgadmin4/issues/5014>`_ - Added support for mounting shared storage in server mode.
|
||||
| `Issue #5022 <https://github.com/pgadmin-org/pgadmin4/issues/5022>`_ - Add a note on top of keyboard shortcuts preferences to show the Accesskey of the browser.
|
||||
| `Issue #5750 <https://github.com/pgadmin-org/pgadmin4/issues/5750>`_ - Added capability to deploy PostgreSQL servers on Google Cloud.
|
||||
| `Issue #5805 <https://github.com/pgadmin-org/pgadmin4/issues/5805>`_ - Added support of BigAnimal v3 API.
|
||||
| `Issue #5854 <https://github.com/pgadmin-org/pgadmin4/issues/5854>`_ - On pressing Ctrl+C on a tree object, copy the fully qualified name to clipboard.
|
||||
| `Issue #5855 <https://github.com/pgadmin-org/pgadmin4/issues/5855>`_ - Added option to create unique constraint with nulls not distinct.
|
||||
|
||||
Housekeeping
|
||||
************
|
||||
|
||||
| `Issue #4734 <https://github.com/pgadmin-org/pgadmin4/issues/4734>`_ - Rename the "Properties..." context menu option of the objects to "Edit Object..." and the "Browser" tree to "Object Explorer".
|
||||
| `Issue #5011 <https://github.com/pgadmin-org/pgadmin4/issues/5011>`_ - Upgrade from psycopg2 to psycopg3.
|
||||
| `Issue #5701 <https://github.com/pgadmin-org/pgadmin4/issues/5701>`_ - Remove Bootstrap and jQuery usage.
|
||||
| `Issue #5830 <https://github.com/pgadmin-org/pgadmin4/issues/5830>`_ - Add .ts and .tsx files under linter and fix linter issues.
|
||||
| `Issue #5901 <https://github.com/pgadmin-org/pgadmin4/issues/5901>`_ - Update SQLAlchemy, Flask, Flask-SQLAlchemy, and other packages to current versions.
|
||||
|
||||
Bug fixes
|
||||
*********
|
||||
|
||||
| `Issue #4423 <https://github.com/pgadmin-org/pgadmin4/issues/4423>`_ - Fixed an issue where list of tables is not displayed in a SQL_ASCII database.
|
||||
| `Issue #4784 <https://github.com/pgadmin-org/pgadmin4/issues/4784>`_ - Handle errors occurring during decoding UTF-8 encoded query result data which contains ascii characters.
|
||||
| `Issue #4884 <https://github.com/pgadmin-org/pgadmin4/issues/4884>`_ - Fixed an issue where it is not possible to import csv data to tables having columns with german umlauts in their name.
|
||||
| `Issue #4891 <https://github.com/pgadmin-org/pgadmin4/issues/4891>`_ - Fixed 'rawunicodeescape' codec can't decode issue in a SQL_ASCII database.
|
||||
| `Issue #5504 <https://github.com/pgadmin-org/pgadmin4/issues/5504>`_ - Fixed an issue where incorrect view of text[] fields in query and table results when use other then UTF8 (win1251) codepage and symbols.
|
||||
| `Issue #5735 <https://github.com/pgadmin-org/pgadmin4/issues/5735>`_ - Show appropriate error message when master password is not set instead of 'Crypt key missing'.
|
||||
| `Issue #5775 <https://github.com/pgadmin-org/pgadmin4/issues/5775>`_ - Display the 'No menu available for this object' message if the selected tree node does not have any options.
|
||||
| `Issue #5824 <https://github.com/pgadmin-org/pgadmin4/issues/5824>`_ - Ensure that the user's storage directory is created when the users are created, as well as for those users whose directories have not yet been created.
|
||||
| `Issue #5833 <https://github.com/pgadmin-org/pgadmin4/issues/5833>`_ - Fixed an issue where user MFA entry was not getting delete after deleting a user.
|
||||
| `Issue #5834 <https://github.com/pgadmin-org/pgadmin4/issues/5834>`_ - Fixed issue where pgAgent jobs were not getting dropped from properties tab.
|
||||
| `Issue #5874 <https://github.com/pgadmin-org/pgadmin4/issues/5874>`_ - Make "using" and "with check" fields a textarea in the RLS policy.
|
||||
| `Issue #5894 <https://github.com/pgadmin-org/pgadmin4/issues/5894>`_ - Use fetch instead of axios to close connections in SQLEditor, ERD, Schema Diff and Debugger to ensure it completes.
|
||||
| `Issue #5904 <https://github.com/pgadmin-org/pgadmin4/issues/5904>`_ - Fixed an issue where the count query should not be triggered when the estimated count is less than zero.
|
||||
| `Issue #5907 <https://github.com/pgadmin-org/pgadmin4/issues/5907>`_ - Validate user inputs provided in configuration files before starting pgadmin server.
|
||||
| `Issue #5916 <https://github.com/pgadmin-org/pgadmin4/issues/5916>`_ - Fix an issue in search objects where objects were unable to locate occasionally.
|
||||
| `Issue #5919 <https://github.com/pgadmin-org/pgadmin4/issues/5919>`_ - While restoring the database connections due to lost server connection, ensure that the databases which were previously connected are only reconnected.
|
||||
| `Issue #5921 <https://github.com/pgadmin-org/pgadmin4/issues/5921>`_ - Ensure that when pasting rows the rows are added right below the selected rows for copying.
|
||||
| `Issue #5929 <https://github.com/pgadmin-org/pgadmin4/issues/5929>`_ - Dashboard graph Y-axis width should increase with label.
|
||||
| `Issue #5934 <https://github.com/pgadmin-org/pgadmin4/issues/5934>`_ - Ensure that default values are set only for insert statement if user does not provide any values, in case of updating existing values to blank it should be set to null.
|
||||
| `Issue #5941 <https://github.com/pgadmin-org/pgadmin4/issues/5941>`_ - Fixed an issue where migration on external database is not working.
|
||||
| `Issue #5943 <https://github.com/pgadmin-org/pgadmin4/issues/5943>`_ - Use http for SVG namespace URLs which were changed to https for SonarQube fixes.
|
||||
| `Issue #5952 <https://github.com/pgadmin-org/pgadmin4/issues/5952>`_ - Ensure that the schema diff tool should not allow comparison between Postgres Server and EDB Postgres Advanced Server.
|
||||
| `Issue #5953 <https://github.com/pgadmin-org/pgadmin4/issues/5953>`_ - Fixed error while executing continue in debugging session after some time of debug execution.
|
||||
| `Issue #5955 <https://github.com/pgadmin-org/pgadmin4/issues/5955>`_ - Fix an issue where query tool is stuck when running query after discarding changed data.
|
||||
| `Issue #5958 <https://github.com/pgadmin-org/pgadmin4/issues/5958>`_ - Fix an issue where new dashboard graphs are partially following theme colors.
|
||||
| `Issue #5959 <https://github.com/pgadmin-org/pgadmin4/issues/5959>`_ - Fix an issue where Backup, Restore, and Maintenance not working if connection timeout is set in the server dialog.
|
||||
| `Issue #6018 <https://github.com/pgadmin-org/pgadmin4/issues/6018>`_ - Change the foreground color of the code mirror text for Dark Theme.
|
||||
| `Issue #6093 <https://github.com/pgadmin-org/pgadmin4/issues/6093>`_ - Fix the dependents SQL of Roles which is throwing a type casting error on PostgreSQL 15.
|
||||
| `Issue #6100 <https://github.com/pgadmin-org/pgadmin4/issues/6100>`_ - Fixed the LDAP authentication issue for the simultaneous login attempts.(CVE-2023-1907)
|
||||
| `Issue #6109 <https://github.com/pgadmin-org/pgadmin4/issues/6109>`_ - Fixed asyncio random task error messages in Query tool.
|
||||
| `Issue #6122 <https://github.com/pgadmin-org/pgadmin4/issues/6122>`_ - Fixed CSV export from Query Tool results does not include all columns for multiple CTEs.
|
||||
@@ -0,0 +1,54 @@
|
||||
***********
|
||||
Version 7.1
|
||||
***********
|
||||
|
||||
Release date: 2023-05-04
|
||||
|
||||
This release contains a number of bug fixes and new features since the release of pgAdmin 4 v7.0.
|
||||
|
||||
Supported Database Servers
|
||||
**************************
|
||||
**PostgreSQL**: 11, 12, 13, 14 and 15
|
||||
|
||||
**EDB Advanced Server**: 11, 12, 13, 14 and 15
|
||||
|
||||
Bundled PostgreSQL Utilities
|
||||
****************************
|
||||
**psql**, **pg_dump**, **pg_dumpall**, **pg_restore**: 15.2
|
||||
|
||||
|
||||
New features
|
||||
************
|
||||
|
||||
| `Issue #2078 <https://github.com/pgadmin-org/pgadmin4/issues/2078>`_ - Show object breadcrumbs path along with its comment on object hover.
|
||||
| `Issue #3275 <https://github.com/pgadmin-org/pgadmin4/issues/3275>`_ - Allow on demand record count setting to be changed per user using preferences.
|
||||
| `Issue #3316 <https://github.com/pgadmin-org/pgadmin4/issues/3316>`_ - Added support to show statistics for materialized views.
|
||||
| `Issue #3318 <https://github.com/pgadmin-org/pgadmin4/issues/3318>`_ - Added support to create an unnamed index.
|
||||
|
||||
Housekeeping
|
||||
************
|
||||
|
||||
|
||||
Bug fixes
|
||||
*********
|
||||
|
||||
| `Issue #5044 <https://github.com/pgadmin-org/pgadmin4/issues/5044>`_ - Fixed an issue where query tool hangs for some time when multiple columns are selected to open geometry viewer.
|
||||
| `Issue #5777 <https://github.com/pgadmin-org/pgadmin4/issues/5777>`_ - Fixed an issue where the browser tree state is not remembered when reopening pgAdmin.
|
||||
| `Issue #5820 <https://github.com/pgadmin-org/pgadmin4/issues/5820>`_ - Fixed an issue where collation was set to none if we remove it while creating partitioned table.
|
||||
| `Issue #5922 <https://github.com/pgadmin-org/pgadmin4/issues/5922>`_ - Ensure that when pasting a row in query tool grid, default value is used for autogenerated/serial columns.
|
||||
| `Issue #6059 <https://github.com/pgadmin-org/pgadmin4/issues/6059>`_ - Show proper message if the debugger is stopped by the user.
|
||||
| `Issue #6075 <https://github.com/pgadmin-org/pgadmin4/issues/6075>`_ - Ensure that the save button is enabled when registering a new server fails due to an API error.
|
||||
| `Issue #6077 <https://github.com/pgadmin-org/pgadmin4/issues/6077>`_ - The search object, query tool, and psql tool menu should not be displayed for pgAgent.
|
||||
| `Issue #6120 <https://github.com/pgadmin-org/pgadmin4/issues/6120>`_ - Fixed error occurring while logging out from pgAdmin keeping a query tool opened.
|
||||
| `Issue #6128 <https://github.com/pgadmin-org/pgadmin4/issues/6128>`_ - Fix a SQL error occurring on roles dependents SQL.
|
||||
| `Issue #6130 <https://github.com/pgadmin-org/pgadmin4/issues/6130>`_ - Ensure to quote the primary key value if needed while deleting rows from the table.
|
||||
| `Issue #6137 <https://github.com/pgadmin-org/pgadmin4/issues/6137>`_ - Fixed error occurring while dumping the servers from CLI.
|
||||
| `Issue #6138 <https://github.com/pgadmin-org/pgadmin4/issues/6138>`_ - Throw an appropriate error when a table for which View/Edit data is open, is deleted, and query is executed.
|
||||
| `Issue #6151 <https://github.com/pgadmin-org/pgadmin4/issues/6151>`_ - Ensure that internal users are able to login when auth sources are [ldap, internal].
|
||||
| `Issue #6158 <https://github.com/pgadmin-org/pgadmin4/issues/6158>`_ - Fixed an issue with the properties tab not getting updated if the user updates the selected node.
|
||||
| `Issue #6159 <https://github.com/pgadmin-org/pgadmin4/issues/6159>`_ - Ensure that the ERD tool should work with the external database after moving to psycopg3.
|
||||
| `Issue #6180 <https://github.com/pgadmin-org/pgadmin4/issues/6180>`_ - Fixed an issue where PSQL is not working if the PGUSER env variable is set and service file is used for server connection details.
|
||||
| `Issue #6183 <https://github.com/pgadmin-org/pgadmin4/issues/6183>`_ - Mac crash when you press Command-Shift-C.
|
||||
| `Issue #6189 <https://github.com/pgadmin-org/pgadmin4/issues/6189>`_ - Fix an issue in View SQL when column level privileges are set with multiple roles.
|
||||
| `Issue #6191 <https://github.com/pgadmin-org/pgadmin4/issues/6191>`_ - Fixed an issue where Reset Password is not working after upgrading to latest flask-security-too.
|
||||
| `Issue #6234 <https://github.com/pgadmin-org/pgadmin4/issues/6234>`_ - Usernames/roles with special character are not double quoted when assigning privileges.
|
||||
@@ -0,0 +1,55 @@
|
||||
***********
|
||||
Version 7.2
|
||||
***********
|
||||
|
||||
Release date: 2023-06-01
|
||||
|
||||
This release contains a number of bug fixes and new features since the release of pgAdmin 4 v7.1.
|
||||
|
||||
Supported Database Servers
|
||||
**************************
|
||||
**PostgreSQL**: 11, 12, 13, 14 and 15
|
||||
|
||||
**EDB Advanced Server**: 11, 12, 13, 14 and 15
|
||||
|
||||
Bundled PostgreSQL Utilities
|
||||
****************************
|
||||
**psql**, **pg_dump**, **pg_dumpall**, **pg_restore**: 15.2
|
||||
|
||||
|
||||
New features
|
||||
************
|
||||
|
||||
| `Issue #3831 <https://github.com/pgadmin-org/pgadmin4/issues/3831>`_ - Add Option to only show active connections on Dashboard.
|
||||
| `Issue #4769 <https://github.com/pgadmin-org/pgadmin4/issues/4769>`_ - Allow pgAdmin to retrive master password from external script/program.
|
||||
| `Issue #5048 <https://github.com/pgadmin-org/pgadmin4/issues/5048>`_ - Add an option to hide/show empty object collection nodes.
|
||||
| `Issue #5123 <https://github.com/pgadmin-org/pgadmin4/issues/5123>`_ - Added support to use standard OS secret store to save server/ssh tunnel passwords instead of master password in pgAdmin desktop mode.
|
||||
| `Issue #5868 <https://github.com/pgadmin-org/pgadmin4/issues/5868>`_ - Implement new PostgreSQL 15 features in publication dialog and SQL.
|
||||
|
||||
|
||||
Housekeeping
|
||||
************
|
||||
|
||||
|
||||
Bug fixes
|
||||
*********
|
||||
|
||||
| `Issue #5789 <https://github.com/pgadmin-org/pgadmin4/issues/5789>`_ - Fixed an issue where Foreign Key columns are shown in the wrong order in SQL and Properties.
|
||||
| `Issue #5817 <https://github.com/pgadmin-org/pgadmin4/issues/5817>`_ - Ensure that a new row should be added on top in the User Management dialog.
|
||||
| `Issue #5926 <https://github.com/pgadmin-org/pgadmin4/issues/5926>`_ - Fixed an issue where REVOKE ALL DDL in table SQL was added only for one role.
|
||||
| `Issue #6003 <https://github.com/pgadmin-org/pgadmin4/issues/6003>`_ - Indicate the user if all the server's children nodes are hidden from the preferences setting.
|
||||
| `Issue #6026 <https://github.com/pgadmin-org/pgadmin4/issues/6026>`_ - Tools menu should be toggled for "pause replay of wal" and "resume replay of wal".
|
||||
| `Issue #6043 <https://github.com/pgadmin-org/pgadmin4/issues/6043>`_ - Make the 'Connect to server' dialog a modal dialog.
|
||||
| `Issue #6080 <https://github.com/pgadmin-org/pgadmin4/issues/6080>`_ - pgAdmin icon not showing on taskbar on Windows 10.
|
||||
| `Issue #6127 <https://github.com/pgadmin-org/pgadmin4/issues/6127>`_ - Fixed an issue where properties were not visible for FTS Parsers, FTS Templates, MViews, and Rules in Catalog objects.
|
||||
| `Issue #6147 <https://github.com/pgadmin-org/pgadmin4/issues/6147>`_ - Heartbeat is getting logged, though no server is connected in pgAdmin.
|
||||
| `Issue #6204 <https://github.com/pgadmin-org/pgadmin4/issues/6204>`_ - Ensure that name can't be empty in edit mode for Primary Key and Index.
|
||||
| `Issue #6221 <https://github.com/pgadmin-org/pgadmin4/issues/6221>`_ - Fix circular reference error for the multirange data types in the query tool.
|
||||
| `Issue #6247 <https://github.com/pgadmin-org/pgadmin4/issues/6247>`_ - Fixed an issue where PSQL tool prompts for password if using password exec command.
|
||||
| `Issue #6253 <https://github.com/pgadmin-org/pgadmin4/issues/6253>`_ - Fix an issue in the register server when setting the role, an arbitrary SQL query can be fired.
|
||||
| `Issue #6267 <https://github.com/pgadmin-org/pgadmin4/issues/6267>`_ - Ensure the user is able to log in if the specified OAUTH2_USERNAME_CLAIM is present in the OAuth2 profile.
|
||||
| `Issue #6278 <https://github.com/pgadmin-org/pgadmin4/issues/6278>`_ - Use dependent instead of dependant in the message.
|
||||
| `Issue #6279 <https://github.com/pgadmin-org/pgadmin4/issues/6279>`_ - Fix incorrect number of foreign tables displayed. Show column comments in RE-SQL.
|
||||
| `Issue #6280 <https://github.com/pgadmin-org/pgadmin4/issues/6280>`_ - View SQL tab not quoting column comments.
|
||||
| `Issue #6281 <https://github.com/pgadmin-org/pgadmin4/issues/6281>`_ - VarChar Field Sizes are missing from Query's Grid header.
|
||||
| `Issue #6331 <https://github.com/pgadmin-org/pgadmin4/issues/6331>`_ - Separate multiple Blocking PIDs with delimiter on Dashboard.
|
||||
@@ -30,7 +30,7 @@ restore process:
|
||||
* Select *Directory* to restore from a compressed directory-format archive.
|
||||
|
||||
* Enter the complete path to the backup file in the *Filename* field.
|
||||
Optionally, select the *Browser* icon (ellipsis) to the right to navigate
|
||||
Optionally, select the *Browse* icon (ellipsis) to the right to navigate
|
||||
into a directory and select the file that contains the archive.
|
||||
* Use the *Number of Jobs* field to specify if pg_restore should use multiple
|
||||
(concurrent) jobs to process the restore. Each job uses a separate connection
|
||||
|
||||
@@ -54,7 +54,7 @@ The Schema Diff Object Comparison Panel
|
||||
|
||||
In the object comparison panel, you can select the source and target servers
|
||||
of the same major version, and databases to be compared. You can
|
||||
select any server listed under the browser tree whether it is connected or
|
||||
select any server listed under the object explorer whether it is connected or
|
||||
disconnected. If you select a server that is not connected then it will
|
||||
prompt you for the password before using the server.
|
||||
|
||||
|
||||
@@ -21,9 +21,9 @@ You can only search for object names currently. Examples are: abc,
|
||||
%ab%, ab%c, %%%, etc.
|
||||
|
||||
The result is presented in the grid with object name, object type and
|
||||
the object tree path in the :ref:`browser <tree_control>`. You can double
|
||||
the object path in the :ref:`object explorer <tree_control>`. You can double
|
||||
click on a result row to select the object in the
|
||||
:ref:`browser <tree_control>`. If the object is greyed out, this means that you
|
||||
:ref:`object explorer <tree_control>`. If the object is greyed out, this means that you
|
||||
have not enabled those object types in the :ref:`preferences <preferences>`,
|
||||
so you can't double click on it. You can click on the ellipsis appended to
|
||||
the function and procedure names to see their arguments.
|
||||
@@ -33,5 +33,5 @@ You can filter based on a particular object type by selecting one from the
|
||||
object type dropdown. If the search button is hit when one of the object type
|
||||
is selected then only those types will be fetch from the database.
|
||||
An object type will not be visible in the dropdown if the database server
|
||||
does not support it or if it is not enabled from the
|
||||
does not support it or if it is not enabled from the
|
||||
:ref:`preferences <preferences>`.
|
||||
@@ -15,10 +15,10 @@ allows connections from the host of the client.
|
||||
Use the fields in the *General* tab to identify the server:
|
||||
|
||||
* Use the *Name* field to add a descriptive name for the server; the name
|
||||
specified will be displayed in the *Browser* tree control.
|
||||
specified will be displayed in the *Object Explorer*.
|
||||
|
||||
* Use the drop-down list box in the *Server group* field to select the parent
|
||||
node for the server; the server will be displayed in the *Browser* tree
|
||||
node for the server; the server will be displayed in the *Object Explorer*
|
||||
control within the specified group.
|
||||
|
||||
* Use the color-picker in the *Background* field to specify the background
|
||||
@@ -42,7 +42,7 @@ Use the fields in the *General* tab to identify the server:
|
||||
* Change of host, port, and maintenance database
|
||||
|
||||
Please note that once the server is shared, it's icon is changed in the
|
||||
browser tree.
|
||||
object explorer.
|
||||
|
||||
* Provide a comment about the server in the *Comments* field.
|
||||
|
||||
@@ -82,17 +82,30 @@ Use the fields in the *Connection* tab to configure a connection:
|
||||
see
|
||||
`Section 33.16 of the Postgres documentation <https://www.postgresql.org/docs/current/libpq-pgservice.html>`_.
|
||||
|
||||
Click the *SSL* tab to continue.
|
||||
Click the *Parameters* tab to continue.
|
||||
|
||||
.. image:: images/server_ssl.png
|
||||
.. image:: images/server_parameters.png
|
||||
:alt: Server dialog ssl tab
|
||||
:align: center
|
||||
|
||||
Use the fields in the *SSL* tab to configure SSL:
|
||||
Use the fields in the *Parameters* tab to configure a connection:
|
||||
|
||||
* Use the drop-down list box in the *SSL* field to select the type of SSL
|
||||
connection the server should use. For more information about using SSL
|
||||
encryption, see
|
||||
Click on the *+* button to add a new parameter. Some of the parameters are:
|
||||
|
||||
* *Host address* using this field to specify the host IP address may save time
|
||||
by avoiding a DNS lookup on connection, but it may be useful to specify both
|
||||
a host name and address when using Kerberos, GSSAPI, or SSPI authentication
|
||||
methods, as well as for verify-full SSL certificate verification.
|
||||
* *Password File* field to specify the location of a password file
|
||||
(.pgpass). A .pgpass file allows a user to login without providing a password
|
||||
when they connect. For more information, see
|
||||
`Section 33.15 of the Postgres documentation <https://www.postgresql.org/docs/current/libpq-pgpass.html>`_.
|
||||
* *Connection timeout* field to specify the maximum wait for connection,
|
||||
in seconds. Zero or not specified means wait indefinitely. It is not
|
||||
recommended to use a timeout of less than 2 seconds. By default it is set to
|
||||
10 seconds.
|
||||
* *SSL mode* field to select the type of SSL connection the server should use.
|
||||
For more information about using SSL encryption, see
|
||||
`Section 33.18 of the Postgres documentation <https://www.postgresql.org/docs/current/libpq-ssl.html>`_.
|
||||
|
||||
If pgAdmin is installed in Server mode (the default mode), you can use the
|
||||
@@ -100,27 +113,27 @@ platform-specific File manager dialog to upload files that support SSL
|
||||
encryption to the server. To access the File manager dialog, click the
|
||||
icon that is located to the right of each of the following fields.
|
||||
|
||||
* Use the *Client certificate* field to specify the file containing the client
|
||||
* *Client certificate* field to specify the file containing the client
|
||||
SSL certificate. This file will replace the default
|
||||
*~/.postgresql/postgresql.crt* if pgAdmin is installed in Desktop mode, and
|
||||
*<STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.crt* if pgAdmin is installed
|
||||
in Web mode. This parameter is ignored if an SSL connection is not made.
|
||||
* Use the *Client certificate key* field to specify the file containing the
|
||||
* *Client certificate key* field to specify the file containing the
|
||||
secret key used for the client certificate. This file will replace the
|
||||
default *~/.postgresql/postgresql.key* if pgAdmin is installed in Desktop
|
||||
mode, and *<STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.key* if pgAdmin
|
||||
is installed in Web mode. This parameter is ignored if an SSL connection is
|
||||
not made.
|
||||
* Use the *Root certificate* field to specify the file containing the SSL
|
||||
* *Root certificate* field to specify the file containing the SSL
|
||||
certificate authority. This file will replace the default
|
||||
*~/.postgresql/root.crt*. This parameter is ignored if an SSL connection is
|
||||
not made.
|
||||
* Use the *Certificate revocation list* field to specify the file containing
|
||||
* *Certificate revocation list* field to specify the file containing
|
||||
the SSL certificate revocation list. This list will replace the default list,
|
||||
found in *~/.postgresql/root.crl*. This parameter is ignored if an SSL
|
||||
connection is not made.
|
||||
* When *SSL compression?* is set to *True*, data sent over SSL connections will
|
||||
be compressed. The default value is *False* (compression is disabled). This
|
||||
* *SSL compression?* is set to *True*, data sent over SSL connections will
|
||||
be compressed. The default value is *False* (compression is disabled). This
|
||||
parameter is ignored if an SSL connection is not made.
|
||||
|
||||
.. warning:: In Server mode, certificates, private keys, and the revocation list
|
||||
@@ -175,20 +188,11 @@ Click the *Advanced* tab to continue.
|
||||
|
||||
Use the fields in the *Advanced* tab to configure a connection:
|
||||
|
||||
* Specify the IP address of the server host in the *Host address* field. Using
|
||||
this field to specify the host IP address may save time by avoiding a DNS
|
||||
lookup on connection, but it may be useful to specify both a host name and
|
||||
address when using Kerberos, GSSAPI, or SSPI authentication methods, as well
|
||||
as for verify-full SSL certificate verification.
|
||||
* Use the *DB restriction* field to provide a SQL restriction that will be used
|
||||
against the pg_database table to limit the databases that you see. For
|
||||
example, you might enter: *live_db test_db* so that only live_db and test_db
|
||||
are shown in the pgAdmin browser. Separate entries with a comma or tab as you
|
||||
type.
|
||||
* Use the *Password File* field to specify the location of a password file
|
||||
(.pgpass). A .pgpass file allows a user to login without providing a password
|
||||
when they connect. For more information, see
|
||||
`Section 33.15 of the Postgres documentation <https://www.postgresql.org/docs/current/libpq-pgpass.html>`_.
|
||||
* Use the *Password exec command* field to specify a shell command to be executed
|
||||
to retrieve a password to be used for SQL authentication. The ``stdout`` of the
|
||||
command will be used as the SQL password. This may be useful when the password
|
||||
@@ -199,10 +203,6 @@ Use the fields in the *Advanced* tab to configure a connection:
|
||||
the password will not expire until your pgAdmin session does.
|
||||
Zero means the command will be executed for each new connection or reconnection that is made.
|
||||
If the generated password is not valid indefinitely, set this value to slightly before it will expire.
|
||||
* Use the *Connection timeout* field to specify the maximum wait for connection,
|
||||
in seconds. Zero or not specified means wait indefinitely. It is not
|
||||
recommended to use a timeout of less than 2 seconds. By default it is set to
|
||||
10 seconds.
|
||||
|
||||
.. note:: The password file option is only supported when pgAdmin is using libpq
|
||||
v10.0 or later to connect to the server.
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
*Storage Manager* is a feature that helps you manage your systems storage device. You can use *Storage Manager* to:
|
||||
|
||||
* Download, upload, or manage operating system files. To use this feature, *pgAdmin* must be running in *Server Mode* on your client machine.
|
||||
* The shared storage option allows users to access the shared storages that are shared by admin users.
|
||||
* Download *backup* or *export* files (custom, tar and plain text format) on a client machine.
|
||||
* Download *export* dump files of tables.
|
||||
|
||||
@@ -18,6 +19,12 @@ You can access *Storage Manager* from the *Tools* Menu.
|
||||
|
||||
Use icons on the top of the *Storage Manager* window to manage storage:
|
||||
|
||||
Use the ``Folder`` icon |Shared Storage| to access shared storage. In order to enable shared storage,
|
||||
admins need to add the SHARED_STORAGE variable to the config file. Users can access the shared storage
|
||||
with this and share files with one another.
|
||||
|
||||
.. |Shared Storage| image:: images/sm_ss.png
|
||||
|
||||
Use the ``Home`` icon |home| to return to the home directory.
|
||||
|
||||
.. |home| image:: images/sm_home.png
|
||||
@@ -40,6 +47,22 @@ Use the ``New Folder`` icon |folder| to add a new folder.
|
||||
|
||||
Use the *Format* drop down list to select the format of the files to be displayed; choose from *sql*, *csv*, or *All Files*.
|
||||
|
||||
Shared Storage
|
||||
*********************
|
||||
.. image:: images/shared_storage.png
|
||||
:alt: Other options
|
||||
:align: center
|
||||
|
||||
|
||||
In the storage manager, ``My Storage`` is the pgAdmin user’s storage directory, and other listed directories are shared
|
||||
storages set by the pgAdmin server administrator. Using these, pgAdmin users can have common storages to share files.
|
||||
pgAdmin server administrator can configure the shared storages using the :ref:`config file <config_py>`. Storages can be
|
||||
marked as restricted to give read-only access to non-admin pgAdmin users.
|
||||
|
||||
|
||||
.. note:: You must ensure the directories specified are writeable by the user that the web server processes will be running as, e.g. apache or www-data.*
|
||||
|
||||
|
||||
Other Options
|
||||
*********************
|
||||
|
||||
|
||||
@@ -470,7 +470,7 @@ Use the *Partition* tab to create that partition as a partitioned table.
|
||||
* Select a partition type from the *Partition Type* selection box.
|
||||
* Use the *Partition Keys* panel to define the partition keys.
|
||||
|
||||
View of multi level Partitioned Table in browser tree:
|
||||
View of multi level Partitioned Table in object explorer:
|
||||
|
||||
.. image:: images/table_partition_tree.png
|
||||
:alt: Table dialog partition tree
|
||||
|
||||
@@ -8,7 +8,7 @@ The left pane of the main window displays a tree control (the *pgAdmin* tree
|
||||
control) that provides access to the objects that reside on a server.
|
||||
|
||||
.. image:: /images/main_left_pane.png
|
||||
:alt: Browser tree panel
|
||||
:alt: object explorer panel
|
||||
:align: center
|
||||
|
||||
You can expand nodes in the tree control to view the database objects that
|
||||
|
||||
@@ -22,7 +22,7 @@ Features of pgAdmin 4 include:
|
||||
* online help and information about using pgAdmin dialogs and tools.
|
||||
|
||||
When pgAdmin opens, the interface features a menu bar and a window divided into
|
||||
two panes: the *Browser* tree control in the left pane, and a tabbed browser in
|
||||
two panes: the *Object Explorer* tree control in the left pane, and a tabbed browser in
|
||||
the right pane.
|
||||
|
||||
.. image:: images/welcome.png
|
||||
|
||||
@@ -6,7 +6,6 @@ set -e
|
||||
# Debugging shizz
|
||||
trap 'ERRCODE=$? && if [ ${ERRCODE} -ne 0 ]; then echo "The command \"${BASH_COMMAND}\" failed in \"${FUNCNAME}\" with exit code ${ERRCODE}."; fi' EXIT
|
||||
|
||||
OS_VERSION=$(grep "^VERSION_ID=" /etc/os-release | awk -F "=" '{ print $2 }' | sed 's/"//g')
|
||||
OS_ARCH=$(dpkg-architecture -qDEB_HOST_ARCH)
|
||||
|
||||
# Stop creating pyc files.
|
||||
@@ -32,13 +31,25 @@ _copy_code
|
||||
echo "Creating the server package..."
|
||||
mkdir "${SERVERROOT}/DEBIAN"
|
||||
|
||||
echo "Creating preinst script..."
|
||||
cat << EOF > "${SERVERROOT}/DEBIAN/preinst"
|
||||
#!/bin/sh
|
||||
|
||||
rm -rf /usr/pgadmin4/venv
|
||||
if [ -d /usr/pgadmin4/web ]; then
|
||||
cd /usr/pgadmin4/web && rm -rf \$(ls -A -I config_local.py)
|
||||
fi
|
||||
EOF
|
||||
|
||||
chmod 755 "${SERVERROOT}/DEBIAN/preinst"
|
||||
|
||||
cat << EOF > "${SERVERROOT}/DEBIAN/control"
|
||||
Package: ${APP_NAME}-server
|
||||
Version: ${APP_LONG_VERSION}
|
||||
Architecture: ${OS_ARCH}
|
||||
Section: database
|
||||
Priority: optional
|
||||
Depends: python3, libpq5 (>= 11.0), libgssapi-krb5-2
|
||||
Depends: ${PYTHON_BINARY}, libpq5 (>= 11.0), libgssapi-krb5-2
|
||||
Recommends: postgresql-client | postgresql-client-15 | postgresql-client-14 | postgresql-client-13 | postgresql-client-12 | postgresql-client-11 | postgresql-client-10
|
||||
Maintainer: pgAdmin Development Team <pgadmin-hackers@postgresql.org>
|
||||
Description: The core server package for pgAdmin. pgAdmin is the most popular and feature rich Open Source administration and development platform for PostgreSQL, the most advanced Open Source database in the world.
|
||||
|
||||
@@ -18,6 +18,17 @@ _setup_env() {
|
||||
if [ -n "${APP_SUFFIX}" ]; then
|
||||
APP_LONG_VERSION=${APP_LONG_VERSION}-${APP_SUFFIX}
|
||||
fi
|
||||
|
||||
# Setting up the correct Python version for Ubuntu 18 and EL-8, which have
|
||||
# new Python versions installed parallel to the old ones.
|
||||
OS_VERSION=$(grep "^VERSION_ID=" /etc/os-release | awk -F "=" '{ print $2 }' | sed 's/"//g' | awk -F "." '{ print $1 }')
|
||||
SYSTEM_PYTHON_PATH='/usr/bin/python3'
|
||||
PYTHON_BINARY='python3'
|
||||
if [ "$2" == 'redhat' ] && [ "${OS_VERSION}" == "8" ]; then
|
||||
SYSTEM_PYTHON_PATH='/usr/bin/python3.9'
|
||||
PYTHON_BINARY='python3.9'
|
||||
fi
|
||||
PYTHON_BINARY_WITHOUT_DOTS=$(echo ${PYTHON_BINARY} | sed -e 's/\.//g')
|
||||
}
|
||||
|
||||
_cleanup() {
|
||||
@@ -51,16 +62,16 @@ _create_python_virtualenv() {
|
||||
cd "usr/${APP_NAME}" || exit
|
||||
|
||||
# Create the blank venv
|
||||
python3 -m venv venv
|
||||
"${SYSTEM_PYTHON_PATH}" -m venv venv
|
||||
# shellcheck disable=SC1091
|
||||
source venv/bin/activate
|
||||
. venv/bin/activate
|
||||
|
||||
# Make sure we have the wheel package present, as well as the latest pip
|
||||
pip3 install --upgrade pip
|
||||
pip3 install wheel
|
||||
|
||||
# Install the requirements
|
||||
pip3 install --no-cache-dir --no-binary psycopg2 -r "${SOURCEDIR}/requirements.txt"
|
||||
pip3 install --no-cache-dir --no-binary psycopg -r "${SOURCEDIR}/requirements.txt"
|
||||
|
||||
# Fixup the paths in the venv activation scripts
|
||||
sed -i 's/VIRTUAL_ENV=.*/VIRTUAL_ENV="\/usr\/pgadmin4\/venv"/g' venv/bin/activate
|
||||
@@ -78,11 +89,11 @@ _create_python_virtualenv() {
|
||||
PYMODULES_PATH=$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")
|
||||
DIR_PYMODULES_PATH=$(dirname "${PYMODULES_PATH}")
|
||||
|
||||
# Use /usr/bin/python3 here as we want the system path
|
||||
# Use {SYSTEM_PYTHON_PATH} here as we want the system path
|
||||
if [ "$1" == "debian" ]; then
|
||||
PYSYSLIB_PATH=$(/usr/bin/python3 -c "import sys; print('%s/lib/python%d.%.d' % (sys.prefix, sys.version_info.major, sys.version_info.minor))")
|
||||
PYSYSLIB_PATH=$("${SYSTEM_PYTHON_PATH}" -c "import sys; print('%s/lib/python%d.%.d' % (sys.prefix, sys.version_info.major, sys.version_info.minor))")
|
||||
else
|
||||
PYSYSLIB_PATH=$(/usr/bin/python3 -c "import sys; print('%s/lib64/python%d.%.d' % (sys.prefix, sys.version_info.major, sys.version_info.minor))")
|
||||
PYSYSLIB_PATH=$("${SYSTEM_PYTHON_PATH}" -c "import sys; print('%s/lib64/python%d.%.d' % (sys.prefix, sys.version_info.major, sys.version_info.minor))")
|
||||
fi
|
||||
|
||||
# Symlink in the rest of the Python libs. This is required because the runtime
|
||||
@@ -188,13 +199,9 @@ _build_docs() {
|
||||
cd "${SERVERROOT}" && mkdir -p "usr/${APP_NAME}/share/docs/en_US/html"
|
||||
cd "${SOURCEDIR}/docs/en_US" || exit
|
||||
python3 build_code_snippet.py
|
||||
SYS_PYTHONPATH=$(/usr/bin/python3 -c "import sys; print(':'.join([p for p in sys.path if p]))")
|
||||
SYS_PYTHONPATH=$("${SYSTEM_PYTHON_PATH}" -c "import sys; print(':'.join([p for p in sys.path if p]))")
|
||||
# shellcheck disable=SC2153
|
||||
if [ "$1" == "redhat" ] && [ "${OS_VERSION}" == "7" ]; then
|
||||
PYTHONPATH=$PYTHONPATH:${SYS_PYTHONPATH} python3 /usr/local/bin/sphinx-build . "${SERVERROOT}/usr/${APP_NAME}/share/docs/en_US/html"
|
||||
else
|
||||
PYTHONPATH=$PYTHONPATH:${SYS_PYTHONPATH} python3 -msphinx . "${SERVERROOT}/usr/${APP_NAME}/share/docs/en_US/html"
|
||||
fi
|
||||
PYTHONPATH=$PYTHONPATH:${SYS_PYTHONPATH} python3 -msphinx . "${SERVERROOT}/usr/${APP_NAME}/share/docs/en_US/html"
|
||||
}
|
||||
|
||||
_copy_code() {
|
||||
@@ -230,8 +237,8 @@ _copy_code() {
|
||||
# user has configured an alternative default.
|
||||
# DO THIS LAST!
|
||||
cd "${SERVERROOT}/usr/${APP_NAME}/venv/bin" || exit
|
||||
PYTHON_INTERPRETER=$(/usr/bin/python3 -c "import os, sys; print(os.path.realpath(sys.executable))")
|
||||
PYTHON_VERSION=$(/usr/bin/python3 -c "import sys; print('%d.%d' % (sys.version_info.major, sys.version_info.minor))")
|
||||
PYTHON_INTERPRETER=$("${SYSTEM_PYTHON_PATH}" -c "import os, sys; print(os.path.realpath(sys.executable))")
|
||||
PYTHON_VERSION=$("${SYSTEM_PYTHON_PATH}" -c "import sys; print('%d.%d' % (sys.version_info.major, sys.version_info.minor))")
|
||||
rm python && ln -s python3 python
|
||||
rm "python${PYTHON_VERSION}" && ln -s python3 "python${PYTHON_VERSION}"
|
||||
rm python3 && ln -s "${PYTHON_INTERPRETER}" python3
|
||||
|
||||
@@ -11,7 +11,8 @@ _setup_env() {
|
||||
APP_LONG_VERSION=${APP_LONG_VERSION}-${APP_SUFFIX}
|
||||
fi
|
||||
BUNDLE_DIR="${BUILD_ROOT}/${APP_NAME}.app"
|
||||
DMG_NAME="${DIST_ROOT}"/$(echo "${APP_NAME}" | sed 's/ //g' | awk '{print tolower($0)}')-"${APP_LONG_VERSION}.dmg"
|
||||
DMG_NAME="${DIST_ROOT}"/$(echo "${APP_NAME}" | sed 's/ //g' | awk '{print tolower($0)}')-"${APP_LONG_VERSION}-$(uname -m).dmg"
|
||||
PYTHON_OS_VERSION="11"
|
||||
}
|
||||
|
||||
_cleanup() {
|
||||
@@ -29,29 +30,41 @@ _build_runtime() {
|
||||
# NOTE: The nw download servers seem to be very unreliable, so at the moment we're using wget
|
||||
# in a retry loop as Yarn/Npm don't seem to like that.
|
||||
|
||||
# YARN:
|
||||
# yarn add --cwd "${BUILDROOT}" nw
|
||||
# YARN END
|
||||
# Temporarily handle arm64 builds (Apple Silicon) differently, until NWjs produces an actual release
|
||||
|
||||
# WGET:
|
||||
NW_VERSION=$(yarn info nw | grep latest | awk -F "'" '{ print $2}')
|
||||
if [ "$(uname -m)" == "arm64" ]; then
|
||||
pushd "${BUILD_ROOT}" > /dev/null || exit
|
||||
wget https://dl.nwjs.io/live-build/nw76/20230516-150708/a88c13a6c/v0.76.1/nwjs-sdk-v0.76.1-osx-arm64.zip
|
||||
unzip "nwjs-sdk-v0.76.1-osx-arm64.zip"
|
||||
popd > /dev/null || exit
|
||||
|
||||
pushd "${BUILD_ROOT}" > /dev/null || exit
|
||||
while true;do
|
||||
wget "https://dl.nwjs.io/v${NW_VERSION}/nwjs-v${NW_VERSION}-osx-x64.zip" && break
|
||||
rm "nwjs-v${NW_VERSION}-osx-x64.zip"
|
||||
done
|
||||
unzip "nwjs-v${NW_VERSION}-osx-x64.zip"
|
||||
popd > /dev/null || exit
|
||||
# WGET END
|
||||
xattr -r -d com.apple.quarantine "${BUILD_ROOT}/nwjs-sdk-v0.76.1-osx-arm64"/nwjs.app
|
||||
cp -R "${BUILD_ROOT}/nwjs-sdk-v0.76.1-osx-arm64"/nwjs.app "${BUILD_ROOT}/"
|
||||
else
|
||||
# YARN:
|
||||
# yarn add --cwd "${BUILDROOT}" nw
|
||||
# YARN END
|
||||
|
||||
# YARN:
|
||||
# cp -R "${BUILD_ROOT}/node_modules/nw/nwjs/nwjs.app" "${BUILD_ROOT}/"
|
||||
# YARN END
|
||||
# WGET:
|
||||
NW_VERSION=$(yarn info nw | grep latest | awk -F "'" '{ print $2}')
|
||||
|
||||
# WGET:
|
||||
cp -R "${BUILD_ROOT}/nwjs-v${NW_VERSION}-osx-x64"/nwjs.app "${BUILD_ROOT}/"
|
||||
# WGET END
|
||||
pushd "${BUILD_ROOT}" > /dev/null || exit
|
||||
while true;do
|
||||
wget "https://dl.nwjs.io/v${NW_VERSION}/nwjs-v${NW_VERSION}-osx-x64.zip" && break
|
||||
rm "nwjs-v${NW_VERSION}-osx-x64.zip"
|
||||
done
|
||||
unzip "nwjs-v${NW_VERSION}-osx-x64.zip"
|
||||
popd > /dev/null || exit
|
||||
# WGET END
|
||||
|
||||
# YARN:
|
||||
# cp -R "${BUILD_ROOT}/node_modules/nw/nwjs/nwjs.app" "${BUILD_ROOT}/"
|
||||
# YARN END
|
||||
|
||||
# WGET:
|
||||
cp -R "${BUILD_ROOT}/nwjs-v${NW_VERSION}-osx-x64"/nwjs.app "${BUILD_ROOT}/"
|
||||
# WGET END
|
||||
fi
|
||||
|
||||
mv "${BUILD_ROOT}/nwjs.app" "${BUNDLE_DIR}"
|
||||
|
||||
@@ -79,13 +92,15 @@ _create_python_env() {
|
||||
fi
|
||||
|
||||
git clone https://github.com/gregneagle/relocatable-python.git "${BUILD_ROOT}/relocatable_python"
|
||||
PATH=$PATH:/usr/local/pgsql/bin "${SYSTEM_PYTHON_EXE}" \
|
||||
"${SYSTEM_PYTHON_EXE}" \
|
||||
"${BUILD_ROOT}/relocatable_python/make_relocatable_python_framework.py" \
|
||||
--upgrade-pip \
|
||||
--python-version "${PGADMIN_PYTHON_VERSION}" \
|
||||
--pip-requirements "${SOURCE_DIR}/requirements.txt" \
|
||||
--os-version "${PYTHON_OS_VERSION}" \
|
||||
--destination "${BUNDLE_DIR}/Contents/Frameworks/"
|
||||
|
||||
"${BUNDLE_DIR}/Contents/Frameworks/Python.framework/Versions/Current/bin/python3" -m ensurepip --upgrade || exit 1
|
||||
"${BUNDLE_DIR}/Contents/Frameworks/Python.framework/Versions/Current/bin/pip3" install -r "${SOURCE_DIR}/requirements.txt" || exit 1
|
||||
|
||||
# Make sure all the .so's in the Python env have the executable bit set
|
||||
# so they get properly signed later
|
||||
OLD_IFS=${IFS}
|
||||
@@ -133,7 +148,7 @@ _build_docs() {
|
||||
source "${BUILD_ROOT}/venv/bin/activate"
|
||||
pip3 install --upgrade pip
|
||||
pip3 install -r "${SOURCE_DIR}/requirements.txt"
|
||||
pip3 install sphinx==6.1.1
|
||||
pip3 install sphinx==6.1.3
|
||||
pip3 install sphinxcontrib-youtube
|
||||
|
||||
cd "${SOURCE_DIR}" || exit
|
||||
|
||||
@@ -53,8 +53,8 @@ if [ "${PGADMIN_POSTGRES_DIR}" == "" ]; then
|
||||
fi
|
||||
|
||||
if [ "${PGADMIN_PYTHON_VERSION}" == "" ]; then
|
||||
echo "PGADMIN_PYTHON_VERSION not set. Setting it to the default: 3.9.9"
|
||||
export PGADMIN_PYTHON_VERSION=3.9.9
|
||||
echo "PGADMIN_PYTHON_VERSION not set. Setting it to the default: 3.11.2"
|
||||
export PGADMIN_PYTHON_VERSION=3.11.2
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC1091
|
||||
|
||||
@@ -36,11 +36,11 @@ with open(req_file, 'r') as req_lines:
|
||||
|
||||
requires = []
|
||||
kerberos_extras = []
|
||||
# Ensure the Wheel will use psycopg2-binary, not the source distro, and stick
|
||||
# Ensure the Wheel will use psycopg-binary, not the source distro, and stick
|
||||
# gssapi in it's own list
|
||||
for index, req in enumerate(all_requires):
|
||||
if 'psycopg2' in req:
|
||||
req = req.replace('psycopg2', 'psycopg2-binary')
|
||||
if 'psycopg[c]' in req:
|
||||
req = req.replace('psycopg[c]', 'psycopg[binary]')
|
||||
|
||||
if 'gssapi' in req:
|
||||
kerberos_extras.append(req)
|
||||
@@ -75,11 +75,11 @@ setup(
|
||||
'Development Status :: 5 - Production/Stable',
|
||||
|
||||
# Supported programming languages
|
||||
'Programming Language :: Python :: 3.6',
|
||||
'Programming Language :: Python :: 3.7',
|
||||
'Programming Language :: Python :: 3.8',
|
||||
'Programming Language :: Python :: 3.9',
|
||||
'Programming Language :: Python :: 3.10'
|
||||
'Programming Language :: Python :: 3.10',
|
||||
'Programming Language :: Python :: 3.11'
|
||||
],
|
||||
|
||||
keywords='pgadmin4,postgresql,postgres',
|
||||
|
||||
@@ -6,8 +6,7 @@ Redhat distributions.
|
||||
## Supported platforms
|
||||
|
||||
* Fedora 36 & 37
|
||||
* RHEL 7 & 8
|
||||
* CentOS 7
|
||||
* RHEL 8
|
||||
* Rocky Linux 8 (x86_64)
|
||||
* AlmaLinux/RHEL/Rocky Linux 9 (x86_64)
|
||||
|
||||
@@ -47,11 +46,6 @@ The desktop runtime. Requires the server package.
|
||||
The server mode setup script for configuring Apache HTTPD. Requires the server
|
||||
package.
|
||||
|
||||
*pgadmin4-python3-mod_wsgi-4.7.1-2.el7.<arch>.rpm*
|
||||
|
||||
The Python 3 build of mod_wsgi for the Apache HTTPD server. Only built on
|
||||
RHEL/CentOS 7.
|
||||
|
||||
## Signing Packages
|
||||
|
||||
It is good practice to sign RPMs to prove their provenance. The build scripts
|
||||
|
||||
@@ -6,7 +6,6 @@ set -e
|
||||
# Debugging shizz
|
||||
trap 'ERRCODE=$? && if [ ${ERRCODE} -ne 0 ]; then echo "The command \"${BASH_COMMAND}\" failed in \"${FUNCNAME}\" with exit code ${ERRCODE}."; fi' EXIT
|
||||
|
||||
OS_VERSION=$(grep "^VERSION_ID=" /etc/os-release | awk -F "=" '{ print $2 }' | sed 's/"//g')
|
||||
OS_ARCH=$(arch)
|
||||
|
||||
# Make sure we get the latest libpq
|
||||
@@ -50,11 +49,6 @@ cat << EOF > "${BUILDROOT}/server.spec"
|
||||
# virtualenv, in particular Pillow.libs.
|
||||
%global __brp_check_rpaths %{nil}
|
||||
|
||||
# Bytecompiling Python 3 doesn't work on RHEL/CentOS 7, so make it a no-op
|
||||
%if 0%{?rhel} && 0%{?rhel} == 7
|
||||
%define __python /bin/true
|
||||
%endif
|
||||
|
||||
# Don't strip binaries when packaging them as this might break cpython modules
|
||||
%define __strip /bin/true
|
||||
|
||||
@@ -68,11 +62,17 @@ Summary: The core server package for pgAdmin.
|
||||
License: PostgreSQL
|
||||
URL: https://www.pgadmin.org/
|
||||
|
||||
Requires: python3, postgresql-libs >= 11, krb5-libs
|
||||
Requires: ${PYTHON_BINARY}, libpq5, krb5-libs
|
||||
|
||||
%description
|
||||
The core server package for pgAdmin. pgAdmin is the most popular and feature rich Open Source administration and development platform for PostgreSQL, the most advanced Open Source database in the world.
|
||||
|
||||
%pre
|
||||
rm -rf /usr/pgadmin4/venv
|
||||
if [ -d /usr/pgadmin4/web ]; then
|
||||
cd /usr/pgadmin4/web && rm -rf \$(ls -A -I config_local.py)
|
||||
fi
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
@@ -155,11 +155,7 @@ BuildArch: noarch
|
||||
Summary: The web interface for pgAdmin, hosted under Apache HTTPD.
|
||||
License: PostgreSQL
|
||||
URL: https://www.pgadmin.org/
|
||||
%if 0%{?rhel} && 0%{?rhel} == 7
|
||||
Requires: ${APP_NAME}-server = ${RPM_VERSION}, httpd, pgadmin4-python3-mod_wsgi
|
||||
%else
|
||||
Requires: ${APP_NAME}-server = ${RPM_VERSION}, httpd, python3-mod_wsgi
|
||||
%endif
|
||||
Requires: ${APP_NAME}-server = ${RPM_VERSION}, httpd, ${PYTHON_BINARY_WITHOUT_DOTS}-mod_wsgi
|
||||
|
||||
%description
|
||||
The web interface for pgAdmin, hosted under Apache HTTPD. pgAdmin is the most popular and feature rich Open Source administration and development platform for PostgreSQL, the most advanced Open Source database in the world.
|
||||
@@ -219,26 +215,13 @@ EOF
|
||||
# Build the Redhat package for the meta package
|
||||
rpmbuild --define "pga_build_root ${BUILDROOT}" -bb "${BUILDROOT}/meta.spec"
|
||||
|
||||
#
|
||||
# mod_wsgi for CentOS 7
|
||||
#
|
||||
if [ "${OS_VERSION}" == 7 ]; then
|
||||
cp "${SOURCEDIR}/pkg/redhat/pgadmin4-python3-mod_wsgi-exports.patch" "${HOME}/rpmbuild/SOURCES"
|
||||
cp "${SOURCEDIR}/pkg/redhat/pgadmin4-python3-mod_wsgi.conf" "${HOME}/rpmbuild/SOURCES"
|
||||
curl -o "${HOME}/rpmbuild/SOURCES/mod_wsgi-4.9.0.tar.gz" https://codeload.github.com/GrahamDumpleton/mod_wsgi/tar.gz/4.9.0
|
||||
rpmbuild -bb "${SOURCEDIR}/pkg/redhat/pgadmin4-python-mod_wsgi.spec"
|
||||
fi
|
||||
|
||||
# Get the libpq we need
|
||||
yumdownloader -y --downloadonly --destdir="${DISTROOT}" postgresql$(ls -d /usr/pgsql-1* | sort -r | head -1 | awk -F '-' '{ print $2 }')-libs
|
||||
yumdownloader -y --downloadonly --destdir="${DISTROOT}" libpq5 libpq5-devel postgresql$(ls -d /usr/pgsql-1* | sort -r | head -1 | awk -F '-' '{ print $2 }')-libs
|
||||
|
||||
#
|
||||
# Get the results!
|
||||
#
|
||||
cp "${HOME}/rpmbuild/RPMS/${OS_ARCH}/${APP_NAME}-"*"${RPM_VERSION}-"*".${OS_ARCH}.rpm" "${DISTROOT}/"
|
||||
cp "${HOME}/rpmbuild/RPMS/noarch/${APP_NAME}-"*"${RPM_VERSION}-"*".noarch.rpm" "${DISTROOT}/"
|
||||
if [ "${OS_VERSION}" == 7 ]; then
|
||||
cp "${HOME}/rpmbuild/RPMS/${OS_ARCH}/pgadmin4-python3-mod_wsgi-4.9.0-1.el7.x86_64.rpm" "${DISTROOT}/"
|
||||
fi
|
||||
|
||||
echo "Completed. RPMs created in ${DISTROOT}."
|
||||
@@ -1,71 +0,0 @@
|
||||
%global sname mod_wsgi
|
||||
|
||||
%{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}}
|
||||
|
||||
%{!?_httpd_mmn: %{expand: %%global _httpd_mmn %%(cat %{_includedir}/httpd/.mmn 2>/dev/null || echo 0-0)}}
|
||||
%{!?_httpd_confdir: %{expand: %%global _httpd_confdir %%{_sysconfdir}/httpd/conf.d}}
|
||||
# /etc/httpd/conf.d with httpd < 2.4 and defined as /etc/httpd/conf.modules.d with httpd >= 2.4
|
||||
%{!?_httpd_modconfdir: %{expand: %%global _httpd_modconfdir %%{_sysconfdir}/httpd/conf.d}}
|
||||
%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}}
|
||||
|
||||
%global debug_package %{nil}
|
||||
|
||||
Name: pgadmin4-python3-%{sname}
|
||||
Version: 4.9.0
|
||||
Release: 1%{?dist}
|
||||
Summary: A WSGI interface for Python web applications in Apache (customized for pgAdmin4)
|
||||
License: ASL 2.0
|
||||
URL: https://modwsgi.readthedocs.io/
|
||||
Source0: https://github.com/GrahamDumpleton/%{sname}/archive/%{version}.tar.gz#/mod_wsgi-%{version}.tar.gz
|
||||
Source2: %{name}.conf
|
||||
Patch1: %{name}-exports.patch
|
||||
|
||||
Requires: httpd-mmn = %{_httpd_mmn}
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: httpd-devel
|
||||
BuildRequires: gcc
|
||||
|
||||
# Suppress auto-provides for module DSO
|
||||
%{?filter_provides_in: %filter_provides_in %{_httpd_moddir}/.*\.so$}
|
||||
%{?filter_setup}
|
||||
|
||||
%global _description\
|
||||
The mod_wsgi adapter is an Apache module that provides a WSGI compliant\
|
||||
interface for hosting Python based web applications within Apache. The\
|
||||
adapter is written completely in C code against the Apache C runtime and\
|
||||
for hosting WSGI applications within Apache has a lower overhead than using\
|
||||
existing WSGI adapters for mod_python or CGI.\
|
||||
|
||||
%description %_description
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n %{sname}-%{version}
|
||||
|
||||
%build
|
||||
export LDFLAGS="$RPM_LD_FLAGS -L%{_libdir}"
|
||||
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
|
||||
|
||||
%configure --enable-shared --with-apxs=%{_httpd_apxs} --with-python=python3
|
||||
%{__make} %{?_smp_mflags}
|
||||
%{_bindir}/python3 setup.py build
|
||||
|
||||
%install
|
||||
%{__make} install DESTDIR=%{buildroot} LIBEXECDIR=%{_httpd_moddir}
|
||||
%{__install} -d -m 755 %{buildroot}%{_httpd_modconfdir}
|
||||
%{__install} -p -m 644 %{SOURCE2} %{buildroot}%{_httpd_modconfdir}/10-pgadmin4-python3-mod_wsgi.conf
|
||||
%{_bindir}/python3 setup.py install -O1 --skip-build --root %{buildroot}
|
||||
%{__mv} %{buildroot}%{_httpd_moddir}/mod_wsgi.so %{buildroot}%{_httpd_moddir}/pgadmin4-python3-mod_wsgi.so
|
||||
%{__mv} %{buildroot}%{_bindir}/mod_wsgi-express %{buildroot}%{_bindir}/pgadmin4-mod_wsgi-express-3
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc CREDITS.rst README.rst
|
||||
%config(noreplace) %{_httpd_modconfdir}/*pgadmin4-python3-mod_wsgi.conf
|
||||
%{_httpd_moddir}/pgadmin4-python3-mod_wsgi.so
|
||||
%{python3_sitearch}/mod_wsgi-*.egg-info
|
||||
%{python3_sitearch}/mod_wsgi
|
||||
%{_bindir}/pgadmin4-mod_wsgi-express-3
|
||||
|
||||
%changelog
|
||||
* Fri Mar 6 2020 Devrim Gündüz <devrim@gunduz.org> - 4.6.8-2
|
||||
- Initial packaging for the PostgreSQL YUM repository
|
||||
@@ -1,11 +0,0 @@
|
||||
--- mod_wsgi-4.5.20/Makefile.in.exports
|
||||
+++ mod_wsgi-4.5.20/Makefile.in
|
||||
@@ -28,7 +28,7 @@
|
||||
all : src/server/mod_wsgi.la
|
||||
|
||||
src/server/mod_wsgi.la : $(SRCFILES)
|
||||
- $(APXS) -c $(CPPFLAGS) $(CFLAGS) $(SRCFILES) $(LDFLAGS) $(LDLIBS)
|
||||
+ $(APXS) -Wl,-export-symbols-regex -Wl,wsgi_module -c $(CPPFLAGS) $(CFLAGS) $(SRCFILES) $(LDFLAGS) $(LDLIBS)
|
||||
|
||||
$(DESTDIR)$(LIBEXECDIR) :
|
||||
mkdir -p $@
|
||||
@@ -1,4 +0,0 @@
|
||||
<IfModule !wsgi_module>
|
||||
LoadModule wsgi_module modules/pgadmin4-python3-mod_wsgi.so
|
||||
</IfModule>
|
||||
|
||||
@@ -8,18 +8,18 @@ fi
|
||||
OS_VERSION=$(grep "^VERSION_ID=" /etc/os-release | awk -F "=" '{ print $2 }' | sed 's/"//g' | awk -F "." '{ print $1 }')
|
||||
|
||||
# EPEL & other repos
|
||||
if [ "${OS_VERSION}" != 9 ]; then
|
||||
if [ "${OS_VERSION}" != "9" ]; then
|
||||
yum -y install centos-release-scl
|
||||
fi
|
||||
|
||||
yum install -y "https://dl.fedoraproject.org/pub/epel/epel-release-latest-${OS_VERSION}.noarch.rpm"
|
||||
if [ "${OS_VERSION}" == 8 ] || [ "${OS_VERSION}" == 9 ]; then
|
||||
if [ "${OS_VERSION}" == "8" ] || [ "${OS_VERSION}" == "9" ]; then
|
||||
yum config-manager --enable PowerTools AppStream BaseOS "*epel"
|
||||
dnf -qy module disable postgresql
|
||||
fi
|
||||
|
||||
# PostgreSQL repo
|
||||
if [ "${OS_VERSION}" == 7 ] || [ "${OS_VERSION}" == 8 ] || [ "${OS_VERSION}" == 9 ]; then
|
||||
if [ "${OS_VERSION}" == "8" ] || [ "${OS_VERSION}" == "9" ]; then
|
||||
yum install -y "https://download.postgresql.org/pub/repos/yum/reporpms/EL-${OS_VERSION}-x86_64/pgdg-redhat-repo-latest.noarch.rpm"
|
||||
else
|
||||
yum install -y "https://download.postgresql.org/pub/repos/yum/reporpms/F-${OS_VERSION}-x86_64/pgdg-fedora-repo-latest.noarch.rpm"
|
||||
@@ -37,35 +37,23 @@ curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yu
|
||||
echo "Installing build pre-requisites..."
|
||||
yum groupinstall -y "Development Tools"
|
||||
|
||||
if [ "${OS_VERSION}" == 7 ]; then
|
||||
yum install -y expect fakeroot httpd-devel postgresql14-devel python3-devel nodejs yarn rpm-build rpm-sign yum-utils krb5-devel
|
||||
pip3 install sphinx==6.1.1
|
||||
pip3 install sphinxcontrib-youtube
|
||||
elif [ "${OS_VERSION}" == 9 ]; then
|
||||
yum install -y expect postgresql14-devel python3-devel nodejs yarn rpm-build rpm-sign yum-utils krb5-devel
|
||||
pip3 install sphinx==6.1.1
|
||||
if [ "${OS_VERSION}" == "8" ]; then
|
||||
yum install -y expect fakeroot postgresql15-devel python3.9-devel nodejs yarn rpm-build rpm-sign yum-utils krb5-devel
|
||||
pip3.9 install sphinx==6.1.3
|
||||
pip3.9 install sphinxcontrib-youtube
|
||||
elif [ "${OS_VERSION}" == "9" ]; then
|
||||
yum install -y expect libpq5-devel postgresql15-devel python3-devel nodejs yarn rpm-build rpm-sign yum-utils krb5-devel
|
||||
pip3 install sphinx==6.1.3
|
||||
pip3 install sphinxcontrib-youtube
|
||||
else
|
||||
yum install -y expect fakeroot postgresql14-devel python3-devel nodejs yarn rpm-build rpm-sign yum-utils krb5-devel
|
||||
pip3 install sphinx==6.1.1
|
||||
yum install -y expect fakeroot postgresql15-devel python3-devel nodejs yarn rpm-build rpm-sign yum-utils krb5-devel
|
||||
pip3 install sphinx==6.1.3
|
||||
pip3 install sphinxcontrib-youtube
|
||||
fi
|
||||
|
||||
# Setup RPM macros for signing
|
||||
echo "Please add the following macros to ~/.rpmmacros for the user that will sign the RPMs if required:"
|
||||
echo
|
||||
if [ "${OS_VERSION}" == 7 ]; then
|
||||
cat << EOF
|
||||
# Macros for signing RPMs.
|
||||
|
||||
%_signature gpg
|
||||
%_gpg_path ~/.gnupg
|
||||
%_gpg_name Package Manager
|
||||
%_gpgbin /usr/bin/gpg2
|
||||
%__gpg_sign_cmd %{__gpg} gpg --force-v3-sigs --batch --verbose --no-armor --passphrase-fd 3 --no-secmem-warning -u "%{_gpg_name}" -sbo %{__
|
||||
signature_filename} --digest-algo sha256 %{__plaintext_filename}
|
||||
EOF
|
||||
else
|
||||
cat << EOF
|
||||
# Macros for signing RPMs.
|
||||
|
||||
@@ -76,6 +64,5 @@ else
|
||||
%__gpg_sign_cmd %{__gpg} gpg --force-v3-sigs --batch --verbose --no-armor --no-secmem-warning -u "%{_gpg_name}" -sbo %{__signature_filename
|
||||
} --digest-algo sha256 %{__plaintext_filename}
|
||||
EOF
|
||||
fi
|
||||
|
||||
echo
|
||||
@@ -69,18 +69,6 @@ do
|
||||
tar cf - "${FILE}" | (cd "src-build/${TARBALL_NAME}"; tar xf -)
|
||||
done
|
||||
|
||||
pushd web > /dev/null || exit
|
||||
yarn install
|
||||
yarn run bundle
|
||||
|
||||
for FILE in pgadmin/static/js/generated/*
|
||||
do
|
||||
echo Adding "${FILE}"
|
||||
# shellcheck disable=SC2164
|
||||
tar cf - "${FILE}" | (cd "../src-build/${TARBALL_NAME}/web"; tar xf -)
|
||||
done
|
||||
popd > /dev/null || exit
|
||||
|
||||
# Create the tarball
|
||||
echo Creating tarball...
|
||||
cd src-build || exit
|
||||
|
||||